Rectangular convolution for fast filtering of characters

While the race towards higher-resolution bitmap displays is still on, many grayscale displays have appeared on the scene. To fully utilize their capabilities, grayscale fonts are needed, and these can be produced by filtering bi-level masters. Most of the efficient filtering techniques cannot directly be applied. For example, prefiltering is impractical, due to the number of character masters and the requirement of sub-pixel positioning. Furthermore, we would like to impose as few restrictions as possible on the characteristics of the filter, in order to facilitate exploration into the quality of various filters.We describe a fast filtering technique especially adapted to this task. The characters are decomposed into rectangles, and a summed-area representation of the filter is efficiently convolved with each individual rectangle to construct the grayscale character. For a given filter, the number of operations is O (linear size of the grayscale character), which is optimal.We give an analysis of the efficiency of this technique, and examples of its implementation applied to various families of fonts and point sizes. The performance of the implementation is such that filtering characters for grayscale displays is feasible in realtime on personal workstations.

[1]  Jack Sklansky,et al.  A fast recursive algorithm for binary-valued two-dimensional filters , 1984, Comput. Vis. Graph. Image Process..

[2]  H R BLACKWELL,et al.  Contrast thresholds of the human eye. , 1946, Journal of the Optical Society of America.

[3]  Franklin C. Crow,et al.  Summed-area tables for texture mapping , 1984, SIGGRAPH.

[4]  Lance Williams,et al.  Pyramidal parametrics , 1983, SIGGRAPH.

[5]  James T. Kajiya,et al.  Filtering high quality text for display on raster scan devices , 1981, SIGGRAPH '81.

[6]  John E. Warnock,et al.  The display of characters using gray level sample arrays , 1980, SIGGRAPH '80.

[7]  Paul S. Heckbert,et al.  Filtering by repeated integration , 1986, SIGGRAPH.

[8]  C. Bigelow,et al.  Digital typography , 1987 .

[9]  William Leler,et al.  Human vision, anti-aliasing, and the cheap 4000 line display , 1980, SIGGRAPH '80.

[10]  Leonidas J. Guibas,et al.  A language for bitmap manipulation , 1982, TOGS.

[11]  Edwin E. Catmull A tutorial on compensation tables , 1979, SIGGRAPH '79.

[12]  Donald E. Knuth,et al.  Optimal Font Caching , 1982 .

[13]  Alfred M. Bruckstein,et al.  On optimal image digitization , 1987, IEEE Trans. Acoust. Speech Signal Process..

[14]  Andrzej Lingas Heuristics for minimum edge length rectangular partitions of rectilinear figures , 1983, Theoretical Computer Science.

[15]  J. D. Gould,et al.  Doing the Same Work with Hard Copy and with Cathode-Ray Tube (CRT) Computer Terminals , 1984 .

[16]  Franklin C. Crow The use of grayscale for improved raster display of vectors and characters , 1978, SIGGRAPH '78.

[17]  R. Haber,et al.  Visual Perception , 2018, Encyclopedia of Database Systems.