Color barcodes for mobile applications: a per channel framework
US-9111186-B2 · Aug 18, 2015 · US
US9805296B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9805296-B2 |
| Application number | US-201615051354-A |
| Country | US |
| Kind code | B2 |
| Filing date | Feb 23, 2016 |
| Priority date | Feb 23, 2016 |
| Publication date | Oct 31, 2017 |
| Grant date | Oct 31, 2017 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
The present invention discloses a system and a method for decoding QR codes in complex scenes, a system and a method for generating multi-layer color QR codes and applications enabled by the systems and methods. The method for decoding a QR code may include detecting rough locations of the QR code by a learning-based QR code detector which is pre-trained off-line; localizing finder patterns and alignment patterns within each detected location; correcting geometric distortion of each QR code, based on the localized finder patterns and alignment patterns; restoring a color of each data module within each corrected QR code by a learning-based classifier; and decoding the QR code from each restored QR code. The application also discloses a system and a method to determine the optimal setting parameters for creating a multi-layer QR code to fulfill the user's requirements. Some applications enabled by these systems and methods are also disclosed.
Opening claim text (preview).
What is claimed is: 1. A method for decoding a multi-layer color QR code, comprising: capturing an image of one or more two-dimensional multi-layer color QR codes having a plurality of layers of encoded data; detecting rough locations of the color QR codes using a sliding-window based QR code detector trained offline; constructing, within each detected rough location, a corrected color QR code which is generated by using a robust geometric transformation algorithm; performing color recovery over the corrected color QR code by restoring an original color of each color pixel of the corrected color QR code using a color classifier trained offline and further decomposing the restored color QR code to multiple monochrome QR codes using a predefined color codebook used in an encoding process; and extracting the encoded data from the monochrome QR codes layer by layer and concatenating the monochrome QR codes to output the data encoded in the captured color QR code. 2. The method of claim 1 , wherein the constructing of a corrected color QR code comprises: localizing all spatial patterns including finder patterns and alignment patterns and removing all possible false positives by checking if the locations of the localized spatial patterns comply with color constraints; and performing a robust geometric transformation based on the positions of remained spatial patterns to estimate a geometric transformation matrix by solving a weighted over-determined linear system defined as ∑ i = 1 n w i A i H 2 where A i = [ 0 T - x i T y i ′ x i T x i T 0 T - x i ′ x i T ] , xi=(xi, yi, 1) is the position of a detected pattern, (xi′, yi′) is the corresponding point in the data matrix to be reconstructed, wi is the weighting factor of each input point xi, and wi=0.6 if xi is from the finder pattern, wi=0.4 otherwise. 3. The method of claim 1 , further comprising: checking whether the QR code is a monochrome code based on color information randomly sampled from the QR code, if yes, the localizing further comprises: localizing the alignment patterns along a diagonal and an anti-diagonal of the QR code except for a bottom-right one; and localizing an enlarged alignment pattern on a top of the bottom-right alignment pattern in order to perform a robust geometric transformation on the QR code. 4. The method of claim 1 , further comprising: checking whether the QR code is a multi-layer color code based on color information randomly sampled from the QR code, if yes, the restoring comprises: restoring the color for each layer of the QR code by using one independent classifier, and wherein the classifier is selected depending on at least previous scanning results, camera hardware, a number of layers in the QR codes and lighting conditions. 5. The method of claim 1 , further comprising: dividing and shuffling the data modules in each of the QR codes in a bit-by-bit manner, wherein the shuffling is performed randomly or based on a size of data in each QR code. 6. The method of claim 4 , further comprising: training different classifiers for each layer independently, and during a series of scanning, each classifier in different layers also works independently, and stops running once its corresponding layer is successfully decoded. 7. The method of claim 1 , further comprising: combining data in previous scanning attempts to fill in data missed in a current scanning, comprising: storing partial decoding results from the previous scanning attempts in terms of data blocks; locating missed data blocks in the current decoding; checking if the missed data blocks are available in the stored data blocks; and if yes, filling the missed data blocks by the stored data blocks. 8. The method of claim 1 , further comprises: decoding, in batch, at least one color QR code applied to a fabric including at least a shirt or a pill bag, or an object including a building, a toilet, a road, a bench or a paper. 9. A method for generating a multi-layer color QR code from data to be encoded, comprising: partitioning the data to be encoded into a plurality of data blocks according to the number of layers and an error correction level of each layer specified by a user; breaking the data in all the data blocks into bits; encoding the portioned data blocks into a plurality of monochrome QR codes independently, wherein each monochrome QR code shares a same dimension; shuffling the data blocks in each monochrome QR code in a bit-by-bit manner randomly or based on sizes of each monochrome QR code; combining all the monochrome QR codes to generate a multi-layer color QR code using a predefined color codebook; and adding color constraints to spatial patterns, wherein the adding of color constraints to spatial patterns comprises: coloring all finder patterns and alignment patterns with a set of color to reduce false positives i
using a selected wavelength, e.g. to sense red marks and ignore blue marks · CPC title
multi-dimensional coding · CPC title
the marking being selective to wavelength, e.g. color barcode or barcodes only visible under UV or IR (methods or arrangements for sensing record carriers using a selected wavelength, see G06K7/12) · CPC title
locating of the code in an image · CPC title
extracting optical codes from image or text carrying said optical code · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.