WO1991017518A1 - Rotationally impervious feature extraction for optical character recognition - Google Patents

Rotationally impervious feature extraction for optical character recognition Download PDF

Info

Publication number
WO1991017518A1
WO1991017518A1 PCT/US1991/003066 US9103066W WO9117518A1 WO 1991017518 A1 WO1991017518 A1 WO 1991017518A1 US 9103066 W US9103066 W US 9103066W WO 9117518 A1 WO9117518 A1 WO 9117518A1
Authority
WO
WIPO (PCT)
Prior art keywords
image
εaid
character image
identification
input data
Prior art date
Application number
PCT/US1991/003066
Other languages
French (fr)
Inventor
Lori Lynn Barski
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
Publication of WO1991017518A1 publication Critical patent/WO1991017518A1/en

Links

Classifications

    • 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/18Extraction of features or characteristics of the image
    • 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

  • the invention is related to techniques in optical character recognition for extracting features from the image of each character in a document, which features are used in a feature-based recognition device to recognize each character.
  • Feature-based optical character recognition systems search for predetermined geometric features in the bit ⁇ map image of each unknown character in a document to be read. Such systems recognize each character based upon a knowledge of the presence or absence of various ones of the features in each one of a complete set of known symbols.
  • One exemplary feature-based recognition technique is the absolute distance measure, in which the extraction of features from each unknown character bit ⁇ map creates an N-dimensional vector, whose absolute distance from each one of a set of N-dimensional vectors representing the symbol set determines the identity of the unknown character.
  • Another example of feature-based recognition techniques is a neural network trained to identify the character image based upon its bit-map image. In this case, the feature used to identify the character can be the character bit-map itself.
  • German Patent Document No. DD- 226,379-A suggests the idea of scanning an image along a spiral.
  • Japanese Patent Document No. 57-113,183 (A) discloses classifying an unknown character by a set of lengths from the character's centroid to various sides of a polygon circumscribing the character.
  • U.S. Patent No. 4,742,556 discloses a character recognition method in which a histogram of various gray levels of the image is made in each one of a set of blocks into which the image has been divided.
  • Japanese Patent Document No. 56-47876 (A) describes a method for extracting the contour features of a character.
  • U.S. Patent No. 3,766,520 discloses classifying an unknown character by its correlation with each one of four quadrant arcs of a circle.
  • U.S. Patent No. 3,407,386 discloses a character reading system which characterizes an unknown image in accordance with the presence or absence of a loop in each one of four quadrants into which the image is divided.
  • U.S. Patent No. 3,968,475 discloses feature extraction by convolving a binary image with a complete set of templates consisting of squares divided into square quadrants, each quadrant being entirely either black or white, in all possible combinations thereof.
  • 3,715,724 (Demonte et al.) is similar to McMahon and discloses feature extraction by convolving an unknown image with a set of templates representing various basic geometric patterns, each template consisting of a square divided into small sub-squares, the pattern of black sub-squares in each template representing one of the geometric patterns.
  • U.S. Patent No. 4,644,583 ( atanabe et al.) discloses a method of identifying circular lines in the contour of an unknown object.
  • U.S. Patent No. 4,672,678 (Koezuka et al.) discloses a system for identifying characters by matching an unknown character with the image or template of one of a set of known characters, rather than using feature extraction.
  • Patent No.' ⁇ 4,641,355 and 4,628,533 disclose an improvement to systems like that of Koezuka et al., the improvement being that pixels whose values are ambivalent with respect to identifying a particular character and pixels which are known to be associated with noise frequently accompanying a particular character are masked in the unknown image before the matching process is performed.
  • U.S. Patent No. 4,783,829 is a pattern recognition system which approximates the unknown image with a circumscribing polygon and matches the polygon with a set of stored patterns.
  • U.S. Patent No. 4,242,734 discloses a method for detecting corners in an image by convolving the image with two-dimensional Haar transform coefficients.
  • Japanese Patent Document No. 59- 123,081 discloses a method for detecting and extracting endpoints in an image for printed circuit board inspection.
  • U.S. Patent No. 3,909,785 discloses a character recognition system for hand-printed characters which extracts each character stroke in a plurality of sectors into which the image is divided.
  • 3,805,239 discloses a pattern recognition apparatus for use with a gray level image which extracts features from an unknown object by detecting the gray level of a group of pixels in a 3x3 movable window.
  • U.S. Patent No. 4,783,830 discloses using a pattern-matching content addressable memory for computing distances in N-space between a vector of N pixels of an unknown object and a set of N-dimensional reference vectors of known objects.
  • Japanese Patent Document No. 60-142,480 (A) discloses a character segmentation system for use in a character reader.
  • U.S. Patent No. 4,132,976 Siegal
  • U.S. Patent No. 3,766,520 suggests classifying the image of an unknown character in accordance with its correlation with a horizontal line image, a vertical line image, a major diagonal line image and a minor diagonal line image.
  • U.S. Patent No. 4,817,187 makes the same suggestion as Patterson discussed above.
  • U.S. Patent No. 4,048,615 discloses a character recognition system which detects horizontal and vertical line segments resident in rows or columns, respectively, of pixels in the image of an unknown character.
  • the invention is a feature-based optical character recognition system and process which extracts from the character image bit-map a set of features, the key ones of which are nearly invariant under rotation of the image.
  • the set of features employed is comprehensive enough to ensure unambiguous identification of each document character.
  • the presence in the feature set of key features which are nearly invariant under image rotation within a certain range reduces the probability that such rotation can disrupt character identification by the feature-based optical character recognition system
  • the system of the invention extracts a first rotationally invariant feature from the character bit-map image by identifying radial intercepts of black-to-white transitions in an object in the bit-map image encountered along the edge of each one of a series of concentric circles of successively larger predetermined radii centered at the centroid of the object, or at least one circle thereof.
  • the population at each radius of such transitions is a rotationally invariant feature characterizing the character bit-map image.
  • the system of the invention extracts a second feature which is rotationally invariant within a limited range of rotation angle.
  • the system determines for each end point and branch point in the bit-map image which pair of squares in a grid of squares superimposed on the bit-map image have their centers closest to the endpoint or branch point.
  • the feature thus extracted is a listing of the corresponding pairs of squares in the grid for branch points and another listing for end points.
  • the squares in the grid are sufficiently large to reduce the probability of an image rotation over a limited rotation angle changing the determination of nearest pairs of square centers.
  • the foregoing features are transmitted along with the bit-map image as a single N-dimensional vector to an absolute distance measure feature-based recognition device.
  • the device stores a set of N-dimensional reference vectors extracted from a complete set of known symbols.
  • the reference vectors are formed from images of a set of known symbols by the same process used to generate the single N-dimensional vector representing the bit-map image of the unknown character. Finding the reference vector having the smallest absolute distance from the unknown vector identifies the correct symbol.
  • a neural network is trained with the same set of N- dimensional reference vectors to identify the N- dimensional vector of the unknown character using the same feature set.
  • the advantage is that the presence in the feature set of key features which are invariant under rotation of the image, or at least nearly so, enhances the reliability of the feature-based optical character recognition system of the invention relative to feature- based optical character recognition systems of the prior art.
  • Fig. 1 is a block diagram of the system of the invention
  • Fig.'s 2a, 2b, 2c and 2d include pictorial diagrams and a chart illustrating the operation of a radial intercept processor in the system of Fig. 1;
  • Fig. 3 is a flow diagram illustrating the operation of the radial intercept processor in the system of Fig. If
  • Fig. 4 is a graph representing a step depicted in the flow diagram of Fig. 3;
  • Fig. 5 is a flow diagram illustrating in detail a step depicted in the flow diagram of Fig. 3;
  • Fig. 6 is a pictorial diagram illustrating how radial intercept locations are classified in the process of Fig. 3;
  • Fig. •s 7a, 7b and 7c are pictorial diagrams illustrating the operation of the end point and branch point processor in the system of Fig. 1;
  • Fig. 8 is a flow diagram illustrating the operation of the end point and branch point processor of the system of Fig. 1;
  • Fig. 9 is a pictorial diagram illustrating the operation of a portion of the system of Fig. 1;
  • Fig. 10 is a flow diagram illustrating one aspect of the operation of a curve and line processor in the system of Fig. 1;
  • Fig. 11 is a diagram illustrating curvature templates employed in the process of Fig. 10;
  • Fig. 12 is a table illustrating a simple example of the encoding of some of the features extracted by the system of Fig. 1;
  • Fig. 13 illustrates the four-by-four binary image example corresponding to Fig. 12
  • Fig. 14 is a table illustrating a simple example of encoding features relating to the presence of quarter- arcs in each quadrant of an image
  • Fig. 15 illustrates an image corresponding to the example of Fig. 14;
  • Fig. 16 is a table illustrating a simple example of encoding features relating to the number of radial intercepts in an image.
  • Fig. 17 illustrates an image corresponding to the example of Fig. 16.
  • a document scanner 10 generates binary data representing the image of a document.
  • a ⁇ egmenter 12 separates the images of individual characters in the document image using well-known techniques and a normalizer 14 adjusts the image of each character to a predetermined size and aspect ratio in accordance with known practice.
  • a thinning processor 16 thins the strokes in the character image to generate a thinned character image.
  • a curve and line processor 18 extracts features from the thinned character image in a manner described below.
  • An end point and branch point processor 20 extracts end point and branch point features which are nearly rotationally invariant from the thinned character image.
  • a horizontal and vertical intercept processor 22 extracts features relating to the number of intercepts between a set of horizontal and vertical lines and the normalized character image.
  • a radial intercept processor 24 determines the number and location of intercepts in the image at a set of predetermined radii, the number of intercepts being a rotationally invariant feature of the character image.
  • a feature-based recognition processor 28 computes the absolute distance between this vector and each one of a set of N-dimensional reference vectors stored in a memory 30 representative of a complete set of symbols.
  • the recognition processor 28 identifies the character image with the symbol whose reference vector has the shortest absolute distance from the input vector 26.
  • the radial intercept processor 24 generates the set of rotationally invariant features from the character image, such as the exemplary character image illustrated in Fig. 2a, by detecting the outer boundaries of the object 32 in the image received from the normalizer 14 to form an outline image 34 illustrated in Fig. 2b. As illustrated in Fig. 2c, the radial intercept processor 24 then counts the number of times the boundary of the outline image 34 intercepts each one of a plurality of predetermined radii r s , using a simple Pythagorean algorithm. Fig. 2d illustrates the intercept count at each one of the radii. Referring to Fig. 3, the radial intercept processor 24 begins by locating the centroid 36 of the object 32 of Fig. 2a (block 38 of Fig.
  • the radial intercept processor 24 before counting the number of radial intercepts, calculates the radial distances from the centroid 36 along a continuum of points on the boundary of the outline image 34 (block 42 of Fig. 3) , to generate the data indicated in graphic form in Fig. 4.
  • the radial intercept processor 24 then normalizes the radial distances plotted in Fig. 4 using any one of several well-known methods (block 44) .
  • the maximum radius in the outline image 34 is set to unity and all other radii are scaled accordingly.
  • the radial intercept processor selects a single radius R s at which intercepts by the outline image 34 are to be counted.
  • intercepts are counted at a plurality of predetermined radii about the centroid 36.
  • the radial intercept processor 24 In selecting R s , the radial intercept processor 24 first computes the mean R,, ⁇ , of all radii and another radius value $ which is halfway between the highest valley and the lowest peak in the graph of Fig. 4 (block 46 of Fig. 3) . R s is then computed by the processor 24 as [3Rj + Rj aean ]/ 4 as indicated by block 48 of Fig. 3. The radial intercept processor 24 then counts the number of intercepts by the boundary of the outline image 34 at the radius R s , identifies their locations (block 50) and encodes the results (block 52).
  • Identifying the locations of the intercepts in the step of block 50 is illustrated in detail in the flow diagram of Fig. 5.
  • the circumference of the radius R ⁇ as superimposed in the outline image 34 of Fig. 2b is divided into eight pie-shaped polar sections labelled 0 through 7 in Fig. 6.
  • Each pair of adjacent sections is numbered in accordance with the lowest numbered section in the pair.
  • the eight regions of Fig. 6 are numbered from 0• to 7' , some of which are indicated in Fig. 6.
  • Each radial intercept is identified in accordance with that one of the eight regions in which it resides.
  • the radial intercept processor 24 must first locate each intercept of R s (block 54 of Fig. 5) , identify the two sections nearest the intercept (blocks 56 and 58 of Fig. 5) and identify the correct region as the one comprising the two sections nearest the intercept (block 60) .
  • the number of radial intercepts is inherently invariant under rotation about any point near the centroid 36.
  • the process of Fig. 5 renders the identification of the polar location of each radial intercept less susceptible to change in case of rotation of the document image because each such location is classified as one of the eight regions of Fig. 6.
  • the operation of the end point and branch point processor 20 is illustrated in the pictorial diagrams of Fig. 's 7a, 7b and 7c and in the flow diagram of Fig. 8.
  • the thinning processor 16 generates a thinned bit-map character image 62 of Fig. 7a from the normalized bit-map character image 32 of Fig. 2a using well-known techniques (block 63 if Fig. 8) .
  • the end point and branch point processor 20 locates each end point 64, 66, 68 and each branch point 70, 72 in the thinned image 62, as illustrated in Fig. 7b, using well-known techniques (block 73 of Fig. 8) .
  • the processor 20 superimposes a grid 74 on the thinned image 62 (block 75 of Fig. 8) .
  • the grid 74 is characterized by two intermediate height locations in the image, labelled hi and h2 in Fig. 7b, and two intermediate width locations, labelled wl and w2, dividing the image into nine rectangular regions with regional centers 76, 78, 80, 82, 84, 86, 88, 90, 92 (block 94 of Fig. 8) .
  • the processor 20 then classifies each end point and each branch point in accordance with which pair of the regional centers is closest to the point (block 96 of Fig, 8) .
  • Fig. 7b illustrates this process in the exemplary case of the end point 64.
  • the processor 20 determines the distances dl, d2, d3, d4 between the end point 64 and the regional centers 78, 76, 80, 84, respectively, using well-known techniques. (For the sake of completeness, the processor 20 may determine the distances to all nine of the regional centers, although Fig. 7b illustrates the distances to the four nearest regional centers.) As shown, the distance dl is the shortest while the distance d3 is the next shortest. Referring now to Fig.
  • each pair of regions A through L of Fig. 7c is relatively large, containing a large number of image pixels.
  • the bit-map image may be rotated through a finite angle without changing the classification performed by the processor 20.
  • each end point and branch point were simply classified in accordance with its exact pixel location in the bit-map image, even the slightest rotation would drastically change its classification. As a result, any document skew would seriously impair the optical character recognition process.
  • the advantage of the invention is that the probability of such an occurrence is dramatically reduced for the end point and branch point feature classification.
  • Fig. 1 in order to provide a sufficiently comprehensive set of extracted features to ensure a high probability of unambiguous character recognition in all cases.
  • the operations of the curve and line processor 18 and the horizontal and vertical intercept processor 22 will be described with reference to the pictorial diagram of Fig. 9.
  • step 100 of Fig. 9 the ⁇ egmenter 10 of Fig. 1 generates an original bit-map image of m rows and n columns of pixels, which the normalizer 12 of Fig. 1 normalizes to an image of 24 rows and 12 columns in step 102 of Fig. 9.
  • the thinning processor 16 generates a thinned character image which is used in steps 104, 106, 108, 110, 112, 114 and 116 of Fig. 9.
  • step 104 the curve and line processor 18 divides the image into eight horizontal regions and classifies the image in accordance with which ones of the eight horizontal regions have more "ON" pixels than a predetermined threshold number.
  • step 106 the processor 18 divides the image into eight vertical regions and classifies the image in accordance with which ones of the eight vertical regions have more "ON" pixels than the predetermined threshold number.
  • step 108 the processor 18 divides the image into four minor diagonal regions along three minor diagonal boundaries and classifies the image in accordance with which ones of the four minor diagonal regions have more "ON" pixels than the predetermined threshold number.
  • step 110 the processor 18 divides the image into four major diagonal regions along three major diagonal boundaries and classifies the image in accordance with which ones of the four major diagonal regions have more "ON" pixels than the predetermined threshold number.
  • An additional process carried out by the curve and line processor 18 is illustrated in the flow diagram of Fig. 10. In this additional process, the processor 18 divides the image into four rectangular quadrants (block 112 of Fig. 10) . The processor 18 then searches within each quadrant for a match with each one of four quarter- arc templates 116, 118, 120, 122 illustrated in Fig. 11, corresponding respectively to the quarter-arcs 124, 126, 128, 130 as indicated in Fig. 11 (block 114 of Fig. 10).
  • This step is performed in accordance with well-known template matching techniques.
  • One way of doing this is to separately convolve the individual image in each rectangular quadrant with each of the four quarter-arc templates. If the number of "ON" pixels in a quadrant of an image matching the "ON" pixels of a template exceeds a threshold, a match is declared and the image is classified in accordance with the matching quadrant and the matching template (block 132 of Fig. 10) . Each rectangular quadrant of the image is classified in accordance with the foregoing process.
  • the horizontal and vertical intercept processor 22 receives the normalized character bit-map image directly from the normalizer 14 (bypassing the thinning processor 16) .
  • the processor 22 divides this image into three horizontal regions 136, 138, 140. Then, along each one of three pixels rows (indicated by dashed lines) bisecting the three horizontal regions 136, 138, 140, the processor 22 counts the number of intercepts with "ON" pixels in the image.
  • the processor 22 divides the image into three vertical regions 144, 146, 148 and counts the number of intercepts with "ON" pixels along each one of three pixel columns bisecting the three vertical regions 144, 146, 148. Each count thus obtained is stored as a feature of the image.
  • the feature classification data generated from the character bit-map image by each of the processors 18, 20, 22, 24 of Fig. 1 in the foregoing manner are combined together sequentially as a series of data bits to form an input vector 26 characterizing the features extracted from the image.
  • the feature-based recognition processor 28 compares the input vector to a set of reference vectors stored in the memory 30 and on the basis of that comparison determines the identity of the character in the image.
  • Construction of the input vector 26 is illustrated in simplified tutorial examples illustrated in Fig. ' ⁇ 12 through 17. It should be noted that the 4-by-4 pixel image of the tutorial example of Fig. 's 12 and 13 was selected for the sake of simplicity, although its division into three horizontal and vertical regions necessitated some assymetries, as will be seen below.
  • the input vector 26 consi ⁇ t ⁇ of the bit-map image data 150, the horizontal line feature classification data 152 generated by step 104 of Fig. S, the vertical line feature classification data 154 generated by step 106 of Fig. 9, the minor diagonal line feature classification data 156 generated by step 108, the major diagonal feature classification line data 158 generated by step
  • the bits in the input vector 26 are not binary encoded, so that counts are represented by the number of "1" bits present in a given group of bits.
  • All of the feature classification data in Fig. 12 were generated for the simplified tutorial example of a 4-by-4 pixel image illustrated in Fig. 13.
  • bit-map data 150 there are 16 bits in the bit-map data 150.
  • bit-map data 152 There are eight bits in the horizontal line data 152 and in the vertical line data 154 corresponding to the eight horizontal regions in step 104 and eight vertical regions of Fig. 9.
  • minor diagonal line data 156 and in the major diagonal line data 158 corresponding to the four minor and major diagonal regions of steps 108 and 110.
  • the end point feature cla ⁇ sification data 164 There are twenty-one bit ⁇ in the end point feature cla ⁇ sification data 164.
  • the first nine bits indicate the presence of an end point in each one of the nine regions in the grid 74 of Fig. 7b superimposed onto the character bit-map of Fig. 13.
  • the last twelve bit ⁇ indicate the presence of an end point in each one of the twelve pairs of regions defined in Fig. 7c, beginning at the region labelled A and ending with the region labelled L in Fig. 7c.
  • branch point feature classification data 166 There are twenty-one bits in the branch point feature classification data 166 organized in the same manner as the twenty-one bits of the end point feature classification data 164.
  • the quarter-arc feature classification data 168 corresponds to the tutorial example illustrated in Fig. 15 of the bit-map image of a capital letter "C".
  • each of the quarter-arc templates of Fig. 11 has been convolved with the individual image in each one of the four quadrants 172, 174, 176, 178 of the bit-map image of Fig. 15.
  • the results are organized in the data of Fig. 14 as follows: each one of the four-bit groups indicates the presence (or absence) of a match with the corresponding one of the four quadrant-arc templates.
  • Each one of four bit ⁇ in a group corresponds to one of the four quadrants 172, 174, 176, 178, respectively.
  • the radial intercept feature classification data 170 of Fig. 16 corresponds to the simplified tutorial example of the bit-map image of Fig. 17, comprising a capital letter "A", the eight-sector map of Fig. 6 being superimposed and centered at the centroid 36 of the letter "A".
  • the radius R s is indicated in dashed line in Fig. 17.
  • the eight two-bit pairs in the radial intercept data 170 of Fig. 16 represent the number of intercepts in corresponding ones of the eight sectors in numerical order. This data is not binary encoded. Thus, two intercepts in a sector is indicated by two binary "ones".
  • All of the feature classification data 150, 152, 154, 156, 158, 160, 162, 164, 166, 168, 170 in serial order comprise the input vector 126 received by the feature based recognition processor 28.
  • the feature-based recognition processor 28 computes the absolute distance between the input vector 126 and each one of the reference vectors stored in the memory 30.
  • the feature-based recognition processor 28 identifies the character in accordance with the reference vector having the smallest di ⁇ tance to the character image vector.
  • the reference vector ⁇ ⁇ tored in the memory 30 are created by feeding a complete ⁇ et of known ⁇ ymbol ⁇ to the scanner 10 and storing the input vector 26 generated for each one of the symbols in the memory 30.
  • the feature-ba ⁇ ed recognition processor 28 may be a neural network.
  • the invention is u ⁇ eful in feature-ba ⁇ ed optical character recognition of both printed and hand-written characters.
  • An advantage of the invention is that its performance is le ⁇ ⁇ u ⁇ ceptible degradation by document ⁇ kew or rotation of the character images.

Abstract

A feature-based optical character recognition system, employing a feature-based recognition device such as a neural network or an absolute distance measure device, extracts a set of features from segmented character images in a document, at least some of the extracted features being at least nearly impervious to rotation or skew of the document image, so as to enhance the reliability of the system. One rotationally invariant feature extracted by the system is the number of intercepts between boundary transitions in the image with at least a selected one of a plurality of radii centered at the centroid of the character in the image.

Description

ROTATIONALLY IMPERVIOUS FEATURE EXTRACTION FOR OPTICAL CHARACTER RECOGNITION
BACKGROUND OF THE INVENTION Technical Field:
The invention is related to techniques in optical character recognition for extracting features from the image of each character in a document, which features are used in a feature-based recognition device to recognize each character.
Background Art:
Feature-based optical character recognition systems search for predetermined geometric features in the bit¬ map image of each unknown character in a document to be read. Such systems recognize each character based upon a knowledge of the presence or absence of various ones of the features in each one of a complete set of known symbols. One exemplary feature-based recognition technique is the absolute distance measure, in which the extraction of features from each unknown character bit¬ map creates an N-dimensional vector, whose absolute distance from each one of a set of N-dimensional vectors representing the symbol set determines the identity of the unknown character. Another example of feature-based recognition techniques is a neural network trained to identify the character image based upon its bit-map image. In this case, the feature used to identify the character can be the character bit-map itself.
One problem with such feature-based recognition systems is that the character bit-map or the geometric features found in the bit-map are significantly altered by rotation of the image. Such rotation can arise from document skew, for example. Alteration of the features can degrade performance of the optical character recognition system, giving rise to erroneous identification or making it difficult to identify given characters in the document.
Several techniques are known for extracting contour features of an image. German Patent Document No. DD- 226,379-A suggests the idea of scanning an image along a spiral. Japanese Patent Document No. 57-113,183 (A) discloses classifying an unknown character by a set of lengths from the character's centroid to various sides of a polygon circumscribing the character. U.S. Patent No. 4,742,556 (Davis, Jr., et al.) discloses a character recognition method in which a histogram of various gray levels of the image is made in each one of a set of blocks into which the image has been divided. Japanese Patent Document No. 56-47876 (A) describes a method for extracting the contour features of a character. U.S. Patent No. 4,361,830 (Honma et al.) describes a method for extracting contour features of an image by measuring the distances between extremities in the contour and a locally averaged contour of the image. U.S. Patent No. 4,704,694 (Czerniejewski) discloses a method of learning contours of known objects and comparing them to the contours of unknown objects to orient them for grasping by a robot. U.S. Patent No. 4,000,399 (Kawahara) discloses a pattern counting system which automatically fills in holes in unknown patterns to simplify the process. U.S. Patent No. 4,712,248 (Hongo) discloses using a list of segments of the object between corners in its outer contour as a feature for object identification. U.S. Patent No. 4,208,652 (Marshall) discloses using a pattern consisting of the number of like-valued pixels in each local neighborhood of the image as a feature for identifying unknown images. U.S. Patent No. 4,163,214 (Ko ori et al.) discloses a method similar to that of U.S. Patent No. 4,208,652 (Marshall) discussed above.
Several techniques are known for detecting arcs in an image using templates. U.S. Patent No. 3,766,520 (Patterson) discloses classifying an unknown character by its correlation with each one of four quadrant arcs of a circle. U.S. Patent No. 3,407,386 (Spanjersberg) discloses a character reading system which characterizes an unknown image in accordance with the presence or absence of a loop in each one of four quadrants into which the image is divided. U.S. Patent No. 3,968,475 (McMahon) discloses feature extraction by convolving a binary image with a complete set of templates consisting of squares divided into square quadrants, each quadrant being entirely either black or white, in all possible combinations thereof. U.S. Patent No. 3,715,724 (Demonte et al.) is similar to McMahon and discloses feature extraction by convolving an unknown image with a set of templates representing various basic geometric patterns, each template consisting of a square divided into small sub-squares, the pattern of black sub-squares in each template representing one of the geometric patterns. U.S. Patent No. 4,644,583 ( atanabe et al.) discloses a method of identifying circular lines in the contour of an unknown object. U.S. Patent No. 4,672,678 (Koezuka et al.) discloses a system for identifying characters by matching an unknown character with the image or template of one of a set of known characters, rather than using feature extraction. U.S. Patent No.'β 4,641,355 and 4,628,533 (both by Hongo et al.) disclose an improvement to systems like that of Koezuka et al., the improvement being that pixels whose values are ambivalent with respect to identifying a particular character and pixels which are known to be associated with noise frequently accompanying a particular character are masked in the unknown image before the matching process is performed. U.S. Patent No. 4,783,829 (Miyakawa et al.) is a pattern recognition system which approximates the unknown image with a circumscribing polygon and matches the polygon with a set of stored patterns. U.S. Patent No. 4,651,341 (Nakashima et al.) discloses a pattern recognition system for printed circuit board inspection. U.S. Patent No. 4,754,493 (Coates) discloses a pattern recognition system useful in terrain-following radar for guidance systems.
Several techniques are known for detecting endpoints or branch points in an image. U.S. Patent No. 4,242,734 (Deal) discloses a method for detecting corners in an image by convolving the image with two-dimensional Haar transform coefficients. Japanese Patent Document No. 59- 123,081 (A) discloses a method for detecting and extracting endpoints in an image for printed circuit board inspection. U.S. Patent No. 3,909,785 (Howellε) discloses a character recognition system for hand-printed characters which extracts each character stroke in a plurality of sectors into which the image is divided. U.S. Patent No. 3,805,239 (Watanabe) discloses a pattern recognition apparatus for use with a gray level image which extracts features from an unknown object by detecting the gray level of a group of pixels in a 3x3 movable window. U.S. Patent No. 4,783,830 (Johnson et al.) discloses using a pattern-matching content addressable memory for computing distances in N-space between a vector of N pixels of an unknown object and a set of N-dimensional reference vectors of known objects. Japanese Patent Document No. 60-142,480 (A) discloses a character segmentation system for use in a character reader. U.S. Patent No. 4,132,976 (Siegal) and U.S. Patent No. 4,275,381 (Siegal) each disclose a method for forming characters which are both optically and electronically readable. U.S. Patent No. 4,185,270 (Fischer et al.) discloses a fingerprint identification system, which detects the strokes in the image of an unknown fingerprint and matches their attributes (e.g., endpoint locations) with the attributes of a large set of known fingerprints.
Several techniques are known for detecting straight and diagonal lines in an image. U.S. Patent No. 3,766,520 (Patterson) suggests classifying the image of an unknown character in accordance with its correlation with a horizontal line image, a vertical line image, a major diagonal line image and a minor diagonal line image. U.S. Patent No. 4,817,187 (Lien) makes the same suggestion as Patterson discussed above. U.S. Patent No. 4,048,615 (Chuang et al.) discloses a character recognition system which detects horizontal and vertical line segments resident in rows or columns, respectively, of pixels in the image of an unknown character.
None of the foregoing techniques appears to address itself to the problem of feature extraction in a rotated image. In fact, the features extracted by the foregoing techniques appear to undergo significant changes under rotation of the document image. In order to assure adequate reliability, there is a need for a feature extraction process and system which is virtually invariant or at least resists significant alteration under rotation of the document image.
DISCLOSURE OF THE INVENTION The invention is a feature-based optical character recognition system and process which extracts from the character image bit-map a set of features, the key ones of which are nearly invariant under rotation of the image. The set of features employed is comprehensive enough to ensure unambiguous identification of each document character. The presence in the feature set of key features which are nearly invariant under image rotation within a certain range reduces the probability that such rotation can disrupt character identification by the feature-based optical character recognition system
The system of the invention extracts a first rotationally invariant feature from the character bit-map image by identifying radial intercepts of black-to-white transitions in an object in the bit-map image encountered along the edge of each one of a series of concentric circles of successively larger predetermined radii centered at the centroid of the object, or at least one circle thereof. The population at each radius of such transitions is a rotationally invariant feature characterizing the character bit-map image.
The system of the invention extracts a second feature which is rotationally invariant within a limited range of rotation angle. In extracting this second feature, the system determines for each end point and branch point in the bit-map image which pair of squares in a grid of squares superimposed on the bit-map image have their centers closest to the endpoint or branch point. The feature thus extracted is a listing of the corresponding pairs of squares in the grid for branch points and another listing for end points. Preferably, the squares in the grid are sufficiently large to reduce the probability of an image rotation over a limited rotation angle changing the determination of nearest pairs of square centers.
In addition to the foregoing key features, other features not necessarily as invariant under rotation are extracted from the bit-map image so that all extracted features together are sufficiently comprehensive to provide unambiguous feature-based character recognition in nearly all cases. These other features include the presence of each one of four quadrant arcs of a circle and their location by quadrant in the bit-map image and the correlation of the image with horizontal lines, vertical lines, major diagonal lines and minor diagonal lines.
In a preferred embodiment of the invention, the foregoing features are transmitted along with the bit-map image as a single N-dimensional vector to an absolute distance measure feature-based recognition device. The device stores a set of N-dimensional reference vectors extracted from a complete set of known symbols. The reference vectors are formed from images of a set of known symbols by the same process used to generate the single N-dimensional vector representing the bit-map image of the unknown character. Finding the reference vector having the smallest absolute distance from the unknown vector identifies the correct symbol.
In another preferred embodiment of the invention, a neural network is trained with the same set of N- dimensional reference vectors to identify the N- dimensional vector of the unknown character using the same feature set.
The advantage is that the presence in the feature set of key features which are invariant under rotation of the image, or at least nearly so, enhances the reliability of the feature-based optical character recognition system of the invention relative to feature- based optical character recognition systems of the prior art.
BRIEF DESCRIPTION OF THE DRAWINGS The invention is described below in detail by reference to the accompanying drawings, of which:
Fig. 1 is a block diagram of the system of the invention;
Fig.'s 2a, 2b, 2c and 2d include pictorial diagrams and a chart illustrating the operation of a radial intercept processor in the system of Fig. 1;
Fig. 3 is a flow diagram illustrating the operation of the radial intercept processor in the system of Fig. If
Fig. 4 is a graph representing a step depicted in the flow diagram of Fig. 3;
Fig. 5 is a flow diagram illustrating in detail a step depicted in the flow diagram of Fig. 3;
Fig. 6 is a pictorial diagram illustrating how radial intercept locations are classified in the process of Fig. 3;
Fig. •s 7a, 7b and 7c are pictorial diagrams illustrating the operation of the end point and branch point processor in the system of Fig. 1;
Fig. 8 is a flow diagram illustrating the operation of the end point and branch point processor of the system of Fig. 1;
Fig. 9 is a pictorial diagram illustrating the operation of a portion of the system of Fig. 1;
Fig. 10 is a flow diagram illustrating one aspect of the operation of a curve and line processor in the system of Fig. 1;
Fig. 11 is a diagram illustrating curvature templates employed in the process of Fig. 10;
Fig. 12 is a table illustrating a simple example of the encoding of some of the features extracted by the system of Fig. 1;
Fig. 13 illustrates the four-by-four binary image example corresponding to Fig. 12; Fig. 14 is a table illustrating a simple example of encoding features relating to the presence of quarter- arcs in each quadrant of an image;
Fig. 15 illustrates an image corresponding to the example of Fig. 14;
Fig. 16 is a table illustrating a simple example of encoding features relating to the number of radial intercepts in an image; and
Fig. 17 illustrates an image corresponding to the example of Fig. 16.
MODES OF CARRYING OUT THE INVENTION Referring to Fig. 1, a document scanner 10 generates binary data representing the image of a document. A εegmenter 12 separates the images of individual characters in the document image using well-known techniques and a normalizer 14 adjusts the image of each character to a predetermined size and aspect ratio in accordance with known practice. A thinning processor 16 thins the strokes in the character image to generate a thinned character image. A curve and line processor 18 extracts features from the thinned character image in a manner described below. An end point and branch point processor 20 extracts end point and branch point features which are nearly rotationally invariant from the thinned character image. A horizontal and vertical intercept processor 22 extracts features relating to the number of intercepts between a set of horizontal and vertical lines and the normalized character image. A radial intercept processor 24 determines the number and location of intercepts in the image at a set of predetermined radii, the number of intercepts being a rotationally invariant feature of the character image.
The outputs of all the processors 16, 18, 20, 22 and 24 are combined with the binary data representing the character image to form an N-dimensional vector 26 of binary data. A feature-based recognition processor 28 computes the absolute distance between this vector and each one of a set of N-dimensional reference vectors stored in a memory 30 representative of a complete set of symbols. The recognition processor 28 identifies the character image with the symbol whose reference vector has the shortest absolute distance from the input vector 26.
The radial intercept processor 24 generates the set of rotationally invariant features from the character image, such as the exemplary character image illustrated in Fig. 2a, by detecting the outer boundaries of the object 32 in the image received from the normalizer 14 to form an outline image 34 illustrated in Fig. 2b. As illustrated in Fig. 2c, the radial intercept processor 24 then counts the number of times the boundary of the outline image 34 intercepts each one of a plurality of predetermined radii rs, using a simple Pythagorean algorithm. Fig. 2d illustrates the intercept count at each one of the radii. Referring to Fig. 3, the radial intercept processor 24 begins by locating the centroid 36 of the object 32 of Fig. 2a (block 38 of Fig. 3), produces the outline image 34 (block 40 of Fig. 3). However, in the preferred embodiment of the invention, before counting the number of radial intercepts, the radial intercept processor 24 calculates the radial distances from the centroid 36 along a continuum of points on the boundary of the outline image 34 (block 42 of Fig. 3) , to generate the data indicated in graphic form in Fig. 4. The radial intercept processor 24 then normalizes the radial distances plotted in Fig. 4 using any one of several well-known methods (block 44) . For example, in one embodiment, the maximum radius in the outline image 34 is set to unity and all other radii are scaled accordingly. Then, in the preferred embodiment of the invention, the radial intercept processor selects a single radius Rs at which intercepts by the outline image 34 are to be counted. In an alternative embodiment of the invention, intercepts are counted at a plurality of predetermined radii about the centroid 36.
In selecting Rs, the radial intercept processor 24 first computes the mean R,,^, of all radii and another radius value $ which is halfway between the highest valley and the lowest peak in the graph of Fig. 4 (block 46 of Fig. 3) . Rs is then computed by the processor 24 as [3Rj + Rjaean]/4 as indicated by block 48 of Fig. 3. The radial intercept processor 24 then counts the number of intercepts by the boundary of the outline image 34 at the radius Rs, identifies their locations (block 50) and encodes the results (block 52).
Identifying the locations of the intercepts in the step of block 50 is illustrated in detail in the flow diagram of Fig. 5. For convenience, the circumference of the radius Rς as superimposed in the outline image 34 of Fig. 2b is divided into eight pie-shaped polar sections labelled 0 through 7 in Fig. 6. There are eight regions, each region consisting of a pair of adjacent sections, aε shown in Fig. 6. Each pair of adjacent sections is numbered in accordance with the lowest numbered section in the pair. Thus, the eight regions of Fig. 6 are numbered from 0• to 7' , some of which are indicated in Fig. 6. Each radial intercept is identified in accordance with that one of the eight regions in which it resides. Since the eight regions are overlapping, the radial intercept processor 24 must first locate each intercept of Rs (block 54 of Fig. 5) , identify the two sections nearest the intercept (blocks 56 and 58 of Fig. 5) and identify the correct region as the one comprising the two sections nearest the intercept (block 60) .
The number of radial intercepts is inherently invariant under rotation about any point near the centroid 36. The process of Fig. 5 renders the identification of the polar location of each radial intercept less susceptible to change in case of rotation of the document image because each such location is classified as one of the eight regions of Fig. 6.
The operation of the end point and branch point processor 20 is illustrated in the pictorial diagrams of Fig. 's 7a, 7b and 7c and in the flow diagram of Fig. 8. To begin, the thinning processor 16 generates a thinned bit-map character image 62 of Fig. 7a from the normalized bit-map character image 32 of Fig. 2a using well-known techniques (block 63 if Fig. 8) . The end point and branch point processor 20 then locates each end point 64, 66, 68 and each branch point 70, 72 in the thinned image 62, as illustrated in Fig. 7b, using well-known techniques (block 73 of Fig. 8) . Then, the processor 20 superimposes a grid 74 on the thinned image 62 (block 75 of Fig. 8) . As shown in Fig. 7b, the grid 74 is characterized by two intermediate height locations in the image, labelled hi and h2 in Fig. 7b, and two intermediate width locations, labelled wl and w2, dividing the image into nine rectangular regions with regional centers 76, 78, 80, 82, 84, 86, 88, 90, 92 (block 94 of Fig. 8) .
The processor 20 then classifies each end point and each branch point in accordance with which pair of the regional centers is closest to the point (block 96 of Fig, 8) . Fig. 7b illustrates this process in the exemplary case of the end point 64. Specifically, the processor 20 determines the distances dl, d2, d3, d4 between the end point 64 and the regional centers 78, 76, 80, 84, respectively, using well-known techniques. (For the sake of completeness, the processor 20 may determine the distances to all nine of the regional centers, although Fig. 7b illustrates the distances to the four nearest regional centers.) As shown, the distance dl is the shortest while the distance d3 is the next shortest. Referring now to Fig. 7c, if the nine rectangular regions are numbered 1 through 9 and all twelve pairs of the nine regions are labelled A through L in the manner indicated in Fig. 7c, then it is seen that the end point 64 of Fig. 7b is closest to the centers 78 and 80 of the rectangular regions 2 and 3, and therefore is classified as being in the region pair B. All of the end points 64, 66, 68 and branch points 70, 72 are individually classified in a similar manner in accordance with the foregoing process. This classification corresponds to the step of block 98 of Fig. 8. In actual practice, of course, all of the foregoing labels are binary, the foregoing alphanumeric labels being used in the present description for convenience only.
The advantage of the foregoing end point and branch point classification process is that each pair of regions A through L of Fig. 7c is relatively large, containing a large number of image pixels. Thus, in the vast majority of cases, the bit-map image may be rotated through a finite angle without changing the classification performed by the processor 20. In contrast, if each end point and branch point were simply classified in accordance with its exact pixel location in the bit-map image, even the slightest rotation would drastically change its classification. As a result, any document skew would seriously impair the optical character recognition process. The advantage of the invention is that the probability of such an occurrence is dramatically reduced for the end point and branch point feature classification.
In addition to the two foregoing rotationally invariant or stable features (i.e., the radial intercepts and the end point/branch point grid locations) , additional features which are not necessarily as rotationally stable or invariant are extracted from the character image by the curve and line processor 18 and by the horizontal and vertical intercept processor 22 of
Fig. 1 in order to provide a sufficiently comprehensive set of extracted features to ensure a high probability of unambiguous character recognition in all cases. The operations of the curve and line processor 18 and the horizontal and vertical intercept processor 22 will be described with reference to the pictorial diagram of Fig. 9.
In step 100 of Fig. 9, the εegmenter 10 of Fig. 1 generates an original bit-map image of m rows and n columns of pixels, which the normalizer 12 of Fig. 1 normalizes to an image of 24 rows and 12 columns in step 102 of Fig. 9. The thinning processor 16 generates a thinned character image which is used in steps 104, 106, 108, 110, 112, 114 and 116 of Fig. 9.
In step 104, the curve and line processor 18 divides the image into eight horizontal regions and classifies the image in accordance with which ones of the eight horizontal regions have more "ON" pixels than a predetermined threshold number. In step 106, the processor 18 divides the image into eight vertical regions and classifies the image in accordance with which ones of the eight vertical regions have more "ON" pixels than the predetermined threshold number. In step 108, the processor 18 divides the image into four minor diagonal regions along three minor diagonal boundaries and classifies the image in accordance with which ones of the four minor diagonal regions have more "ON" pixels than the predetermined threshold number. In step 110, the processor 18 divides the image into four major diagonal regions along three major diagonal boundaries and classifies the image in accordance with which ones of the four major diagonal regions have more "ON" pixels than the predetermined threshold number. An additional process carried out by the curve and line processor 18 is illustrated in the flow diagram of Fig. 10. In this additional process, the processor 18 divides the image into four rectangular quadrants (block 112 of Fig. 10) . The processor 18 then searches within each quadrant for a match with each one of four quarter- arc templates 116, 118, 120, 122 illustrated in Fig. 11, corresponding respectively to the quarter-arcs 124, 126, 128, 130 as indicated in Fig. 11 (block 114 of Fig. 10). This step is performed in accordance with well-known template matching techniques. One way of doing this is to separately convolve the individual image in each rectangular quadrant with each of the four quarter-arc templates. If the number of "ON" pixels in a quadrant of an image matching the "ON" pixels of a template exceeds a threshold, a match is declared and the image is classified in accordance with the matching quadrant and the matching template (block 132 of Fig. 10) . Each rectangular quadrant of the image is classified in accordance with the foregoing process.
In step 134 of Fig. 9, the horizontal and vertical intercept processor 22 receives the normalized character bit-map image directly from the normalizer 14 (bypassing the thinning processor 16) . The processor 22 divides this image into three horizontal regions 136, 138, 140. Then, along each one of three pixels rows (indicated by dashed lines) bisecting the three horizontal regions 136, 138, 140, the processor 22 counts the number of intercepts with "ON" pixels in the image. In step 143 of Fig. 9, the processor 22 divides the image into three vertical regions 144, 146, 148 and counts the number of intercepts with "ON" pixels along each one of three pixel columns bisecting the three vertical regions 144, 146, 148. Each count thus obtained is stored as a feature of the image.
The feature classification data generated from the character bit-map image by each of the processors 18, 20, 22, 24 of Fig. 1 in the foregoing manner are combined together sequentially as a series of data bits to form an input vector 26 characterizing the features extracted from the image. The feature-based recognition processor 28 compares the input vector to a set of reference vectors stored in the memory 30 and on the basis of that comparison determines the identity of the character in the image.
Construction of the input vector 26 is illustrated in simplified tutorial examples illustrated in Fig. 'ε 12 through 17. It should be noted that the 4-by-4 pixel image of the tutorial example of Fig. 's 12 and 13 was selected for the sake of simplicity, although its division into three horizontal and vertical regions necessitated some assymetries, as will be seen below.
The input vector 26 consiεtε of the bit-map image data 150, the horizontal line feature classification data 152 generated by step 104 of Fig. S, the vertical line feature classification data 154 generated by step 106 of Fig. 9, the minor diagonal line feature classification data 156 generated by step 108, the major diagonal feature classification line data 158 generated by step
110, the horizontal intercept feature classification data 160 and vertical intercept feature classification data 162 generated by steps 134 and 143 of Fig. 9, the end point feature classification data 164 and branch point feature classification data 166 generated by the processor 20, the quarter-arc feature classification data 168 generated by the process of Fig. 10 and the radial intercept feature classification data 170 generated by the processor 24. In the following examples, the bits in the input vector 26 are not binary encoded, so that counts are represented by the number of "1" bits present in a given group of bits.
All of the feature classification data in Fig. 12 were generated for the simplified tutorial example of a 4-by-4 pixel image illustrated in Fig. 13. Thus, there are 16 bits in the bit-map data 150. There are eight bits in the horizontal line data 152 and in the vertical line data 154 corresponding to the eight horizontal regions in step 104 and eight vertical regions of Fig. 9. There are four bits in the minor diagonal line data 156 and in the major diagonal line data 158 corresponding to the four minor and major diagonal regions of steps 108 and 110.
There are three sets of four bit groups in the horizontal intercept data 160 and in the vertical intercept data 162, corresponding to the three horizontal intercept lines and three vertical intercept lines indicated in dashed line in Fig. 13.
There are twenty-one bitε in the end point feature claεsification data 164. The first nine bits indicate the presence of an end point in each one of the nine regions in the grid 74 of Fig. 7b superimposed onto the character bit-map of Fig. 13. The last twelve bitε indicate the presence of an end point in each one of the twelve pairs of regions defined in Fig. 7c, beginning at the region labelled A and ending with the region labelled L in Fig. 7c.
There are twenty-one bits in the branch point feature classification data 166 organized in the same manner as the twenty-one bits of the end point feature classification data 164.
Referring now to Fig. 14, the quarter-arc feature classification data 168 corresponds to the tutorial example illustrated in Fig. 15 of the bit-map image of a capital letter "C". In accordance with the process of Fig. 10, each of the quarter-arc templates of Fig. 11 has been convolved with the individual image in each one of the four quadrants 172, 174, 176, 178 of the bit-map image of Fig. 15. The results are organized in the data of Fig. 14 as follows: each one of the four-bit groups indicates the presence (or absence) of a match with the corresponding one of the four quadrant-arc templates. Each one of four bitε in a group corresponds to one of the four quadrants 172, 174, 176, 178, respectively.
The radial intercept feature classification data 170 of Fig. 16 corresponds to the simplified tutorial example of the bit-map image of Fig. 17, comprising a capital letter "A", the eight-sector map of Fig. 6 being superimposed and centered at the centroid 36 of the letter "A". The radius Rs is indicated in dashed line in Fig. 17. The eight two-bit pairs in the radial intercept data 170 of Fig. 16 represent the number of intercepts in corresponding ones of the eight sectors in numerical order. This data is not binary encoded. Thus, two intercepts in a sector is indicated by two binary "ones".
All of the feature classification data 150, 152, 154, 156, 158, 160, 162, 164, 166, 168, 170 in serial order comprise the input vector 126 received by the feature based recognition processor 28. In one embodiment, the feature-based recognition processor 28 computes the absolute distance between the input vector 126 and each one of the reference vectors stored in the memory 30. The feature-based recognition processor 28 identifies the character in accordance with the reference vector having the smallest diεtance to the character image vector. The reference vectorε εtored in the memory 30 are created by feeding a complete εet of known εymbolε to the scanner 10 and storing the input vector 26 generated for each one of the symbols in the memory 30. Aε computed by the procesεor 28, the abεolute diεtance between two n-dimenεional vectorε (aα, a2, a3,...,an) and (b2, b2, b3,...,bn) iε:
I &r- I+1 --r- I+1a3-b31+• • •+1an-*nI
Alternatively, the feature-baεed recognition processor 28 may be a neural network.
The εyεtem of Fig. 1 waε implemented on a computer using the C-language programs in the computer program listings of Appendices A and B of thiε εpecification. The program in Appendix B implementε the radial intercept feature extraction process of Fig. 'ε 3 and 5. The portion of the program on pages 40-45 of Appendix A implementε the end point and branch point feature extraction process of Fig. 8. Notice is hereby given that Eastman Kodak Company ownε the copyright in the programs listed in Appendices A and B hereof.
Industrial Utilities and Advantages The invention is uεeful in feature-baεed optical character recognition of both printed and hand-written characters. An advantage of the invention is that its performance is leεε εuεceptible degradation by document εkew or rotation of the character images.
While the invention has been described in detail by specific reference to preferred embodiments thereof, it is underεtood that variationε and modificationε may be made without departing from the true εpirit and εcope of the invention.

Claims

What iε claimed is:
1. A feature-based optical character recognition system for extracting features from an individual character image εeg ented from a document image, co priεing: radial intercept feature extraction means for counting a number of intercepts between at least one of a plurality of circles of predetermined radii and boundary transitions in said character image; transition point location feature extraction means for determining for each transition point in said image an identity of a pair of regions in a grid superimposed on said character image nearest the transition point, whereby said number of intercepts and said identity of εaid pair of regionε compriεe an input data εtring; and feature-baεed recognition meanε for comparing said input data εtring with a set of reference data strings corresponding to a set of known symbols.
2. The system of Claim 1 wherein said radial intercept feature extraction means comprise: means for locating a centroid and boundary of an object in said character image; means for selecting the radius of said one circle an centering said circle at said centroid.
3. The system of Claim 2 wherein said means for selecting said radius comprise: means for locating with respect to said centroid a reference radius between a minimum radial peak and a maximum radial valley in said boundary; and means for computing said one radiuε aε a weighted average of εaid reference radiuε and a mean radius of said boundary.
4. The system of Claim 2 wherein said radial intercept feature extraction means further comprises: means for determining for each one of said intercepts an identity of a pair of polar sections nearest said one intercept in a grid of polar sections superimposed on εaid character image and centered at said centroid, wherein εaid input data string further comprises said identity of said pair of polar εectionε.
5. The system of Claim 1 wherein said radial intercept means compriεes means for generating a histogram of the intercept count at -each one of said plurality of radii, wherein εaid input data εtring compriεes said histogram.
6. The system of Claim 1 wherein said transition points comprise end pointε and branch pointε in said image.
7. The system of Claim 1 further comprising curve feature extraction means for making an identification of which predetermined regions of said character image match one of a set of arc templates, wherein said input data εtring further comprises said identification of said predetermined regions.
8. The system of Claim 7 wherein said curve feature extraction means comprises means for making said identification for each one of a set of four quarter-arc tempi ateε.
9. The εyεtem of Claim 8 wherein said predetermined regionε compriεe quadrantε of said character image.
10. The system of Claim 1 further comprising line feature extraction means for making an identification of at leaεt one of a plurality of selected lines having predetermined orientations correlated with εaid character image, wherein εaid input data εtring further compriεes εaid identification of εaid εelected line.
11. The εyεtem of Claim 10 wherein said plurality of selected lines comprise vertical, horizontal, minor diagonal and major diagonal lines, whereby said line feature extraction means compriseε meanε for making said identification for each one of said selected lines.
12. The syεtem of Claim 10 wherein said line feature extraction means compriseε meanε for determining whether the number of "ON" pixels in each one of a plurality of parallel linear regions of said character image characterized by one of said predetermined orientations exceeds a predetermined threshold number.
13. A feature-based optical character recognition method for extracting features from an individual character image segmented from a document image, comprising: counting a number of intercepts between at least one of a plurality of circles of predetermined radii in said character image and boundary transitions in said character image; determining for each transition point in εaid image an identity of a pair of regionε in a grid superimposed on said character image nearest the transition point, whereby εaid number of intercepts and said identity of said pair of regions comprise an input data string; and comparing εaid input data string with a set of reference data εtringε correεponding to a set of known symbols.
14. The method of Claim 13 wherein εaid counting step compriεes: locating a centroid and boundary of an object in said character image; centering said one circle at said centroid; and selecting the radius of said one circle.
15. The method of Claim 14 wherein said selecting step compriseε: locating with reεpect to said centroid a reference radius between a minimum radial peak and a maximum radial valley in said boundary; and computing said radius as a weighted average of said reference radius and a mean radiuε of said boundary.
16. The method of Claim 14 wherein said counting step further comprises: determining for each one of said intercepts an identity of a pair of polar sections nearest said one intercept in a grid of polar sections superimposed on said character image and centered at said centroid, wherein said input data string further comprises said identity of said pair of polar sections.
17. The method of Claim 13 wherein said counting step compriseε generating a histogram of the intercept count at each one of εaid plurality of radii, wherein said input data string comprises said histogram.
18. The method of Claim 13 wherein said transition points comprise end points and branch points in said image.
19. The method of Claim 13 further comprising making an identification of which predetermined regionε of said character image match one of a set of arc templates, wherein said input data string further compriseε εaid identification of εaid predetermined regionε.
20. The method of Claim 19 wherein said step of making said identification of said predetermined regions comprises making said identification for each one of a set of four quarter-arc templates.
21. The method of Claim 20 wherein said predetermined regions comprise quadrants of said character image.
22. The method of Claim 13 further comprising making an identification of at least one of a plurality of selected lines having predetermined orientations correlated with said character image, wherein said input data string further comprises said identification of said selected line.
23. The method of Claim 22 wherein said plurality of selected lines comprise vertical, horizontal, minor diagonal and major diagonal lines, whereby the step of making said identification of εaid selected lines compriseε meanε for making said identification for each one of said selected lineε.
24. The method of Claim 22 wherein said step of making said identification of said selected line compriseε meanε for determining whether the number of "ON" pixelε in each one of a plurality of parallel linear regionε of said character image characterized by one of said predetermined orientations exceeds a predetermined threshold number.
PCT/US1991/003066 1990-05-07 1991-05-03 Rotationally impervious feature extraction for optical character recognition WO1991017518A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US520,336 1990-05-07
US07/520,336 US5054094A (en) 1990-05-07 1990-05-07 Rotationally impervious feature extraction for optical character recognition

Publications (1)

Publication Number Publication Date
WO1991017518A1 true WO1991017518A1 (en) 1991-11-14

Family

ID=24072168

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1991/003066 WO1991017518A1 (en) 1990-05-07 1991-05-03 Rotationally impervious feature extraction for optical character recognition

Country Status (4)

Country Link
US (1) US5054094A (en)
EP (1) EP0481073A1 (en)
JP (1) JPH04507318A (en)
WO (1) WO1991017518A1 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0586210A2 (en) * 1992-08-31 1994-03-09 International Business Machines Corporation Optical character recognition
WO2011141016A1 (en) * 2010-05-14 2011-11-17 Conti Temic Microelectronic Gmbh Method for detecting traffic signs
US9418303B2 (en) 2009-10-01 2016-08-16 Conti Temic Microelectronic Gmbh Method for traffic sign recognition
US9436879B2 (en) 2011-08-04 2016-09-06 Conti Temic Microelectronic Gmbh Method for recognizing traffic signs
US9697430B2 (en) 2013-10-01 2017-07-04 Conti Temic Microelectronic Gmbh Method and apparatus for identifying road signs

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5305395A (en) * 1990-06-08 1994-04-19 Xerox Corporation Exhaustive hierarchical near neighbor operations on an image
JP3361124B2 (en) * 1991-07-30 2003-01-07 ゼロックス・コーポレーション Image processing method and image processing apparatus on two-dimensional image including text
US5245674A (en) * 1991-07-30 1993-09-14 Xerox Corporation Image processing using distance as a function of direction
US5253307A (en) * 1991-07-30 1993-10-12 Xerox Corporation Image analysis to obtain typeface information
US6373997B1 (en) 1991-07-30 2002-04-16 Xerox Corporation Coarse and fine skew measurement
US5515451A (en) * 1992-01-08 1996-05-07 Fuji Xerox Co., Ltd. Image processing system for selectively reproducing documents
US5371809A (en) * 1992-03-30 1994-12-06 Desieno; Duane D. Neural network for improved classification of patterns which adds a best performing trial branch node to the network
EP0566015A3 (en) * 1992-04-14 1994-07-06 Eastman Kodak Co Neural network optical character recognition system and method for classifying characters in amoving web
US5319722A (en) * 1992-10-01 1994-06-07 Sony Electronics, Inc. Neural network for character recognition of rotated characters
US5742702A (en) * 1992-10-01 1998-04-21 Sony Corporation Neural network for character recognition and verification
JP3549569B2 (en) * 1993-04-27 2004-08-04 ソニー エレクトロニクス インコーポレイテッド Target pattern detection method in video
US5604822A (en) * 1993-11-12 1997-02-18 Martin Marietta Corporation Methods and apparatus for centroid based object segmentation in object recognition-type image processing system
US5588072A (en) * 1993-12-22 1996-12-24 Canon Kabushiki Kaisha Method and apparatus for selecting blocks of image data from image data having both horizontally- and vertically-oriented blocks
DE69522844T2 (en) * 1994-02-16 2002-05-16 Koninkl Philips Electronics Nv Image processing method for the local determination of the center and the objects which stand out against a background, and device for carrying out the method
US5638466A (en) * 1995-08-30 1997-06-10 Horizon Marketing Corporation Aka Wordwand Method and apparatus for deskewing images of symbols having a non-linear baseline
US6571013B1 (en) * 1996-06-11 2003-05-27 Lockhead Martin Mission Systems Automatic method for developing custom ICR engines
US6112195A (en) * 1997-03-27 2000-08-29 Lucent Technologies Inc. Eliminating invariances by preprocessing for kernel-based methods
US6130959A (en) * 1997-07-16 2000-10-10 Cognex Corporation Analyzing an image of an arrangement of discrete objects
US6141464A (en) * 1998-03-30 2000-10-31 Xerox Corporation Robust method for finding registration marker positions
CA2296143A1 (en) * 2000-01-18 2001-07-18 9071 9410 Quebec Inc. Optical inspection system
CN1282942C (en) * 2002-07-26 2006-11-01 松下电工株式会社 Image processing method for appearance inspection
US7190834B2 (en) * 2003-07-22 2007-03-13 Cognex Technology And Investment Corporation Methods for finding and characterizing a deformed pattern in an image
US20050152586A1 (en) * 2004-01-13 2005-07-14 Tri-D Systems, Inc. Print analysis
US7574416B2 (en) * 2004-01-16 2009-08-11 Saffron Technology, Inc. Distance-based spatial representation and prediction systems, methods and computer program products for associative memories
US8218904B2 (en) * 2008-08-27 2012-07-10 Lockheed Martin Corporation Method and system for circular to horizontal transposition of an image
WO2010092952A1 (en) * 2009-02-10 2010-08-19 公立大学法人大阪府立大学 Pattern recognition device
US8699755B2 (en) * 2009-02-20 2014-04-15 Navteq B.V. Determining travel path features based on retroreflectivity
JP4683395B2 (en) * 2009-03-16 2011-05-18 独立行政法人国立高等専門学校機構 Identification device and identification method
US8559733B2 (en) * 2009-03-31 2013-10-15 Citrix Systems, Inc. Methods and systems for approximating progressive image encoding using image partitioning
JP2011008713A (en) * 2009-06-29 2011-01-13 Fujitsu Semiconductor Ltd Program, apparatus and method for processing image
CN103093185B (en) * 2011-11-07 2016-05-25 佳能株式会社 Character recognition device, image processing apparatus and method thereof
US8750620B2 (en) 2011-12-07 2014-06-10 Elwha Llc Reporting informational data indicative of a possible non-imaged portion of a region of interest
US9378435B1 (en) * 2014-06-10 2016-06-28 David Prulhiere Image segmentation in optical character recognition using neural networks
US20160110599A1 (en) * 2014-10-20 2016-04-21 Lexmark International Technology, SA Document Classification with Prominent Objects
CN110738250B (en) * 2019-10-09 2024-02-27 陈浩能 Fruit and vegetable freshness identification method and related products

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA1118109A (en) * 1978-10-13 1982-02-09 Keiichi Anahara Pattern reading system
EP0138373A2 (en) * 1983-09-15 1985-04-24 Pitney Bowes, Inc. Image thinning process
US4566124A (en) * 1982-08-10 1986-01-21 Agency Of Industrial Science & Technology, Ministry Of International Trade & Industry Pattern reading system
DE3716787A1 (en) * 1986-05-19 1987-11-26 Ricoh Kk CHARACTER RECOGNITION METHOD
EP0266140A2 (en) * 1986-10-29 1988-05-04 Pitney Bowes, Inc. Optical character recognition by forming and detecting matrices of geographical features
EP0281725A2 (en) * 1987-03-13 1988-09-14 GTX Corporation Method and apparatus for generating size and orientation invariant shape features
US4959870A (en) * 1987-05-26 1990-09-25 Ricoh Company, Ltd. Character recognition apparatus having means for compressing feature data

Family Cites Families (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE226379C (en) *
NL179454B (en) * 1952-06-28 Jan Hendrik Gerlings PLATE-SHAPED PLASTIC ELEMENT.
US3050711A (en) * 1959-02-26 1962-08-21 Bell Telephone Labor Inc Automatic character analyzer
NL124767C (en) * 1964-01-02 1900-01-01
DE1524385B2 (en) * 1965-12-15 1975-03-20 Hitachi Ltd., Tokio Character scanner
US3715724A (en) * 1969-12-24 1973-02-06 Olivetti & Co Spa Apparatus for recognizing graphic symbols
US3766520A (en) * 1971-11-10 1973-10-16 Regonition Equipment Inc Character reader with handprint capability
JPS5231134B2 (en) * 1972-01-24 1977-08-12
US3909785A (en) * 1973-11-12 1975-09-30 Amperex Electronic Corp Apparatus for recognizing hand printed characters
JPS5723295B2 (en) * 1973-12-28 1982-05-18
US3968475A (en) * 1974-11-11 1976-07-06 Sperry Rand Corporation Digital processor for extracting data from a binary image
US4132976A (en) * 1975-09-08 1979-01-02 Siegal Richard G Operator readable and machine readable character recognition systems
US4048615A (en) * 1976-06-04 1977-09-13 Recognition Equipment Incorporated Automated character recognition system
US4185270A (en) * 1976-07-19 1980-01-22 Fingermatrix, Inc. Fingerprint identification method and apparatus
US4109237A (en) * 1977-01-17 1978-08-22 Hill Robert B Apparatus and method for identifying individuals through their retinal vasculature patterns
GB1605262A (en) * 1977-05-25 1986-12-17 Emi Ltd Representing the position of a reference pattern in a pattern field
JPS5418632A (en) * 1977-07-12 1979-02-10 Nippon Telegr & Teleph Corp <Ntt> Character identification system
US4208652A (en) * 1978-09-14 1980-06-17 A. C. Nielsen Company Method and apparatus for identifying images
US4242734A (en) * 1979-08-27 1980-12-30 Northrop Corporation Image corner detector using Haar coefficients
JPS5926064B2 (en) * 1979-09-10 1984-06-23 工業技術院長 Feature extraction device for contour images
JPS5647876A (en) * 1979-09-28 1981-04-30 Hitachi Ltd Character recognition system
US4275381A (en) * 1980-01-02 1981-06-23 Siegal Richard G Operator readable and machine readable character recognition system
JPS57113183A (en) * 1980-12-29 1982-07-14 Comput Basic Mach Technol Res Assoc Feature extraction system
JPS5951536A (en) * 1982-09-14 1984-03-26 Fujitsu Ltd Method and apparatus for pattern recognition
JPS59136874A (en) * 1983-01-26 1984-08-06 Fuji Electric Co Ltd Pattern identifier
JPS59136875A (en) * 1983-01-26 1984-08-06 Fuji Electric Co Ltd Pattern identifier
US4783829A (en) * 1983-02-23 1988-11-08 Hitachi, Ltd. Pattern recognition apparatus
EP0149457B1 (en) * 1984-01-13 1993-03-31 Kabushiki Kaisha Komatsu Seisakusho Method of identifying contour lines
JPS60204086A (en) * 1984-03-28 1985-10-15 Fuji Electric Co Ltd Object discriminating device
US4607384A (en) * 1984-05-01 1986-08-19 At&T - Technologies, Inc. Fingerprint classification arrangement
US4672678A (en) * 1984-06-25 1987-06-09 Fujitsu Limited Pattern recognition apparatus
DE3580918D1 (en) * 1984-12-14 1991-01-24 Sten Hugo Nils Ahlbom ARRANGEMENT FOR TREATING IMAGES.
US4742556A (en) * 1985-09-16 1988-05-03 Davis Jr Ray E Character recognition method
US4704694A (en) * 1985-12-16 1987-11-03 Automation Intelligence, Inc. Learned part system
US4817187A (en) * 1987-02-19 1989-03-28 Gtx Corporation Apparatus and method for vectorization of incoming scanned image data
US4783830A (en) * 1987-03-24 1988-11-08 American Electronics, Inc. Pattern recognizing content addressable memory system

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA1118109A (en) * 1978-10-13 1982-02-09 Keiichi Anahara Pattern reading system
US4566124A (en) * 1982-08-10 1986-01-21 Agency Of Industrial Science & Technology, Ministry Of International Trade & Industry Pattern reading system
EP0138373A2 (en) * 1983-09-15 1985-04-24 Pitney Bowes, Inc. Image thinning process
DE3716787A1 (en) * 1986-05-19 1987-11-26 Ricoh Kk CHARACTER RECOGNITION METHOD
EP0266140A2 (en) * 1986-10-29 1988-05-04 Pitney Bowes, Inc. Optical character recognition by forming and detecting matrices of geographical features
EP0281725A2 (en) * 1987-03-13 1988-09-14 GTX Corporation Method and apparatus for generating size and orientation invariant shape features
US4959870A (en) * 1987-05-26 1990-09-25 Ricoh Company, Ltd. Character recognition apparatus having means for compressing feature data

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0586210A2 (en) * 1992-08-31 1994-03-09 International Business Machines Corporation Optical character recognition
EP0586210A3 (en) * 1992-08-31 1994-12-14 Ibm Optical character recognition.
US6101270A (en) * 1992-08-31 2000-08-08 International Business Machines Corporation Neural network architecture for recognition of upright and rotated characters
US9418303B2 (en) 2009-10-01 2016-08-16 Conti Temic Microelectronic Gmbh Method for traffic sign recognition
WO2011141016A1 (en) * 2010-05-14 2011-11-17 Conti Temic Microelectronic Gmbh Method for detecting traffic signs
US8953842B2 (en) 2010-05-14 2015-02-10 Conti Temic Microelectronic Gmbh Method for road sign recognition
US9436879B2 (en) 2011-08-04 2016-09-06 Conti Temic Microelectronic Gmbh Method for recognizing traffic signs
US9697430B2 (en) 2013-10-01 2017-07-04 Conti Temic Microelectronic Gmbh Method and apparatus for identifying road signs

Also Published As

Publication number Publication date
US5054094A (en) 1991-10-01
JPH04507318A (en) 1992-12-17
EP0481073A1 (en) 1992-04-22

Similar Documents

Publication Publication Date Title
US5054094A (en) Rotationally impervious feature extraction for optical character recognition
US5077805A (en) Hybrid feature-based and template matching optical character recognition system
US4817171A (en) Pattern recognition system
US5410611A (en) Method for identifying word bounding boxes in text
Dave Segmentation methods for hand written character recognition
US5539841A (en) Method for comparing image sections to determine similarity therebetween
US5539840A (en) Multifont optical character recognition using a box connectivity approach
EP0385009A1 (en) Apparatus and method for use in image processing
US7620250B2 (en) Shape matching method for indexing and retrieving multimedia data
CN109343920B (en) Image processing method and device, equipment and storage medium thereof
CN109740606B (en) Image identification method and device
Nathalie Diane et al. A survey of partition-based techniques for copy-move forgery detection
Lehal et al. Feature extraction and classification for OCR of Gurmukhi script
EP0604687B1 (en) Method for deriving character features in a character recognition system
JP2864735B2 (en) Object identification method and apparatus, and image processing method and apparatus for object identification
JPS62254282A (en) Method and apparatus for separating overlapped pattern
CN112507751A (en) QR code positioning method and system
Shakunthala et al. Enhanced text line segmentation and skew estimation for handwritten Kannada document
US5790701A (en) Character recognition apparatus using edge images
Chung et al. Handwritten character recognition by Fourier descriptors and neural network
KR101991461B1 (en) Character recognition system and method using vectorization of feature points
RU2778906C1 (en) Method for automatically recognizing scenes and objects in an image
Dai et al. An Orientation-correction Detection Method for Scene Text Based on SPP-CNN
Shimotsuji et al. Robust drawing recognition based on model-guided segmentation
Shimotsuji A robust drawing recognition system based on contour shape analysis

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: 1991911531

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 1991911531

Country of ref document: EP

WWW Wipo information: withdrawn in national office

Ref document number: 1991911531

Country of ref document: EP