A bar code may encode data that is related to an item. A bar code reader optically reads the bar code to generate image data. The bar code reader then processes the image data to decode the data related to the item. For example, a bar code that is attached to a product may encode a product identification, and the bar code reader reads and decodes the bar code to display the product identification.
In addition, a picture may be processed to derive data that uniquely identifies an item in the picture. For example, a camera takes a first picture of a person's face, and a processing system processes the first picture to derive unique data from the facial features. Subsequently, another camera takes a second picture of the person's face, and another processing system processes the second picture to derive the same unique data. In some applications, the two data sets are compared verify the identity of the person.
Overview
A wireless communication device optically receives and processes a bar code and a background item to the barcode to generate image data. A processing system processes the image data to identify a bar code portion of the image data and to identify a background portion of the image data. The processing system processes the barcode portion of the image data to generate decoded data. The processing system processes the background portion of the image data to generate background data. The processing system processes the decoded data and the background data to determine if the bar code is valid. The wireless communication device generates a bar code valid signal if the bar code is valid and generates a bar code invalid signal if the bar code is invalid.
In some examples, the processing system is integrated within the wireless communication device. In other examples, the processing system is remote from the wireless communication device. The processing system may be distributed among local and remote processing devices.
In the remote scenario, a wireless communication device optically receives and processes a bar code and a background item to the barcode to generate image data. The wireless communication device wirelessly transfers the image data to a communication system and a processing system receives the image data from the communication system. The processing system processes the image data to identify a bar code portion of the image data and to identify a background portion of the image data. The processing system processes the barcode portion of the image data to generate decoded data. The processing system processes the background portion of the image data to generate background data. The processing system processes the decoded data and the background data to determine if the bar code is valid. If the bar code is valid, the processing system transfers a bar code valid message to the communication system, and the wireless communication device wirelessly receives the bar code valid message from the communication system. The wireless communication device generates a bar code valid signal in response to the bar code valid message. If the bar code is invalid, the processing system transfers a bar code invalid message to the communication system, and the wireless communication device wirelessly receives the bar code invalid message from the communication system. The wireless communication device generates a bar code invalid signal in response to the bar code invalid message.
Bar code 101 is attached or otherwise associated with background item 102. Bar code 101 could be a two-dimensional code. Examples of background item 102 include persons, products, video displays, structures, or scenery, although there are many other examples. Examples of products include televisions, computers, automobiles, business machines, appliances, and video game consoles, although there are many other examples. In some examples, bar code 101 is on imprinted an identity card that is carried by a person (background item 102), and the bar code indicates the persons identity and possibly other information, such as a security access level. In some examples, bar code 101 is on imprinted an tag attached to a product (background item 102), and the bar code indicates the product's identity and possibly other information, such as the product's cost.
Wireless communication device 103 comprises a telephone, transceiver, computer, digital assistant, Internet appliance, or some other wireless communication apparatus—including combinations thereof. Wireless communication device 103 has a camera or some other optical receiver. Wireless communication device 103 optically receives and processes bar code 101 and at least a portion of background item 102 to generate image data. For example, wireless communication device 103 may take a picture of bar code 101 and item 102, take a picture of bar code 101 and take a picture of item 102, collect video of bar code 101 and item 102, or perform some other form of optical reception.
The image data comprises an electrical representation of bar code 101 and the portion of background item 102. Wireless communication device 103 includes a user interface to indicate whether or not the bar code is valid. For example, wireless communication device 103 may display the words valid or invalid, display the colors green (valid) or red (invalid), generate the sounds beep (valid) or buzz (invalid), or provide some other validation signal. Wireless communication device 103 also includes a communication interface for wireless communication over communication system 104 and wireless link 111.
Communication system 104 comprises wireless access points, telephony switches, internet routers, network gateways, computer systems, communication links, or some other type of communication equipment—including combinations thereof. Wireless link 111 uses the air (or space) as the transport media. Wireless link 111 could use various protocols, such as wireless fidelity, code division multiple access, worldwide interoperability for microwave access, internet, telephony, or some other communication format—including combinations thereof. Communication link 112 uses various communication media, such as air, metal, optical fiber, or some other signal propagation path—including combinations thereof. Communication link 112 uses various protocols, such as internet, telephony, optical networking, wireless communication, wireless fidelity, code division multiple access, worldwide interoperability for microwave access, or some other communication format—including combinations thereof. Links 111-112 could be direct links or they might include various intermediate components, systems, and networks.
Processing system 105 comprises a computer system, such as a server and a database. Processing system 105 includes a communication interface for communication over communication system 104 and link 112. Processing system 105 stores (or has access to) validation files. The validation files associate specific decoded bar code data with specific background data. The decoded bar code data may indicate product identifications, person names, or some other information encoded into bar codes. The background data comprises identifying data that is derived from processing an image, such as a picture of a license plate or a human face.
Processing system 105 is configured to separate the image data into a bar code portion and a background portion. This separation could be accomplished by first identifying and removing the bar code portion from the overall image data and then treating the remainder of the image data as the background portion. The background portion may be further processed to isolate a particular background section, such as a person's face or a license plate number. Other image data separation techniques could be used.
Processing system 105 is configured to process the bar code portion of the image data to generate decoded bar code data. Processing system 105 is configured to process the background portion of the image data to generate background data. Processing system 105 is configured to process the decoded bar code data and the background data against the validation files to determine if the decoded bar code data is associated with the background data. If they are associated, then the bar code is valid, but if they are not associated, then the bar code is invalid.
For example, processing system 105 might decode a bar code into a Personal Identification Number (PIN) and process an image of a person's face to generate background data from the facial features of the person. Processing system 105 would then access the validation files with the PIN to retrieve identifying data from a previous picture of the person's face. Processing system 105 would compare the background data for the person's face with the identifying data for the PIN. If the background data adequately matches the identifying data from the validation files, then the bar code is valid.
Processing system 105 processes the image data to identify a bar code portion of the image data and to identify a background portion of the image data (202). Processing system 105 processes the barcode portion of the image data to generate decoded bar code data (202). Processing system 105 processes the background portion of the image data to generate background data (202). Processing system 105 processes the decoded bar code data and the background data to determine if the bar code is valid (202).
If the bar code is valid (203), processing system 105 transfers a bar code valid message to communication system 104 (204). Wireless communication device 103 wirelessly receives the bar code valid message from communication system 104 (205). Wireless communication device 103 generates a bar code valid signal in response to the bar code valid message (205). If the bar code is invalid (203), processing system 105 transfers a bar code invalid message to communication system 104 (206). Wireless communication device 103 wirelessly receives the bar code invalid message from communication system 104 (207). Wireless communication device 103 generates a bar code valid signal in response to the bar code valid message (207). The operational sequence ends.
Wireless communication interface 301 comprises components that communicate over a wireless link under the control of processing system 303. Wireless communication interface 301 comprises a wireless transceiver and antenna or some other wireless communication device. User interface 302 comprises components that interact with the user under the control of processing system 303. User interface 302 may include a speaker, microphone, buttons, lights, display screen, touch screen, touch pad, scroll wheel, or some other user input/output apparatus. Circuitry 305 comprises microprocessor and other circuitry that retrieves and executes operating software 307 from storage device 306 to control wireless communication interface 301, user interface 302, and camera 304. Storage device 306 comprises a disk drive, flash drive, memory circuitry, or some other memory device.
Operating software 307 comprises computer programs, firmware, or some other form of machine-readable processing instructions. Operating software 307 may include an operating system, utilities, drivers, network interfaces, applications, or some other type of software. When executed by circuitry 305, operating software 307 directs processing system 303 to operate wireless communication device 103 as described herein. In particular, operating software 307 directs processing system 303 to perform image data processing as described above for processing system 105.
Camera 304 is configured to optically receive images of bar codes and their background items and transfer the received images to processing system 403. Camera 304 operates in response to instructions from processing system 303. For example, the user may provide camera instructions through user interface 302, and in response, processing system 303 would direct camera to optically receive a bar code and its background item. Camera 304 could be a wireless telephone camera or some other optical receiver.
Processing system 303 processes the decoded bar code data and the background data to determine if the bar code is valid (405). To determine validation, wireless communication device 300 either stores or has access to validation files that associate specific decoded bar code data with specific background data. If the decoded bar code data is associated with the background data, then the bar code is valid (406), and processing system 303 directs user interface 302 to generate a bar code valid signal (407). If the decoded bar code data is not associated with the background data, then the bar code is invalid (406), and processing system 303 directs user interface 302 to generate a bar code invalid signal (408). The operational sequence ends.
Note that in the first operational sequence (
The image data is processed remotely or in wireless telephone 500 to determine if bar code 511 is valid. Bar code 511 is valid if the decoded bar code data is associated with the background data for license plate 512. The decoded bar code data could indicate a license plate number. The background data could be the number XYZ 123 from the license plate. In this case, someone has stolen bar code 511 from another car and placed it on license plate 512, so the decoded bar code data having the other person's license plate number does not match the background data of XYZ 123. Thus, bar code 511 is not associated with the number XYZ 123, and bar code 511 is invalid. In response, display 505 indicates that bar code 511 is invalid.
The image data is processed remotely or in wireless telephone 600 to determine if bar code 611 is valid. Bar code 611 is valid if the decoded bar code data is associated with the background data for television product 612. The decoded bar code data could indicate a product number and price. The background data could be identifying data derived from the size, color, and other features of television product 612. In this case, someone has stolen bar code 611 from a cheaper television and placed it on television product 612, so the decoded bar code data having the other television's product number and price is not associated with the identifying data derived from the image of the more expensive television. Thus, bar code 611 is not associated with the background data, and bar code 611 is invalid. In response, display 605 indicates that bar code 611 is invalid.
If desired, bar code 611 and the validation file could indicate the price of television product 612. The validation of bar code 611 would then entail verifying that the price indicated by bar code 611 is the same as the price associated with the background data for television product 612 in the validation file.
The image data is processed remotely or in wireless telephone 700 to determine if bar code 711 is valid. Bar code 711 is valid if the decoded bar code data is associated with the background data for the face of person 712. In this case, the decoded bar code data is the PIN for person 712. The PIN is associated with identifying data derived from a previous picture of the face of person 712. Since the identifying data retrieved with the PIN adequately matches the background data for the face of person 712, bar code 711 is valid. In response, display 705 indicates that bar code 711 on the ID card for person 712 is valid.
Although the examples described above for
The above description and associated figures teach the best mode of the invention. The following claims specify the scope of the invention. Note that some aspects of the best mode may not fall within the scope of the invention as specified by the claims. Those skilled in the art will appreciate that the features described above can be combined in various ways to form multiple variations of the invention. As a result, the invention is not limited to the specific embodiments described above, but only by the following claims and their equivalents.
Number | Name | Date | Kind |
---|---|---|---|
6203069 | Outwater et al. | Mar 2001 | B1 |
6264106 | Bridgelall | Jul 2001 | B1 |
6513017 | Howard et al. | Jan 2003 | B1 |
6816075 | Grunes et al. | Nov 2004 | B2 |
6947571 | Rhoads et al. | Sep 2005 | B1 |
6961555 | Philyaw | Nov 2005 | B1 |
6993573 | Hunter | Jan 2006 | B2 |
7068170 | Green | Jun 2006 | B2 |
7121469 | Dorai et al. | Oct 2006 | B2 |
7181066 | Wagman et al. | Feb 2007 | B1 |
7190835 | Durbin et al. | Mar 2007 | B2 |
7222791 | Heilper et al. | May 2007 | B2 |
7274931 | Harris | Sep 2007 | B2 |
7523866 | Longacre et al. | Apr 2009 | B2 |
7634065 | Fukunaga et al. | Dec 2009 | B2 |
20010056359 | Abreu | Dec 2001 | A1 |
20020052211 | Kim et al. | May 2002 | A1 |
20020078363 | Hill et al. | Jun 2002 | A1 |
20030156032 | Adams et al. | Aug 2003 | A1 |
20030229678 | Wen et al. | Dec 2003 | A1 |
20030233432 | Davis et al. | Dec 2003 | A1 |
20040145613 | Stavely et al. | Jul 2004 | A1 |
20040153553 | Chotkowski et al. | Aug 2004 | A1 |
20050011957 | Attia et al. | Jan 2005 | A1 |
20050029354 | Frantz et al. | Feb 2005 | A1 |
20050044179 | Hunter | Feb 2005 | A1 |
20050080681 | Ohnishi | Apr 2005 | A1 |
20050173524 | Schrader | Aug 2005 | A1 |
20060002591 | Hombo | Jan 2006 | A1 |
20060020614 | Kolawa et al. | Jan 2006 | A1 |
20060026048 | Kolawa et al. | Feb 2006 | A1 |
20060042139 | Mendes | Mar 2006 | A1 |
20060100925 | Finaly | May 2006 | A1 |
20060212938 | Suzuki | Sep 2006 | A1 |
20070061242 | Ramer et al. | Mar 2007 | A1 |
20070061243 | Ramer et al. | Mar 2007 | A1 |
20070061303 | Ramer et al. | Mar 2007 | A1 |
20070083381 | Farrell et al. | Apr 2007 | A1 |
20070133567 | West et al. | Jun 2007 | A1 |
20070150588 | Ghadialy et al. | Jun 2007 | A1 |
20070290045 | Cisar | Dec 2007 | A1 |
20070290499 | Tame | Dec 2007 | A1 |
20090086045 | Giebel et al. | Apr 2009 | A1 |
20100041968 | Meschisen et al. | Feb 2010 | A1 |
Number | Date | Country |
---|---|---|
0645728 | Mar 1995 | EP |
2008090512 | Apr 2008 | JP |
WO-2006107610 | Oct 2006 | WO |