Search Images Maps Play YouTube News Gmail Drive More »
Sign in
Screen reader users: click this link for accessible mode. Accessible mode has the same essential features but works better with your reader.

Patents

  1. Advanced Patent Search
Publication numberUS8079522 B2
Publication typeGrant
Application numberUS 12/104,389
Publication dateDec 20, 2011
Filing dateApr 16, 2008
Priority dateJul 18, 2000
Also published asUS6666377, US7578443, US7878400, US7963446, US7967207, US8141783, US8733657, US8733658, US8746565, US8763907, US20080169352, US20080191023, US20080191025, US20110180597, US20120175413, US20130181044, US20130181053, US20130181057, US20130181058, US20130186963
Publication number104389, 12104389, US 8079522 B2, US 8079522B2, US-B2-8079522, US8079522 B2, US8079522B2
InventorsScott C. Harris
Original AssigneeBartex Research, Llc
Export CitationBiBTeX, EndNote, RefMan
External Links: USPTO, USPTO Assignment, Espacenet
Barcode device
US 8079522 B2
Abstract
Bar codes used for various applications. A bar code can be used for biometrics, or for computer data entry. A special bar code is described that has additional information, but can be read by other readers.
Images(5)
Previous page
Next page
Claims(19)
1. A method, comprising:
reading a barcode that has multiple parts including a first barcode part and a second barcode part, said reading using a computer based barcode reading device, wherein said first barcode part encodes a first set of information including plural different items of information, and said second barcode part encodes a second set of information including plural different items of information, wherein at least one of said plural different items of information within said first set of information represents the same information as at least one of said items of information within said second set of information, and where said second set of information also includes additional items of information beyond that in said first set of information;
checking said second barcode part using a checking function on said computer based barcode reading device that operates to determine whether information that was obtained by reading said second barcode part represents valid information;
based on said checking, using information from said second barcode part in said computer based barcode reading device when said checking indicates that said information obtained by reading said second barcode part is valid, and not using said information from said second barcode part in said computer based barcode reading device and instead using said information from said first barcode part in said computer based barcode reading device when said checking indicates that said information obtained by reading said second barcode part using said computer based barcode reading device is not valid; and
when said using when said second barcode reading is indicated by said checking as not valid, further comprises using information based on reading said first barcode part to address a remote database over a channel, and receiving information from said database beyond that read from said first and second barcode parts, where said information from said database is concatenated along with information obtained from reading said first barcode part as part of the using when said second barcode reading is indicated by said checking as not valid, said information used to address not being a website address.
2. A method as in claim 1, wherein said reading comprises reading the barcode using a hand-held device which includes a display screen and where said information from said database is displayed on said display screen along with information obtained from reading said barcode.
3. A method as in claim 2, further comprising receiving said information from said database, and displaying an indication received from said database on said display screen, said information displayed on said display screen being at least one item of information different than that read from said first bar code part or from said second bar code part.
4. A method as in claim 1, wherein said first barcode part is one-dimensional, and said second barcode part is two-dimensional.
5. A method as in claim 1, wherein information in the first barcode part and in the second barcode part both represent information about the same item; where said first barcode part represents abbreviated information about the item, and said second barcode part represents enhanced information about the same item.
6. A method as in claim 1, wherein said sending information from the barcode sends a series of digits that is not a website address.
7. A method as in claim 1, wherein the information from said reading defines data that is used to access a remote database, and is used to address detailed information in the database, where said information from said reading that is used to access the remote database is not a website address.
8. A method as in claim 1, wherein said reading comprises reading the barcode to obtain a first set of digits representative of a first information part in the first barcode part, which first information part is also present in the second barcode part, and to obtain a second set of digits representing a second information part from said first barcode part, which second information part is also present in the second barcode part, and further comprising concatenating said first information part and said second information part as part of said using.
9. A method, comprising:
using a barcode reader device for reading an overall barcode that includes a first barcode part including at least one item of information encoded therein, and a second barcode part that includes at least multiple items of information encoded therein, said first and second barcode parts including at least some of the same information and at least some different information; said using including first reading said first barcode part to obtain a first item of information from said first reading;
said using including second reading said second barcode part to obtain a second item of information that is different than said first item of information;
said barcode reader device having a computer therein concatenating digits representing said first item of information with digits representing said second item of information to form concatenated information as an overall information part; and
using the overall information part formed having said concatenated information, by said barcode reader device, as representative of the barcode reading,
wherein said first barcode part represents data that is used to access a remote database, where said data from said first barcode part is used to address detailed information in the database,
where said data from said first barcode part that is used to access the remote database is not a website address,
and further comprising using said data from said first barcode part to access the remote database and to receive back the same information as is contained in said concatenated information, and
checking said first reading using a checking function operating on the computer, that determines if said reading is valid, and operating said first reading and said second reading only if said checking determines that the reading is valid.
10. A method as in claim 9, wherein said first barcode part is a one-dimensional barcode and said second barcode part is a two-dimensional barcode.
11. A method as in claim 9, wherein said barcode reader device includes a hand-held computer based device which includes a display screen.
12. A method as in claim 11, further comprising sending said concatenated information from said handheld computer based device to a remote database.
13. A method as in claim 12, further comprising receiving information from the remote database, and displaying said information that is received on the display screen of the device.
14. A barcode reading system, comprising:
a hand-held barcode reading device which includes a display screen, said hand-held barcode reading device operative to read a barcode, said hand-held barcode reading device having a computer therein which is programmed for checking plural items of information within a barcode area within said barcode using a checking function running on said computer in said barcode reading device, wherein said computer is programmed for checking multiple parts in said barcode including a first barcode part and a second barcode part using a checking function, wherein said first barcode part encodes a first set of information including plural different items of information, and said second barcode part encodes a second set of information including plural different items of information, wherein at least one of said plural different items of information within said first set of information represents the same information as at least one of said items of information within said second set of information, and where said second set of information also includes additional items of information beyond that in said first set of information,
said computer operating to use said checking function to determine whether information that was obtained by reading said second barcode part represents valid information,
said computer operating to use information from said second barcode part when said checking function indicates that said information obtained by reading said second barcode part is valid,
said computer not using said information from said second barcode part and instead using said information from said first barcode part when said checking function indicates that said information obtained by reading said second barcode part is not valid;
said computer operating when said checking indicates that said information obtained by reading said second barcode part is not valid for sending information based on reading said first barcode part to a remote database over a channel, where said information obtained by reading said first barcode part not being a website address, and receiving information from said database beyond information that is read from said first and second barcode parts by said barcode reading device,
said computer operating to concatenate said information from the database along with information obtained from reading said first barcode part as part of the using, wherein said handheld barcode reading device further displays an indication received from said database on said display screen, and also displays information based on reading said barcode on said display screen.
15. A system as in claim 14, wherein said hand-held barcode reading device further reads the barcode to obtain a first set of digits representative of a first information area, and to obtain a second set of digits representing a second information area and further concatenating said first information area and said second information area.
16. A barcode reading system, comprising:
a handheld reader with a display, said handheld reader reading an overall barcode that includes a first barcode part including at least one item of information encoded therein, and a second barcode part that includes at least multiple items of information encoded therein, at least one of said multiple items of information being the same as one of said at least one item of information in said first barcode part, said reader operating for first reading said first barcode part to obtain a first item of information and second reading said second barcode part to obtain a second item of information that is different than said first item of information;
said handheld reader device having a computer therein operating for concatenating digits representing said first item of information with digits representing said second item of information to form concatenated information as an overall information part and using the overall information part formed having said concatenated information, by said barcode reader device, as representative of the barcode reading,
wherein said computer operates based on said first barcode part representing data that is used to access a remote database to access said remote database to address detailed information in the database,
where said data from said first barcode part that is used to access the remote database is not a website address,
where said computer uses said data from said first barcode part to access the remote database and to receive back the same information as is contained in said concatenated information, and
said handheld reader using a checking function operating on the computer, that determines if said reading is valid, and operating said first reading and said second reading only if said checking determines that the reading is valid, and said handheld reader displays both at least parts of first information obtained from reading the barcode and also at least part of second information that was not obtained from reading the barcode,
wherein both said first information has information from the barcode itself and said second information that is not from the barcode itself, are each displayed on said handheld reader as a result of reading said barcode.
17. A barcode reading system as in claim 16, wherein said information that is sent includes a series of digits that does not represent a website address.
18. A system as in claim 14, wherein said barcode includes first and second barcode areas therein,
wherein said computer executes said checking function obtain information from a reading a barcode that has multiple areas including a first barcode area and a second barcode area as said plural items of information,
and said computer operates to use second barcode area information from said second barcode area when said checking indicates that said second barcode area information is valid without sending said second information over a channel, and said computer operates to use first barcode area information from said first barcode area as said first information for sending over said channel.
19. A system as in claim 16, wherein said barcode includes a first barcode area and a second barcode area therein,
and where said handheld reader executes a checking function which uses second information from said second barcode area when said checking function indicates that said second information represents valid information, and to use first information from said first barcode area for sending said first information from said first barcode area over said channel when said first information is found by said checking function to be valid.
Description

