Method and apparatus for reading under sampled bar code symbols
First Claim
1. A method for reading a bar code symbol with an optical reader, the optical reader including a two-dimensional imager, the method comprising:
- scanning the bar code symbol to obtain a plurality of scan lines, each of the plurality of scan lines including a linear array of pixel values, adjacent pixels in the linear array of pixel values being separated by a sample separation distance;
designating one of the plurality of scan lines as a reference scan line;
inserting a pre-defined number of interpolated data points between each adjacent pixel pair in each of the plurality of scan lines to form a plurality of interpolated scan lines;
for each scan line of said plurality of interpolated scan lines, determining a plurality of values of a cross-correlation function relative to said reference scan line, said each scan line being shifted by a shift value, said plurality of values of a cross-correlation function corresponding to a plurality of shift values from a pre-defined range;
determining an optimum delay value for each interpolated scan line, the optimum delay value yielding a maximum of said cross-correlation function of the interpolated scan line and the interpolated reference line;
choosing one or more selected interpolated scan lines from the plurality of interpolated scan lines;
adding a pre-defined number of zero pixel values between each pair of said pixel value for each scan line of said plurality of scan lines;
selecting a spatial shift amount for each selected interpolated scan line, the spatial shift amount being the integer multiple of the sample separation distance that corresponds to the optimum delay value for the selected interpolated scan line;
shifting each of the selected interpolated scan lines relative to the reference line by its corresponding spatial shift amount to obtain a plurality of shifted scan linescreating a reconstructed scan line by summing said pixels of said shifted scan lines.
0 Assignments
0 Petitions
Accused Products
Abstract
The present invention is directed to a method for reading a bar code symbol with an optical reader. The method includes the step of scanning the bar code symbol to obtain a plurality of scan lines. Each of the plurality of scan lines includes a linear array of N-pixel values. Adjacent pixels in the linear array of N-pixel values are separated by a sample separation distance. A reconstructed scan line is generated that interleaves the N-pixel values from selected scan lines of the plurality of scan lines. A reconstructed pixel sample separation distance of adjacent interleaved pixels is an integer fraction of the pixel sample separation distance.
124 Citations
14 Claims
-
1. A method for reading a bar code symbol with an optical reader, the optical reader including a two-dimensional imager, the method comprising:
-
scanning the bar code symbol to obtain a plurality of scan lines, each of the plurality of scan lines including a linear array of pixel values, adjacent pixels in the linear array of pixel values being separated by a sample separation distance; designating one of the plurality of scan lines as a reference scan line; inserting a pre-defined number of interpolated data points between each adjacent pixel pair in each of the plurality of scan lines to form a plurality of interpolated scan lines; for each scan line of said plurality of interpolated scan lines, determining a plurality of values of a cross-correlation function relative to said reference scan line, said each scan line being shifted by a shift value, said plurality of values of a cross-correlation function corresponding to a plurality of shift values from a pre-defined range; determining an optimum delay value for each interpolated scan line, the optimum delay value yielding a maximum of said cross-correlation function of the interpolated scan line and the interpolated reference line; choosing one or more selected interpolated scan lines from the plurality of interpolated scan lines; adding a pre-defined number of zero pixel values between each pair of said pixel value for each scan line of said plurality of scan lines; selecting a spatial shift amount for each selected interpolated scan line, the spatial shift amount being the integer multiple of the sample separation distance that corresponds to the optimum delay value for the selected interpolated scan line; shifting each of the selected interpolated scan lines relative to the reference line by its corresponding spatial shift amount to obtain a plurality of shifted scan lines creating a reconstructed scan line by summing said pixels of said shifted scan lines. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A system for reading a bar code symbol with an optical reader, said system comprising:
-
an imaging assembly configured to scan said bar code symbol to acquire a two-dimensional image of said bar code symbol, said bar code image comprising a first plurality of scan lines, each scan line including a linear array of pixel values; and a processor coupled to said imaging assembly, said processor being programmed to produce a plurality of interpolated scan lines by inserting a pre-defined number of interpolated data points between each pair of adjacent pixels; said processor being further programmed to add a pre-defined number of zero pixel values between each pair of said pixel values for each scan line of said first plurality of scan lines; and said processor being further programmed to create a reconstructed scan line by adding said pixel values of a plurality of shifted scan lines, said plurality of shifted scan lines produced by shifting by an optimum shift value each scan line of a second plurality of scan lines selected from said first plurality of scan lines, said optimum shift value yielding a maximum of a cross-correlation function for said scan line relative to a reference scan line, said reference scan line selected from said plurality of interpolated scan lines. - View Dependent Claims (9, 10, 11, 12, 13)
-
-
14. A method for reading a bar code symbol with an optical reader, said bar code symbol containing one or more specular reflections, said method comprising the steps of:
-
scanning said bar code symbol to acquire a two-dimensional image of said bar code symbol, said bar code image comprising a plurality of scan lines, each of said plurality of scan lines including a linear array of pixel values; establishing a nominal white level of a scan line; selecting one or more specular reflection pixels with pixel values exceeding said nominal white level; setting pixel values of said specular reflection pixels to zero; inserting a pre-defined number of interpolated data points between each pair of adjacent pixels, to produce a plurality of interpolated scan lines; designating one of said plurality of interpolated scan lines as a reference scan line; for each scan line of said plurality of interpolated scan lines, determining a plurality of values of a cross-correlation function relative to said reference scan line, said each scan line being shifted by a shift value, said plurality of values of a cross-correlation function corresponding to a plurality of shift values from a pre-defined range; determining an optimum delay value for each scan line of said plurality of interpolated scan lines, said optimum shift value yielding a maximum of said cross-correlation function for said scan line; selecting one or more scan lines from said plurality of scan lines to produce a plurality of selected scan lines; shifting each scan line of said plurality of selected scan lines by said optimum delay value, to produce a plurality of shifted scan lines; and creating a reconstructed scan line by summing said pixel values of said shifted scan lines followed by normalizing each resulting pixel value.
-
Specification