WO1992004691A1 - Dot-matrix video enhancement for optical character recognition - Google Patents

Dot-matrix video enhancement for optical character recognition Download PDF

Info

Publication number
WO1992004691A1
WO1992004691A1 PCT/US1991/006021 US9106021W WO9204691A1 WO 1992004691 A1 WO1992004691 A1 WO 1992004691A1 US 9106021 W US9106021 W US 9106021W WO 9204691 A1 WO9204691 A1 WO 9204691A1
Authority
WO
WIPO (PCT)
Prior art keywords
pixels
black
white
pixel
white pixels
Prior art date
Application number
PCT/US1991/006021
Other languages
French (fr)
Inventor
Peter Rudak
George Anthony Hadgis
Original Assignee
Eastman Kodak Company
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Eastman Kodak Company filed Critical Eastman Kodak Company
Priority to DE69127887T priority Critical patent/DE69127887T2/en
Priority to EP91916244A priority patent/EP0498873B1/en
Publication of WO1992004691A1 publication Critical patent/WO1992004691A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/20Image enhancement or restoration using local operators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/20Combination of acquisition, preprocessing or recognition functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition

Definitions

  • OCR Recognition
  • Implementation of the present invention is capable of processing the image data at the full data rate (real-time processing) of the scanning device's output.
  • the invention could also be applied to a stored image.
  • OCR Optical Character Recognition
  • Optical Character Recognition (OCR) devices require that a document be scanned and digitized. Once the image has been digitized and processed to correct for any discrepancies, the image data is stored in a memory device. The OCR device then examines the image data to determine the identity of each character stored in the memory. In doing so, the text image data is converted to a string of numerical codes (such as ASCII), thus retaining the identity of each individual character for future reference. The numerical codes can then be entered into a database or filed for data manipulation.
  • OCR offers increased read rates and higher throughput than manual data entry.
  • OCR devices are only capable of processing a predetermined set of text characters. Because the forms processing industry accepts forms from many different sources, OCR devices must be capable of handling a variety of documents printed by many different printer devices. Currently, the OCR sites are forced to sort their documents, separating them into two classes of documents:
  • OCR-readable and non-OCR readable text documents In the latter case, manual data entry is required since OCR read accuracy of this class form is very poor.
  • the non-OCR-readable text class of documents includes handwritten text and text printed with a dot-matrix printer, as well as poor quality text (broken characters) resulting from the use of worn ribbons used in conjunction with daisy wheel or near-letter quality printers.
  • the present invention relates to dot-matrix printed text by correcting the image data so as to eliminate discontinuities inherent to the way in which dot-matrix characters are printed, in effect creating continuous lines and curves from dot patterns generated by a dot-matrix print head. After having been so processed, the OCR device is able to analyze the image data and
  • discontinuities in the branch component as any discontinuities would cause additional branch components to be created. Occasionally, undesired discontinuities may exist. To correct for these discontinuities, adjacent branch components are compared to determine if any can be connected together. However, in the case of dot-matrix generated text, such discontinuities are inherently present because of the spacing of the printing elements. These inherent discontinuities create many different branch components, thereby making it difficult for such an apparatus to determine which branch components need to be connected.
  • Roger S. Gaborski disclosed a method for improving broken or weak character image data.
  • This invention was primarily concerned with evaluating neighboring regions to determine the percentage of black pixels within a region. The areas between the neighboring regions are, given a particular threshold, filled in so that the lines and curves of the character are smooth. It does not consider the spacing between the dots but rather the percentage of black pixels within specific regions. Also, none of the previous algorithms was implemented with real-time processing capability. They relied on a stored image in memory which could be manipulated via a software program. Disclosure of the Invention
  • an M x M array of binary pixels is examined, and based on the number of white pixels between two black pixels, it is determined whether or not the white pixels should be converted to black pixels.
  • Figure 1 illustrates an actual bit-mapped video representation of a dot-matrix printed letter "B"
  • Figures 2A-2B illustrate the basic rules in one-dimension assuming that the minimum allowed white pixel run length is four;
  • Figures 3A-3D illustrate the application of the basic rules applied in Figures 2A-2B but in two dimensions;
  • Figure 4 illustrates the M x M matrix as it would appear in the initial position on the image
  • Figure 5 is a flowchart for the current invention
  • Figure 6A is a partially processed image illustrating the effect of not implementing the qualification pixels
  • Figure 6B is an enlarged view of the 5 x 5 matrix of pixels in the image of Figure 6A;
  • Figures 7A-7D illustrate the set of rules for a 5 x 5 matrix with qualification pixels added
  • Figure 8 is an illustration of the image after processing, using the present invention with qualification pixels
  • Figure 9 is an illustration of the matrix mapping indices.
  • Figures 10A-10C are block diagrams of the circuits for implementing the present invention in a real time basis.
  • the digitized image data of the "B" that was printed by a dot-matrix printer is comprised of individual dots 12 and spaces 14 which correspond to the location of the pins of the print head, as it moves across the document to create the character.
  • Each dot 12 and space 14 is made up of a collection of pixels 10.
  • Figure 2A represents a one-dimensional bit pattern wherein the rules to be applied specify that white pixel runs of less than four pixels shall not exist and all white pixels runs of four or more pixels shall remain unchanged.
  • the present invention examines the end reference pixels 16-24 and the pixel spaces 26-32 between them with the end reference pixels 16-24 being defined as any black pixels within a
  • end reference pixels 16 and 18 are
  • end reference pixels 18 and 20 are considered end reference pixels separated by a white pixel run of two white pixels 28.
  • FIG. 3A The processing for a two-dimensional image in the horizontal direction is illustrated in Figure 3A.
  • Figs. 3B-3D illustrate the application of the above rules in the vertical (Fig. 3B) and diagonal directions as shown in Figs. 3C and 3D. Because the space to be considered between pixels is limited to only a few pixels, the rules need only be applied to a small portion of the image at a time. In the above example, it is specified that white pixel runs of less than four shall not be allowed to exist. This suggests that a 5 x 5 matrix of image data could be constructed as illustrated in Figures
  • FIG. 5 illustrates the flowchart for the procedures described above.
  • a line counter is used to monitor the current scan line (vertical) position of the pixel grid over the image 42. Each time a complete scan line 46 has been processed, this line counter is incremented by one.
  • a pixel counter is used to monitor the current position (horizontal) of the pixel grid over the image. As the pixel grid is shifted from left to right across the image, the pixel counter is incremented by one for each shift.
  • Step 52 entitled “interpolate” carries out the process described above by applying the set of rules described earlier.
  • Step 54 causes the pixel grid to be shifted across the bit mapped image after each pixel grid has been processed. As a scan line is completed, step 56 repositions the pixel grid to the left-most position of the next scan line.
  • Figure 6A illustrates how the image shown in Figure 1 would appear after processing the first few pixels.
  • a problem is encountered in this example concerning the left diagonal in the current pixel grid location.
  • Figure 6B is an enlarged view of the pixel grid shown in Figure 6A at the current location in the image of Figure 6A. Because pixels 58 through 62 are black, pixel 64 would, based on the current rules, be converted to black. As a result, unwanted areas, specifically corners of perpendicular intersections of lines, would be filled-in, distorting the image.
  • qualification pixels 66 and 68 are added to the pixel grid as shown in Figure 6B.
  • the qualification pixels 66 and 68 are used to detect perpendicular intersections of lines and limit the amount of rounding that may occur during this process. Using the basic rules, pixel 64 would be filled because pixels 58 through 62 are black. The qualification pixels 66 and 68 add additional requirements.
  • qualification pixel 66 is black, pixel 64 would not be filled in with black.
  • the basic rules are modified. The modified rules require that in order to fill in any run lengths, the end reference pixels must be black and both qualification pixels must be white.
  • FIGs 7A-7D show the use of the qualification pixel described above in the horizontal, vertical, and both diagonal directions as illustrated in Figures 7A-7D.
  • Pixels 70 and 72 comprise the white pixel run length that may be changed based on the state of the end reference pixels 74 and 76 and qualification pixels 78 and 80 as previously defined.
  • Figs. 7A-7D show all the variations that may occur using qualification pixels in the vertical and horizontal directions as well as in both diagonal directions.
  • the end reference pixels are solid black (74 and 76)
  • the white pixels (70, 72) are lightly stippled with the qualification pixels (78, 80) shown heavily stippled.
  • the last drawing in each of the Figures 7A-7D shows a single white pixel in the center rather than two or three, as shown earlier.
  • Figure 8 illustrates how the original letter "B" shown in Figure 1 would appear after it had been fully processed using the rules described. Processing Algorithm
  • the M x M pixel grid discussed above can be represented in matrix form as indicated in Fig. 9.
  • the center pixel is the current pixel of interest and all indices into the matrix are referenced relative to this center pixel of interest.
  • C 1.
  • M defines the matrix size with values greater than or equal to 3.
  • variable "a” is a range variable defining the valid range of offsets for the pixels within the matrix that can be changed relative to the center pixel, where: -integer[(M-1)/2] ⁇ a ⁇ integer [M/2]
  • indices for the end reference pixels in the matrix are defined using the subscripts i
  • Equation 1 (below) defines the center pixel of the matrix.
  • the center pixel takes on the fill value if any combination of end reference pixels are of the same fill value in any direction.
  • the first term of equation 1 tests the vertical end reference pixels, the second term checks the horizontal end reference pixels, the third term tests the right diagonal end reference pixels, and the fourth term checks the left diagonal and end reference pixels.
  • n 0,0 remains unchanged.
  • Equation (2) Otherwise, n 0,a remains unchanged.
  • Equation (3) Otherwise, n a,0 remains unchanged.
  • n a,a remains unchanged.
  • n a,-a remains unchanged.
  • Eguation 6 defines the center pixel of the matrix.
  • the center pixel takes on the fill value if any combination of end reference pixels are of the same fill value in any direction provided that the qualification pixel in the perpendicular direction is of the same fill value.
  • equation 6 tests the vertical end reference pixels and their perpendicular qualification pixels
  • the second term checks the horizontal end reference pixels and their perpendicular qualification pixels
  • the third term tests the right diagonal end
  • n 0,0 C for any
  • n 0,0 remains unchanged.
  • Equation (7) Otherwise, n 0,a remains unchanged.
  • Equation (8) Otherise, n a,0 remains unchanged.
  • Equation (9) Otherwise, n a,a remains unchanged.
  • n a,-a remains unchanged.
  • the use of an M x N matrix in the algorithm is possible.
  • the values of M and N are dependant upon the dot resolution of the dot matrix printer as well as the pixel resolution of the scanning device in both the x and y directions. If we assume that the resolutions are the same in both the x and y directions, then the application of an M x M matrix makes sense. It also has advantages when being implemented in hardware for real time operation. However, should the resolutions be different in the x and y directions, then it may be desirable to implement an M x N matrix.
  • N is the smaller dimension (y direction)
  • N should be chosen to ensure that dots in the diagonal directions can be connected. For example, if the dot spacing in the diagonal direction is 4 pixels, then N should be chosen to be 6. It should be noted that for the asymmetrical matrix in the present example, the rules are
  • the diagonal directions are at 45 degree angles with the horizontal and/or vertical directions.
  • the same idea could be expanded to include the case where angles other than 45 degrees are desired. Such is the case with different resolutions in the x and y directions.
  • an interpolation could be done between the end reference pixels to determine which pixels in between should be filled in. For example, a square matrix (5 x 5) would have the following left diagonal with a 45 degree angle to the horizontal: 1 0 0 0 0 0
  • An asymmetrical matrix (such as 7 x 4) might have the following left diagonal with approximately a 30 degree angle to the horizontal:
  • the algorithm could also be used with only a subset of the four directions discussed above. For example, only the horizontal and vertical directions could be considered, or in an extreme case, perhaps only the horizontal or only the vertical direction is to be considered. In this case, an M x 1 or 1 x M matrix would be constructed.
  • Figure 10A illustrates the block diagram for implementing the present invention and is comprised of a multiple line store register 82 for the temporary storage of scan line data, a look-up table 84 used to apply the equations to the matrix, and a 5x5 pixel regi ster matrix 86.
  • an interface is used to allow the above circuits to be coupled to a microprocessor (not shown) for
  • bit mapped image data is viewed as being shifted across a stationary pixel grid using a 5x5 pixel grid matrix as described below. This method is better suited for a hardware implementation.
  • Binary image data is synchronously transmitted serially starting in the upper left-hand corner of the image.
  • the data is transmitted to the circuit one pixel at a time from left to right, across a scan line 46 (Fig. 4). Once a complete scan line has been transmitted, the next scan line is sent in a similar fashion.
  • the output of the scanning device is serially transmitted on a pixel by pixel basis from left to right , and top to bottom of the image.
  • Multiple line store register 82 is a memory device capable of storing M (vertical dimension of pixel register matrix) complete scan lines. Each of the FIFO's in multiple line store register 82 is capable of shifting binary data serially in such a way that the first pixel shifted in is the first pixel shifted out.
  • a First-In First-Out (FIFO) line buffer is such an apparatus. Because the preferred embodiment of the present invention uses a 5x5 pixel grid matrix, the multiple line store register 82 would require 5 FIFO line buffers 88-96.
  • the purpose of the multiple line store register 82 is to maintain vertical alignment of the scan lines being processed. Accordingly, the use of multiple line store register 82 insures that the first pixel of a given scan line will be above or below the first pixel of the previous or next scan line,
  • FIG. 10B illustrates the vertical alignment required using FIFO line buffers 88-96 in multiple line store register 82. Pixel 1 of line n+2 is vertically aligned over pixel 1 of line n+1 which in turn is aligned with pixel 1 of line n.
  • Fig. 10A shows the output of FIFO line buffer 88 feeding cell "u" of pixel register matrix 86 and eventually feeding FIFO line buffer 90 in Figure 10B.
  • FIFO line buffer 90 feeds cell “p” of pixel register matrix B6, which in turn feeds FIFO line buffer 92 and so on.
  • FIFO line buffer 96 the output feeds cell “a” of pixel register matrix 86.
  • the output of cell “e” of the pixel register matrix 86 is used as the output of the circuit rather than an input to another line store register.
  • a block diagram of the look-up table 84 is shown in Fig. 10C.
  • a Random Access Memory (RAM) device can be used for the look-up table 84.
  • RAM Random Access Memory
  • a corresponding table output can be created which follows the preestablished set of rules.
  • 25 address bits would exist for a total of 2 25 - 33,554,432 addressable locations or in the general case,
  • pixel register elements g , h, i, l, m, n, q, r, and s are the only elements that can be changed.
  • the input to these pixel register elements is the output of the look-up table 84. All other elements remain unchanged as the image data is shifted through the matrix. For example, pixel register matrix cell “a” would shift into pixel register matrix cell “b” unchanged. Whereas, pixel register matrix cell “g” would shift into pixel register matrix cell “h” via the look-up table 84. In this way, the input to pixel register matrix cell “h” would be a function of all the predefined inputs to the look-up table 84.
  • Image processing is accomplished when binary pixels are synchronously shifted into FIFO line buffer 88 and into the pixel register matrix 86 cell "u". Similarly, as the image data is processed through the pixel register matrix 86, it is
  • FIFO line buffer 90 synchronously shifted into FIFO line buffer 90.
  • FIFO line buffers 92-96 are synchronously loaded and unloaded, supplying image data to the pixel register matrix 86 for processing.
  • the output of pixel register matrix 86 cell "e" is used as the output of the circuit.
  • the present invention has been implemented in both software and hardware and found to improve OCR read rates of draft quality dot-matrix printed text dramatically.
  • Dot-matrix text printed with a used ribbon resulted with OCR read rates of
  • OCR read rates were increased to 92%. Text printed with a better ribbon was found to have OCR read rates of 92%.
  • OCR read rates increased to 97% and with the use of qualification pixels it further increased to 98%. Because of the sequential nature of
  • the present invention is used to improved OCR read rates of draft quality dot-matrix printed text. Specifically, the present invention
  • scanned line drawings may sometime contain broken lines. It may be useful for drawings where there is good (greater than M+1) pixel separation of discrete lines.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Image Processing (AREA)
  • Character Input (AREA)

