Enhanced matrix symbol error correction method
First Claim
1. A method of error correction for a two-dimensional (2D) symbol designed for optical reading by a symbol reader, the symbol having a plurality of cells of a designated first color comprising first color cells and a designated second color comprising second color cells which cells are arranged in a two-dimensional matrix;
- the symbol further having a plurality of codewords at specified locations within the symbol, each codeword comprising at least one specified group of cells;
the method comprising;
optically reading, by an optical scanner of the symbol reader, the plurality of codewords in the symbol, the plurality of codewords comprising a first plurality of data codewords storing data indicated by a pattern of the first and second color cells in the codeword, and a second plurality of error-correction (EC) codewords derived from the data codewords and providing redundancy for the data represented by the data codewords;
determining, via a hardware processor of the symbol reader, a location for a data codeword of the first plurality of data codewords which is optically ambiguous, the determining comprisingselecting the data codeword based on a standards-established set of codeword locations within the symbol; and
then performing a contrast analysis on the selected data codeword, wherein the contrast analysis identifies a minimum interior contrast level for the selected data codeword, and the performing of the contrast analysis comprisesdetermining reflectance of first color cells of the first plurality of cells of the selected data codeword, anddetermining reflectance of second color cells of the second plurality of cells of the selected data codeword;
identifying a respective minimum interior contrast level for each codeword in the symbol; and
flagging as optically ambiguous a plurality of codewords with the lowest minimum interior contrast levels among all the codewords in the symbol, up to a specified number of codewords;
marking via the hardware processor, in an error correction (EC) equation stored in a memory of the symbol reader, the location of the optically ambiguous data codeword within the symbol; and
executing, via the hardware processor, the EC equation to correct errors in the read plurality of codewords.
1 Assignment
0 Petitions
Accused Products
Abstract
A system and method for error correction for machine-readable symbols having data codewords, and having error correction (EC) codewords derived from the data codewords and redundantly indicating the location and data contents of the data codewords. The symbols use Reed-Solomon (RS) error correction to retrieve damaged codewords. RS error correction normally requires two EC codewords to identify both the location and data contents of a data codeword. The present system and method performs optical contrast analysis on the codewords, identifying those codewords with the lowest contrast levels (that is, the least difference between the reflectance of the black or white cells and the black/white threshold). Codewords with the lowest contrast levels are flagged as optically ambiguous, thereby marking, in the EC equations, the locations of the codewords most like to be in error. As a result, only a single EC codeword is required to retrieve the data for a flagged data codeword.
453 Citations
14 Claims
-
1. A method of error correction for a two-dimensional (2D) symbol designed for optical reading by a symbol reader, the symbol having a plurality of cells of a designated first color comprising first color cells and a designated second color comprising second color cells which cells are arranged in a two-dimensional matrix;
- the symbol further having a plurality of codewords at specified locations within the symbol, each codeword comprising at least one specified group of cells;
the method comprising;optically reading, by an optical scanner of the symbol reader, the plurality of codewords in the symbol, the plurality of codewords comprising a first plurality of data codewords storing data indicated by a pattern of the first and second color cells in the codeword, and a second plurality of error-correction (EC) codewords derived from the data codewords and providing redundancy for the data represented by the data codewords; determining, via a hardware processor of the symbol reader, a location for a data codeword of the first plurality of data codewords which is optically ambiguous, the determining comprising selecting the data codeword based on a standards-established set of codeword locations within the symbol; and then performing a contrast analysis on the selected data codeword, wherein the contrast analysis identifies a minimum interior contrast level for the selected data codeword, and the performing of the contrast analysis comprises determining reflectance of first color cells of the first plurality of cells of the selected data codeword, and determining reflectance of second color cells of the second plurality of cells of the selected data codeword; identifying a respective minimum interior contrast level for each codeword in the symbol; and flagging as optically ambiguous a plurality of codewords with the lowest minimum interior contrast levels among all the codewords in the symbol, up to a specified number of codewords; marking via the hardware processor, in an error correction (EC) equation stored in a memory of the symbol reader, the location of the optically ambiguous data codeword within the symbol; and executing, via the hardware processor, the EC equation to correct errors in the read plurality of codewords. - View Dependent Claims (2, 3, 4, 5)
- the symbol further having a plurality of codewords at specified locations within the symbol, each codeword comprising at least one specified group of cells;
-
6. An electronic system that acquires a machine-readable two-dimensional (2D) symbol designed for optical reading by the system, the symbol having a plurality of cells of a designated first color comprising first color cells and a designated second color comprising second color cells which cells are arranged in a two-dimensional matrix;
- the symbol further having a plurality of codewords at specified locations within the symbol, each codeword comprising at least one specified group of cells;
the plurality of codewords comprising a first plurality of data codewords storing data indicated by a pattern of the first and second color cells in the codeword, and a second plurality of error-correction (EC) codewords derived from the data codewords and providing redundancy for the data represented by the data codewords, the electronic system comprising;an optical scanner configured to optically receive the plurality of cells in the symbol and to convert the cell pattern of the symbol into an electrical pattern subject to electronic storage and computational analysis; a memory configured to store the electrical pattern of the symbol, and an error-correction (EC) equation; and a hardware processor which is configured to; determine a location for a data codeword of the first plurality of data codewords which is optically ambiguous, comprising the hardware processor being configured to determine the location for the data codeword which is optically ambiguous by selecting the data codeword based on a standards-established set of codeword locations within the symbol, said standards-established set being stored in the memory of the electronic system, and then performing a contrast analysis on the selected data codeword, wherein the contrast analysis identifies a minimum interior contrast level for the selected data codeword, and the performing of the contrast analysis comprises determining reflectance of first color cells of the first plurality of cells of the selected data codeword, and determining reflectance of second color cells of the second plurality of cells of the selected data codeword; identify a respective minimum interior contrast level for each codeword in the symbol; flag as optically ambiguous a plurality of codewords with the lowest minimum interior contrast levels among all the codewords in the symbol, up to a specified number of codewords; mark in the error correction equation the location of the optically ambiguous data codeword within the symbol; and execute the EC equation to correct errors in the read plurality of codewords. - View Dependent Claims (7, 8, 9, 10, 11)
- the symbol further having a plurality of codewords at specified locations within the symbol, each codeword comprising at least one specified group of cells;
-
12. A computer-readable, non-transitory storage medium storing instructions that, when executed by a hardware processor of a symbol reader, causes the hardware processor to execute a method of error correction for a two-dimensional (2D) symbol designed for optical reading by the symbol reader, the symbol having a plurality of cells of a designated first color comprising first color cells and a designated second color comprising second color cells which cells are arranged in a two-dimensional matrix;
- the symbol further having a plurality of codewords at specified locations within the symbol, each codeword comprising at least one specified group of cells;
the plurality of codewords comprising a first plurality of data codewords storing data indicated by a pattern of the first and second color cells in the codeword, and a second plurality of error-correction (EC) codewords derived from the data codewords and providing redundancy for the data represented by the data codewords;
the method comprising;optically reading, by an optical scanner of the symbol reader, the plurality of codewords in the symbol; determining a location for a data codeword of the first plurality of data codewords which is optically ambiguous, the determining comprising selecting the data codeword based on a standards-established set of codeword locations within the symbol; and then performing a contrast analysis on the selected data codeword, wherein the contrast analysis identifies a minimum interior contrast level for the selected data codeword, and the performing of the contrast analysis comprises determining reflectance of first color cells of the first plurality of cells of the selected data codeword, and determining reflectance of second color cells of the second plurality of cells of the selected data codeword; identifying a respective minimum interior contrast level for each codeword in the symbol; flagging as optically ambiguous a plurality of codewords with the lowest minimum interior contrast levels among all the codewords in the symbol, up to a specified number of codewords; marking in an error correction (EC) equation the location of the optically ambiguous data codeword within the symbol; and executing the EC equation to correct errors in the read plurality of codewords. - View Dependent Claims (13, 14)
- the symbol further having a plurality of codewords at specified locations within the symbol, each codeword comprising at least one specified group of cells;
Specification