This application is a Division of Ser. No. 10/714,097 which is a Division of Ser. No. 09/618,988 filed Jul. 18-2000, now U.S. Pat. No. 6,666,377

BACKGROUND

The present application relates to bar codes, and to scanning of bar codes and other scannable type codes to obtain and enter information.

Bar codes are often used in scanning of information. A bar code provides information based on sizes of its different parts.

Typical linear/one-dimensional bar codes provide white and dark bars forming a bar code image. Linear bar codes may include Universal Product Codes (UPCs), Type 39 bar codes and type 128 bar codes. Two-dimensional bar codes, including a “matrix” code and the “Gettysburg Address” type bar code, are also known. Bar codes have been used for many purposes including inventory control.

SUMMARY

The present application teaches using scanned information from a scannable code to enter special kinds of information. One embodiment describes using the scannable code in place of a photo. Another embodiment describes bar codes being sent as part of a message, where the message can be an advertisement, an email, or the like. The information in the bar code relates to some aspect of the message. For example, one embodiment describes using the bar code to represent a meeting time that is described in an email. Another embodiment describes using the bar code to represent a time and place of a function being advertised, e.g. an event. The bar codes can represent the information itself, or can represent an address from a look up database which includes more information about the bar code.

Another embodiment describes special kinds of bar codes which store additional information in a different way than previously carried out. One of these information types is a progressive information type where the bar code can be read by either a linear or a two-dimensional bar code scanner.