Abstract

A method and apparatus for eliminating discontinuities inherent to binary digital image data when hard copy text is generated by a dot-matrix printer. An M x M matrix is moved over a bit-mapped image of said text one pixel at a time, and for each pixel position, pixels are selectively converted from white to black based on a predetermined set of rules.

Description

DOT-MATRIX VIDEO ENHANCEMENT FOR OPTICAL CHARACTER
RECOGNITION
Technical Field of the Invention
The present invention relates to pre-processing for improving Optical Character
Recognition (OCR) read rates of text generated with a dot-matrix print head, as well as improving read rates of poor quality text that may result from worn ribbons when used in conjunction with daisy wheel or near-letter quality printers. Specifically, the binary video image data of a dot-matrix character is modified prior to processing by an OCR device.
Implementation of the present invention is capable of processing the image data at the full data rate (real-time processing) of the scanning device's output. The invention could also be applied to a stored image.
Background of the Invention
Optical Character Recognition (OCR) devices require that a document be scanned and digitized. Once the image has been digitized and processed to correct for any discrepancies, the image data is stored in a memory device. The OCR device then examines the image data to determine the identity of each character stored in the memory. In doing so, the text image data is converted to a string of numerical codes (such as ASCII), thus retaining the identity of each individual character for future reference. The numerical codes can then be entered into a database or filed for data manipulation.
In applications where many forms are to be processed, OCR offers increased read rates and higher throughput than manual data entry.
Unfortunately, OCR devices are only capable of processing a predetermined set of text characters. Because the forms processing industry accepts forms from many different sources, OCR devices must be capable of handling a variety of documents printed by many different printer devices. Currently, the OCR sites are forced to sort their documents, separating them into two classes of documents:
OCR-readable and non-OCR readable text documents. In the latter case, manual data entry is required since OCR read accuracy of this class form is very poor.
The non-OCR-readable text class of documents includes handwritten text and text printed with a dot-matrix printer, as well as poor quality text (broken characters) resulting from the use of worn ribbons used in conjunction with daisy wheel or near-letter quality printers. The present invention relates to dot-matrix printed text by correcting the image data so as to eliminate discontinuities inherent to the way in which dot-matrix characters are printed, in effect creating continuous lines and curves from dot patterns generated by a dot-matrix print head. After having been so processed, the OCR device is able to analyze the image data and
determine the numerical codes for the bit-mapped images more accurately.
In the past, there have been numerous inventions that examine the binary image data and correct for discontinuities in the characters. One such invention is disclosed in US Patent 3,609,685 by Edward Samuel Deutch, and describes a method for correcting the image prior to recognition. The method is ideal for correcting image data that has discontinuities that are not inherent to the shape of the character. This invention examined the shape of the character that had been scanned, digitized, and stored in a memory device. The image was examined by tracing the character's shape to
determine the individual branch components that make up the character. In order to accurately identify the simplest branch component of the character, the invention required that there not be any
discontinuities in the branch component, as any discontinuities would cause additional branch components to be created. Occasionally, undesired discontinuities may exist. To correct for these discontinuities, adjacent branch components are compared to determine if any can be connected together. However, in the case of dot-matrix generated text, such discontinuities are inherently present because of the spacing of the printing elements. These inherent discontinuities create many different branch components, thereby making it difficult for such an apparatus to determine which branch components need to be connected.
US Patent 4,791,679, by Lori L. Barski and
Roger S. Gaborski, disclosed a method for improving broken or weak character image data. This invention was primarily concerned with evaluating neighboring regions to determine the percentage of black pixels within a region. The areas between the neighboring regions are, given a particular threshold, filled in so that the lines and curves of the character are smooth. It does not consider the spacing between the dots but rather the percentage of black pixels within specific regions. Also, none of the previous algorithms was implemented with real-time processing capability. They relied on a stored image in memory which could be manipulated via a software program. Disclosure of the Invention
It is the principle objective of the present invention to overcome many of the
shortcomings encountered in the past and to modify the video image data of dot-matrix printed text in such a way that OCR read accuracy is improved.
Accordingly, an M x M array of binary pixels is examined, and based on the number of white pixels between two black pixels, it is determined whether or not the white pixels should be converted to black pixels.
It is another objective of the present invention to perform the above mentioned task without the need for storing the complete image in a memory device, but rather only store as much of the image as needed to perform the task on each
sub-section of the image.
It is still another objective of the present invention to process the image data as described above without any reduction in throughput of the image data as it is passed from the scanning device, or any other in-line process, to the OCR device's memory.
Brief Description of the Drawings
Figure 1 illustrates an actual bit-mapped video representation of a dot-matrix printed letter "B";
Figures 2A-2B illustrate the basic rules in one-dimension assuming that the minimum allowed white pixel run length is four;
Figures 3A-3D illustrate the application of the basic rules applied in Figures 2A-2B but in two dimensions;
Figure 4 illustrates the M x M matrix as it would appear in the initial position on the image;
Figure 5 is a flowchart for the current invention; Figure 6A is a partially processed image illustrating the effect of not implementing the qualification pixels;
Figure 6B is an enlarged view of the 5 x 5 matrix of pixels in the image of Figure 6A;
Figures 7A-7D illustrate the set of rules for a 5 x 5 matrix with qualification pixels added;
Figure 8 is an illustration of the image after processing, using the present invention with qualification pixels;
Figure 9 is an illustration of the matrix mapping indices; and
Figures 10A-10C are block diagrams of the circuits for implementing the present invention in a real time basis.
Modes of Carrying Out the Invention
Referring to Figure 1, it can be seen that the digitized image data of the "B" that was printed by a dot-matrix printer is comprised of individual dots 12 and spaces 14 which correspond to the location of the pins of the print head, as it moves across the document to create the character. Each dot 12 and space 14 is made up of a collection of pixels 10. By examining the spaces 14 between dots 12 and applying a set of rules to the image data, the spaces 14 may be filled in.
In order to understand the fundamentals of the present invention, it is better to first
understand the one-dimensional case. Figure 2A represents a one-dimensional bit pattern wherein the rules to be applied specify that white pixel runs of less than four pixels shall not exist and all white pixels runs of four or more pixels shall remain unchanged. The present invention examines the end reference pixels 16-24 and the pixel spaces 26-32 between them with the end reference pixels 16-24 being defined as any black pixels within a
neighborhood of white pixels that are used in determining the white pixel run length. For
example, end reference pixels 16 and 18 are
considered end reference pixels separated by a white pixel 26. Similarly, end reference pixels 18 and 20 are considered end reference pixels separated by a white pixel run of two white pixels 28. In this example, all cases where there are less than four adjacent white pixels separating the end reference pixels, the rule requires that the adjacent pixels, be converted to black pixels as illustrated in
Figure 2B, where white pixel 26 and white pixel runs 28 and 30 would be converted to black pixels.
However, pixel run 32 would remain white.
The processing for a two-dimensional image in the horizontal direction is illustrated in Figure 3A. Figs. 3B-3D illustrate the application of the above rules in the vertical (Fig. 3B) and diagonal directions as shown in Figs. 3C and 3D. Because the space to be considered between pixels is limited to only a few pixels, the rules need only be applied to a small portion of the image at a time. In the above example, it is specified that white pixel runs of less than four shall not be allowed to exist. This suggests that a 5 x 5 matrix of image data could be constructed as illustrated in Figures
3A-3D. Each dimension will require 5 pixels, two for the end reference pixels 34 and 36 and three for the maximum pixel run in between 38. Or, in more general terms, an M x M matrix would be used where M = the maximum pixel run length which is the maximum pixel spacing between two dots (that could be changed) plus two end reference pixels 34 and 36. Figure 4 illustrates how these rules may be applied to a binary image. A pixel grid matrix 40 of size M x M where M = 5 in the present example, is laid over the image 42. The rules are then applied to the M x M pixel grid matrix 40. Once the pixels in the pixel grid 40 have been processed and the necessary pixels changed, the pixel grid 40 can be thought of as being shifted to the right by one pixel 44 (Fig. 4) and the process repeated again. This process continues until the end of the scan line 46 is reached. Next, the pixel grid 40 is repositioned to the leftmost pixel of the next scan line. Again, the process of applying the rules and shifting the pixel grid 40 is done until the entire image has been processed. The resulting modified video data can now be used by the OCR apparatus.
Figure 5 illustrates the flowchart for the procedures described above. In step 48, a line counter is used to monitor the current scan line (vertical) position of the pixel grid over the image 42. Each time a complete scan line 46 has been processed, this line counter is incremented by one. Similarly, in step 50, a pixel counter is used to monitor the current position (horizontal) of the pixel grid over the image. As the pixel grid is shifted from left to right across the image, the pixel counter is incremented by one for each shift. Step 52 entitled "interpolate" carries out the process described above by applying the set of rules described earlier. Step 54 causes the pixel grid to be shifted across the bit mapped image after each pixel grid has been processed. As a scan line is completed, step 56 repositions the pixel grid to the left-most position of the next scan line.
Figure 6A illustrates how the image shown in Figure 1 would appear after processing the first few pixels. A problem is encountered in this example concerning the left diagonal in the current pixel grid location. Figure 6B is an enlarged view of the pixel grid shown in Figure 6A at the current location in the image of Figure 6A. Because pixels 58 through 62 are black, pixel 64 would, based on the current rules, be converted to black. As a result, unwanted areas, specifically corners of perpendicular intersections of lines, would be filled-in, distorting the image.
To avoid this type of problem,
qualification pixels 66 and 68 are added to the pixel grid as shown in Figure 6B. The qualification pixels 66 and 68 are used to detect perpendicular intersections of lines and limit the amount of rounding that may occur during this process. Using the basic rules, pixel 64 would be filled because pixels 58 through 62 are black. The qualification pixels 66 and 68 add additional requirements.
Because qualification pixel 66 is black, pixel 64 would not be filled in with black. By adding the qualification pixel requirements, the basic rules are modified. The modified rules require that in order to fill in any run lengths, the end reference pixels must be black and both qualification pixels must be white.
Because perpendicular intersections of lines are common in all four directions, as
previously discussed, the use of the qualification pixel described above must be applied in the horizontal, vertical, and both diagonal directions as illustrated in Figures 7A-7D. Pixels 70 and 72 comprise the white pixel run length that may be changed based on the state of the end reference pixels 74 and 76 and qualification pixels 78 and 80 as previously defined. Figs. 7A-7D show all the variations that may occur using qualification pixels in the vertical and horizontal directions as well as in both diagonal directions. In all cases in Figs. 7A-7D, the end reference pixels are solid black (74 and 76), the white pixels (70, 72) are lightly stippled with the qualification pixels (78, 80) shown heavily stippled. The last drawing in each of the Figures 7A-7D shows a single white pixel in the center rather than two or three, as shown earlier.
Figure 8 illustrates how the original letter "B" shown in Figure 1 would appear after it had been fully processed using the rules described. Processing Algorithm
The M x M pixel grid discussed above can be represented in matrix form as indicated in Fig. 9. The center pixel is the current pixel of interest and all indices into the matrix are referenced relative to this center pixel of interest.
In the equations below, variable "C" defines the fill (black) value and is based on whether the image is positive (0=white, 1=black) or negative (0=black, 1=white). In the present
example, C=1. The variable "M" defines the matrix size with values greater than or equal to 3.
Using the matrix shown in Fig. 9, the following equations are applied which generalize the previously defined basic set of rules as the pixel grid is shifted across and down the image. The variable "a" is a range variable defining the valid range of offsets for the pixels within the matrix that can be changed relative to the center pixel, where: -integer[(M-1)/2] < a < integer [M/2]
The indices for the end reference pixels in the matrix are defined using the subscripts i
(positive end reference pixel) and j (negative end reference pixel) where:
0 < i ≤ integer [M/2]
-integer[(M-1)/2] ≤ j < 0
Equation 1 (below) defines the center pixel of the matrix. The center pixel takes on the fill value if any combination of end reference pixels are of the same fill value in any direction. The first term of equation 1 tests the vertical end reference pixels, the second term checks the horizontal end reference pixels, the third term tests the right diagonal end reference pixels, and the fourth term checks the left diagonal and end reference pixels. n0,0 = C for any [(n0,i = C and n0,j = C) or
(ni,0 = C and nj,0 = C) or
(ni,i = C and nj,j = C) or
(ni,-i = C and nj , -j = C)]
Equation (1)
Otherwise, n0,0 remains unchanged.
For M > 3, equations (2) through (5) also apply. In these cases, more than the center pixel is considered for changing pixel values. The index for each additional pixel is referenced by the subscript "a" and is bound by both end reference pixels. Equation 2 defines the vertical pixels of the matrix and is a subset of equation 1. n0,a = C for any (n0,i = C and n0, j = C)
Equation (2) Otherwise, n0,a remains unchanged.
This equation defines the horizontal pixels of the matrix and is a subset of equation 1. na ,0 = C for any (ni,0 = C and nj, 0 = C)
Equation (3) Otherwise, na,0 remains unchanged.
This equation defines the right diagonal pixels of the matrix and is a subset of equation 1. na ,a = C for any (ni,i = C and nj, j = C)
Equation (4)
Otherwise, na,a remains unchanged.
This equation defines the left diagonal pixels of the matrix and is a subset of equation 1. na ,-a= C for any (ni,- i= C and nj, -j= C)
Equation (5)
Otherwise, na,-a remains unchanged.
The above equations can be expanded to support the concept of qualification pixels as follows. The addition of the qualification pixels requires that the indices for the qualification pixels be defined as follows.
I = iiteger[M/2] and J = -integer [(M-1)/2] Eguation 6 defines the center pixel of the matrix. The center pixel takes on the fill value if any combination of end reference pixels are of the same fill value in any direction provided that the qualification pixel in the perpendicular direction is of the same fill value. The first term of
equation 6 tests the vertical end reference pixels and their perpendicular qualification pixels, the second term checks the horizontal end reference pixels and their perpendicular qualification pixels, the third term tests the right diagonal end
reference pixels and their perpendicular
qualification pixels, and the fourth term checks the left diagonal end reference pixels and their
perpendicular qualification pixels. n0,0 = C for any
[(n0,i = C and n0, j = C and nI, 0 ≠ C and
nJ,OC) or
(ni,0 = C and nj,0 = C and n0,I ≠ C and
n0,J ≠ C) or
(ni ,i = C and nj,j = C and nI,-I ≠ C and
n J, -J ≠ C) or
(ni, -i = C and nj,-j = C and nI,I≠ C and
nJ , J≠ C)]
Equation (6)
Otherwise, n0,0 remains unchanged.
For M > 3, equations (7) through (10) also apply. In these cases, more than the center pixel is considered for changing pixel values. The index for each additional pixel is referenced by the subscript "a" and is bound by both end reference pixels. Equation 7 defines the vertical pixels of the matrix and is a subset of equation 6. n0,a = C for any (n0,i = C and n0,j = C and
nI,0 ≠ C and nj,0 = C)
Equation (7) Otherwise, n0,a remains unchanged.
This equation defines the horizontal pixels of the matrix and is a subset of equation 6. na,0 = C for any (ni,0 = C and nj,0 = C and
n0,I≠ C and n0,J ≠ C)
Equation (8) Otherise, na,0 remains unchanged.
This equation defines the right diagonal pixels of the matrix and is a subset of equation 6. na,a = C for any (ni,i = C and nj,j = C and
nI,-I ≠ C and nJ,-J ≠ C)
Equation (9) Otherwise, na,a remains unchanged.
This equation defines the left diagonal pixels of the matrix and is a subset of equation 6. na,-a = C for any (ni,-1 = C and nj,-j = C and nI,I≠ C and nJ,J ≠ C)
Equation (10)
Otherwise, na,-a remains unchanged. The use of an M x N matrix in the algorithm is possible. The values of M and N are dependant upon the dot resolution of the dot matrix printer as well as the pixel resolution of the scanning device in both the x and y directions. If we assume that the resolutions are the same in both the x and y directions, then the application of an M x M matrix makes sense. It also has advantages when being implemented in hardware for real time operation. However, should the resolutions be different in the x and y directions, then it may be desirable to implement an M x N matrix.
Assuming N is the smaller dimension (y direction), then N should be chosen to ensure that dots in the diagonal directions can be connected. For example, if the dot spacing in the diagonal direction is 4 pixels, then N should be chosen to be 6. It should be noted that for the asymmetrical matrix in the present example, the rules are
modified in such a way that the x direction accounts for pixel spacings of M - 2 while the remaining directions account for N - 2 pixel spacings.
The above discussion assumes that the diagonal directions are at 45 degree angles with the horizontal and/or vertical directions. The same idea could be expanded to include the case where angles other than 45 degrees are desired. Such is the case with different resolutions in the x and y directions. In this case, an interpolation could be done between the end reference pixels to determine which pixels in between should be filled in. For example, a square matrix (5 x 5) would have the following left diagonal with a 45 degree angle to the horizontal: 1 0 0 0 0
0 1 0 0 0
0 0 1 0 0
0 0 0 1 0
0 0 0 0 1
An asymmetrical matrix (such as 7 x 4) might have the following left diagonal with approximately a 30 degree angle to the horizontal:
1 1 0 0 0 0 0
0 0 1 1 0 0 0
0 0 0 1 1 0 0 0 0 0 0 0 1 1 arctan 4/7≈ 30 degrees
The algorithm could also be used with only a subset of the four directions discussed above. For example, only the horizontal and vertical directions could be considered, or in an extreme case, perhaps only the horizontal or only the vertical direction is to be considered. In this case, an M x 1 or 1 x M matrix would be constructed. Description of Block Diagram
Figure 10A illustrates the block diagram for implementing the present invention and is comprised of a multiple line store register 82 for the temporary storage of scan line data, a look-up table 84 used to apply the equations to the matrix, and a 5x5 pixel regi ster matrix 86. In addition, an interface is used to allow the above circuits to be coupled to a microprocessor (not shown) for
downloading look-up table data and passing control/ status bytes from the microprocessor.
Although the algorithm has been described such that a pixel grid is being shifted across a stationary image, the implementation of this
algorithm also may be described in such a way that the bit mapped image data is viewed as being shifted across a stationary pixel grid using a 5x5 pixel grid matrix as described below. This method is better suited for a hardware implementation.
Binary image data is synchronously transmitted serially starting in the upper left-hand corner of the image. The data is transmitted to the circuit one pixel at a time from left to right, across a scan line 46 (Fig. 4). Once a complete scan line has been transmitted, the next scan line is sent in a similar fashion. Thus, the output of the scanning device is serially transmitted on a pixel by pixel basis from left to right , and top to bottom of the image.
Multiple line store register 82 is a memory device capable of storing M (vertical dimension of pixel register matrix) complete scan lines. Each of the FIFO's in multiple line store register 82 is capable of shifting binary data serially in such a way that the first pixel shifted in is the first pixel shifted out. A First-In First-Out (FIFO) line buffer is such an apparatus. Because the preferred embodiment of the present invention uses a 5x5 pixel grid matrix, the multiple line store register 82 would require 5 FIFO line buffers 88-96. The purpose of the multiple line store register 82 is to maintain vertical alignment of the scan lines being processed. Accordingly, the use of multiple line store register 82 insures that the first pixel of a given scan line will be above or below the first pixel of the previous or next scan line,
respectively. Fig. 10B illustrates the vertical alignment required using FIFO line buffers 88-96 in multiple line store register 82. Pixel 1 of line n+2 is vertically aligned over pixel 1 of line n+1 which in turn is aligned with pixel 1 of line n.
Fig. 10A shows the output of FIFO line buffer 88 feeding cell "u" of pixel register matrix 86 and eventually feeding FIFO line buffer 90 in Figure 10B. Likewise, FIFO line buffer 90 feeds cell "p" of pixel register matrix B6, which in turn feeds FIFO line buffer 92 and so on. In the case of the last line, FIFO line buffer 96, the output feeds cell "a" of pixel register matrix 86. The output of cell "e" of the pixel register matrix 86 is used as the output of the circuit rather than an input to another line store register.
A block diagram of the look-up table 84 is shown in Fig. 10C. A Random Access Memory (RAM) device can be used for the look-up table 84. In this way, for every combination of matrix pixels that exist, a corresponding table output can be created which follows the preestablished set of rules. In the example described above, 25 address bits would exist for a total of 225 - 33,554,432 addressable locations or in the general case,
2(MXM). At the time of this writing, the amount of memory required is impractical for M larger than 4.
Some reduction in memory size is certainly required for practicality and thus may be done by recalling that for M larger than 4, not all the elements in the pixel register matrix 86 are used. This can be seen by referring to Figures 3 and 7, where some pixel register elements are not found to be used at all, and therefore, can simply pass the currently stored pixel register element data on to the next pixel register element. In the current embodiment of a 5x5 matrix, pixel register elements b, d, f, j, p, t, v, and x are not used by the algorithm and therefore, are not used as input.
However, all other pixel register elements a, c, e, g, h, i, k, 1, m, n, o, q, r, s, u, w, and y are used (see Fig. 10A). As a result, the total number of addressable locations is reduced to 2 17 =
131,072. Memory requirements are further reduced by the fact that the horizontal and vertical, and diagonal locations are independent of one another. As a result, 2 512 byte (29) devices could easily be used.
Referring back to the rules associated with Figures 3 and 7, only a subset of pixels can be changed. In the preferred embodiment (Fig. 10A), pixel register elements g , h, i, l, m, n, q, r, and s are the only elements that can be changed.
Accordingly, the input to these pixel register elements is the output of the look-up table 84. All other elements remain unchanged as the image data is shifted through the matrix. For example, pixel register matrix cell "a" would shift into pixel register matrix cell "b" unchanged. Whereas, pixel register matrix cell "g" would shift into pixel register matrix cell "h" via the look-up table 84. In this way, the input to pixel register matrix cell "h" would be a function of all the predefined inputs to the look-up table 84.
Image processing is accomplished when binary pixels are synchronously shifted into FIFO line buffer 88 and into the pixel register matrix 86 cell "u". Similarly, as the image data is processed through the pixel register matrix 86, it is
synchronously shifted into FIFO line buffer 90. Likewise, FIFO line buffers 92-96 are synchronously loaded and unloaded, supplying image data to the pixel register matrix 86 for processing. The output of pixel register matrix 86 cell "e" is used as the output of the circuit.
The present invention has been implemented in both software and hardware and found to improve OCR read rates of draft quality dot-matrix printed text dramatically. Dot-matrix text printed with a used ribbon resulted with OCR read rates of
approximately 40%. Upon applying the basic set of preprocessing rules to the image, OCR read rates were increased to 92%. Text printed with a better ribbon was found to have OCR read rates of 92%.
Once the image was preprocessed using the present invention, OCR read rates increased to 97% and with the use of qualification pixels it further increased to 98%. Because of the sequential nature of
software, approximately 20 minutes was required to process an 8 1/2" x 11" document. However, the hardware implementation was implemented to operate at the full data rate of the scanning device, in this case, approximately 0.6 sec. was required for an 8-1/2 x 11 inch document.
Experimental Results
No Basic Basic Processing Description Processing Processing w/Qualification
Pixels
Poor Quality
Text 40% 92% Not tested Good Quality
Text 92% 97% 98%
Advantages and Industrial Applicability
The present invention is used to improved OCR read rates of draft quality dot-matrix printed text. Specifically, the present invention
eliminates discontinuities inherent in dot-matrix printed text because of the spatial print elements.
It has been found experimentally that a matrix size of M=4 or greater works well when scanning typical
9-pin dot-matrix printed text at 200 dots per inch.
There are three applications where this invention can have applicability.
1) improving read rates of draft quality dot-matrix printed text.
2) improving read rates of poor quality text as a result of worn ribbons such that the image of the document contains broken characters from daisy wheel or near-letter quality printers or missing dots from draft quality or near-letter quality dot-matrix printers.
3) improving read rates by repairing broken characters in images of laser printed text. In this case, fine lines of characters may have been scanned in such a way that the fine lines are eliminated in the output, resulting in broken characters.
Although the invention has been presented as being applied to paper documents that are scanned, it could also find application in reading microfilm containing images of documents printed by a dot-matrix printer.
In addition, the invention could find applicability in the graphics area to eliminate discontinuities of scanned line drawings. As with text, scanned line drawings may sometime contain broken lines. It may be useful for drawings where there is good (greater than M+1) pixel separation of discrete lines.

