Pattern matching method using matrixes of binary pixels and pixel vectors

Abstract: Each of a certain number of sequences of binary pixels chosen according to some prescribed rules from m x n matrix of pixcels is referred to vector v i . A standard character k is represented with m x n matrix of binary pixels, from which the vectors g ki are derived. The reference vectors G ki are comprised of the vectors g ki and g ki ' which are generated by modification of g ki . A recognition object is captured to yield m x n matrix of binary pixels, from which the vectors v i are derived for comparison with the reference vectors G ki . Matching of v i with one of the reference vectors G ki adds a count to the standard pattern k corresoponding to G ki . The standard character k with the maximum score of the matching count is recognized as the recognition object.

Description: BACKGROUND OF THE INVENTION This invention relates to a pattern matching method for accurate recognition of patterns deviated to a certain extent with relatively small volume of reference patterns. In general, for the recognition method of characters and figures, there are employed two(2) methods. The former is a method of feature extraction from patterns of recognition object. The latter is a method of pattern matching with the reference patterns and has widely been utilized in the fields seeking high-speed recognition in general. The pattern matching method is a most common method in which a recognition-objected character is captured to provide a pattern for recognition, which undergoes the preprocesses such as shading correction, decision of character specific area, and binarization. The character pattern, normalized in size if necessary, is compared with the reference patterns (templates) similarly normalized so that the recognition-objected character is recognized as the character of the template matched. In pattern matching invariance of recognition-objected character (hereinafter a character implies both character and figure) has been assumed. This has often resulted in severe decrease of recognition accuracy due to morphological variance of character, especially, of boldness in stroke. As a matter of fact, the degree of mismatching because of variation on boldness is significantly comparable to that in reference to wrong characters. In FIG. 10A the degree of mismatching is seen between the numerals 2 and 3, while that between the numeral 3 in the standard sample and in fat stroke is shown in FIG. 10B. The degree of mismatching with wrong characters becomes often comparable to that between the standard sample and fat or thin stroked character, reducing the feasibility of pattern matching. In addition to variance of character in fat or thin stroke, partial fading, rotation and variation in capture conditions also cause mismatching. A common method designed to overcome these disadvantages is preparation of references learned so as to lead to unique recognition result among every possible combination of pixels in a m x n matrix plane. This practice of pattern matching at each pixel is hardly realized because, for the size of matrix practically representable of a character, for example, 10 x 10, all combination of pixels would amount to an impossible number of 2 100 . Pattern matching with higher efficiency and less volume of data is thus in keen demand. Document GB-A-2 100 904 describes a character recognition system having a linear array of photocells which is moved accross the character to produce an array of pixels arranged in columns and rows. Character recognition is carried out by "thining" each character representation so that it is, in general, one pixel wide. Then directional vectors are assigned to pairs of adjacent pixels and then processed to build up a total vector representation of the character. The resultant vector representation is compared with a set of reference vector representations. Document US-A-4 958 374 describes a method of checking pattern, wherein a pattern of a target is photographed and an image of the check pattern is converted into a check image data which is represented by pixel data and density data. A design data for forming the pattern of the target is also converted into a reference image data corresponding to the check image data. The check and reference image data is processed and converted into check and reference gradient vector data, respectively. The check gradient vector data is compared with the reference gradient vector data in a respective corresponding peripheral pixel data, and its peripheral pixel data so that the defect ist detected. SUMMARY OF THE INVENTION It is accordingly an object of this invention to provide a pattern matching method for recognition with high accuracy of characters and figures deviated to a certain extent from the standard patterns, and with feasibility in practical structure of hardwares. The invention relates to a method for pattern matching as set out in claim 1. Advantageous embodiments are found in the subclaims. According to the method of this invention, a recognition object is captured to yield an image consisting of binary pixels arranged in matnx of m rows-by n columns. from which vectors v i are formed as sequences of pixels chosen according to the prescribed rules. Of all the vectors, a certain number of vectors are selected and compared with the corresponding reference vectors of each standard sample k. To the sample p having the reference vectors matched, the matching count is added so that the pattern q with the maximum score of matching count is recognized as the sample of the recognition object. BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a block diagram of a pattern matching device as a preferred embodiment of the present invention; FIG. 2 illustrates the example of procedure for selection of the vectors from a pixel matrix; FIG. 3 displays a pixel matrix representing the numeral 3; FIGS. 4A, 4B and 4C indicate three different vectors, respectively, chosen from the matrix for numeral 3 in FIG. 3; FIG. 5 illustrates the rules for modification of a segment in a vector for change in vector pattern; FIG. 6 shows pattern change of a vector according to the rules demonstrated in FIG. 5; FIG. 7 is a diagram showing the circuit to transform a pixel matrix into the vectors; FIG. 8 shows a 3x3 matrix to be transformed into the vectors with the transformation circuit in FIG. 7; FIG. 9 demonstrates selection of the vectors including that in slanted directions; FIG. 10A illustrates an example of mismatching in recognition of a character; and FIG. 10B displays another example of mismatching. DESCRIPTION OF THE PREFERRED EMBODIMENT Some preferred embodiments of the invention will be described hereinbelow with reference to the accompanying drawings. FIG. 1 is a block diagram of pattern matching device to realize an embodiment of this invention. The process of pattern recognition undergoes capture of a recognition object, shading correction, decision of an area for the object, binarization and normalization to uniform size, followed by comparing the treated patterns with the similarly normalized reference patterns for recognition of the pattern of the object (character or figure) as the standard pattern matched. The pattern matching device distinguishes each pixel represented in the vector form through the treatments hereinabove. Definition of vectors and reference vectors needs to precede to explanation of FIG. 1. FIG. 2 indicates the vectors for an image represented with the pixel matrix of 9 rows by 7 columns, each of which constitutes a vector. The vectors thus have different numbers of component pixels for some representation of images. The vectors are distinguished by numbering. In FIG. 2 the row vectors are numbered from v0 to v8 and the column vectors from v9 to v15. The vectors for matching are derived from pixels in the image with normalized size obtained by capture of the recognition object. The reference vectors are generated from the standard patterns (characters or figures), which are captured to yield the images in the prescribed size so that the vectors derived from the pixels in the image of one of the standard patterns and the vectors formed from the latter vectors by modification corresponding to partial fading and variance in strokes constitute the reference vectors for the standard pattern. FIG. 3 shows a 11x11 pixel matrix representing the image of numeral 3. The constituents of the vectors v3, v17 and v13 are illustrated in FIGS. 4A, 4B and 4C, respectively, and referred to bit patterns, which strongly correlate to the numeral 3 represented in the image. When the image in FIG. 3 is captured from the standard pattern of numeral 3, the recognition object yields the same image as the standard pattern at the same capture condition. It then is easy to identify the recognition object with the standard pattern by matching the corresponding vectors (i.e., pairs of vectors with the same number) of the two images. For this case, the vectors modified for variance need not be included in the reference vectors. On the other hand, the recognition objects in general have partial fading and thin or fat stroke in character, and their capture conditions are different from those for the standard patterns, so that the vectors modified for these variances have to be added to the reference vectors. The reference vectors are generated as follows. A standard pattern is captured at various conditions for several images, from each of which the vectors are derived, and intentionally deviated for variance such as partial fading to gain additional vectors as the reference vectors. A cluster of all of these vectors with the same number constitute the reference vectors for the same vector number. The generation procedure for the reference vectors is described in detail herein bellow: 1-1) A standard character (for example, numeral 3) to be recognized is provided; 1-2) The image of the character captured by TV camera is normalized with common treatments publicly known (such as shading correction, binarization, and size normalization) to construct an m x n pixel matrix: 1-3) The vectors are derived from this pixel matrix, numbered, and represented in bit pattern; 1-4) The capture condition for TV camera is then varied with such changes as in the strength of illumination, slight rotation of standard character, minute adjustment of focusing, and the threshold value for binarization. The image captured at a new condition is treated similarly with 1-2) and 1-3). 1-5) The process of 1-4) is repeated for as many variations as possible. 2-1) The bit pattern for every vector derived in 1-3) is deviated by the pattern modification procedure described hereinafter. The bit pattern is a sequence of bits "1" and "0" representing the character and the background, respectively (or the reverse assignment). A continuous series of bit "1" is called "Segment", which is modified for pattern deviation. Changes in the segments in a vector yield many deviated vectors. 2-2) The procedure of 2-1) is applied to all the vectors derived from the pixel matrices obtained in 1-5); 2-3) The reference vectors G 3i for the vector g 3i of standard character "3" are comprised of a cluster of vectors collected for vector v i among the vectors procured with 2-2). 3-1) For all the standard characters to be recognized (for example, numerals 0 ∼ 9). the steps of 1-1) ∼ 1-5) and 2-1) ∼ 2-3) are performed to generate the reference vectors for every vector in the pixel matrix of each standard character. The rules for systematic modification of the bit pattern in each vector derived with 1-3) are explained hereinbelow. As indicated in FIGS. 4A, 4B and 4C, the bit pattern is a sequence of bits "1" and "0" representing the character and the background, respectively, in which the bit "1" often appears consecutively. Clusters of the bit "1" like v3-1, v3-2, v17-1, v17-2 and v17-3 are called segments. Systematic modification of all the segments according to the rules leads to approximate representation of character deviations like partial fading and fat and thin strokes. An example for modification of a segment according to the rules is shown in FIG. 5. The segment 1 is the original segment, to which a pixel is added to the right and left ends to yield the segments 2 and 3, respectively. Deletion of pixel from the right and left ends of segment 1 results in the segments 4 and 5, respectively. Deletion and addition of a pixel at both the right and left ends of segment 1 generate the segments 6 and 7, respectively. FIG. 6 demonstrates application of the rules in FIG. 5 to the vector v17 in FIG. 4B. The vectors 1 ∼ 7 are generated by modification of the segments v17-2, the middle segment of three segments in vector v17. On the other hand, in application of the rules to the segment v17-1, which locates at the left end, a pixel cannot be added to the left end according to the rules 3 and 7, while for the segment v17-3 located at the right end addition of a pixel to the right end according to the rules 2 and 7 is unavailable. In FIG. 1 the vector counter l counts the vector number for a recognition-objected image. A clock increments the vector number. The look-up-table ROM 2 puts out the standard pattern represented by the input vector with the vector number indicated in the vector counter l. For the case of FIG. 1 the standard patterns are to be ten characters of numerals 0 ∼ 9. The address in the look-up table ROM 2 is assigned to the bit pattern of a vector and the memory area at this address stores the names of standard patterns having the same vector as the address in their reference vectors. Receiving a vector as the address, the look-up-table ROM 2 puts out the standard patterns corresponding to the input vector. A0 ∼ A12 on the left side of the look-up-table ROM 2 represent the respective digits of bit pattern of the vector, so that the bit pattern with the maximum length of 13 bits is acceptable. The digits A13 ∼ A17 indicate the vector number, which can be counted 0 through 31 in this case. The output nodes 0 ∼ 9 on the right side correspond to the standard patterns 0 ∼ 9, respectively, so that, for example, the nodes 3 and 8 deliver the matching signal when the input vector is found in the reference vectors of the standard patterns 3 and 8. The counter 3 is provided for each of the standard patterns, that is, the characters to be recognized. In the present case, the counter is connected respectively to the output nodes 0 ∼ 9 of the look-up-table ROM 2 to count the matching synchronously with the clock every time when the output nodes 0 ∼ 9 deliver the matching signal. The largest content selector 4 examines the score accumulated in each of the counter 3 to distinguish the standard pattern corresponding to the counter 3 with the maximum score as the character represented with all input vectors. An exemplary circuit for transformation of pixel matrix into vectors is shown in FIG. 7, which is a diagram of circuit to transform a 3x3 pixel matrix in FIG. 8 into row and column vectors. The transformation circuit is connected to the address A0 ∼ A12 in the look-up-table ROM 2 in FIG. 1 to provide the vector with the vector number indicated in the vector counter l in FIG. 1. A vector decoder 5 delivers the output signals for the vector corresponding to the vector number from the vector counter 1. For instance, input of vector number v0 causes the output "1" in the signal line d to supply the output (P 00 , P 10 , P 20 ) from the output nodes, while input of vector number v3 feeds the output "1" in the signal line a for the output (P 00 , P 01 , P 02 ) from the output nodes. The process of pattern matching is now explained. The standard patterns are to be 10 characters of numerals 0 ∼ 9. The image captured from a standard pattern constitutes a 13x13 pixel matrix. The image of the recognition object is similarly normalized to comprise pixels in the same size. FIG. 9 displays such a 13x13 pixel matrix, from which the vectors are derived as 13 row vectors and 13 column vectors supplemented with 5 vectors in slanted direction. The number of pixels in the slanted vectors is set 1 3, equal to that of the row and column vectors. The slanted vector on the diagonal consists of a single sequence of pixels, while the others consist of two sequences of pixels. The vector number is assigned as v0 ∼ v30 to three kinds of vectors in order beginning from the row vectors. As the vector number for the recognition object is indicated sequentially by the vector counter 1, the corresponding vector from the transformation circuit shown in FIG. 7 is fed in the address of the look-up-table ROM 2. Output of the slanted vectors employs other specific transformation-circuit. The look-up-table ROM 2 puts out from the output nodes 0 ∼ 9 the standard patterns having the reference vectors with the bit patterns matching that of the input vector. For instance, matching for the standard pattern "0" delivers the matching signal from the output node "0". In actual operation, the bit pattern of an input vector would often match that of the reference vector for more than a single standard pattern, so that the corresponding number of standard patterns is put out. In reference to FIG. 3 and FIGS. 4A, 4B and 4C, both vector v3 and vector v17 represent the numerals 3 and 8. Inclusion of vector v13 increases the probability for numeral 3. Input of many vectors thus raises the recognition probability for the recognition-objected character. Accordingly, all the vectors denved for the recognition object are usually used for input. Solely with the vectors representing the feature parts of standard patterns, however, the recognition-objected character can-be distinguished in good accuracy. The counter 3 individually provided for each standard pattern counts every matching signal, and holds the accumulated score. This procedure is repeated from v0 to the final vector v30 and the counter 3 with the maximum score is identified. The standard pattern corresponding to the counter 3 selected is recognized as the character for the recognition object. In the embodiment described hereinabove, the vectors chosen in the slanted direction (at angle of 45° in this case) are included not only because the more vectors lead to the higher recognition accuracy, but because the number of vectors possible in row and column directions is limited. Moreover, when the reference vector with the vector number same as an input vector and the bit pattern matching that of the input vector is found in the reference vectors, a count is added to the counter 3 for the corresponding standard pattern. On the other hand, a look-up-table ROM 2 can be designed to distinguish a vector never representing a standard pattern, so that reduction of the score in the counter 3 corresponding to the standard pattern in response to input of such a vector raises the recognition accuracy further. For instance, for input of vector v17 in FIG. 3, which never represents the numeral 1, the counter 3 for the standard pattern "1" is decremented by one. For the cases hereinabove the counter 3 is incremented or decremented by one, but operation by 1 or -1 is not necessarily exclusive for counting. For example, 2 or 3 counts may be added for higher degree of matching as the segment I in FIG. 5. Furthermore, although all the row and column vectors and several slanted vectors are used for the examples hereinabove, all the vectors are not required for recognition of a sample. The vectors need not have all components in a row or column, either, and may still have various number of components. Besides of formation of a vector with matrix components in slant direction, the components of a vector may also comprise combination of components in any row, column and slanted directions. As a matter of fact, the vector has only to represent the feature of a sample with any number and order of the constituent pixels. As described hereinabove, this invention distinguishes the standard pattern representing a recognition object by evaluation of matching score of the vectors in the recognition object with the reference vectors with the same vector numbers, which are procured from the vectors in the standard patterns and the modified vectors representing the deviated images due to change in capture condition and/or partial fading of character. This method enables recognition of the object deviated from the standard pattern with better accuracy. Rather arbitrary derivation of the vectors also provides the vectors at feature parts of the pattern to raise the recognition accuracy. It thus follows that the pixels required for identification of the recognition object may be chosen in slant direction as well as the row and column directions in the pixel matrix to constitute the vectors, the pattern recognition becoming possible with less data and less errors. Although obvious changes may be made in the specific embodiment of the invention described herein, such modifications are within the scope of the appended claims, indicating that all matter contained herein is intended as illustrative and not as limiting in the scope.

