Techniques for reading postal code
First Claim
Patent Images
1. A method for identifying and reading postal code in image data obtained by an optical code reader, the postal code including a clock track of regular, parallel bars, comprising the steps of:
- defining a subregion in the image data which contains a characteristic indicative of the presence of postal code therein;
using image data from the subregion identifying within the image data a baseline which crosses the clock track of the postal code from one margin of the postal code to the other;
locating bars intersecting the baseline;
tracking each bar above and below the baseline to obtain a string of states based on bar length; and
decoding the string of states.
6 Assignments
0 Petitions
Accused Products
Abstract
The disclosed techniques for reading postal code are adapted for processing data from an optical imager and identifying and decoding various types of postal code found in such data. A baseline is employed.
-
Citations
23 Claims
-
1. A method for identifying and reading postal code in image data obtained by an optical code reader, the postal code including a clock track of regular, parallel bars, comprising the steps of:
-
defining a subregion in the image data which contains a characteristic indicative of the presence of postal code therein;
using image data from the subregion identifying within the image data a baseline which crosses the clock track of the postal code from one margin of the postal code to the other;
locating bars intersecting the baseline;
tracking each bar above and below the baseline to obtain a string of states based on bar length; and
decoding the string of states. - View Dependent Claims (2, 3, 4, 5, 6)
identifying a first bar in a left subimage of the subregion and a second bar in a right subimage of the subregion; locating the left postal code margins which may lie in subimages to the left of the first bar; and
locating the right postal code margin which may lie in subimages to the right of the second bar.
-
-
3. The method of claim 1, wherein the baseline which crosses the clock track from one margin of the postal code to the other is identified by
selecting a first point on a candidate left margin bar; -
selecting a second point on a candidate right margin bar; and
testing the regularity of bars along the baseline to determine whether the baseline is located entirely within the clock track.
-
-
4. The method of claim 3, wherein a look-up table is used to select said first and second points.
-
5. The method of claim 4, wherein different first and second points are selected from the look-up table responsive to a determination that a previous baseline does not lie entirely within the clock track.
-
6. The method of claim 3, wherein if in testing the regularity of the bars along the baseline, a gap is identified:
inserting a place holder for each missing bar.
-
7. A method for reading both two and four state postal codes wherein bars constituting a clock track have been identified, comprising the steps of
for each identified bar determining whether the bar ascends or descends from the clock track; -
obtaining a string of states for the bar code including place holders for missing bars;
selecting a two or four state decoding algorithm appropriate for the type of postal code to be read; and
translating the code from the string of states using the selected decoding algorithm. - View Dependent Claims (8, 9, 10)
-
-
11. A method for reading various types of postal code comprising:
-
obtaining pixel data identified as potentially containing an image of postal code;
locating an entire clock track of the postal code;
examining each bar in the located clock track to determine whether each such bar extends above or below the clock track and to obtain a string of states for the code;
determining the type of postal code by examining the number of bars, and the occurrences of ascender and descender bars; and
applying a decoding algorithm for at least one type of postal code to the string of states. - View Dependent Claims (12, 13, 14, 15)
determining whether the code has a number of bars indicative of a U.S. Postal Code; determining the up/down orientation of the code from the occurrences of ascender and descender bars; and
attempting decoding of the string of states as a U.S. Postal Code.
-
-
13. The method of claim 12, further comprising the steps of
determining whether the code has a number of bars indicative of a UK code; - and
attempting decoding of the string of states as a UK code.
- and
-
14. The method of claim 13, further comprising the steps of
attempting decoding of the strings of states as a Canadian Post Code, if the attempt to decode the code as a UK Code fail. -
15. The method of claim 11, wherein the clock track is located by
(a) identifying candidate leftmost and rightmost bars; -
(b) making a series of guesses of the length of the candidate bars to estimate a candidate clock track;
(c) testing the regularity of the bars and spaces in the candidate clock track; and
(d) repeating steps (a)-(c) until the entire clock track is found.
-
-
16. An apparatus for reading postal codes comprising:
-
an optical sensor for obtaining a two-dimensional array of image data;
an autodiscriminator for identifying a cluster of subimages in the image data potentially containing postal code;
clock track locator for locating a complete clock track in the array of image data by evaluating candidate baselines beginning with a candidate baseline extending from bars located in subimages within the cluster, by locating the code margins and by examining bar and space uniformity along one or more baselines extending between code margins;
bar tracker for determining the length of each bar perpendicular to a baseline, and producing a string of states responsive thereto; and
a postal code decoder for decoding the string of states. - View Dependent Claims (17, 18, 19, 20)
-
-
21. A method for reading both two and four state postal codes wherein bars constituting a clock track have been identified, comprising the steps of
for each identified bar, determining whether the bar ascends or descends from the clock track to obtain a string of states; -
attempting to decode the string of states as a two state code if substantially all of the bars extending beyond the clock track are ascenders or if substantially all of the bars extending beyond the clock track are descenders; and
attempting to decode the string of states as a four state code if the attempt to decode the string of states as a two state code fails. - View Dependent Claims (22, 23)
-
Specification