Claims

WHAT IS CLAIMED IS:
1. A method for improving character recognition of printed draft quality dot-matrix characters in a scanned image, having rows and columns of pixels, comprising the steps of:
locating a kernal of M pixel rows and N pixel columns in a particular position in said image;
moving said kernel between adjacent pixel positions and applying the following set of rules:
a) if two black pixels are separated by no more than N-2 white pixels in the
horizontal direction, convert the white pixels to black;
b) if two black pixels are separated by no more than M-2 white pixels in the vertical direction, convert the white pixels to black;
c) if two black pixels are separated by no more than M-2 white pixels in the first diagonal direction, convert the white pixels to black;
d) if two black pixels are separated by no more than M-2 white pixels in the second diagonal direction convert the white pixels to black;
applying the above steps to all pixels in said image.
2. The method as set forth in Claim 1 wherein the white pixels are used as a reference and black pixels are converted to white if the
predefined conditions have been met.
3. A method for improving character recognition of printed draft quality dot-matrix characters in a scanned image, having rows and columns of pixels, comprising the steps of:
locating a kernel of M pixel rows and N pixel columns in a particular position in said image; moving said kernel to the next adjacent pixel position and applying the following set of rules:
a) if two black pixels are separated by no more than M-2 white pixels in the
horizontal direction and the two end pixels in the vertical direction are not black, convert the white pixels to black; b) if two black pixels are separated by no more than N-2 white pixels in the vertical direction and the two end pixels in the horizontal direction are not black, convert the white pixels to black;
c) if two black pixels are separated by no more than N-2 white pixels in either diagonal direction are not black, convert the white pixels to black;
applying the above steps to all pixels in the image.
4. A method for improving the optical character recognition of printed characters in a scanned image, having row and columns of pixels, comprising the steps of:
locating a kernal of M pixel rows and M pixel columns in a particular position in said image;
moving said kernal to the next adjacent pixel position and applying the following set of rules:
a) if two black pixels are separated by no more than M-2 white pixels in either the horizontal or vertical direction, convert the intervening white pixels in that direction to black;
b) if two black pixels are separated by no more than M-2 white pixels in either diagonal direction, convert the intervening white pixels in that direction to black. applying the above steps to all pixels in the image.
5. The method as set forth in Claim 4 wherein said rules further include the use of qualification pixels which are end pixels located midway on the side of the kernal and perpendicular to either the horizontal or vertical direction being considered for pixel conversion, and also located in opposing corners of the kernal and perpendicular to the diagonal direction being considered for pixel conversion; said qualification pixels for each direction must be white before pixel conversion can take place in the direction orthogonal to a line connecting said qualification pixels.
6. An apparatus for improving the optical character recognition of printed characters in a scanned video image comprising:
means for storing M pixel rows of video data;
means for loading an incoming pixel row of video data into said storing means while unloading the Mth one of said pixel rows out of said storage means;
means for loading an MxM kernal with video data previously stored in said storage means;
look-up table means for storing a predetermined set of rules as follows:
a) if two black pixels are separated by no more than M-2 white pixels in either the horizontal or vertical direction, convert the intervening white pixels in that direction to black;
b) if two black pixels are separated by no more than M-2 white pixels in either diagonal direction, convert the intervening white pixels in that direction to black; means for addressing said look-up table in accordance with said stored video data in said kernal so as to apply said predetermined rules to said data in said kernal.
7. The apparatus as set forth in Claim 6 wherein said rules further include the use of qualification pixels which are end pixels located midway on the side of the kernal and a line
connecting them is perpendicular to either the horizontal or vertical direction being considered for pixel conversion and said qualification pixels are also located in opposing corners of the kernal such that a line connecting them is perpendicular to the diagonal direction being considered for pixel conversion; said qualification pixels for each direction must be white before conversion can take place in the direction orthogonal to a line
connecting said qualification pixels.
8. An apparatus for processing scanned image data to improve optical character recognition of printed characters, said apparatus comprising:
first means for receiving serial data of one bit per pixel and storing said data in an M x N matrix of said data bits and outputting processed data bits; and
second means connected to said first means, responsive to the pattern of stored data bits in said first means for producing corrected data bits and replacing said stored data bits with corrected image bits in said first means.
9. An apparatus as set forth in Claim 8 wherein said second means comprises a look-up table for storing a predetermined set of rules as follows: a) if two black pixels are separated by no more than N-2 white pixels in the horizontal direction, convert the white pixels to black;
b) if two black pixels are separated by no more than M-2 white pixels in the vertical direction, convert the white pixels to black;
c) if two black pixels are separated by no more than M-2 white pixels in the first diagonal direction, convert the white pixels to black;
d) if two black pixels are separated by no more than M-2 white pixels in the second diagonal direction, convert the white pixels to black.
10. An apparatus as set forth in Claim 9 wherein the white pixels are used as reference and black pixels are converted to white if the
predefined conditions have been met.
11. An apparatus as set forth in Claim 9 wherein said rules further include the use of qualification pixels which are end pixels located midway on the side of the matrix and perpendicular to either the horizontal or vertical direction being considered for pixel conversion, and also located in opposing corners of the matrix and perpendicular to the diagonal direction being considered for pixel conversion, said qualification pixels for each direct must be white before pixel conversion can take place in the direction orthogonal to a line connecting said qualification pixels.
12. An apparatus for processing scanned image data to improve the optical character
recognition of printed characters, said apparatus comprising:
means for storing M lines of serially scanned data such that the first stored data in each line is the first data removed;
means for temporarily storing pixels in an
M x M matrix;
means for shifting said stored line data into said matrix;
lookup table means containing predetermined rules for processing pixel patterns stored in said matrix;
means for addressing said lookup table means based on pixel patterns stored in said matrix; and
means for outputting from said matrix processed one-bit video data for optical character recognition.
13. A digital filter M pixel row and N pixel columns for preprocessing a digital image prior to optical character recognition characterized by the following rules:
a) if two black pixels are separated by no more than N-2 white pixels in the
horizontal direction, convert the white pixels to black;
b) if two black pixels are separated by no more than M-2 white pixels in the vertical direction, convert the white pixels to black;
c) if two black pixels are separated by no more than M-2 white pixels in the first diagonal direction, convert the white pixels to black;
d) if two black pixels are separated by no more than M-2 white pixels in the second diagonal direction, convert the white pixels to black.
14. A digital filter as set forth in Claim 13 wherein the white pixels are used as a reference and black pixels are converted to white if the predefined rules have been followed.
PCT/US1991/006021 1990-08-31 1991-08-26 Dot-matrix video enhancement for optical character recognition WO1992004691A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE69127887T DE69127887T2 (en) 1990-08-31 1991-08-26 POINT MATRIX IMAGE IMPROVEMENT FOR OPTICAL CHARACTER RECOGNITION
EP91916244A EP0498873B1 (en) 1990-08-31 1991-08-26 Dot-matrix video enhancement for optical character recognition

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/575,715 US5182778A (en) 1990-08-31 1990-08-31 Dot-matrix video enhancement for optical character recognition
US575,715 1990-08-31

