Method and apparatus for character recognition based upon the frequency of occurrence of characters

Abstract: The invention relates to a method of processing data for recognising unknown characters of a known character set based in part upon the frequency of occurrence of said characters and to apparatus for performing the method. The method comprises the steps of scanning the unknown characters and generating image data representing the unknown characters, storing the generated image data, and applying to the stored image data discriminating tests for recognition purposes. The method is characterised by the steps of applying to the stored image data a first set of discriminatory tests for identifying whether the image data represents a first group of characters and for recognising the image data that represents characters of the first group of characters. The characters of the first group have a relatively high frequency of occurrence and the first group contains less than all of the characters of the character set. The method also includes subsequently applying to the unrecognised image data a second set of discriminatory tests for identifying whether the unrecognised image data represents a second group of characters and for recognising the image data that repre­ sents characters of the second group of characters. The characters of the second group have a lower frequency of occurrence than the characters of the first group and the second group contains at least some characters not in the first group of characters. The method may also include the step of sequentially applying to any unrecognised data from the application of the second set of discriminatory tests at least one additional set of discriminatory tests. Each additional set of discrimina­ tory tests is for identifying the unrecognized image data that represents a respective additional group of characters and for recognizing the image data that represents characters of the respective additional group of characters. The characters of each additional group of characters have a lower frequen­ cy of occurrence than the characters of the preceding group of characters.

