STORED REFERENCE CODE CHARACTER READER METHOD AND SYSTEM
First Claim
1. The method of loading a multicolumn multirow image register with character representations for comparison with representations of a set of characters stored in predetermined locations in a memory which comprises:
- a. sequentially scanning along vertical lines successive laterally spaced portions of a character field, b. generating a sync signal in predetermined time relation to the start of each scan cycle, c. serially introducing signals produced by scanning into a shift register having rows and columns of storage locations substantially in excess of those in said image register, d. continuously sensing for the presence of a character portion in all columns of said first register for producing a center signal when a set of character portions is centered in said shift register, e. establishing a vertical profile of the centered character by sensing in all Rows of said shift register in response to said center signals, f. continuously transferring data from said shift register to an image register buffer at a point dependent upon the height of said profile, g. establishing for said centered character the address of the trailing extremity of said profile, h. freezing each column of information in said buffer register in dependence upon said address of said trailing extremity, and i. parallel shifting the contents of said buffer register into said image register at a predetermined time following the next sync pulse.
2 Assignments
0 Petitions
Accused Products
Abstract
Multi-level coded data representing a plurality of laterally spaced vertical scans of a character field passes serially through a multi-column, multi-row shift register synchronously with the scan operation. When a character is centered in the register, its height is measured and the register output is fed to an image register at an input position dependent upon character height. Each character representation is thus loaded with precision as to location in the image register. Subsequently, the loaded character is compared with each of a library of characters in a read only memory. More particularly, each element from the read only memory is compared with the element at a corresponding character location in the image register and with each of eight contiguous locations. A count is accumulated and stored indicative of the number of times a mismatch criteria is satisfied from the element comparison. A code is then generated to identify the character from the read only memory for which the count is optimum.
-
Citations
20 Claims
-
1. The method of loading a multicolumn multirow image register with character representations for comparison with representations of a set of characters stored in predetermined locations in a memory which comprises:
- a. sequentially scanning along vertical lines successive laterally spaced portions of a character field, b. generating a sync signal in predetermined time relation to the start of each scan cycle, c. serially introducing signals produced by scanning into a shift register having rows and columns of storage locations substantially in excess of those in said image register, d. continuously sensing for the presence of a character portion in all columns of said first register for producing a center signal when a set of character portions is centered in said shift register, e. establishing a vertical profile of the centered character by sensing in all Rows of said shift register in response to said center signals, f. continuously transferring data from said shift register to an image register buffer at a point dependent upon the height of said profile, g. establishing for said centered character the address of the trailing extremity of said profile, h. freezing each column of information in said buffer register in dependence upon said address of said trailing extremity, and i. parallel shifting the contents of said buffer register into said image register at a predetermined time following the next sync pulse.
-
2. The method of loading of multicolumn multirow image register with character representations as set forth in claim 1 including the step of selecting those image locations of the shift register containing the introduced signals in accordance with a video window synchronous timing signal for establishing the vertical profile.
-
3. The method of loading a multicolumn multirow image register with character representations as set forth in claim 1 wherein the step of continuously sensing the presence of a character portion includes recording the occurrence of a '"'"''"'"''"'"''"'"'black'"'"''"'"''"'"''"'"' portion anytime during a scan.
-
4. The method of loading a multicolumn multirow image register with character representations as set forth in claim 3 wherein the step of continuously sensing the presence of a character portion further includes shifting the black record into a horizontal profile register, and examining the resulting pattern in the profile register with a horizontal locator to detect the most nearly centered position of the horizontal profile signal pattern.
-
5. The method of loading a multicolumn multirow image register with character representations as set forth in Claim 1 wherein the step of establishing a vertical profile of the centered character includes the step of sensing the vertical profile to determine beginning and end points for the vertical character profile.
-
6. The method of loading a multicolumn multirow image register with character representations as set forth in claim 5 including the step of sensing the full height of the centered character to determine if it is a full height character, a too tall to be legitimate character, or a vertical mark.
-
7. The method of establishing a data base in an image register for comparison with character representations stored in a memory which comprises:
- a. serially scanning each character to be recognized along a plurality of adjacent laterally spaced paths, b. generating a sync signal in predetermined time relation to the start of each scan cycle, c. developing a multiple level code indicative of the presence or absence of character portions at spaced points along each scan, d. serially transferring said code to a multicolumn, multirow shift register, e. sensing the instant that said code representing a complete character is centered in said shift register, f. serially transferring the output of said shift register to a column buffer register following occurence of said centered signal, g. establishing a code for the height of the centered character, to establish an input location of said column buffers, h. establishing a code for the location of the bottom of said centered character, i. freezing the contents of said buffer register following each sync pulse in dependence upon said height and said bottom location, and j. shifting in parallel the contents of said buffer into said image register at a predetermined time after each sync pulse.
-
8. The method of establishing a data base in an image register as set forth in claim 7 wherein said developed code is represented by '"'"''"'"''"'"''"'"'black'"'"''"'"''"'"''"'"' signals to indicate the presence of a character portion and '"'"''"'"''"'"''"'"'white'"'"''"'"''"'"''"'"' signals to indicate the absence of a character portion.
-
9. The method of establishing a data base in an image register as set forth in claim 8 wherein the step of sensing the instant that said code representing a compleTe character is centered includes the step of:
- recording the occurrence of '"'"''"'"''"'"''"'"'black'"'"''"'"''"'"''"'"' signals during each scan cycle, shifting the black record into a horizontal profile register at the end of a scan cycle, and examining the black record in the profile register to detect the most nearly centered position of the profile pattern.
-
10. The method of establishing a data base in an image register as set forth in claim 7 including the step of tallying the various levels of the multiple level code in each of the columns of said register and for selected columns thereof to discriminate between extraneous marks and a valid character.
-
11. A method of establishing a data base in an image register as set forth in claim 7 including the step of establishing by said height and said bottom location codes if a character is a full height character, too tall to be a legitimate character, or a vertical mark.
-
12. Apparatus for loading a multicolumn multirow image register with character representations for comparison with representations of a set of characters stored in predetermined locations in a memory, comprising:
- a character reader for sequentially scanning along vertical lines successive laterally spaced portions of a character field during a scan cycle, a timing generator for generating a sync signal in a predetermined time relation to the start of each scan cycle, a shift register having rows and columns of storage locations substantially in excess of those in the image register for serially receiving signals produced by said character reader, a horizontal profile register for sensing the presence of a character portion in all columns of said shift register, a horizontal locator responsive to said horizontal profile register for producing a center signal when a set of character portions is centered in said shift register, an image register buffer for serially receiving data from said shift register in response to the center signal of said horizontal locator, and means for parallel shifting the contents of said buffer register into the image register at a predetermined time following the next sync pulse.
-
13. Apparatus for loading a multicolumn multirow image register as set forth in claim 12 including vertical profile means responsive to said center signal to establish a vertical profile of the centered character for generating the address of the trailing extremity of the vertical profile thereby fixing the location of the centered character from the shift register into the image register.
-
14. In a character recognition system, comprising:
- means for sequentially shifting into a multicolumn image register at a known vertical and horizontal location a columnar code representing successive vertical scans of an unknown character, means for storing in memory multicolumn sets of codes, one for each of a plurality of characters to be identified, means for cyclically loading into a first shift register the columns from the image register, means for cyclically loading into a second shift register the columns from a first of said sets and from succeeding sets in said memory, means for comparing each code in said first shift register in a nominal position, element for element, with each code in said second shift register in the nominal position where the rate of shifting said first and second shift registers is at a rate higher than the rate of loading into said shift registers by a multiple at least as great as the number of cells in a column in said memory, means for simultaneously comparing each code in said first register, element for element, at two additional locations, one above the nominal location and one below the nominal location, with each code in said second shift register simultaneously with the comparison at the nominal location, means for shifting the columnar code in said first shift register and means for recycling said first and second means for additional comparison, means for accumulating a count signal of each comparison of the number of times the compared elements satisfy a matched criteria, and means for storing a key to the memory set for which said count is optimum for all comparisons.
-
15. In a character recognition system as set forth in claim 14 wherein said means for storing a key to the memory set includes means for comparing the accumulated count signal for each code with all other code sets and discarding all count signals other than the optimum count.
-
16. In a character recognition system having a character reader, the combination comprising:
- an image register comprising an array of elements each capable of storing multiple conditions, a shift register having rows and columns of storage locations substantially in excess of those in the image register for serially receiving signals produced by said character reader, means for producing a centering signal when a set of character portions is centered in said shift register, means for sequentially shifting the contents of said shift register into the image register at a known location, means for storing in memory multicolumn sets of codes, one set for each of a plurality of characters to be identified, means for cyclically loading into a second shift register the columns from said image register, means for cyclically loading into a third shift register the columns from a first of said sets and successively from succeeding sets in said means for storing, means for comparing each code in said second shift register, element for element, with each code in said third shift register, means for shifting said second and third shift registers for comparison of the codes therein at a rate higher than the rate of loading into said shift registers by a multiple at least as great as the number of cells in a column in said means for storing, means for accumulating a count signal of the number of times the compared code elements mismatch, means for shifting the columnar codes in said first shift register and means for recycling said second and third shift registers for additional comparison and accumulation of count signals of the number of times the compared code elements mismatch, and means for storing a key to the memory code set for which said count is optimum. In a character reader as set forth in claim 16 including means for simultaneously comparing each code in said second shift register, element for element, at two additional locations, one above the nominal location and one below the nominal location, with each code in said third shift register at a nominal location, and means for accumulating a count signal for each comparison of the number of times the compared elements satisfy a matched criteria.
-
18. In a character recognition system having a character reader, the combination comprising:
- an image register comprising an array of elements each capable of storing multiple conditions, a shift register having rows and columns of storage locations substantially in excess of those in the image register for serially receiving signals produced by said character reader, means for producing a centering signal when the set of character portions is centered in said shift register, means for shifting the contents of said shift register into the image register at a known location, a memory having a plurality of storage arrays for storing sets of representations of characters to be encountered in said system, a second shift register for receiving columns one at a time of the storage conditions in said image register array, a third shift register for receiving columns one at a time of sets of representations from said memory, comparison means for comparing the stored conditions in a nominal location of each of said second and third shift registers, second comparison means for comparing the storage conditions in a location one above the nominal location of said second shifT register with the nominal location of said third shift register, third comparison means for comparing the storage conditions at a location one below nominal in said second shift register with a nominal location in said third shift register, control means for cyclically shifting the columns of said image register to said second register and for reading columns from said memory into said third shift register at a first rate and for shifting storage conditions and representations to said shift registers in said one location at a second higher rate than said first rate by a multiple at least as great as the number of cells in a column, counter means responsive to said first comparison means to accumulate representations of the number of times the stored conditions and the simulations satisfy a matched criteria, second counter means responsive to said second comparison means to accumulate representations of the number of times the stored conditions at one above the nominal location and the simulations satisfy a matched criteria, third counter means responsive to said third comparison means to accumulate representations of the number of times the stored conditions at one below the nominal location and simulations satisfy a matched criteria, and means to sense and store a key to the set of simulations for which number of representations is optimum.
-
19. In a character recognition system as set forth in claim 18 including means for shifting by column the stored conditions in the image register and for recycling said comparison means for each column shift of stored conditions in the image register.
-
20. In a character recognition system as set forth in claim 18 wherein said means for storing a key to the memory set includes means for comparing the accumulated count signal for each code set with all other code sets and discarding all count signals other than the optimum count.
Specification