METHOD FOR ENCODING AND DECODING DATA IN A COLOR BARCODE PATTERN
First Claim
1. A method for decoding data embedded in a color barcode, the method comprising:
- capturing an image of a hardcopy color barcode using an image capture device having a plurality of spectrally sensitive color channels, said color barcode containing a data message embedded therein, said message comprising a plurality of single data values, each single data value having only one unique state from a set of possible state values; and
for each colorant in said hardcopy color barcode;
producing a 2-dimensional image of a pattern representative of said colorant from image data received from said spectrally sensitive color channels;
synchronizing said image with respect to a same horizontal and vertical axis as was used to print this colorant in said barcode;
partitioning said image into tiles which substantially conforms to a same tiling used to encode this colorant in said barcode;
associating each orientation direction that a dot of said colorant can have with an unique state of a single data value, said associations being the same used to encode data in said colorant of said barcode; and
for each tile in said tiling containing a dot of said colorant;
determining an orientation direction for said dot; and
decoding said single data value embedded in said tile based on the unique state associated with said determined orientation direction.
6 Assignments
0 Petitions
Accused Products
Abstract
What is disclosed is a system and method for encoding and decoding data in a color barcode pattern using dot orientation and color separability. The spectral (wavelength) characteristics of the CMY colorants, commonly used in digital printing, and those of RGB sensors are exploited to achieve high capacity data embedding rates in color barcodes. The present method embeds independent data in two different printer colorant channels using dot orientation modulation. In the print end, dots of two colorants occupy the same spatial region. At the detector end, by using the complementary sensor channels to estimate the colorant channels, data is recovered in each colorant channel. The method approximately doubles the capacity of encoding methods based upon a single colorant channel and enables embedding rates which match or exceed that of other hardcopy barcodes known in the arts. The method is robust against inter-separation misregistration with a small symbol error rate.
61 Citations
18 Claims
-
1. A method for decoding data embedded in a color barcode, the method comprising:
-
capturing an image of a hardcopy color barcode using an image capture device having a plurality of spectrally sensitive color channels, said color barcode containing a data message embedded therein, said message comprising a plurality of single data values, each single data value having only one unique state from a set of possible state values; and for each colorant in said hardcopy color barcode; producing a 2-dimensional image of a pattern representative of said colorant from image data received from said spectrally sensitive color channels; synchronizing said image with respect to a same horizontal and vertical axis as was used to print this colorant in said barcode; partitioning said image into tiles which substantially conforms to a same tiling used to encode this colorant in said barcode; associating each orientation direction that a dot of said colorant can have with an unique state of a single data value, said associations being the same used to encode data in said colorant of said barcode; and for each tile in said tiling containing a dot of said colorant; determining an orientation direction for said dot; and decoding said single data value embedded in said tile based on the unique state associated with said determined orientation direction. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A system for decoding data embedded in a color barcode, the system comprising:
-
a memory and a storage medium; and a processor in communication with said memory and said storage medium, said processor executing machine readable instructions for performing; capturing an image of a hardcopy color barcode using an image capture device having a plurality of spectrally sensitive color channels, said color barcode containing a data message embedded therein, said message comprising a plurality of single data values, each single data value having only one unique state from a set of possible state values; and for each colorant in said hardcopy color barcode; producing a 2-dimensional image of a pattern representative of said colorant from image data received from said spectrally sensitive color channels; synchronizing said image with respect to a same horizontal and vertical axis as was used to print this colorant in said barcode; partitioning said image into tiles which substantially conforms to a same tiling used to encode this colorant in said barcode; associating each orientation direction that a dot of said colorant can have with an unique state of a single data value, said associations being the same used to encode data in said colorant of said barcode; and for each tile in said tiling containing a dot of said colorant; determining an orientation direction for said dot; and decoding said single data value embedded in said tile based on the unique state associated with said determined orientation direction. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A method for decoding data embedded in a hardcopy color barcode, the method comprising:
-
capturing an image of a color barcode using an image capture device having a plurality of spectrally sensitive color channels, said color barcode containing a data message embedded therein, said message comprising a plurality of single data values, each single data value having only one unique state from a set of possible state values; for each colorant in said hardcopy color barcode; producing a 2-dimensional image of a pattern representative of said colorant from image data received from said spectrally sensitive color channels; synchronizing said image with respect to a same horizontal and vertical axis as was used to print this colorant in said barcode; partitioning said image into tiles which substantially conforms to a same tiling used to encode this colorant in said barcode; associating each orientation direction that a dot of said colorant can have with an unique state of a single data value, said associations being the same used to encode data in said colorant of said barcode; and for each tile in said tiling containing a dot of said colorant, calculating a plurality of image moments for said dot, one image moment being calculated along each of said unique orientation directions; and using a plurality of image moments computed over a corresponding plurality of tiles in an error correction decoder to estimate said data message embedded in said barcode. - View Dependent Claims (14, 15, 16, 17, 18)
-
Specification