Claims: A method for pattern matching, wherein, a sequence of binary pixels being referred to vector, which is formed by choosing pixels consecutively according to some prescribed rules from a binary image consisting of m x n matrix of binary pixels, a certain number of vectors derived from said matrix are numbered with notation of v i , and reference vectors G ki consist of a cluster of vectors g ki derived from m x n matrices representing standard images k (k = 1 ∼ f) for f different standard samples k (k = 1 ∼ f) and multiplex vectors g ki ' generated by prescribed modification of constituent pixels in said vectors g ki , comprising the steps of: representing with m x n matrix of binary pixels a recognition image captured from a recognition-objected sample, choosing a certain number of prescribed vectors among said vectors v i of said binary pixels, matching said prescribed vectors to said reference vectors corresponding to said prescribed vectors for each of said standard samples, adding scores to said sample p (1 ≤ p ≤ f) having said reference vectors with the vector matched, and recognizing said sample q (1 ≤ q ≤ f) with the maximum of said score as the sample representing said recognition object. A method in accordance with claim 1 wherein a certain number of sequences of said pixels chosen consecutively according to said prescribed rules are comprised of m rows in said m x n matrix with pixel components representing said image. A method in accordance with claim I wherein a certain number of sequences of said pixels chosen consecutively according to said prescribed rules are comprised of n columns in said m x n matrix with pixel components representing said image. A method in accordance with claim 1 wherein a certain number of sequences of said pixels chosen consecutively according to said prescribed rules are comprised of series of pixels in a line at angle of 45° in said m x n matrix with pixel components representing said image. A method in accordance with claim 1 wherein a certain number of sequences of said pixels chosen consecutively according to said prescribed rules are comprised of series of pixels chosen in arbitrary position, number, and order from feature parts of said sample in said m x n matrix with pixel components representing said image. A method in accordance with claim 1 wherein a certain number of sequences of said pixels chosen consecutively according to said prescribed rules are comprised of combination of at least two groups of m rows in said m x n matrix with pixel components representing said image, n columns in said m x n matrix with pixel components representing said image, series of pixels in a line at angle of 45° in said m x n matrix with pixel components representing said image, and series of pixels chosen in arbitrary position, number, and order from feature parts of said sample in said m x n matrix with pixel components representing said image. A method in accordance with claim 1 wherein N standard images are provided with the original images for said standard samples k (1 ≤ k ≤ f) under a capture condition and the images for said standard samples k (1 ≤ k ≤ f) under various capture conditions, and the reference vectors are generated for each of the N standard images. A method in accordance with claim 1 wherein said prescribed modification is to change in the number of pixels in a segment, which is a continuous series of bit "1" (or bit "0"), binary value for pixels in the vectors.

Inventors: KOBAYASHI KIYOO, SHIMOTORI AKIRA, KOBAYASHI, KIYOO, SHIMOTORI, AKIRA
Applicants: NIRECO CORP, NIRECO CORPORATION
Application year: 1994
Main classification: G06K9
IPC codes: G06K9