BRIEF DESCRIPTION OF THE DRAWINGS

These and other aspects will now be described in detail with respect to the accompanying drawings, wherein:

FIGS. 1A and 1B show an image used in a cellular telephone and/or a portable computer;

FIG. 2 shows a flowchart of operation of the sensor;

FIG. 3 shows a diagram of encoding of a photo;

FIG. 4 shows a message with an associated bar code entry part;

FIG. 5 shows a client-server Internet embodiment;

FIG. 6 shows a bar code meeting system; and

FIG. 7A-7C show new specialized bar code schemes.

DETAILED DESCRIPTION

The present application teaches using a symbolical code, such as a bar code, to enter information into a computer device. The computer device can be a portable computer which is described herein as being any computer in which the display and user interface are within the same housing, or a personal digital assistant which is a smaller version of the personal computer, which again has data entry parts and display within a single housing, but has outer perimeters which are sized to fit any user's hand, e.g. less than ten inches by ten inches. Another embodiment describes a special kind of PDA which includes a portable telephone such as a cellular telephone, included therein.

The bar codes can be imaged/scanned in a number of different ways. One embodiment discloses using a camera to input and decode these bar codes. The embodiments are shown in FIGS. 1A and 1B. FIG. 1A describes using a personal digital assistant 100 as the input device. One preferred input device of this type is the Palm V™ type hand held computer. A bar code scanner can be used, such as the commercially available Symbol Technology SPT 1700. Alternatively, a camera add-on unit can be added to the Palm V and used as described herein. The PDA includes a screen 145 and user interface 146 all within the same housing 99.

FIG. 1B shows the client being a cellular telephone which also may include a screen 145 and user interface 150. The cellular telephone can be associated with either a dedicated bar code scanner or an image sensor 160 of the type used to obtain photographs for video telephony.

In both devices, the input device obtains either a scan of the bar code, or an image of the bar code on a medium. The medium can be a display screen such as a computer display screen, or can be a sheet of paper. The information in the bar code is entered into the computer.

If a dedicated bar code scanner is used, then the value of the bar code is automatically output from the scanner by the operating system associated with the bar code scanner. FIG. 2 shows the flowchart which is used to obtain scanning information from a camera.

First the scan of the barcode image is acquired at 200. This image may be a pixel based bitmap.

Each bar code has certain rules constraining how the bar code is recognized. In two-dimensional bar codes, the spacing/pitch/size of and between the black and white bars often represent the information. Certain rules constrain what is a legal bar code. One such rule is the dead space rules, which defines legal characteristics of the edges of the bar code. The following description defines using the dead space rules, however, it should be understood that other constraining rules could alternately be used.

The bitmap is processed at 205 to look for dead space 208 in the bar code. The amount of spacing, which represents sizes of white and black parts, is then determined. The number of pixels which will represent each part can be ascertained. The image is then processed to find the number of white or black spaces 215, the next number of white or black spaces 220, and continuing until the ending dead space 222. Each blank space can be defined as being a certain number of pixels in the image sensor 118.

Image straightening algorithms can be used to rotate the image and straighten it in order to avoid improper values.

Then, these raw values at 210 that are indicative of the content of the bar code can be decoded by a conventional bar code decoding technique at 215. This system describes using an alphanumeric bar code such as the type 39 or type 128 bar code 215 shows decoding these raw values to obtain the output representing the content of the bar code.

In this way, the image sensor which can be used for video output in a portable telephone, or for obtaining for digital pictures in a PDA, can become a bar code scanner. This system also facilitates using the special kinds of bar codes which are described herein with reference to the additional embodiments.

FIRST EMBODIMENT

Personal Identification. Personal cards such as driver license's and credit cards may include a user's personal identifying information. Signatures are conventionally used, but can be imitated by a clever forger. Photographs can also be used. However, a forger may slice out the photograph and replace it with a duplicate in order to spoof the system. The present application defines printing a bar code on the personal identification card. The bar code can be encrypted, and can include additional personal identifying information.

U.S. Pat. No. 5,420,924 describes putting a bar code on a personal identification card. However, this system recognized that not enough information can be stored. Therefore, this system took a slice of the overall image.

The information which is stored using this technique can include any personal identifying information, including a picture of the user's face, fingerprint information, dynamic information about the user's signature, i.e. the way that the user actually makes the signature. This can include the speed of signing, the technique of holding the pen, and the like. These latter features are more difficult for a forger to copy. This information is stored as data (e.g. dv/dt of the pen, time, angles, etc.) and stored in the bar code. If an image is used, the image should be of reduced resolution e.g. 20 by 20 pixels. Fingerprints can be stored as vectorized images of the fingerprint (e.g. using Adobe Streamline) or the like. The information is also preferably encrypted using a one way code e.g. such as public key cryptography. All of the public, that is every decoding station, is given the decoding key. Only authorized coders, such as the issuers of the cards are given the encoding key. An unauthorized user cannot make an authorized item of information in this way.

