Method and system for creating and using redundant and high capacity barcodes
First Claim
1. A method for transferring information by barcode, the method comprising the steps of:
- expanding original data with calculated data to obtain a set of data, wherein expanding the original data includesadding a checksum to the original data, andadding padding bits to the original data calculated such that, when the set of data is divided, each of the plurality of chunks of data will be of an approximately equal size;
dividing the set of data into a plurality of chunks of data, wherein the plurality of chunks allows for transference of the set of data; and
encoding each of the plurality of chunks of data into an individual barcode to obtain a plurality of individual barcodes from which the set of data can be reconstructed;
and wherein the size of the each chunk of data is between 64 bits and about 200 kilobits.
3 Assignments
0 Petitions
Accused Products
Abstract
Methods and systems for creating and using redundant and very high capacity barcodes are presented. An individual barcode can include one or more finder patterns, one or more position detection patterns, one or more alignment patterns, one or more orientation detection patterns, one or more format and version information patterns, and one or more modules, where each of these sections can be of a separate size, shape, color and location from the other of these sections. Each individual barcode can be encoded with a separate chunk of data. The individual barcodes can be combined into a composite barcode, which can have patterns and modules used can include many different sizes, shapes, colors and locations of such patterns and modules within the barcode. The individual and composite barcodes can be used to transfer data to a capture device. Original data can be expanded and divided into chunks of data. The chunks of data can be encoded into individual or composite barcodes and then sequentially displayed as a moving image. A device can capture each frame of the moving image of barcodes and decode them into chunks. The original data can then be derived from the decoded chunks of data.
86 Citations
47 Claims
-
1. A method for transferring information by barcode, the method comprising the steps of:
-
expanding original data with calculated data to obtain a set of data, wherein expanding the original data includes adding a checksum to the original data, and adding padding bits to the original data calculated such that, when the set of data is divided, each of the plurality of chunks of data will be of an approximately equal size; dividing the set of data into a plurality of chunks of data, wherein the plurality of chunks allows for transference of the set of data; and encoding each of the plurality of chunks of data into an individual barcode to obtain a plurality of individual barcodes from which the set of data can be reconstructed; and wherein the size of the each chunk of data is between 64 bits and about 200 kilobits.
-
-
2. A method for transferring information by barcode, the method comprising the steps of:
-
expanding original data with calculated data to obtain a set of data, wherein expanding the original data includes adding data redundancy to the original data; dividing the set of data into a plurality of chunks of data, wherein the plurality of chunks allows for transference of the set of data; and encoding each of the plurality of chunks of data into an individual barcode to obtain a plurality of individual barcodes from which the set of data can be reconstructed, wherein adding the data redundancy includes one or more of; (i) dividing the plurality of chunks of data such that a subset of the plurality of chunks of data can be used to reconstruct the original data; and (ii) using at least one scheme selected from a set of schemes, the set of schemes including a sharing scheme, a digital fountain scheme, a threshold scheme, a data splitting scheme and a Reed Solomon scheme; and wherein the size of the each chunk of data is between 64 bits and about 200 kilobits. - View Dependent Claims (3)
-
-
4. A method for transferring information by barcode, the method comprising the steps of:
-
expanding original data with calculated data to obtain a set of data, wherein expanding the original data includes adding metadata to the original data; dividing the set of data into a plurality of chunks of data, wherein the plurality of chunks allows for transference of the set of data; and encoding each of the plurality of chunks of data into an individual barcode to obtain a plurality of individual barcodes from which the set of data can be reconstructed, wherein the added metadata includes one or more elements selected from a group of elements, the group of elements including an assigned index and a quantity indicative of a minimum number of the plurality of individual barcodes needed to reconstruct the original data; and wherein the size of the each chunk of data is between 64 bits and about 200 kilobits
-
-
5. A method for transferring information by barcode, the method comprising the steps of:
-
expanding original data with calculated data to obtain a set of data, wherein expanding the original data includes adding a checksum to the original data, and adding data redundancy to the original data; dividing the set of data into a plurality of chunks of data, wherein the plurality of chunks allows for transference of the set of data; and encoding each of the plurality of chunks of data into an individual barcode to obtain a plurality of individual barcodes from which the set of data can be reconstructed, wherein adding the data redundancy includes one or more of; (i) dividing the plurality of chunks of data such that a subset of the plurality of chunks of data can be used to reconstruct the original data; and (ii) using at least one scheme selected from a set of schemes, the set of schemes including a sharing scheme, a digital fountain scheme, a threshold scheme, a data splitting scheme and a Reed Solomon scheme; and wherein the size of the each chunk of data is between 64 bits and about 200 kilobits. - View Dependent Claims (6)
-
-
7. A method for transferring information by barcode, the method comprising the steps of:
-
expanding original data with calculated data to obtain a set of data, wherein expanding the original data includes adding a checksum to the original data, adding data redundancy to the original data, and adding metadata to the original data; dividing the set of data into a plurality of chunks of data, wherein the plurality of chunks allows for transference of the set of data; and encoding each of the plurality of chunks of data into an individual barcode to obtain a plurality of individual barcodes from which the set of data can be reconstructed, wherein the added metadata includes one or more elements selected from a group of elements, the group of elements including an assigned index and a quantity indicative of a minimum number of the plurality of individual barcodes needed to reconstruct the original data; and wherein the size of the each chunk of data is between 64 bits and about 200 kilobits.
-
-
8. A method for transferring information by barcode, the method comprising the steps of:
-
expanding original data with calculated data to obtain a set of data, wherein expanding the original data includes adding a checksum to the original data, adding data redundancy to the original data, adding metadata to the original data, and adding padding bits to the original data calculated such that, when the set of data is divided, each of the plurality of chunks of data will be of an approximately equal size, the size of the each chunk of data lying between about 64 bits and about 200 kilobits; dividing the set of data into a plurality of chunks of data, wherein the plurality of chunks allows for transference of the set of data; and encoding each of the plurality of chunks of data into an individual barcode to obtain a plurality of individual barcodes from which the set of data can be reconstructed,
-
-
9. A method for transferring information by barcode, the method comprising the steps of:
-
dividing a set of data into a plurality of chunks of data, wherein the plurality of chunks allows for transference of the set of data; encoding each of the plurality of chunks of data into an individual barcode to obtain a plurality of individual barcodes from which the set of data can be reconstructed; displaying the plurality of individual barcodes, wherein the step of displaying includes at least one of (i) presenting the plurality of individual barcodes in a sequential manner on a video display device at a certain frame rate, wherein at least one individual barcode is displayed per frame, and (ii) presenting the plurality of individual barcodes in groups of two or more individual barcodes in a sequential manner on a video display device at a certain frame rate, wherein at least one group is displayed per frame; capturing a set of the displayed barcodes; decoding the captured set of the displayed barcodes to obtain a plurality of derived chunks of data; and combining the derived chunks of data to obtain combined data; and wherein the size of the each chunk of data is between 64 bits and about 200 kilobits. - View Dependent Claims (10, 11, 12, 13)
-
-
14. A method for transferring information by barcode, the method comprising the steps of:
-
expanding original data with calculated data to obtain a set of data; dividing the set of data into a plurality of chunks of data, wherein the plurality of chunks allows for transference of the set of data; and encoding each of the plurality of chunks of data into an individual barcode to obtain a plurality of individual barcodes from which the set of data can be reconstructed; displaying each individual barcode; capturing a set of the displayed barcodes, wherein the captured set of the displayed barcodes includes less than all of the individual barcodes; decoding the captured set of the displayed barcodes to obtain a plurality of derived chunks of data, wherein the plurality of derived chunks of data includes less than all of the plurality of chunks of data; combining the derived chunks of data to obtain combined data, wherein the combined data is a copy of the set of data; and un-expanding the combined data to obtain the original data; and wherein the size of the each chunk of data is between 64 bits and about 200 kilobits.
-
-
15. A method for receiving a set of data transmitted using barcodes, the method comprising the steps of:
-
capturing a set of barcodes from a display of a plurality of individual barcodes; decoding the captured set of barcodes to obtain a plurality of derived chunks of data; and combining the plurality of derived chunks of data to obtain combined data, wherein the plurality of individual barcodes is displayed by presenting the plurality of individual barcodes in one of (i) a sequential manner on a video display device at a certain frame rate, wherein at least one individual barcode is displayed per frame, and (ii) groups of two or more in a sequential manner on a video display device at the certain frame rate, wherein at least one group is displayed per frame; and wherein the size of the each chunk of data is between 64 bits and about 200 kilobits. - View Dependent Claims (16, 17, 18, 19)
-
-
20. A method for receiving a set of data transmitted using barcodes, the method comprising the steps of:
-
capturing a set of barcodes from a display of a plurality of individual barcodes; decoding the captured set of barcodes to obtain a plurality of derived chunks of data; combining the plurality of derived chunks of data to obtain combined data; and un-expanding the combined data to obtain a copy representative of the original data, wherein the captured set of barcodes includes fewer barcodes than the plurality of individual barcodes and the combined data includes data redundancy sufficient to obtain the set of data from the combined data; and wherein the size of the each chunk of data is between 64 bits and about 200 kilobits.
-
-
21. A method for transferring information using barcodes, the method comprising the steps of:
-
expanding original data with calculated data to obtain a set of data, wherein the step of expanding includes adding a checksum to the original data; dividing the set of data into a plurality of chunks of data, wherein the plurality of chunks allows for transference of the set of data; encoding each of the plurality of chunks of data into an individual barcode segment to obtain a plurality of individual barcode segments; and merging the plurality of individual barcode segments into at least one composite barcode from which the set of data can be reconstructed, wherein the step of expanding further includes adding padding bits to the original data such that, when the set of data is divided, each of the plurality of chunks of data will be of an approximately equal size; and wherein the size of the each chunk of data is between 64 bits and about 200 kilobits. - View Dependent Claims (22, 23, 24)
-
-
25. A method for transferring information using barcodes, the method comprising the steps of:
-
expanding original data with calculated data to obtain a set of data, wherein the step of expanding includes adding data redundancy to the set of data; dividing the set of data into a plurality of chunks of data, wherein the plurality of chunks allows for transference of the set of data; encoding each of the plurality of chunks of data into an individual barcode segment to obtain a plurality of individual barcode segments; and merging the plurality of individual barcode segments into at least one composite barcode from which the set of data can be reconstructed, wherein adding the data redundancy includes one or more of; (i) dividing the plurality of chunks of data such that a subset of the plurality of chunks of data can be used to reconstruct the original data; and (ii) using at least one scheme selected from a set of schemes, the set of schemes including a sharing scheme, a digital fountain scheme, a threshold scheme, a data splitting scheme and a Reed Solomon scheme; and wherein the size of the each chunk of data is between 64 bits and about 200 kilobits. - View Dependent Claims (26)
-
-
27. A method for transferring information using barcodes, the method comprising the steps of:
-
expanding original data with calculated data to obtain a set of data, wherein the step of expanding includes adding metadata to the original data and adding data redundancy to the set of data; dividing the set of data into a plurality of chunks of data, wherein the plurality of chunks allows for transference of the set of data; encoding each of the plurality of chunks of data into an individual barcode segment to obtain a plurality of individual barcode segments; and merging the plurality of individual barcode segments into at least one composite barcode from which the set of data can be reconstructed, wherein the added metadata includes one or more elements selected from a group of elements, the group of elements including an assigned index and a quantity indicative of a minimum number of the plurality of individual barcodes needed to reconstruct the original data; and wherein the size of the each chunk of data is between 64 bits and about 200 kilobits.
-
-
28. A method for transferring information using barcodes, the method comprising the steps of:
-
dividing a set of data into a plurality of chunks of data, wherein the plurality of chunks allows for transference of the set of data; encoding each of the plurality of chunks of data into an individual barcode segment to obtain a plurality of individual barcode segments; merging the plurality of individual barcode segments into at least one composite barcode from which the set of data can be reconstructed; displaying the at least one composite barcode; capturing the displayed at least one composite barcode; decoding the captured at least one composite barcode to obtain a plurality of derived chunks of data; and combining the derived chunks of data to obtain combined data, wherein the step of displaying includes presenting the at least one composite barcode in a sequential manner on a video display device at a certain frame rate, wherein one or more composite barcode is displayed per frame; and wherein the size of the each chunk of data is between 64 bits and about 200 kilobits. - View Dependent Claims (29, 30, 31)
-
-
32. A method for transferring information using barcodes, the method comprising the steps of:
-
dividing a set of data into a plurality of chunks of data, wherein the plurality of chunks allows for transference of the set of data; encoding each of the plurality of chunks of data into an individual barcode segment to obtain a plurality of individual barcode segments; merging the plurality of individual barcode segments into at least one composite barcode from which the set of data can be reconstructed; displaying the at least one composite barcode; capturing a set of the displayed at least one composite barcode; decoding the captured set of composite barcodes to obtain a plurality of derived chunks of data; and combining the derived chunks of data to obtain combined data; and wherein the size of the each chunk of data is between 64 bits and about 200 kilobits. - View Dependent Claims (33)
-
-
34. A method for communicating information through barcode transfer, the method comprising the steps of:
-
displaying at least one composite barcode, wherein the at least one composite barcode represents a plurality of chunks of data divided from a set of data; capturing one or more of the displayed at least one composite barcode; decoding the captured one or more composite barcode to obtain a plurality of derived chunks of data; and combining the plurality of derived chunks of data to obtain combined data, wherein the step of displaying includes presenting the at least one composite barcode in a sequential manner on a video display device at a certain frame rate, wherein at least one composite barcode is displayed per frame; and wherein the size of the each chunk of data is between 64 bits and about 200 kilobits. - View Dependent Claims (35, 36, 37)
-
-
38. A system for transferring information comprising:
-
means for expanding original data with calculated data to obtain a set of data, wherein the means for expanding includes means for adding a checksum to the original data and means for adding padding bits to the original data such that, when the set of data is divided, each of the plurality of chunks of data will be of an approximately equal size; means for dividing a set of data into a plurality of chunks of data, wherein the plurality of chunks allows for transference of the set of data; and means for encoding each of the plurality of chunks of data into an individual barcode to obtain a plurality of individual barcodes from which the set of data can be reconstructed; and wherein the size of the each chunk of data is between 64 bits and about 200 kilobits. - View Dependent Claims (39, 40)
-
-
41. A system for transferring information comprising:
-
means for dividing a set of data into a plurality of chunks of data, wherein the plurality of chunks allows for transference of the set of data; means for encoding each of the plurality of chunks of data into an individual barcode to obtain a plurality of individual barcodes from which the set of data can be reconstructed; means for displaying the plurality of individual barcodes; means for capturing a set of the displayed barcodes; means for decoding the captured set of barcodes to obtain a plurality of derived chunks of data; and means for combining the derived chunks of data to obtain combined data, wherein the means for displaying includes at least one of (i) means for presenting the plurality of individual barcodes in a sequential manner on a video display device at a certain frame rate, wherein at least one individual barcode is displayed per frame, and (ii) means for presenting the plurality of individual barcodes in groups of two or more individual barcodes in a sequential manner on a video display device at a certain frame rate, wherein at least one group is displayed per frame and wherein the size of the each chunk of data is between 64 bits and about 200 kilobits. - View Dependent Claims (42, 43, 44, 45)
-
-
46. A system for transferring information comprising:
-
means for expanding original data with calculated data to obtain a set of data, wherein the means for expanding includes means for adding padding bits to the original data such that, when the set of data is divided, each of the plurality of chunks of data will be of an approximately equal size; means for dividing a set of data into a plurality of chunks of data, wherein the plurality of chunks allows for transference of the set of data; means for encoding each of the plurality of chunks of data into an individual barcode to obtain a plurality of individual barcodes from which the set of data can be reconstructed; means for displaying each individual barcode; means for capturing certain of the displayed barcodes; means for decoding the captured certain displayed barcodes to obtain a plurality of derived chunks of data; means for combining the derived chunks of data to obtain combined data; and means for un-expanding the combined data to obtain the original data, wherein the captured certain displayed barcodes includes less than all of the individual barcodes; the plurality of derived chunks of data includes less than all of the plurality of chunks of data; and the combined data is a copy of the set of data; and wherein the size of the each chunk of data is between 64 bits and about 200 kilobits.
-
-
47. An individual barcode, comprising:
-
a unique identifier indexing one of a plurality of chunks of data in a set of data; a plurality of modules adapted for transferring the one chunk of data, each of the plurality of modules having a predetermined location relative to other modules; and a plurality of patterns adapted to facilitate recognition of the locations of each of the plurality of modules within the individual barcode, wherein each of the patterns and the plurality of modules includes, a size, a shape, a color and a location within the individual barcode, such that the individual barcode includes a plurality of sizes, a plurality of shapes and a plurality of colors, wherein the plurality of patterns includes a finder pattern, one or more position detection patterns, one or more orientation detection patterns and one or more format/version information patterns; and wherein the size of the each chunk of data is between 64 bits and about 200 kilobits.
-
Specification