Publications (1)

Publication Number Publication Date
WO1992004691A1 true WO1992004691A1 (en) 1992-03-19

Family

ID=24301417

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1991/006021 WO1992004691A1 (en) 1990-08-31 1991-08-26 Dot-matrix video enhancement for optical character recognition

Country Status (5)

Country Link
US (1) US5182778A (en)
EP (1) EP0498873B1 (en)
JP (1) JPH05502319A (en)
DE (1) DE69127887T2 (en)
WO (1) WO1992004691A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0539854A2 (en) * 1991-11-01 1993-05-05 Eastman Kodak Company Method and apparatus for the detection of dot-matrix printed text so as to improve optical character recognition

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5459587A (en) * 1991-05-02 1995-10-17 Minolta Camera Kabushiki Kaisha Processing apparatus capable of discriminating between pseudo half-tone/non-half-tone image data based upon the number of adjacencies of similar type of pixels within a block
US5357581A (en) * 1991-11-01 1994-10-18 Eastman Kodak Company Method and apparatus for the selective filtering of dot-matrix printed characters so as to improve optical character recognition
US5387768A (en) * 1993-09-27 1995-02-07 Otis Elevator Company Elevator passenger detector and door control system which masks portions of a hall image to determine motion and court passengers
US5915044A (en) * 1995-09-29 1999-06-22 Intel Corporation Encoding video images using foreground/background segmentation
US6415062B1 (en) * 1998-03-05 2002-07-02 Ncr Corporation System and process for repairing a binary image containing discontinuous segments of a character
US6363162B1 (en) 1998-03-05 2002-03-26 Ncr Corporation System and process for assessing the quality of a signature within a binary image
US7079686B2 (en) * 2002-08-20 2006-07-18 Lexmark International, Inc. Systems and methods for content-based document image enhancement
US7321699B2 (en) * 2002-09-06 2008-01-22 Rytec Corporation Signal intensity range transformation apparatus and method
US8406523B1 (en) 2005-12-07 2013-03-26 Mcafee, Inc. System, method and computer program product for detecting unwanted data using a rendered format
US8401229B2 (en) * 2007-09-04 2013-03-19 Objectvideo, Inc. Stationary target detection by exploiting changes in background model
US8180152B1 (en) 2008-04-14 2012-05-15 Mcafee, Inc. System, method, and computer program product for determining whether text within an image includes unwanted data, utilizing a matrix
US10176400B1 (en) 2016-09-27 2019-01-08 Matrox Electronic Systems Ltd. Method and apparatus for locating dot text in an image
US10176399B1 (en) * 2016-09-27 2019-01-08 Matrox Electronic Systems Ltd. Method and apparatus for optical character recognition of dot text in an image
US10223618B1 (en) 2016-09-27 2019-03-05 Matrox Electronic Systems Ltd. Method and apparatus for transformation of dot text in an image into stroked characters based on dot pitches
US10192132B1 (en) 2016-09-27 2019-01-29 Matrox Electronic Systems Ltd. Method and apparatus for detection of dots in an image

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0053935A2 (en) * 1980-12-08 1982-06-16 Ncr Canada Ltd - Ncr Canada Ltee Method and apparatus for altering erroneous data elements in digital images

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1171627A (en) * 1966-10-07 1969-11-26 Post Office Improvements in or relating to Character Recognition Machines
JPS54153535A (en) * 1978-05-25 1979-12-03 Fujitsu Ltd Picture processing system
JPS57164662A (en) * 1981-04-03 1982-10-09 Hitachi Ltd Compression system for multilevel signal
US4680720A (en) * 1983-10-17 1987-07-14 Kabushiki Kaisha Toshiba Dot interpolation control system
FR2563025B1 (en) * 1984-04-17 1986-05-30 Thomson Csf DEVICE FOR OBTAINING CONTINUOUS TRACES ON THE SCREEN OF A VIEWING CONSOLE CONTROLLED BY A GRAPHICAL PROCESSOR
AU581952B2 (en) * 1984-11-27 1989-03-09 Helmut A. Kappner Machine readable identification markings and process
US4903123A (en) * 1987-06-10 1990-02-20 Canon Kabushiki Kaisha Image processing apparatus using inclined line screens to reduce Moire
JPH01298476A (en) * 1988-05-27 1989-12-01 Ezel Inc Method for processing picture
FR2638871B1 (en) * 1988-11-09 1994-06-03 Jutand Francis IMAGE REPRESENTATION SIGNAL FILTERING METHOD AND CIRCUIT
JP2747491B2 (en) * 1989-02-09 1998-05-06 富士通株式会社 Image interpolation processing method
US5038388A (en) * 1989-05-15 1991-08-06 Polaroid Corporation Method for adaptively sharpening electronic images
US5060285A (en) * 1989-05-19 1991-10-22 Gte Laboratories Incorporated Hierarchical variable block size address-vector quantization using inter-block correlation
US5054100A (en) * 1989-11-16 1991-10-01 Eastman Kodak Company Pixel interpolator with edge sharpening

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0053935A2 (en) * 1980-12-08 1982-06-16 Ncr Canada Ltd - Ncr Canada Ltee Method and apparatus for altering erroneous data elements in digital images

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
IBM TECHNICAL DISCLOSURE BULLETIN. vol. 32, no. 10B, March 1990, NEW YORK, US pages 366 - 371; 'N Bit general neighborhood function processing element operable at image rate' see page 366, line 1 - line 10 see page 367, line 1 - page 368, line 35 *
PATENT ABSTRACTS OF JAPAN vol. 14, no. 504 (P-112)5 November 1990 & JP,A,2 208 790 ( FUJITSU LTD. ) 20 August 1990 see abstract *
PATENT ABSTRACTS OF JAPAN vol. 4, no. 14 (E-169)31 January 1980 & JP,A,54 153 535 ( FUJITSU K.K. ) 12 March 1979 see abstract *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0539854A2 (en) * 1991-11-01 1993-05-05 Eastman Kodak Company Method and apparatus for the detection of dot-matrix printed text so as to improve optical character recognition
EP0539854B1 (en) * 1991-11-01 1999-03-17 Eastman Kodak Company Method and apparatus for the detection of dot-matrix printed text so as to improve optical character recognition

