Decoding distorted symbols
First Claim
1. A method for decoding distorted symbols, the method comprising acquiring a run-time image of a symbol, the symbol showing distortion in the run-time image;
- obtaining a coordinate transformation that describes the distortion shown in the image of the symbol; and
using a processor, where the processor corrects distortion shown in the run-time image using the coordinate transformation so as to provide a corrected image;
running a run-time symbol reader on the corrected image; and
wherein the coordinate transformation is constructed using a correspondence between at least two 2D coordinates of points within a train-time image and two 2D coordinates of points within a 2D code symbol, the correspondence being provided by a symbol reader that can detect and tolerate distortion of the 2D code symbol.
2 Assignments
0 Petitions
Accused Products
Abstract
A method is provided for reading distorted optical symbols using known locating and decoding methods, without requiring a separate and elaborate camera calibration procedure, without excessive computational complexity, and without compromised burst noise handling. The invention exploits a distortion-tolerant method for locating and decoding 2D code symbols to provide a correspondence between a set of points in an acquired image and a set of points in the symbol. A coordinate transformation is then constructed using the correspondence, and run-time images are corrected using the coordinate transformation. Each corrected run-time image provides a distortion-free representation of a symbol that can be read by traditional code readers that normally cannot read distorted symbols. The method can handle both optical distortion and printing distortion. The method is applicable to “portable” readers when an incident angle with the surface is maintained, the reader being disposed at any distance from the surface.
37 Citations
23 Claims
-
1. A method for decoding distorted symbols, the method comprising acquiring a run-time image of a symbol, the symbol showing distortion in the run-time image;
-
obtaining a coordinate transformation that describes the distortion shown in the image of the symbol; and using a processor, where the processor corrects distortion shown in the run-time image using the coordinate transformation so as to provide a corrected image; running a run-time symbol reader on the corrected image; and wherein the coordinate transformation is constructed using a correspondence between at least two 2D coordinates of points within a train-time image and two 2D coordinates of points within a 2D code symbol, the correspondence being provided by a symbol reader that can detect and tolerate distortion of the 2D code symbol. - View Dependent Claims (2)
-
-
3. A method for decoding distorted symbols, the method comprising the steps of:
-
at train-time; acquiring a training image of a code symbol disposed on a train-time surface using a camera with an optical axis forming an incident angle with respect to the train-time surface; running a code symbol reader that can detect and tolerate distortion so as to provide a correspondence between at least two coordinates of points within the training image and at least two coordinates of points within the code symbol; using the correspondence to construct a coordinate transformation; at run-time; acquiring a run-time image of a symbol disposed on a run-time surface using a camera with an optical axis forming substantially the incident angle with respect to the run-time surface; correcting distortion of the run-time image using the coordinate transformation to provide a corrected representation of the symbol; and running a run-time symbol reader on the corrected image. - View Dependent Claims (4, 5, 6, 7, 8, 9, 10)
-
-
11. A method for decoding distorted symbols, the method comprising the steps of:
-
at train-time; acquiring a train-time image of a code symbol disposed on a train-time surface; generating a coordinate transformation that describes distortion shown in the train-time image; at run-time; acquiring a run-time image of a symbol, the symbol showing distortion in the run-time image; correcting distortion shown in the run-time image using the coordinate transformation so as to provide a corrected representation of the symbol; and running a run-time symbol reader on the corrected image. - View Dependent Claims (12, 13, 14, 15)
-
-
16. An apparatus for decoding distorted symbols, the apparatus comprising:
-
at least a first processor programmed to perform the steps of, at train-time; acquiring a training image of a code symbol disposed on a train-time surface using a camera with an optical axis having an incident angle with respect to the train-time surface; identifying a correspondence between at least two coordinates of points within the training image and at least two coordinates of points within the code symbol; using the correspondence to construct a coordinate transformation; at run-time; acquiring a run-time image of a symbol disposed on a run-time surface using a camera with an optical axis having substantially the incident angle with respect to the run-time surface; correcting distortion of the run-time image using the coordinate transformation to provide a corrected representation of the symbol; and running a run-time symbol reader on the corrected image. - View Dependent Claims (17)
-
-
18. An apparatus for decoding distorted symbols, the apparatus comprising:
-
at least a first processor programmed to perform the steps of, at train-time; acquiring a train-time image of a code symbol disposed on a train-time surface; generating a coordinate transformation that describes distortion shown in the train-time image; at run-time; acquiring a run-time image of a symbol, the symbol showing distortion in the run-time image; correcting distortion shown in the run-time image using the coordinate transformation so as to provide a corrected representation of the symbol; and running a run-time symbol reader on the corrected image. - View Dependent Claims (19, 20, 21, 22, 23)
-
Specification