Image enhancement and thresholding of images

Abstract: An image processing method and system for generating enhanced binary image data from greyscale input image data. The method comprises (a) receiving first image data, said first image data being greyscale image data defining an input image, (b) performing a high frequency boost operation on the first image data to produce second image data, (c) performing a linear interpolation operation on the second image data to produce third image data, said third image data having a resolution higher than the resolution of the second image data, (d) performing a contrast enhancement operation on the third image data to produce fourth image data, and (e)thresholding the fourth image data to produce fifth image data, said fifth image data being binary image data defining an output image. The techniques find application, for example, in over-the-desk scanning of documents, and in video-conferencing.

Description: The present invention relates to image processing, and more particularly to techniques providing image enhancement and thresholding of images. There are numerous situations in which it would be desirable to be able to enhance the quality of images (for example, from cameras found in video-conferencing systems) which are stored, communicated and/or processed in (digital) electronic form. Also, such enhancement is desirable in order to produce efficient and high quality video scanning of document images in over-the-desk scanning systems such as those disclosed in EP-A-622,722 and British patent application 9614694.9 (agent's reference R/96007/JDR): these patent applications describe systems employing a video camera disposed above a desk and capturing images of documents which are displayed to a user. Over-the-desk scanning with video cameras has many advantages over traditional scanning techniques, as discussed in some detail in the aforementioned patent applications. A problem that that arises in the abovementioned systems is that of how to convert the images from the document camera to a form as close to the original paper image as possible. An obvious disadvantage with the scanners used in those systems is the poor resolution of existing TV cameras, which will only provide 100dpi (dots/inch) (4 dots/mm) greyscale over a desk-top footprint of 4"x3" (100mm x 75mm) (or about a quarter of a page). Numerous thresholding algorithms of varying degrees of complexity are known.Mitchel, J. et. al . "Graphics Image Coding for Freeze-Frame Videoconferencing," IEEE Trans. on Comms ., Vol. 37, No. 5, May 1989 consider the problem of document image coding for freeze-frame video conferencing. They map an 8 bits per pixel (bpp) image to 3 bpp which achieves their goal of increased coding efficiency. They do not generate a higher resolution binary image. Methods for generating a higher resolution binary image from a gray scale image are known from EP-A-651557 (preprocessing for printers) and from US-A-5546194 (conversion of TV images to the Group III fax standard) but they do not teach feature (b) of the appended claims. There is a need for image processing methods and systems able to generate high-resolution binary images so that traditional document image decoding algorithms involving morphological operations and connected component analysis may be used. In short, there is a need for computationally efficient conversion of low resolution greyscale images to higher resolution binary images, for example of documents in the desk-top environment. The present invention, as claimed in the appended claims, provides a method carried out in an image processing system, comprising: (a) receiving first image data, said first image data being greyscale image data defining an input image, (b) performing a high frequency boost operation on the first image data to produce second image data, (c) performing a linear interpolation operation on the second image data to produce third image data, said third image data having a resolution higher than the resolution of the second image data, (d) performing a contrast enhancement operation on the third image data to produce fourth image data, and (e) thresholding the fourth image data to produce fifth image data, said fifth image data being binary image data defining an output image. The invention further provides programmable image processing system when suitably programmed for carrying out the method of any of the appended claims or according to any of the particular embodiments described herein, the system including a processor, memory and input/output circuitry, the processor being coupled to said memory and operable in conjunction therewith to execute instructions corresponding to the steps of said method(s). The present invention provides techniques whereby resolution can be improved significantly, such as to 200dpi (8dots/mm). This resolution is equivalent to low-quality fax, which is sufficient for reasonable OCR and interactive text selection. In this way, for instance, it is possible to pass images directly to OCR tools such as TextBridge (available from Xerox Corp.). The advent of HDTV standards will cause the price of large CCD cameras to fall dramatically, and these same techniques will yield better/larger images. The invention is based on the assumption that the original document image is bimodal in colour space (typically black and white) and that the lighting conditions on the desk are within a specified tolerance. With these assumptions, a novel algorithm is employed for simultaneous resolution enhancement and thresholding. The algorithm uses a very efficient local averaging technique to maintain a local estimate of a background/foreground threshold. It is believed that the adaptive threshold is more important for capturing high spatial frequencies than for accommodating large lighting variations across the desk in over-the-desk scanning systems. However, when ambient lighting conditions are extremely poor, the method degrades in a graceful manner. As mentioned above, the techniques according to the invention can be applied to numerous application areas. These include stand-alone scanning device that allows the convenient transfer of data from paper to the electronic domain, and that of video-conferencing. Document cameras are already common tools, but they often yield poor quality images as the image coding algorithms are not usually for text images as they are usually designed for low-resolution high frame-rate image transmission. This problem is solved by the present invention. Useful types of paper document interface can be realised with the high resolution document cameras that are enabled with these techniques. On the one hand, these document cameras used as an alternative to fax, especially when the number of pages to be sent is small. On the other hand, it is possible to develop a collaborative tool for video-conferencing. The paper copy is "faxed" to the recipient via the document camera, and all subsequent bandwidth is used for the communication of cursor movements that represent the communicating parties' electronic annotations. In effect, this provides shared drawing application, but instead of the traditional white board background, the users see a fax quality image of the paper document under discussion. Of course, the users can elect to exchange the more usual TV resolution colour video where appropriate, for instance where appreciation of motion (talking heads) or 3D shape (a novel design or a broken part) is required. Embodiments of the invention will now be described, by way of example, with reference to the accompanying drawings, in which: Figure 1 is a flow chart illustrating the steps in performing image enhancement and thresholding in accordance with an embodiment of the present invention; Figures 2A to 2E show an exemplary original image and the state of the image at various stages in the chart of Fig. 1; Figures 3A to 3C illustrate a simple scheme for implementing the linear interpolation step in Fig. 1; Figure 4 shows the substeps employed in implementing the contrast enhancement step in Fig. 1; Figure 5 shows (a) a contrast enhancement function, and (b) the effect thereof, as employed in the process of Fig. 4; Figures 6A to 6F illustrates the effect of varying lighting conditions on the effect of the contrast enhancement substeps in Fig. 4; Figures 7A and 7B show the effect of the substep in Fig. 4 of computing a high gradient image; Figures 8A to 8C illustrate the method of partial sums technique as used in a substep of Fig. 4; Figures 9A to 9F shows images as presented in Fig. 6 but using adaptive contrast enhancement as shown in Fig. 4; Figures 10A and 10B show the effects on the operation of the techniques according to the invention under very poor lighting conditions; Figures 11A and 11B shows typical results of the techniques according to the invention under normal lighting conditions; and Figure 12 shows the results of OCR on the output image of Fig. 11. There are described below techniques for image enhancement andthresholding of images. A. System configuration It will be appreciated that the techniques according to the invention may be employed in any system or application where the production of enhanced binary image data frommultibit-per-pixel image data is required. Such instances include videoconferencing systems, scanning systems, multifunction devices, and the like. It will be appreciated that the invention may be implemented using a PC running Windows™, a Mac runningMacOS, or a minicomputer running UNIX, which are well known in the art. For example, the PC hardware configuration is discussed in detail in The Art of Electronics , 2nd Edn, Ch. 10, P. Horowitz and W. Hill, Cambridge University Press, 1989. In the case of over-the-desk scanning, the invention may form part of the systems described in any of EP-A-495,622, EP-A-622,722, or British patent application 9614694.9. The invention has been implemented in C++ on an IBM-compatible PC running Windows NT. B. Overview: image enhancement and thresholding Figure 1 is a flow chart illustrating the steps in performing image enhancement and thresholding in accordance with an embodiment of the present invention. The method used to convert low resolution greyscale to higher resolution binary images can be best described as a four stage process: performing a high frequency boost (step s1), increasing spatial resolution via linear interpolation (step s2), performing contrast enhancement (step s3), and thresholding (step s4). B.1 High frequency boost (deconvolution) Step s1 in Fig. 1 involves applying to the original image (greyscale) data a high frequency boost (or deconvolution operation). This is a well know document image processing technique (Gonzalez, R. C., Woods, R.E. "Digital Image Processing," Addison-Wesley 1992, pp 196, figure 1), which may be represented by High boost = (A)(Original) - Lowpass = (A- 1)(Original) + Original - Lowpass = (A- 1)(Original) + Highpass. Here the technique exploits the fact that the original image is bimodal and that it has been degraded by the camera/framestore image channel via a point spread function (psf). A standard technique has been used to estimate the psf. Instead, the strength of the high frequency boost (deconvolution) has been adjusted empirically. It turns out that the implicit noise enhancing nature of this stage of the processing is not as critical as one might imagine because of the non-linear contrast enhancing step described in stage 3. Figure 2A an example of an original image; and a typical result of this high frequency boost (deconvolution) step is shown in Fig. 2B. B.2 Spatial resolution via linear interpolation After high frequency boost (deconvolution), the image then undergoes a linear interpolation operation (step s2 in Fig. 1) This known technique may be used for increasing resolution, e.g. by doubling or trebling the number of pixels per linear dimension. A simple linear scheme for doubling or trebling spatial resolution is used, shown in Figs 3A to 3C. Linear interpolation techniques are discussed further in Jähne B., Digital Image Processing , Section 8.2.4, Springer-Verlag (1990). The result after linear this linear interpolation step is shown in Fig. 2(c). B.3 Contrast enhancement After linear interpolation at step s2 (Fig. 1), the image undergoes contrast enhancement. The result of the contrast enhancement is shown in Fig. 2D. The contrast enhancement stage is discussed in more detail in section C below. B.4 Thresholding After contrast enhancement at step s3 (Fig. 1), the image then undergoes thresholding (step s4), and the result is shown in Fig. 2E. This step is well known in the art, and is suitably performed with a threshold at 128 (for an 8bit/pixel image). This step relies on the fact that the contrast enhancement has done its job. Depending on the destination of the image, it is not necessarily a good thing to do. For example, if the image is to be printed, then leaving the greyscale around the characters can make the text look better. If OCR or faxing is required, thresholding is usually desirable. C. Techniques for contrast enhancement Figure 4 shows the substeps employed in implementing the contrast enhancement step in Fig. 1. The image at this stage is somewhat noisy as a result of the high-frequency boost. This stage removes much of this noise and the result is an image that is very nearly binary. We define a clipping function e(m) where m is the central value about which the grey level intensities are pushed towards black or white. Figure 5A shows this non-linear contrast enhancement function for m=128: the input grey levels are expanded about 128. Figure 5B shows the effect this clipping function has on a noisy smoothed edge feature in one dimension. Figures 6A to 6F illustrate the effect of varying lighting conditions on the effect of the contrast enhancement substeps in Fig. 4: Figs 6A to 6C show original images, and 6D to 6F the respective contrast enhanced images.. If the contrast enhancing operator e(128) were to be applied to the image good results would be obtained when the local threshold is close to 128 (see Fig. 6B and 6E). However, when lighting conditions on the desk are bad and there are specialities (Fig. 6A) or shadows (Fig. 6C) this simple process yields poor results. For the case of a speciality (Fig. 6A) the simplistic contrast enhancing operator pushes most of the pixels towards white (Fig. 6D) because most of the text edges are centred about a greyscale that is significantly greater than 128. Similarly, for the case of the shadow, most edges are centred about a greyscale that is significantly less than 128 and so much of the image will be pushed towards black (Fig. 6F). It is clear that there is a need to enhance the contrast about a local greyscale value to achieve better results. Referring to Fig. 4, it can be seen the contrast enhancement process commences with the step (s31) of computing a high gradient image. This is done by the technique of passing aSobel operator over the input image data (here denoted f(x,y) , i.e. the output of the preceding linear interpolation step). Sobel operators are discussed, for example, in Jähne B., Digital Image Processing, Section 6.3.2, Springer-Verlag (1990). Where there is a large response, the current pixel is returned; and when the response falls below an insensitive threshold, black (or zero) is returned. Figure 7 shows the effect of the substep in Fig. 4 of computing a high gradient image. In Fig. 7A there is shown an example of part of the Trier paper (Trier, O.D., Jain, A.K. "Goal-Directed Evaluation of Binarization Methods," IEEE Trans. on PAMI Vol. 17 No. 12 , December 1995) as seen by the camera. The shiny nature of the pages often causes specularities where the image becomes brighter. As is seen in Fig. 7B, an image is formed by the original grey levels of only the parts of the image with high gradient; elsewhere the image is black. This provides the high-gradient image required. If one looks closely, the grey levels corresponding to the local edge pixels are brighter about the specularity. It is from this image that the local edge values about which to perform contrast enhancement are estimated. Returning to Fig. 4, the image data ( g(x,y) ) for the high gradient image undergoes further processing to compute image sums (step s32). This involves computing This may be understood by consideration of Fig. 8. As shown in Fig. 8A, an image of sums S(x,y) can be constructed from the image of Fig. 7B where S(x,y) is defined to be the sum of all pixels in Fig. 7B in the rectangle to the left and above ( x,y ). With reference to Fig. 8B, it is necessary to compute the average high-gradient pixel in a regionNxN; and as depicted in Fig. 8C, this can be calculated from the image of sums via equation (1) below. Returning to Fig. 4, the image data ( S(x,y) ) is next operated on: while looping over all the pixels in the image, the necessary contrast enhancing steps (s34-s36) are carried out. For each pixel f i contrast enhancement must be performed about the grey level m i corresponding to the local average of the high-gradient pixels ( e(m) depends on the local average m(x,y) ). This is calculated (step s34) from an image shown in Fig. 7B using the method of partial sums (see (1) Preparata, F.P., Shamos, M.I. "Computational Geometry, An Introduction," Springer-Verlag , 1985, or (2) Omohundro, S.M., "Efficient Algorithms with neural network behaviour," Report No UIUCDS-R-87-133, Dept. Comp. Science, Univ. of Illinois at Urbana-Champaign, April 1987). With reference to Fig. 8, the sum of high-gradient pixels S i in a N by N neighbourhood about f i is given by: S i = S ( c,d )- S ( a,d )- S ( c,b )+ S ( a,b ) where S(x,y) is a element of the "sums" image depicted in Fig. 8A. A similar operation can be performed to find the number of high gradient pixels in the neighbourhood N i involving a sums image N(x,y) which is similarly computed from a binary version of g(x,y) . Clearly: m i = S i / N i . The important point about this is that we can calculate the local average of the high-gradient pixels at any scale (any neighbourhood size) with just four additions (1) and one division (2), once the image of sums has been computed, which is only done once for the whole image. This is a very efficient technique. Thus the contrast enhancing (clipping) function e(m) can be formed (step s35) for the given pixel of the image. This function is then applied to f(x,y) (the image pixel data resulting from the linear interpolation step) to produce the contrast enhanced image required. The quality of the enhancement using the locally adaptive contrast enhancement operator e(m i ) is shown in Fig. 9 (corresponding to the original and resultant images under different lighting conditions shown in Fig. 6): Figs 9A to 9C originals, Figs 9D to 9F respectively contrast enhanced results. The size of the neighbourhood has been chosen to be 7x7 at the original resolution. The improvement with respect to the images in Fig. 6 is quite distinct. There is one last detail to clarify for the contrast enhancement step. Namely, what happens when there are no high-gradient features in the neighbourhood. In this case, we assume that the lighting gradient in the image is not too severe, and so we use e(128). This is discussed further below. D. Degradation The fact that enhancement of the contrast is performed with e(128) when there are no features means in effect that it is assumed that 128 is a good threshold to use when image more than N pixels away from the nearest text feature are sought to be analysed, where N is the size of the local neighbourhood. This is not as bad an assumption as it sounds. Considering that adaptive thresholding is only really critical in the midst of text where high-spatial frequencies are attenuated and white never gets white (the white of the eye of an "e" rarely gets above 128) and black never gets black (the black of a dot of an "i" rarely gets below 128). It is in these situations that bad thresholding can cause OCR errors by merging or missing features. This therefore imposes a constraint on the severity of the permissible lighting gradients across the desk. Its failure mode is shown in Figs 10A and 10B: Fig. 10A is the original image and Fig. 10B the thresholded image. It can be seen that when the white background falls below 128 then it is missclassified as black. However, where there is text in these extreme parts of the image, the algorithm is still able to classify correctly. In this sense the algorithm is believed to degrade' gracefully. Many OCR algorithms would be able to filter out this artefact at the connected component level. E. Typical operation Figure 11 shows typical results of the techniques according to the invention under normal lighting condition: Fig. 11A original image, and Fig. 11B Binary image. Figure 12 shows the results of OCR on the output image of Fig. 11 B, using Xerox Corp.'s TextBridge. The present invention demonstrates an efficient method for trading greyscale resolution for spatial resolution in order to generate high quality binary images of text/graphics for document camera applications. These binary image can be printed, OCRd, faxed or used as a shared drawing tool backdrop for collaborative document work.

Claims: A method carried out in an image processing system, comprising: (a) receiving first image data, said first image data being greyscale image data defining an input image, input (b) performing a deconvolution operation (s1) on the first image data to produce second image data, (c) performing a linear interpolation operation (s2) on the second image data to produce third image data, said third image data having a resolution higher than the resolution of the second image data, (d) performing a contrast enhancement operation (s3) on the third image data to produce fourth image data, and (e) thresholding (s4) the fourth image data to produce fifth image data, said fifth image data being binary image data defining an output image. The method of claim 1, wherein step (d) comprises: (d1) applying a Sobel operator to said third image data (f(x,y)) to produce high gradient image data (g(x,y)). The method of claim 2, wherein step (d) further comprises: (d2) computing sum image data (s(x,y)) from partial sums of the high gradient image data (g(x,y)). The method of claim 3, wherein the sum image data (s(x,y)) is computing from The method of claim 3 or 4, wherein step (d) further comprises: for each pixel datum of the third image data (f(x,y)), (d3) applying a contrast enhancement function (e(m)) to the third image data, said contrast enhancement function being dependent on a local average (m(x,y)) of pixel data. The method of claim 5, wherein step (d3) comprises the steps of: (d3i) computing a local average (m(x,y)) of pixel data, (d3ii) forming the contrast enhancing function (e(m)) based on said local average, and (d3iii) applying the contrast enhancement function (e(m)) to the third image data. A programmable image processing system when suitably programmed for carrying out the method of any of the preceding claims, the system including a processor, memory and input/output circuitry, the processor being coupled to said memory and operable in conjunction therewith to execute instructions corresponding to the steps of said method. An interactive desktop system comprising a work surface, a display device for displaying images in a display area, an image capture device for capturing images present on the work surface, and processor means, coupled to the display device and said image capture device, the system further including: (a) means for receiving first image data, said first image data being greyscale image data defining an input image corresponding to one or more captured images, (b) means for performing a high frequency boost operation on the first image data to produce second image data, (c) means for performing a linear interpolation operation on the second image data to produce third image data, said third image data having a resolution higher than the resolution of the second image data, (d) means for performing a contrast enhancement operation on the third image data to produce fourth image data, (e) means for thresholding the fourth image data to produce fifth image data, said fifth image data being binary image data defining an output image, and (f) means for causing the display in at least a portion of said display area of said output image. A communications system including at least two nodes coupled by communications link, each node including a display device for displaying images in a display area, an image capture device for capturing images, and processor means, coupled to the display device and said image capture device, each node further including: (a) means for receiving first image data, said first image data being greyscale image data defining an input image corresponding to one or more captured images, (b) means for performing a high frequency boost operation on the first image data to produce second image data, (c) means for performing a linear interpolation operation on the second image data to produce third image data, said third image data having a resolution higher than the resolution of the second image data, (d) means for performing a contrast enhancement operation on the third image data to produce fourth image data, (e) means for thresholding the fourth image data to produce fifth image data, said fifth image data being binary image data defining an output image. (f) means for transmitting the fifth image data to another node, and (g) means, at each node, for causing the display in at least a portion of said display area of an output image corresponding to any said fifth image data transmitted to the node.

Inventors: TAYLOR MICHAEL J DR, ZAPPALA ANTHONY R, TAYLOR, MICHAEL J., DR., ZAPPALA, ANTHONY R.
Applicants: XEROX CORP, XEROX CORPORATION
Application year: 1998
Main classification: G06T5
IPC codes: G06T5, H04N1, G06K9