Internet-linking scanner
First Claim
1. In a scanner including a CPU, a memory, a linear sensor array, and first and second spaced-apart 2D sensor arrays serving as motion encoders, the CPU serving to process raw scan data collected by the linear sensor array from an imaged object into signal scan data in accordance with scanner motion data provided from said 2D sensors, an improvement comprising software instructions in the memory causing the scanner to discern a machine-readable identifier from scan data acquired from the object, wherein said software instructions cause the CPU to process data from the 2D sensor arrays for a purpose in addition to sensing scanner motion, wherein said additional purpose includes beginning a watermark detection process before data from the linear sensor array is finally processed.
6 Assignments
0 Petitions
Accused Products
Abstract
A scanner is programmed to extract a machine-readable identifier (e.g., encoded in watermark or barcode form) from an object, and transmit same to a remote computer (e.g., over the Internet). The remote computer responds with supplemental information or e-commerce opportunities relating to the scanned object. This information may be presented on an LCD display built-in to the scanner. In some embodiments, auxiliary CCD sensors are provided in addition to the scanner'"'"'s usual image sensor. These auxiliary sensors can be employed for various purposes, including identifying surface texture characteristics so that corresponding filtering/processing of scan data can be performed; detecting affine transformations of the object being imaged so appropriate compensations can be applied, etc., etc.
195 Citations
13 Claims
- 1. In a scanner including a CPU, a memory, a linear sensor array, and first and second spaced-apart 2D sensor arrays serving as motion encoders, the CPU serving to process raw scan data collected by the linear sensor array from an imaged object into signal scan data in accordance with scanner motion data provided from said 2D sensors, an improvement comprising software instructions in the memory causing the scanner to discern a machine-readable identifier from scan data acquired from the object, wherein said software instructions cause the CPU to process data from the 2D sensor arrays for a purpose in addition to sensing scanner motion, wherein said additional purpose includes beginning a watermark detection process before data from the linear sensor array is finally processed.
-
3. In a scanner including a CPU, a memory, a linear sensor array, and first and second spaced-apart 2D sensor arrays serving as motion encoders, the CPU serving to process raw scan data collected by the linear sensor array from an imaged object into signal scan data in accordance with scanner motion data provided from said 2D sensors, an improvement comprising software instructions in the memory causing the scanner to discern a machine-readable identifier from scan data acquired from the object, wherein said software instructions cause the CPU to process data from the 2D sensor arrays for a purpose in addition to sensing scanner motion, wherein said additional purpose includes identifying portions of the data collected by the linear sensor array that are relatively more likely to include detectable identifier data.
-
4. In a scanner including a CPU, a memory, a linear sensor array, and first and second spaced-apart 2D sensor arrays serving as motion encoders, the CPU serving to process raw scan data collected by the linear sensor array from an imaged object into signal scan data in accordance with scanner motion data provided from said 2D sensors, an improvement comprising software instructions in the memory causing the scanner to discern a machine-readable identifier from scan data acquired from the object, wherein said software instructions cause the CPU to process data from the 2D sensor arrays for a purpose in addition to sensing scanner motion, wherein said additional purpose includes quantifying an object surface characteristic, wherein a filter can be applied to said scan data in accordance therewith.
-
5. In a scanner including a CPU, a memory, a linear sensor array, and first and second spaced-apart 2D sensor arrays serving as motion encoders, the CPU serving to process raw scan data collected by the linear sensor array from an imaged object into signal scan data in accordance with scanner motion data provided from said 2D sensors, an improvement comprising software instructions in the memory causing the scanner to discern a machine-readable identifier from scan data acquired from the object, wherein said software instructions cause the CPU to process data from the 2D sensor arrays for a purpose in addition to sensing scanner motion, wherein said additional purpose includes assessing relative distance to the object from different portions of the scanner.
-
6. In a scanner including a CPU, a memory, a linear sensor array, and first and second spaced-apart 2D sensor arrays serving as motion encoders, the CPU serving to process raw scan data collected by the linear sensor array from an imaged object into signal scan data in accordance with scanner motion data provided from said 2D sensors, an improvement comprising software instructions in the memory causing the scanner to discern a machine-readable identifier from scan data acquired from the object, wherein said software instructions cause the CPU to process data from the 2D sensor arrays for a purpose in addition to sensing scanner motion, wherein said additional purpose includes quantifying an affine distortion in the scan data, so that compensation may be applied therefor.
-
7. In an apparatus comprising a multi-element sensor array, a memory, a CPU, and a visual output device, the apparatus producing sensor data from signals provided from the sensor array, the memory including program instructions causing the CPU to control the visual output device, at least in part, in accordance with information decoded from the sensor data, an improvement wherein the program instructions further cause the CPU to examine said sensor data for the presence of a calibration signal by which information about the scale or rotation of steganographic watermark data can be determined.
-
8. In an apparatus comprising a multi-element sensor array, a memory, a CPU, and a visual output device, the apparatus producing sensor data from signals provided from the sensor array, the memory including program instructions causing the CPU to control the visual output device, at least in part, in accordance with information decoded from the sensor data, an improvement wherein the program instructions further cause the CPU to:
-
employ a first technique to examine said sensor data for attribute information useful in guiding possible subsequent decoding of the sensor data to discern plural-bit steganographic watermark information therefrom, said attribute information comprising physical texture information; and employ a second technique to attempt to decode plural-bits of steganographic watermark information from said sensor data, said second technique being determined at least in part by said attribute information.
-
-
9. In an apparatus comprising a multi-element sensor array, a memory, a CPU, and a visual output device, the apparatus producing sensor data from signals provided from the sensor array, the memory including program instructions causing the CPU to control the visual output device, at least in part, in accordance with information decoded from the sensor data, an improvement wherein the program instructions further cause the CPU to:
employ a first technique to identify one or more portions of said sensor data that appear most promising for decoding steganographic watermark data therefrom, wherein said first technique comprises identifying a portion of said sensor data that is sampled at a higher sampling rate than other portions.
-
10. In an apparatus comprising a multi-element sensor array, a memory, a CPU, and a visual output device, the apparatus producing sensor data from signals provided from the sensor array, the memory including program instructions causing the CPU to control the visual output device, at least in part, in accordance with information decoded from the sensor data, an improvement wherein:
the apparatus comprises two spaced-apart multi-element sensor arrays, operating simultaneously rather than alternately; and
said program instructions cause said CPU to exploit, in a binocular fashion, the different views of an object being sensed to improve the decoding of information from said sensor data.
-
11. In an apparatus comprising a multi-element sensor array, a memory, a CPU, and a visual output device, the apparatus producing sensor data from signals provided from the sensor array, the memory including program instructions causing the CPU to control the visual output device, at least in part, in accordance with information decoded from the sensor data, an improvement wherein:
-
the apparatus comprises two spaced-apart multi-element sensor arrays; and
said program instructions cause said CPU to exploit the different views of an opbject being sensed to improve the decoding of information from said sensor data;wherein said program instructions cause the CPU to determine an optically-sensed attribute corresponding to each of the spaced-apart multi-element sensor arrays, and to use said attribute in determining a compensation to be applied to said sensor data prior to decoding of the information therefrom.
-
-
12. In an apparatus comprising a multi-element sensor array, a memory, a CPU, and a visual output device, the apparatus producing sensor data from signals provided from the sensor array, the memory including program instructions causing the CPU to control the visual output device, at least in part, in accordance with information decoded from the sensor data, an improvement wherein:
-
the apparatus comprises two spaced-apart multi-element sensor arrays; and said program instructions cause said CPU to exploit the different views of an opbject being sensed to improve the decoding of information from said sensor data; wherein said program instructions cause the CPU to attempt to decode plural-bit steganographic watermark information from said sensor data, exploiting said different views. - View Dependent Claims (13)
-
Specification