Each item of information can be tested using a hash function. Only information from the authorized user will pass the hash function.

The system described herein uses a type 39 bar code. A typical type 39 bar code has an unlimited number of total digits. Each digit can represent any of 0 through 9, A through Z or any of five punctuation characters. According to the present system, it is recognized that this combination provides the possibility of 41 different values for each digit.

FIG. 3 also shows the encoding operation. The bytes representing the code, shown as 320, are converted into a base N number at 305, where N is preferably the highest base that can be represented by all of the digits of the bar code or at least 80% of the digits. Here, a base 41 number is used. The digits zero through 9 represent their own value zero through 9, A through Z represent 1041 through 3741, and the punctuation characters represent, respectfully, 3841 through 4141. This same scheme can be used for any base of numbers.

At 310, the file representative of the personal information is converted to base 41. This is then encoded as a type 39 bar code at 315. The value is then encrypted at 320 using a one way function, and stored on the credit card at 325. Since the type 39 bar code has no limit on length, any amount of information can be stored in this way.

The bar code is read out and reconverted back to the original number at 330 and is used to drive a display device shown as 335 to display the characteristics. In the case of dynamic signature information or other such information, the stored characteristics may be directly compared against the sample instead of being displayed.

Alternatively, the information can represent a pointer to a database, e.g. a publicly available database. This database can later be accessed as part of an information transfer.

In this system, the information can represent an address, e.g. a number that is associated with a special function. The address is used to access a publicly available information network, e.g. by direct connection or by the Internet. As an example, the bar code may store an address command AD, followed by a base 39 alphanumeric value 4DMKDP. The bar code is scanned to obtain the command to obtain the image from address 4DMKDP. The value 4DMKDP may be converted to hex or binary prior to the request.

The database returns the image of the person.

Another embodiment shown in FIG. 4 uses bar codes to enter information into the computer. The FIG. 4 embodiment stores scannable non-alphanumeric information, e.g. bar code information, as some part of a communication—here an advertisement. The advertisement can be a print advertisement, a television advertisement, or an Internet advertisement for example. The advertisement 400 includes a bar code 405 therein. The bar code 405 is associated with the advertisement, and includes some additional information about the advertisement. For example, the bar code may include the web site address of the company preparing the advertisement, or appointment information about the advertisement, or a “vcf file” or the like which is an importable file with address information about the company or author sponsoring the advertisement.

In operation, the user brings one of the clients, either the cellular telephone 310 or PDA 315, into range of the bar code 405. The client reads the bar code and decodes it as noted above. The decoded information can represent ASCII information, a compressed file such as a zip file, G code information, or any other compressed or non-compressed information. The contents are automatically input into the client. The contents can directly represent that information, in which case the information is input into the client. For example, the information can directly represent the ASCII information indicating the website. Alternatively, the information can represent a pointer to a database, e.g. a publicly available database. This database can later be accessed as part of an information transfer.

For example, Palm systems enable a hot sync where the portable computer is synced with another computer that is running hot sync software.

In this system, the information can represent a cue, e.g. a number, that is associated with a special function. The cue is used during a hot sync to access a publicly available information network, e.g. by direct connection or by the Internet. The cue 431 is sent over the Internet 432 to the server 450, and addresses more detailed information in a memory of the server. The server returns that information as 455, and the client receives the more detailed information.

As an example, the bar code may store an cue command CX, followed by a base 39 alphanumeric value 4DMKDP. The bar code is scanned to obtain the command to cue to value 4DMKDP during the next hot sync. The value 4DMKDP may be converted to hex or binary prior to the hot sync.

During hot sync, the database returns the full text of the detailed information, e.g., “visit the website at http://www.pdascan.com/˜more to get a free gift.” Any desired length or size of information can be returned.

As described above, therefore, this system enables the information in the bar code to be used as an address for look up address from a database. The database can be accessible over the Internet. During a later hot sync, this information can be translated into more detailed information which can be returned from the hot sync.

This information can be a hyperlink. The hyperlink can also use the techniques disclosed in co-pending application No. 60/161,700, entitled Internet Browsing From A Television, in which the origin of the hyperlink is included within the hyperlink itself. In this embodiment, a hyperlink may be stored for later visitation. The hyperlink also include a code therein which indicate the source from which the hyperlink originated. For example, the source may indicate the name of the print magazine, or the web page from which the hyperlink originated, or the like. In this way, the advertisement service can keep track of which advertising forms produce the best results. In addition, this facilitates a paradigm whereby the advertiser pays an advertising fee which is based on the number of website visits from the advertisement.

FIG. 5 shows using this system as part of a communication which is an email. A displayable bar code 500, in image format, e.g. a GIF, JPEG or PDF, is stored as part of the message. This bar code is then displayed in the specified format to a user. The bar code includes the information described above.