Description: The present invention relates to optical character recognition and in particular to a method and apparatus for processing the data obtained from an optical scanner to identify the characters or symbols comprising the data. Apparatus and methods of optical character recognition (OCR) have existed for over thirty years. During that time, improvements in OCR capabilities and reliabilities, and reductions in cost, have been primarily the result of improvements in equipment. Methods of processing data for OCR have traditionally recognised unknown characters of a known character set by considering all symbols as being equally important. They commonly utilise techniques which distinguish all possible symbols from all other symbols in a parallel, rather than serial manner. A prior art type of tree-style decision logic illustrated in Fig. 2 of the accompanying drawings. The prior art tree logic attempts to recognise all symbols with a single recognition logic in a unified process, regardless of how frequently or infrequently each individual symbol occurs in normal language usage. Specifically, the character image data is tested progressively by a series of binary tests forming a decision tree, where each test is represented as a node and can be made on individual image bits or collective image data known as measurements or features. The tests continue until a particular character of a defined set of characters has been unambiguously identified, as at node 27. Data not identified continues down the tree until it is identified or a reject code is generated signifying that the data was not recognised. Further, more comprehensive tests can then be applied, again attempting to distinguish among all possible characters. The design of such a decision tree logic system, the method of processing the data, and the equipment implementing such a method increases exponentially in cost and complexity with increases in the recognition rate and recognition accuracy. Further, it is an inherent characteristic of the tree-style decision logic that it is keyed to the characteristics of the entire population of characters, rather than discrete subsets thereof. Each succeeding test is dependent upon the preceding test in an attempt to recognise all characters in the set as opposed to recognising only a subset of characters in the set as opposed to recognising only a subset of characters based upon their frequency of occurrence. Thus, one may expend a disproportionate amount of computing time or utilise a disproportionate amount of equipment distinguishing among characters having a low frequency of occurrence, which seriously degrades the utilisation efficiency of the machine without any significant improvement in the recognition rate, accuracy or performance. An example of such a tree-style logic is disclosed in IBM Technical Disclosure Bulletin Vol. 23, No. 8, January 1981. JP-A-56 149 676 discloses a character recognition system in which characters to be recognised are scanned and characteristic data relating to each character scanned is stored in a characteristic memory. The system includes a dictionary memory in which are stored dictionary items corresponding to input patterns. In the only example given the dictionary items stored are the numerals 0 to 9, for use with the scanning of numeral characters. For each dictionary item there is stored data indicating the characteristics of the item. The data in the characteristic memory is compared with the data in the dictionary memory by means of a decision circuit to identify the scanned character. For each scanned character a comparison is made with each of the dictionary items in turn and the order in which the dictionary items are compared is determined by the data entered into a priority memory. This memory stores as data the starting addresses of the dictionary items "of higher priority". Comparison with the input data characteristics is effected starting with the dictionary items "of higher priority". The expression "of higher priority" relates to a "priority ranking" as determined by the data in the priority memory. The priority memory defines the priority ranking as being 1, 2, 0, 5,..... and this is the order in which the comparison operations for each set of input data characteristics are performed. US-A-3 755 780 relates to a method and apparatus for recognising unknown patterns in a document which includes the classification or grouping of characters to be recognised by the number of common features which they have and not to their frequency of occurrence in any document. The object of the present invention to provide a method and apparatus for processing data for recognising unknown characters of a known character set that improves character recognition efficiencies through improvements in accuracy and speed of throughput. The present invention relates to a method of processing data for recognising unknown characters of a known character set based in part upon the frequency of occurrence of the characters. The method comprises the steps of scanning the unknown characters and generating image data representing the unknown characters, storing the image data, applying a first stage of a first set of discriminatory logic tests to the stored image data for identifying the stored image data, the first set of discriminatory logic tests being for identifying data representing a first subset of the known character set, the first subset consisting of characters having the highest frequencies of occurrence; applying a first stage of a second set of discriminatory logic tests to stored image data not identified by the first stage of the first set of logic tests, the second set of discriminatory logic tests being for identifying data representing a second subset of the known character set; and characterised by applying a second stage of discriminatory logic tests to stored image data not identified by previous logic tests, the second stage of logic tests being for further attempting to identify data representing characters belonging to said subsets of the known character set which failed to be identified in the first stage, the second stage of logic tests being discrete from the first stage of the first set of logic tests. The invention also relates to apparatus defined in claims 7-12 for performing the above method. The present invention describes a new method and apparatus for processing data in which the most frequently occurring symbols are deemed the most important. An ordered sequence of recognition steps is applied to the data representing the unknown characters to recognise first only those characters of a group having a higher frequency of occurrence. Groups of characters having lower frequencies of occurrence are recognised subsequently. It is an ideal method for microprocessor implementation because one may accomplish the same recognition result with fewer steps by distinguishing the data in several small sets of characters instead of the complete set of characters. For instance, by recognising first a small set of characters having the greatest likelihood or frequency of occurrence, the average number of recognition steps is substantially reduced. This method and apparatus is especially applicable for recognising character fonts that contain a large number of symbols, such as Japanese Katakana or English text. The invention utilises a novel ordered sequence of recognition logic sets rather than the parallel arrangement found in the typical tree-style decision logic. Each logic set is uniquely tailored to recognise the characteristics of only a select population or subset of all of the characters. Thus, each set of tests is not dependent upon the preceding set of tests and is not required to take into account all of the characteristics of the entire population of characters. This optimises both recognition performance and processing time. In addition, for character sets having a large number of symbols the method and apparatus of the invention provide a convenient means of decomposing the recognition problem into subsets of smaller problems from which optimum benefit may be obtained. The smaller recognition sets also allow the recognition problem to become a more manageable task for the designer of the recognition logic, and dramatically decreases the number of recognition steps. The method and apparatus permit the application of a multiplicity of independent character recognition logic sets uniquely adapted to identify controlled subsets of the entire character set. Thus, it is possible to optimise equipment use and processing time to obtain a higher recognition rate of the more frequently occurring characters in a shorter length of time. By freeing the recognition logic from the constraints imposed in the prior art tree-style decision logic, the amount of logic is minimised while focusing the recognition efforts on the most frequently occurring characters. Moreover, the recognition accuracy and throughput is increased without an increase in storage area. Further advantages include the use of simpler and discrete recognition logic sets rather than a seemingly endless and interrelated set of cascaded tests. Therefore, it is possible to optimise the various logic sets to recognise differing subsets with the bulk of the effort concentrated on those characters most frequently occurring. For instance, the accuracy of the recognition rate for the more frequently occurring characters may be improved by including additional tests that are not necessary or desirable to improve the accuracy of the recognition rate for the less frequently occurring characters. Further advantages include the ability to tailor the method of processing to specific needs. For instance, while the letters X, Y and Z may be among the least frequently occurring characters when the English language is used for everyday communication, those letters may be among the most frequently used in scientific or mathematical applications. The method of the present invention has the flexibility to accommodate such changes. To enhance the method and apparatus of the present invention further, the concatenation of the recognition logic sets may occur in either or both the horizontal and vertical directions. In order that the invention may be more readily understood an embodiment of the invention will now be described with reference to the accompanying drawings, in which: FIG. 1 is a block diagram illustrating a typical optical character recognition apparatus embodying the invention and the sequence of steps for processing the data. FIG. 2 illustrates a typical tree-style decision logic as found in the prior art that is designed to recognise all symbols regardless of how frequently they occur. FIG. 3 illustrates a method and apparatus for processing data of the present invention showing the various stages and groups sequentially arranged for recognition of the data. FIG. 4 is a table illustrating the frequency of occurrence of Japanese Katakana characters. Referring to FIG. 1, a schematic diagram of the method and apparatus of the present invention reflects the generation by an optical scanner of data representing the unknown characters. The scanner is of a known construction and operation. It typically scans a document 1 printed with unknown characters in a direction parallel to the direction of reading. FIG. 1 illustrates a horizontal scan of a line of characters. The scanner 2 examines the entire length of the document by moving either the document or the scanner mechanism, and the entire width of the document by selecting a field of view of appropriate width. The generated scan data is provided to a character buffer 3 for retention and transfer to the character recognition apparatus 4. The character recognition apparatus applies the various ordered sequences of discriminatory logic tests for recognising the scan data as individual characters. The output 5 from the character recognition apparatus typically indicates that the image data representing a particular character has been recognised or that it has failed to recognise the information, thereby generating a reject or error code. Referring to FIG. 2, a portion of a typical prior art tree-style decision logic is illustrated. Image data representing an unknown character is provided to the apex of the tree logic, i.e. node 11, and a series of logic tests is applied, as represented by nodes 11-30. (Only a representative sample of the nodes is identified.) As explained earlier, such logic employs sufficient discriminatory tests that evaluate the image data to relate its characteristics to one possible output character as distinguished from all possible other characters in the known character set. The number of tests required is an exponential function of the number of possible output characters to be distinguished among. Thus, one expends a great amount of processing time and energy to distinguish every unknown character from all possible candidates to be able to recognise the characters which occur only rarely. FIG. 2 also illustrates how each succeeding decision is dependent upon the preceding decision with regard to recognising all characters in the set as opposed to recognising only a subset of characters based upon their frequency of occurrence. The dots indicate the continuation of the decision logic forming the "branches" of the logic tree. Only the lowermost branches are indicated as continuing, but it should be understood that all branches may extend as necessary. Referring to FIG. 3, the method and apparatus for processing data in accordance with the present invention utilises a concatenation of discrete sets of logic tests. As illustrated, the method includes the serial application of discrete "Sets" of logic tests. A horizontal row of Sets may be identified as a "Stage" and a vertical column of Sets may be identified as a "Group". The means for applying a set of discriminatory logic tests may comprise applying discriminatory binary tree logic and sequentially applying a verifier logic to confirm the output. The individual logic Sets within each Stage are arranged in a sequential order based upon the frequency of the character subsets recognised by each Set. For example, Set 1,1 recognises only the most frequently occurring symbols in the character set. Set 2,1 recognises only those symbols occurring with the next highest frequency. Similarly, subsequent Sets, such as Set 1,1 recognise symbols with lesser frequencies of occurrence. This may continue until all characters have been included. Subsequent subsets may contain at least some characters not included in previous subsets. The image data representing the unknown characters is provided to Set 1,1 and the discriminatory tests of Set 1,1 are applied to the data. An optional verifier may be used as necessary or desirable to confirm the output generated by the tests. The tests identify whether the image data represents a first group of characters having a higher frequency of occurrence and recognise the image data as representing individual characters. The data representing recognised characters exits at RECO and the data representing unrecognised characters exits at FAILURE and continues to Set 2,1. The data representing unrecognised characters includes data representing characters that could have been recognised but were not, due to noise or the like, and data representing characters that are to be identified by subsequent Sets but not the present Set. At Set 2,1, a succeeding collection of discriminatory tests independent of the tests of Set 1,1 is applied to the unrecognised image data. These tests identify whether the unrecognised data represents a second group of characters having a lower frequency of occurrence than the first group of characters and recognise the data as representing individual characters. As before, the data representing recognised characters exits at RECO and the data representing unrecognised characters exits at FAILURE and continues. This sequential application of discriminatory tests may continue as necessary or desirable. For instance, it is possible to include a series of Sets in Stage 1 sufficient to recognise all of the characters of a particular character set. The above method and apparatus have several advantages. First, the characters that are recognised in Set 1,1 exit the recognition method and apparatus in the least amount of time. Since these are the most frequently occurring characters, this minimises the utilisation of the microprocessor or other apparatus while optimising the recognition rate. Second, since Set 1,1 may be tailored to include more recognition logic per symbol than the Sets for less frequently occurring characters, the recognition performance and accuracy of Set 1,1 may be increased. Since this Set recognises the most frequently occurring characters, the overall recognition rate of the total structure is optimised. Third, it is necessary only to perform the amount of computation necessary to recognise the individual character image data and not to attempt to recognise all other possible characters that the image data might represent. Referring again to FIG. 3, the method of processing may include the application of several Stages of logical tests in an ordered sequence, with each Stage comprising a series of Sets. Each Stage sequentially applies logical tests that are different from those applied in the first or preceding Stage, and the tests or sets of each Stage may be tailored to recognise first those characters that have the highest frequency of non-recognition after the application of all of the Sets of tests in Stage 1. For instance, assuming that Stage 1 comprises I Sets, the I Sets may together identify all characters of a character set. All Sets of the first Stage may be designed to utilise certain techniques to recognise these characters. Since it is likely that some data, or characters, will remain unrecognised even after it has traversed the entire Stage, the data is then supplied to a second Stage of sequential tests, i.e., Set 1,2, Set 2,2 ... Set I,2, in a further attempt to identify the characters from the image data. The Sets of discriminatory logic tests of Stage 2 are designed specifically to recognise the failed character patterns from Stage 1 and may utilise logic of a different approach to optimise recognition of the characters represented by this data. As further illustrated in Fig. 3, the number of Stages utilised may vary as necessary or desirable to meet a desired recognition objective. Thus, the Sets and Stages may be optimised to obtain the desired recognition rate, yet meet constraints on recognition costs and equipment. Further advantages include the flexibility and ability to tailor each Stage and Set to identify certain characters, or to utilise wholly independent approaches in an attempt to identify a character that was not recognised by an earlier Set or Stage or Group. Referring to FIG. 4, the collective frequency of occurrence of Japanese Katakana character groupings is illustrated based upon their usage in Japanese names. It is to be understood that although Japanese Katakana characters are illustrated, the present invention may be utilised with any alphabet or defined set of characters. Group 1 comprises fourteen characters that together have a collective frequency of sixty percent. Group 2 comprises thirteen characters that have a collective frequency of eighteen percent. Group 3 comprises fifteen characters that have a collective frequency of fourteen percent. Group 4 comprises thirty-six characters that have a collective frequency of eight percent. By optimising the method of processing to improve the recognition rate of the most frequently occurring characters, i.e. those in Group 1, the effective recognition performance may be enhanced with the least effect upon cost. Moreover, this may be done independently of the Sets of discriminatory logic tests utilised to identify the Japanese characters in Groups 2, 3 and 4. This is illustrated in the following table using an assumed recognition rate for each Group: Group Number of Characters Recognition Rate Frequency Effective Performance 1 14 87% .60 52.2% 2 13 84% .18 15.1% 3 15 78% .14 10.9% 4 36 60% .08 4.8% Total 83.0% The foregoing provides a total recognition percentage of (87 x .6) + (84 x .18) + (78 x .14) + (60 x .08) = 83 percent. By improving the recognition rate of the characters in Group 1, one may have a more significant improvement in the effective recognition performance than by improving the recognition rate of the characters in Group 4. Having determined which character data will be tested for recognition by which Stage or Set, the task of developing the necessary discriminatory tests is well within the abilities of one skilled in the art of computer programming or optical character recognition. It includes the use of known techniques to differentiate data representing one character from data representing a different character. The apparatus for implementing the invention may include a microprocessor or other computer capable of implementing logical decisions. In the drawings and description, there has been set forth an exemplary embodiment of the invention. It should be understood that while specific terms are used, they are employed in a generic and descriptive sense only and are not for purposes of limitation.