Also Published As

Publication number Publication date
EP0498873B1 (en) 1997-10-08
JPH05502319A (en) 1993-04-22
EP0498873A1 (en) 1992-08-19
DE69127887T2 (en) 1998-04-16
US5182778A (en) 1993-01-26
DE69127887D1 (en) 1997-11-13

Similar Documents

Publication Publication Date Title
US5182778A (en) Dot-matrix video enhancement for optical character recognition
EP0115584B1 (en) Image producing apparatus and methods of processing image-representing signals for use by such apparatus
US5818966A (en) Method and apparatus for encoding color information on a monochrome document
JP3844791B2 (en) A method for adjusting the density of digital images.
US4937761A (en) Method and apparatus for enhanced speed graphic image processing
US5297217A (en) Tile-oriented technique for collectively performing image rotation scaling and digital halftone screening
US4747156A (en) Image preprocessing procedure for noise removal
US4791679A (en) Image character enhancement using a stroke strengthening kernal
US5463720A (en) Blue noise based technique for use in a halftone tile oriented screener for masking screener induced image artifacts
DE69618901T2 (en) Method and device for rotating bitmap images with high addressability
EP0527097A2 (en) Apparatus and method for collectively performing tile-based image rotation, scaling and digital halftone screening
JPH06225140A (en) Method and apparatus for smoothing edge of picture element image
US4975785A (en) Pel resolution addressing conversion
US5956470A (en) Text quality enhancement via resolution enhancement technique based on separating jaggedness detection and filtering
US4887228A (en) Method for filling surface parts of an image with a surface pattern
US6301397B1 (en) Systems and methods for rotating high addressability images
EP0427380B1 (en) Method of producing halftone images
US4231095A (en) Remote reproduction of images
EP0631430A2 (en) Color image processing apparatus capable of suppressing moire
US5239391A (en) Apparatus for generating halftone dots from dot envelope parameters
EP0624300B1 (en) Resolution enhancement system for binary images
EP0569657B1 (en) Apparatus for detection and correction of digitized image defects
US5446558A (en) Apparatus and associated method for representing elliptical halftone dots
US5357581A (en) Method and apparatus for the selective filtering of dot-matrix printed characters so as to improve optical character recognition
US5394482A (en) Method and apparatus for the detection of dot-matrix printed text so as to improve optical character recognition

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): JP

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): AT BE CH DE DK ES FR GB GR IT LU NL SE

WWE Wipo information: entry into national phase

Ref document number: 1991916244

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 1991916244

Country of ref document: EP

WWG Wipo information: grant in national office

Ref document number: 1991916244

Country of ref document: EP