FIG. 6 shows an alternative display which is presented to a user. The email is displayed with its usual text part 600, which describes text of the message. The text indicates information about something to happen in the future e.g. a meeting. If the user wants to go to the meeting, they are invited to scan the bar code 605. The bar code, once scanned is translated into information for a PDA, e.g. in Palm or Outlook format. The information may say “bar code meeting”; Thursday 4:00-6:00 p.m. This information is then automatically input into the PDA. As above, this text can represent the actual text information, as is shown in FIG. 6. It can represent a compressed form of the actual information, such as compressed using G code. Alternatively, the information can represent a cue address to be used for a look up table during a hot sync or other information transfer, as previously described herein. This information can be printed, and scanned off the printer, or can be scanned directly off the screen. The system shown in FIG. 6 shows scanning the code to input the information.

The communication can also include auxiliary codes 610. A first code can be scanned to send an automatic acceptance or declining by email. The format for the email acceptance can also be included within the code, or can simply be a pre-stored email saying a user name A (filled in by the scanning software) has accepted your meeting B (filled in from the information from the bar code).

The present system defines using bar codes to enter relatively large amounts of information into the computer. FIG. 7A through 7C shows special new bar codes which are described according to the present system, which enable this storage of additional information.

Many different kinds of bar codes, that allow storing larger amounts of information, are known. One such bar code is the “Gettysburg Address” type matrix code. This requires, however specialized scanning equipment. This equipment represents a capital investment and has been slow to catch on. The present system teaches, in FIG. 7A, a special bar code which includes increased capacity bar code information, as well as backwards compatibility with previous bar code scanners. The code shown in FIG. 7A includes two parts. A first part 710 is found as legal when scanned for linear codes. A second part 710 registers as invalid/illegal when scanned in this way.

The linear part 700 is a standard and commercially available linear bar code such as a UPC, Type 39 or Type 128 bar code. A conventional linear bar code reader will read and decode this portion. Part of the standard for these bar codes includes certain spacing requirements. For example, dead space at the edges of the bar code may be one of the required characteristics. These are shown as 702, 704. When this dead space is detected, and all other aspects of the bar code are detected, the bar codes can be read and decoded, shown as 711.

The remainder of the bar code may be a code which fails the decoding requirements for the linear bar code 700. This failure type bar code can represent a matrix code, for example, of any desired type. For example, this can be a Gettysburg Address or Vericode type matrix code. In addition, however, it can be a special kind of matrix code in which each bar shown as 720 is itself made up of another bar code extending in the vertical direction. The spacing between the bars 720, 722, 724 may also include information. Within each bar 720, for example, the pattern also provides additional information. In this way, the bar code is actually formed of two different bar code scans. A scan in the direction 730 obtains first information, and a scan across each line in the direction 732 obtains additional information. After scanning the line 732, the system scans along the line 734 to obtain the next item of information. If this is obtained from a camera, however, the whole image can be obtained and later processed using processing techniques to obtain the scan information. In addition, scan information can be obtained from the linear bar code part 700. FIG. 7A shows the linear part taking up approximately twenty-five percent of the area of the entire bar code. However, the two-dimensional scan can take up much less area, e.g. as little as five to ten percent. When scanning with a conventional bar code scanner of the linear type, the bottom portion may be scanned to obtain the two-dimensional bar code information. Enhanced bar code information can be obtained from the additional portion. This enhanced information can be additional information, or it can be the same information as in the first bar code portion, as well as additional information.

In the context of this system, the linear bar code information can represent an address for look up code of the type described above with reference to FIG. 4. The enhanced or non-linear information 710 can represent the total information. A person with a sufficiently advanced bar code scanner can read the entire information. A person with only a linear bar code scanner, however, may scan only the information 700, and then updates the information via a hot sync.

An additional way of using this information, for example for scanning products, is also contemplated. Scan part 700 may include a Universal Product Code or UPC. Scanning part 710 may include additional information about the product, such as a description, or picture. The picture of the product may be displayed to the sales clerk, so that the sales clerk can verify that the product being purchased is actually the product that the user is presenting. Both parts of the bar code may represent information about the product. The part 700 represents basic information and the part 710 represents advanced information.

A second enhanced bar code shown in FIG. 7B is a standard linear bar code or two-dimensional bar code with additional information stored in the gray scale. FIG. 7B show the system configured as a two-dimensional bar code. A first stripe 700 represents a dark (i.e. non-white) stripe. A second stripe 702 represents a white stripe and a third stripe 704 representing another dark stripe. Similarly, the code 699 alternates between white stripes and dark stripes throughout the entire code. In this embodiment, however, the dark stripes 700 are not actually black, but may be a color that is a shade of gray. For example, 16 or 256 different grayscale levels may be defined. Each time a code is detected, its grayscale value is obtained as a numeric value. Similarly, the white stripes 702, 706 may actually be a shade of gray. In this system, rather than simply obtaining spacing information, spacing information and grayscale information are both obtained from the scanning of the code. The gray scale information can be obtained when a camera type imager is used, since the color of the stripes can be obtained in addition to the spacing of the stripes. An alternative is that the white areas 702 are not pure white, but are rather some shade of white which can be characterized between zero and sixteen for example.