Claims: A method of processing image data for identifying unknown characters of a known character set comprising the steps of: scanning the unknown characters and generating image data representing the unknown characters; storing the image data; applying a first stage of a first set of discriminatory logic tests to the stored image data for identifying the stored image data, the first set of discriminatory logic tests being for identifying data representing a first subset of the known character set, the first subset consisting of characters having the highest frequencies of occurrence; applying a first stage of a second set of discriminatory logic tests to stored image data not identified by the first stage of the first set of logic tests, the second set of discriminatory logic tests being for identifying data representing a second subset of the known character set; and characterised by applying a second stage of discriminatory logic tests to stored image data not identified by previous logic tests, the second stage of logic tests being for further attempting to identify data representing characters belonging to said subsets of the known character set which failed to be identified in the first stage, the second stage of logic tests being discrete from the first stage of logic tests. A method as claimed in Claim 1 wherein the first stage of tests includes at least one additional set of discriminatory logic tests for stored data not identified by previous logic tests, each additional set of discriminatory logic tests being for identifying stored data representing additional subsets of the known character set and each succeeding additional subset consisting of characters having lower frequencies of occurrence than those in preceding subsets, the second stage of the tests commencing after the first stage is completed. A method as claimed in any of Claims 1 or 2 further comprising the step of applying at least one additional stage of each set of discriminatory logic tests respectively to stored image data not identified by previous logic tests, each additional stage of logic tests being for identifying data in a respective subset of the known character set and being discrete from a previous stage of a respective set of logic tests. A method as claimed in any of Claims 2 or 3 wherein the second and any subsequent sets of discriminatory logic tests have fewer recognition steps per character than the previous set of logic tests whereby the second and any subsequent sets of discriminatory logic tests have a lower recognition rate than the previous set. A method as claimed in any of the preceding Claims wherein the steps of applying a set of discriminatory logic tests comprises applying a discriminatory binary tree logic and sequentially applying a verifier logic. A method as claimed in any of the preceding Claims wherein the second subset of the known character set contains at least some characters not in said first subset of known characters. Apparatus for processing image data for identifying unknown characters of a known character set comprising: means (2) for scanning the unknown characters and generating image data representing the unknown characters; means (3) for storing the image data; means for applying a first stage of a first set of discriminatory logic tests to the stored image data for identifying the stored image data, the first set of discriminatory logic tests being for identifying data representing a first subset of the known character set and the first subset consisting of characters having the highest frequencies of occurrence; means for applying a first stage of a second set of discriminatory logic tests to stored image data not identified by the first stage of the first set of logic tests, the second set of discriminatory logic tests being for identifying data representing a second subset of the known character set; and characterised by means for applying a second stage of discriminatory logic tests to stored image data not identified by previous logic tests, the second stage of logic tests being for further attempting to identify data representing characters belonging to said subsets of the known character set which failed to be identified in the first stage, the second stage of logic tests being discrete from the first stage of logic tests. Apparatus as claimed in Claim 7 further comprising means for applying a first stage of at least one additional set of discriminatory logic tests to stored data not identified by previous logic tests, each additional set of discriminatory logic tests being for identifying stored data representing additional subsets of the known character set and each succeeding additional subset consisting of characters having lower frequencies of occurrence than those in preceding subsets. Apparatus as claimed in any of Claims 7 or 8 further comprising means for applying at least one additional stage of each set of discriminatory logic tests respectively to stored image data not identified by previous logic tests, each additional stage of logic tests being for identifying data in a respective subset of the known character set and being discrete from a previous stage of a respective set of logic tests. Apparatus as claimed in any of Claims 8 or 9 wherein the second and any subsequent sets of discriminatory logic tests have fewer recognition steps per character than the previous set of logic tests whereby the second and any subsequent sets of discriminatory logic tests have a lower recognition rate than the previous set. Apparatus as claimed in any of Claims 8 to 10 wherein the means for applying a set of discriminatory logic tests comprises applying a discriminatory binary tree logic and sequentially applying a verifier logic. Apparatus as claimed in any of Claims 8 to 11 wherein the second subset of the known character set contains at least some characters not in said first subset of known characters.

Inventors: BEDNAR GREGORY MARTIN, BEDNAR, GREGORY MARTIN
Applicants: IBM, INTERNATIONAL BUSINESS MACHINES CORPORATION
Application year: 1984
Main classification: G06K9
IPC codes: G06K9, G06F17