Information is obtained from both the shade(s) of gray of the dark portion(s), the white portion(s), and the spacing.

In one embodiment, the sequence of the numbers defining the gray scale levels provides the information. For example, hex value is defined by grayscale values of each gray line. This information is used totally separately from the information that is obtained from the linear barcode information.

Yet another alternative does not use black portions and white portions, but rather uses alternating grayscale portions, with each alternating portion representing a grayscale value. Preferably a system is used whereby the gray scale is itself coded as either the gray scale or the compliment of the gray scale to provide maximum contrast between the bars 700, 702.

An alternative system shown in FIG. 7C uses color bars in the bar code. Not only is the spacing between the bars determined, but also the numerical value representing the bar values themselves. For example, each color can be represented by an eight bit value. That eight bit value is obtained, and used as part of the retrieved information. The eight bit value can represent 2 hex digits. Again, this information can be used as supplemental to the spacing information obtained by the bar code.

In the latter two systems, color is described as being used with a two-dimensional bar code but can also be used with a three-dimensional bar code. In addition, in this system, the color and the spacing can both be used. By taking the available number of digits, and representing the color by that available number of digits, a number in base n, where n can be a very large number, can be obtained. This facilitates storing even more information into a bar code.

These codes preferably follow the paradigm described above, that scanning with a monochrome scanner may return only a part of the information, e.g. an address to be later used for lookup. The color/grey scale information can be used to provide the actual information. For example, the digits represented by the grey scales or colors can be concatenated to form the overall information. Scanning the code gives the bar code information; while looking at the detailed information gives the enhanced information.

Any of these enhanced information codes can be used with the dual information code described above.

Other embodiments are contemplated.

Patent Citations
Cited PatentFiling datePublication dateApplicantTitle
US3790756 *Nov 8, 1972Feb 5, 1974Fmc CorpBar code reading circuitry
US3906203 *Sep 20, 1973Sep 16, 1975Monarch Marking Systems IncData retrieval and error detection circuitry for a width-modulated bar-code scanning apparatus
US4180204 *Nov 8, 1978Dec 25, 1979The J. C. Penney Corporation, Inc.Automatic inventorying system
US4408344 *Apr 9, 1981Oct 4, 1983Recognition Equipment IncorporatedOCR and Bar code reader using multi port matrix array
US4578572 *Jun 17, 1983Mar 25, 1986Data Information Management Systems, Inc.Modular microprocessor-based system for printing and reading a personal identifier code on a form
US4680457 *Mar 7, 1985Jul 14, 1987Telesis Controls CorporationCode reader
US4716438 *Nov 17, 1986Dec 29, 1987Xerox CorporationHigh speed electronic reprographic/printing machine
US4742521 *Sep 4, 1987May 3, 1988Tokyo Electric Co., Ltd.Bar cord information input confirming method
US4766300 *Feb 7, 1986Aug 23, 1988Norand CorporationInstant portable bar code reader
US5008519 *Nov 16, 1988Apr 16, 1991Cunningham William RFoolproof coupon redemption system
US5086215 *Oct 26, 1988Feb 4, 1992National Computer Systems, Inc.Method and apparatus for discriminating or locating bar codes for an optical mark reader
US5176224Sep 28, 1989Jan 5, 1993Donald SpectorComputer-controlled system including a printer-dispenser for merchandise coupons
US5235167 *Jun 14, 1991Aug 10, 1993Symbol Technologies, Inc.Laser scanning system and scanning method for reading bar codes
US5245167 *Jul 2, 1991Sep 14, 1993Sumitomo Electric Industries, Ltd.Bar-code reading apparatus
US5324924 *May 11, 1992Jun 28, 1994Symbol Technologies, Inc.Bar code decoder with changeable working ranges
US5361871Aug 20, 1991Nov 8, 1994Digicomp Research CorporationProduct information system for shoppers
US5393968 *Aug 27, 1993Feb 28, 1995Fujitsu LimitedMethod and device for reading bar code
US5506411 *Dec 29, 1993Apr 9, 1996Opticon, Inc.Optical reader with improved response to change in reflected signal
US5550366 *Jun 20, 1994Aug 27, 1996Roustaei; AlexanderOptical scanner with automatic activation
US5576528Dec 23, 1994Nov 19, 1996Symbol Technologies, Inc.Color processing for bar code symbol compaction
US5581066 *Jun 20, 1995Dec 3, 1996Fujitsu LimitedMultiple-row bar code reading apparatus
US5585616May 5, 1995Dec 17, 1996Rockwell International CorporationCamera for capturing and decoding machine-readable matrix symbol images applied to reflective surfaces
US5617528 *Feb 6, 1995Apr 1, 1997Datacard CorporationMethod and apparatus for interactively creating a card which includes video and cardholder information
US5635699 *Aug 25, 1995Jun 3, 1997Spectra-Physics Scanning Systems, Inc.For reading a symbol having lighter and darker regions
US5767498 *Sep 17, 1996Jun 16, 1998Ncr CorporationBar code error scanner
US5905251 *Jul 11, 1997May 18, 1999Metrologic Instruments, Inc.Hand-held portable WWW access terminal with visual display panel and GUI-based WWW browser program integrated with bar code symbol reader in a hand-supportable housing
US5914477Jun 26, 1996Jun 22, 1999Ncr CorporationLine focus barcode scanner
US6032858 *May 29, 1997Mar 7, 2000Hitachi, Ltd.Electronic money storing apparatus and IC card control method
US6070805Apr 8, 1998Jun 6, 2000Zebra Technologies CorporationDistortion resistant double-data correcting color transition barcode and method of generating and using same
US6102289 *Jun 28, 1996Aug 15, 2000Intermec Ip Corp.1D finder pattern for 2D bar codes
US6446871Jun 17, 1999Sep 10, 2002A.T. Cross CompanyMethod and apparatus for storing reference codes in a writing instrument and for retrieving information identifed by the reference codes
US6483570 *Aug 17, 2000Nov 19, 2002Eastman Kodak CompanyImage processing
US6527181 *Mar 2, 2000Mar 4, 2003Bruker Analytik GmbhDevice and method for characterizing and identifying an object
US6536670Mar 15, 2000Mar 25, 2003Psc Scanning, Inc.PCMCIA interface card for coupling input devices such as barcode scanning engines to personal digital assistants and palmtop computers
US6550672 *Nov 4, 1999Apr 22, 2003Symbol Technologies, Inc.Method and system for presenting item information using a portable data terminal
US6622917Feb 18, 2000Sep 23, 2003Metrologic Instruments, Inc.System and method for composing sets of URL-encoded bar code symbols while using an internet browser program
US6631843Feb 20, 2001Oct 14, 2003Symbol Technologies, Inc.Composite code symbology
US6688523Nov 23, 1998Feb 10, 2004Intermec Ip Corp.System for reading optical indicia
US7207481 *Apr 22, 2004Apr 24, 2007Secure Symbology, Inc.Method for improving security and enhancing information storage capability, the system and apparatus for producing the method, and products produced by the system and apparatus using the method
US7251048 *Mar 25, 2002Jul 31, 2007Hewlett-Packard Development Company L.P.Recording images together with link information
US20010030234 *Feb 16, 2001Oct 18, 2001Wiklof Christopher A.Method and apparatus for accessing product information using bar code data
US20010045461 *Feb 20, 2001Nov 29, 2001Frederick SchuesslerComposite code symbology
US20010054082 *Mar 15, 2001Dec 20, 2001Rudolph Richard F.Controlled remote product internet access and distribution
US20020000468 *Apr 19, 1999Jan 3, 2002Pradeep K. BansalSystem and method for scanning & storing universal resource locator codes
US20020020747 *Apr 6, 2001Feb 21, 2002Hitomi WakamiyaMethod of and apparatus for reading a two-dimensional bar code symbol and data storage medium
US20020023955 *Nov 29, 1999Feb 28, 2002Leonard FrankElectronic delivery of admission tickets direct to a purchaser
US20020023959 *Feb 14, 2001Feb 28, 2002Miller Michael R.Multipurpose bar code scanner
US20020047867Sep 7, 2001Apr 25, 2002Mault James RImage based diet logging
US20020050526Jan 19, 2000May 2, 2002Jerome SwartzPortable shopping and order fulfillment system
US20020102966Nov 6, 2001Aug 1, 2002Lev Tsvi H.Object identification method for portable devices
US20020185537 *May 2, 2002Dec 12, 2002Media Portal Japan Co., Ltd.Bar code reader for accessing plural servers and bar code based method for accessing plural servers
US20020185540 *May 20, 2002Dec 12, 2002Hideki HashimotoSetting bar code of optical information reader, method for generating the same, method for changing setting of optical information reader and computer-readable medium
US20030034399 *Apr 17, 2002Feb 20, 2003Metrologic Instruments, Inc.Method of and system for enabling a viewer to access and display HTML-encoded documents located on the world-wide web(WWW) by reading network address-encoded bar code symbols
US20030080191 *Jul 29, 2002May 1, 2003Allen LubowMethod and apparatus for applying bar code information to products during production
US20030131254 *Jan 4, 2002Jul 10, 2003Norbert MillerMethod for preventing the falsification of access cards
US20050040230Oct 4, 2004Feb 24, 2005Symbol Technologies, IncConsumer interactive shopping system
US20050061878 *Apr 22, 2004Mar 24, 2005Ronald BarenburgMethod for improving security and enhancing information storage capability, the system and apparatus for producing the method, and products produced by the system and apparatus using the method
US20050109846 *Aug 20, 2004May 26, 2005Allen LubowSystem and method for generating a combined bar code image
US20050178837 *Jan 18, 2005Aug 18, 2005Yoichi HineSystem, method, and program for generating barcode data
US20050198095Dec 31, 2003Sep 8, 2005Kavin DuSystem and method for obtaining information relating to an item of commerce using a portable imaging device
US20050199724 *Mar 1, 2005Sep 15, 2005Allen LubowDiffractive optical variable image including barcode
US20050246237 *Jan 29, 2004Nov 3, 2005Hudetz Frank CSystem and method for automatic access of a remote computer over a network
US20050289022 *Sep 19, 2003Dec 29, 2005Koichi IidaPart ordering amount calculation device
US20060004626 *Oct 31, 2002Jan 5, 2006Eric HolmenTargeted marketing for subscriptions
US20060118631 *Oct 25, 2002Jun 8, 2006Allen LubowMethod and apparatus for applying bar code information to products during production
US20070145142 *Feb 21, 2007Jun 28, 2007International Barcode CorporationMethod and apparatus for applying bar code information to products during production
US20080011843 *Jul 24, 2007Jan 17, 2008Ronald BarenburgMethod for improving security and enhancing information storage capability, the system and apparatus for producing the method, and products produced by the system and apparatus using the method
JPH03192523A Title not available
JPH07244652A Title not available
JPH10309860A Title not available
JPS55102083A Title not available
JPS61217887A Title not available
Non-Patent Citations
Reference
1"A white Paper on Two Dimensional Symbols", CSPI 1996.
2"Guide to Bar Coding with UPS . . . " undated.
3"Packaging-Bar code and two-dimensional symbols for shipping, transport and receiving labels", ISO 15394, 2000.
4"QED systems in review" Aug. 1999.
5"Reading Between the Lines" by Craig Harmon, 1997.
6"UPS Guide to Barcoding", undated.
7"Packaging—Bar code and two-dimensional symbols for shipping, transport and receiving labels", ISO 15394, 2000.
8AIM-ITS/99-002, Oct. 1999.
9AIM—ITS/99-002, Oct. 1999.
10AIM-ITS/99-003, Oct. 1999.
11AIM—ITS/99-003, Oct. 1999.
12ANSI MH10.8.3M-1996.
13Automatic Data Capture (ADC) 2D Code applications at Siemens AG, Nov. 1998.
14Codes Don't Sweat the Small Stuff, Oct. 1998.
15Database Disclosure, 1999.
16Declaration of Scott Harris, from Illinois Computer Research, LLC v Fish & Richardson, PC, 2007.
17Exhibit A, Judgment, Appeal from the United States District Court for the Eastern District of Texas in Case No. 07-CV-0385, Feb. 22, 2011, pp. 1-3.
18File of Reexamination control No. 95/000,423, 2008-present.
19Getting Great Mileage from Automatic Data Collection, Material Handling Engineering (May 1995).
20How ISO develops standards, Jun. 1, 2009.
21ISO TC 122, Jun. 1, 2009.
22Markman Construction, Apr. 22, 2009.
23Order of Invalidity in parent application 6666377, Feb. 19, 2010.
24P. Mathans, B. Stamp, and C. Harmon, A White Paper on Two Dimensional Symbols: Because you need information on the fly and on the spot, Vision Systems (1996).
25Reexam. Control No. 95/000,423, Update on Concurrent Litigation Under 37 CFR 1.985(b), Mar. 1, 2010, pp. 1-3.
26RPS Multicode Bar Code Label Guide, Undated.
27RPS's Multicode(SM) Gives Shippers More Information Options; Symbol Technologies LS 4800 Scanners Will Transform RPS into ‘Data Warehouse,’ Business Wire (Oct. 18, 1995).
28RPS's Multicode(SM) Gives Shippers More Information Options; Symbol Technologies LS 4800 Scanners Will Transform RPS into 'Data Warehouse,' Business Wire (Oct. 18, 1995).
29Stages of Developments of International Standards, Jun. 10, 2009.
30Symbol Technologies PDF417 Selected by Defense Department as 2D Symbology for Global ID card, Nov. 1994.
31The Portable Database Debate, Nov. 1990.
32Various Court firings for Bartex Research, LLC, v. Fedex Corporation, Fedex Express Corporation, Fedex Ground Package System, Inc., and Fedex Kinko's Office and Print Services, Inc. Civil Action No. 6:07-cv-00385 LED, Eastern District of Texas, Tyler Division, 2007-2008.
33Warehouse Management Systems: Configurability for Optimization, Oct. 1996.
34www.hallogram.com/barcodes/others.html, dated Nov. 21, 2006.
35www.iidautomation.com/ccdreaders, dated Nov. 21, 2006.
Classifications
U.S. Classification235/462.01, 235/435, 235/494, 235/375, 235/462.07, 235/487, 235/454
International ClassificationG06K7/14, G06K7/00, G08C21/00, G06K7/10, G06K19/06, G06F17/00
Cooperative ClassificationG06K19/06037, G06K7/1417, G06K19/06112, G06K19/06028, G06K19/06056, G06F17/30002
European ClassificationG06K19/06C1B, G06K19/06C3, G06K19/06C5A
Legal Events
DateCodeEventDescription
Mar 10, 2014ASAssignment
Owner name: CUTTING EDGE CODES LLC, TEXAS
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:HARRIS, SCOTT C.;REEL/FRAME:032397/0834
Effective date: 20140310