US20180292261A1 - Tag reading using targeted spatial spectral detection - Google Patents
Tag reading using targeted spatial spectral detection Download PDFInfo
- Publication number
- US20180292261A1 US20180292261A1 US16/009,545 US201816009545A US2018292261A1 US 20180292261 A1 US20180292261 A1 US 20180292261A1 US 201816009545 A US201816009545 A US 201816009545A US 2018292261 A1 US2018292261 A1 US 2018292261A1
- Authority
- US
- United States
- Prior art keywords
- interest
- region
- array
- data
- locations
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
- 230000003595 spectral effect Effects 0.000 title claims abstract description 74
- 238000001514 detection method Methods 0.000 title description 14
- 238000001228 spectrum Methods 0.000 claims abstract description 25
- 230000003287 optical effect Effects 0.000 claims description 54
- 238000000034 method Methods 0.000 claims description 17
- 238000005259 measurement Methods 0.000 claims description 12
- 230000004044 response Effects 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 4
- 238000004364 calculation method Methods 0.000 claims description 2
- 238000003384 imaging method Methods 0.000 claims 3
- 230000001131 transforming effect Effects 0.000 claims 1
- 239000013598 vector Substances 0.000 description 30
- 238000010586 diagram Methods 0.000 description 21
- 230000005540 biological transmission Effects 0.000 description 16
- 230000008569 process Effects 0.000 description 13
- 238000012545 processing Methods 0.000 description 11
- 238000001914 filtration Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 7
- 238000013519 translation Methods 0.000 description 5
- VYPSYNLAJGMNEJ-UHFFFAOYSA-N Silicium dioxide Chemical compound O=[Si]=O VYPSYNLAJGMNEJ-UHFFFAOYSA-N 0.000 description 4
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 4
- 238000003491 array Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 229910052710 silicon Inorganic materials 0.000 description 4
- 239000010703 silicon Substances 0.000 description 4
- 238000013459 approach Methods 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 239000000377 silicon dioxide Substances 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- XNLWYHMHJCXXDO-UHFFFAOYSA-N C1C2SC1C=C2 Chemical compound C1C2SC1C=C2 XNLWYHMHJCXXDO-UHFFFAOYSA-N 0.000 description 1
- 229910052581 Si3N4 Inorganic materials 0.000 description 1
- BQCADISMDOOEFD-UHFFFAOYSA-N Silver Chemical compound [Ag] BQCADISMDOOEFD-UHFFFAOYSA-N 0.000 description 1
- RTAQQCXQSZGOHL-UHFFFAOYSA-N Titanium Chemical compound [Ti] RTAQQCXQSZGOHL-UHFFFAOYSA-N 0.000 description 1
- 229910052782 aluminium Inorganic materials 0.000 description 1
- XAGFODPZIPBFFR-UHFFFAOYSA-N aluminium Chemical compound [Al] XAGFODPZIPBFFR-UHFFFAOYSA-N 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000000701 chemical imaging Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 238000005530 etching Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000005755 formation reaction Methods 0.000 description 1
- 235000021474 generally recognized As safe (food) Nutrition 0.000 description 1
- 235000021473 generally recognized as safe (food ingredients) Nutrition 0.000 description 1
- 229910052751 metal Inorganic materials 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000002086 nanomaterial Substances 0.000 description 1
- 230000003647 oxidation Effects 0.000 description 1
- 238000007254 oxidation reaction Methods 0.000 description 1
- 239000000546 pharmaceutical excipient Substances 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000002310 reflectometry Methods 0.000 description 1
- 235000012239 silicon dioxide Nutrition 0.000 description 1
- HQVNEWCFYHHQES-UHFFFAOYSA-N silicon nitride Chemical compound N12[Si]34N5[Si]62N3[Si]51N64 HQVNEWCFYHHQES-UHFFFAOYSA-N 0.000 description 1
- 229910052709 silver Inorganic materials 0.000 description 1
- 239000004332 silver Substances 0.000 description 1
- 230000000087 stabilizing effect Effects 0.000 description 1
- 230000001629 suppression Effects 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 239000004557 technical material Substances 0.000 description 1
- 239000010936 titanium Substances 0.000 description 1
- 229910052719 titanium Inorganic materials 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01J—MEASUREMENT OF INTENSITY, VELOCITY, SPECTRAL CONTENT, POLARISATION, PHASE OR PULSE CHARACTERISTICS OF INFRARED, VISIBLE OR ULTRAVIOLET LIGHT; COLORIMETRY; RADIATION PYROMETRY
- G01J3/00—Spectrometry; Spectrophotometry; Monochromators; Measuring colours
- G01J3/28—Investigating the spectrum
- G01J3/2803—Investigating the spectrum using photoelectric array detector
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01J—MEASUREMENT OF INTENSITY, VELOCITY, SPECTRAL CONTENT, POLARISATION, PHASE OR PULSE CHARACTERISTICS OF INFRARED, VISIBLE OR ULTRAVIOLET LIGHT; COLORIMETRY; RADIATION PYROMETRY
- G01J3/00—Spectrometry; Spectrophotometry; Monochromators; Measuring colours
- G01J3/12—Generating the spectrum; Monochromators
- G01J3/26—Generating the spectrum; Monochromators using multiple reflection, e.g. Fabry-Perot interferometer, variable interference filters
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01J—MEASUREMENT OF INTENSITY, VELOCITY, SPECTRAL CONTENT, POLARISATION, PHASE OR PULSE CHARACTERISTICS OF INFRARED, VISIBLE OR ULTRAVIOLET LIGHT; COLORIMETRY; RADIATION PYROMETRY
- G01J3/00—Spectrometry; Spectrophotometry; Monochromators; Measuring colours
- G01J3/28—Investigating the spectrum
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01J—MEASUREMENT OF INTENSITY, VELOCITY, SPECTRAL CONTENT, POLARISATION, PHASE OR PULSE CHARACTERISTICS OF INFRARED, VISIBLE OR ULTRAVIOLET LIGHT; COLORIMETRY; RADIATION PYROMETRY
- G01J3/00—Spectrometry; Spectrophotometry; Monochromators; Measuring colours
- G01J3/28—Investigating the spectrum
- G01J3/2823—Imaging spectrometer
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01N—INVESTIGATING OR ANALYSING MATERIALS BY DETERMINING THEIR CHEMICAL OR PHYSICAL PROPERTIES
- G01N21/00—Investigating or analysing materials by the use of optical means, i.e. using sub-millimetre waves, infrared, visible or ultraviolet light
- G01N21/17—Systems in which incident light is modified in accordance with the properties of the material investigated
- G01N21/25—Colour; Spectral properties, i.e. comparison of effect of material on the light at two or more different wavelengths or wavelength bands
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01J—MEASUREMENT OF INTENSITY, VELOCITY, SPECTRAL CONTENT, POLARISATION, PHASE OR PULSE CHARACTERISTICS OF INFRARED, VISIBLE OR ULTRAVIOLET LIGHT; COLORIMETRY; RADIATION PYROMETRY
- G01J3/00—Spectrometry; Spectrophotometry; Monochromators; Measuring colours
- G01J3/28—Investigating the spectrum
- G01J3/2803—Investigating the spectrum using photoelectric array detector
- G01J2003/2813—2D-array
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01J—MEASUREMENT OF INTENSITY, VELOCITY, SPECTRAL CONTENT, POLARISATION, PHASE OR PULSE CHARACTERISTICS OF INFRARED, VISIBLE OR ULTRAVIOLET LIGHT; COLORIMETRY; RADIATION PYROMETRY
- G01J3/00—Spectrometry; Spectrophotometry; Monochromators; Measuring colours
- G01J3/28—Investigating the spectrum
- G01J3/2823—Imaging spectrometer
- G01J2003/2826—Multispectral imaging, e.g. filter imaging
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01J—MEASUREMENT OF INTENSITY, VELOCITY, SPECTRAL CONTENT, POLARISATION, PHASE OR PULSE CHARACTERISTICS OF INFRARED, VISIBLE OR ULTRAVIOLET LIGHT; COLORIMETRY; RADIATION PYROMETRY
- G01J3/00—Spectrometry; Spectrophotometry; Monochromators; Measuring colours
- G01J3/28—Investigating the spectrum
- G01J2003/283—Investigating the spectrum computer-interfaced
- G01J2003/2833—Investigating the spectrum computer-interfaced and memorised spectra collection
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01J—MEASUREMENT OF INTENSITY, VELOCITY, SPECTRAL CONTENT, POLARISATION, PHASE OR PULSE CHARACTERISTICS OF INFRARED, VISIBLE OR ULTRAVIOLET LIGHT; COLORIMETRY; RADIATION PYROMETRY
- G01J3/00—Spectrometry; Spectrophotometry; Monochromators; Measuring colours
- G01J3/28—Investigating the spectrum
- G01J2003/283—Investigating the spectrum computer-interfaced
- G01J2003/284—Spectral construction
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01J—MEASUREMENT OF INTENSITY, VELOCITY, SPECTRAL CONTENT, POLARISATION, PHASE OR PULSE CHARACTERISTICS OF INFRARED, VISIBLE OR ULTRAVIOLET LIGHT; COLORIMETRY; RADIATION PYROMETRY
- G01J3/00—Spectrometry; Spectrophotometry; Monochromators; Measuring colours
- G01J3/28—Investigating the spectrum
- G01J2003/2859—Peak detecting in spectrum
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01J—MEASUREMENT OF INTENSITY, VELOCITY, SPECTRAL CONTENT, POLARISATION, PHASE OR PULSE CHARACTERISTICS OF INFRARED, VISIBLE OR ULTRAVIOLET LIGHT; COLORIMETRY; RADIATION PYROMETRY
- G01J3/00—Spectrometry; Spectrophotometry; Monochromators; Measuring colours
- G01J3/28—Investigating the spectrum
- G01J2003/2866—Markers; Calibrating of scan
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01J—MEASUREMENT OF INTENSITY, VELOCITY, SPECTRAL CONTENT, POLARISATION, PHASE OR PULSE CHARACTERISTICS OF INFRARED, VISIBLE OR ULTRAVIOLET LIGHT; COLORIMETRY; RADIATION PYROMETRY
- G01J3/00—Spectrometry; Spectrophotometry; Monochromators; Measuring colours
- G01J3/28—Investigating the spectrum
- G01J2003/2866—Markers; Calibrating of scan
- G01J2003/2879—Calibrating scan, e.g. Fabry Perot interferometer
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/10—Terrestrial scenes
- G06V20/194—Terrestrial scenes using hyperspectral data, i.e. more or other wavelengths than RGB
Definitions
- hyperspectral imaging is used for object detection, such as diseased crops, military targets, or geological formations. In those cases once the objects are detected, the job is done. So the number of frames in the hyperspectral cube is set at just enough to ensure that the detection job can be done. However for determining spectra, location and decoding must be achieved. So, just detection is not sufficient. Location and decoding require a much larger amount of data than detection, creating a problem where the storage and processing capabilities of the reader are challenged.
- FIG. 1 is a diagram illustrating an embodiment of an optical setup for spectral response detection.
- FIG. 2 is a diagram illustrating an embodiment of a Fabry-Perot interferometer.
- FIG. 3 is a diagram illustrating an embodiment of a spectral data cube.
- FIG. 4 is a diagram illustrating an embodiment of interferometer transmissivity.
- FIG. 5 is a diagram illustrating an embodiment of interferometer transmission peak wavelength locations.
- FIG. 6A is a diagram illustrating an embodiment of vectors in a parameter space.
- FIG. 6B is a diagram illustrating an embodiment of an angular measurement as a function of interferometer gap.
- FIG. 7 is a flow diagram illustrating an embodiment of a process for spectral reading using targeted spatial spectral detection.
- FIG. 8 is a flow diagram illustrating an embodiment of a process for determining a region of interest using a sample set of data.
- FIG. 9 is a flow diagram illustrating an embodiment of a process for determining a spectral peak for a region of interest.
- the invention can be implemented in numerous ways, including as a process; an apparatus; a system; a composition of matter; a computer program product embodied on a computer readable storage medium; and/or a processor, such as a processor configured to execute instructions stored on and/or provided by a memory coupled to the processor.
- these implementations, or any other form that the invention may take, may be referred to as techniques.
- the order of the steps of disclosed processes may be altered within the scope of the invention.
- a component such as a processor or a memory described as being configured to perform a task may be implemented as a general component that is temporarily configured to perform the task at a given time or a specific component that is manufactured to perform the task.
- the term ‘processor’ refers to one or more devices, circuits, and/or processing cores configured to process data, such as computer program instructions.
- a system for determining a spectrum comprises an interface and a processor.
- the interface is configured to receive a sample set of intensity data for an array of spatial locations and a set of spectral configurations, where each spectral configuration detects a different wavelength or combination of wavelengths of light.
- the processor is configured to determine a region of interest using the sample set of data and determine a spectral peak for the region of interest.
- both finding an object and decoding a reflected spectrum is required.
- Memory, time, and/or processing power can be saved by splitting the operations of detection and extraction/decoding.
- memory can be saved by processing frames as they appear without saving them, so that the full set of frames required for spectral detection doesn't have to be kept in memory.
- objects e.g., tags
- objects can be found by looking for local maxima in the standard deviation of received intensity values along the spectral axis.
- objects e.g., tags
- filters can be found by looking for peaks by looking for maxima after filtering input data (e.g., running a convolutional filter—for example, a matched filter with suppression in the surround).
- filtering and looking for a maxima in standard deviation are done in sequence to identify a region of interest.
- filtering and looking for peaks in two ranges of frequencies are done in sequence to identify a region of interest.
- each frame is a digitized image of a sample collected at a specific wavelength or set of wavelengths, and different frames are collected using different wavelengths or set of wavelengths.
- the sum of the frames and the sum of the square of the frames are needed. So when a frame appears, each intensity value in each location of the frame and its square are each added to an accumulator. Each frame is then overwritten by the next frame. Once all the frames are collected, a simple operation is performed on the two accumulated values (e.g., the sum and the sum of the squares) for each location in the frame to get the standard deviation of the value in that location of the frame.
- a new frame e.g., a map
- a new frame e.g., a map
- the hypercube is captured or to a subset of a hypercube.
- spectral detection is achieved using filtering along the spectral axis, assuming that the filter kernel is shorter than the full spectral axis.
- filtering a subset of frames equal to the kernel length is kept in memory at one time, rather than just the one for the standard deviation. This is what we're calling sequential processing.
- the kernel length used for this step we find the minimum number of frames sufficient to detect an object reliably by isolating a spectral feature in the filtering approach. For example, in the event that the filter kernel is tuned to couple strongly to a spectral feature with spectral width equal to 1/10 the length of the full spectral axis, the kernel length might be 1/10 the full spectral axis length.
- the targeted spectral features might be a set of strong peaks or valleys in the spectrum that serve to increase the standard deviation along the spectral axis.
- the frames in this step could be stored in memory and reused in the last step below. In that case processing power is saved by not processing the entire hyperspectral cube, and time is saved, by computing the regions of interest while capture of the hyperspectral cube is still ongoing. At the end of the sequential processing, a 2D array has been determined over the spatial axes that has a higher value where candidate objects are present, and a lower value where they are not.
- regions of interest are chosen that are likely to contain an object. For example, regions of interest may be chosen by searching the 2D array for maxima (points where all neighbors are less than the point itself). Maxima may then be sorted in descending order of value, creating a list of points, with the first in the list most likely to correspond to a tag, the second in the list the second most likely, etc. Regions of interest can then be determined by including a fixed range of points around each point in the list, with the size of the range determined from the expected size of an object. The regions of interest are then the focus for analysis.
- a full scan is run to extract spectral information with enough frames to extract the object information. But during the data collection, only the hyperspectral information in the regions of interest is saved. This greatly reduces the amount of data saved in memory. For example, in the event that the objects comprise 1% of the reader field of view, a data reduction on the order of 99% can be achieved in this manner.
- the data collected is not a computed spectrum, so further processing is necessary to obtain a spectrum from the data collected.
- the reader is based on a Fabry-Perot Interferometer in a low-finesse Fourier Transform mode, for example, then conversion from captured data to a spectrum requires a Fourier transform. If only the regions of interest are processed into spectra, the computational effort required to decode a spectrum of an object is further reduced. Once a spectrum from an object such as a tag is obtained, decoding can proceed.
- a tag comprises a reflector with selective reflection.
- the reflector comprises one or more of the following: a rugate tag, a Bragg reflector, or any other appropriate reflector.
- tags comprise one of the following materials: silicon, silicon dioxide, silicon nitride, doped silicon, or any other appropriate material.
- the unique optical signature of each tag can be read using an absolute or a relative spectral measurement device, apparatus, or system.
- tags comprise the surface of a silicon wafer that is etched to have a spectral code encoded by the etching. A thin layer from the surface of the etched wafer is removed and divided into small tags, and the resultant tags contain a complex porous nanostructure that is programmed during electrochemical synthesis to display a unique reflectivity spectrum.
- the tags are then oxidized by a high-temperature bake step to turn the crystalline, nanoporous silicon tags into amorphous, nanoporous silica.
- This bake step stabilizes the nanoporous structure against further oxidation (thus stabilizing the spectral signature) and provides for the tags to be characterized as a GRAS excipient.
- spectral configuration detects a different wavelength or combination of wavelengths of light by spectral filtering reflected light from an object before detecting the light in a detector.
- the spectral filtering comprises a Fabry-Perot filter, an interference filter, or any other appropriate spectral filter.
- the spectral filter is tunable.
- the spectral filter is a set of fixed filters that are in front of separate detectors or are mechanically swapped or optically switched in front of a fixed detector.
- the Fabry-Perot filter is mechanically tunable, electro-optically tunable (e.g., a change in index of refraction of the medium in between the partially reflecting mirrors), acousto-optically tunable, or any other appropriate filter.
- FIG. 1 is a diagram illustrating an embodiment of an optical setup for spectral response detection.
- FIG. 1 comprises measurement area 100 comprising one or more regions for producing optical spectra (e.g., region 102 ). Measurement area 100 is illuminated by light 104 . Reflected light 106 comprises light reflected by region 102 . Reflected light 106 is focused by lens 108 , passes through filter 110 , and is captured by optical detector 112 . Filter 110 comprises a filter for transmitting light at some frequencies and not at other frequencies. Optical detector 112 comprises an optical detector for detecting optical intensities.
- Spectral response detector control system 114 comprises a spectral response detector control system for interacting with optical detector 112 . Spectral response detector control system 114 provides control information to optical detector 112 (e.g., control information indicating to capture data) and receives optical intensity data from optical detector 112 .
- regions for producing optical spectra comprise optical tags (e.g., optical tags engineered to reflect light with a recognizable spectrum).
- light 104 comprises broadband light, narrowband light, filtered light, light from a light-emitting diode, laser light, or any other appropriate light.
- light 104 is incident to measurement area 100 from a single point, at a single angle, from multiple angles, or incident in any other appropriate manner.
- filter 110 comprises a tunable optical filter.
- filter 110 comprises a Fabry-Perot interferometer.
- optical detector 112 comprises an array of optical detector pixels for detecting an array of optical intensities.
- the array of optical detector pixels comprises an x axis and a y axis.
- each pixel of the array of optical detector pixels comprises a set of optical detectors, each optical detector comprising a color filter (e.g., each pixel comprises three detectors, a first detector comprising a red color filter, a second detector comprising a green color filter, and a third detector comprising a blue color filter).
- spectral response detector control system 114 interacts with filter 110 (e.g., to indicate tunable filter properties).
- spectral response detector control system 114 interacts with filter 110 to indicate a Fabry-Perot interferometer gap size.
- spectral response detector control system 114 is configured to receive a calibration data.
- the calibration data comprises a set of intensity data for an array of spatial locations and a range of spectral configurations for a monochromatic source (e.g., a set of gap sizes for a Fabry-Perot interferometer).
- FIG. 2 is a diagram illustrating an embodiment of a Fabry-Perot interferometer.
- Fabry-Perot interferometer 200 comprises filter 110 of FIG. 1 .
- Fabry-Perot interferometer 200 comprises mirror 202 and mirror 204 .
- Each of mirror 202 and mirror 204 comprises a partially reflective mirror (e.g., some light is able to pass through and some light is reflected).
- Each of mirror 202 and mirror 204 comprises a mirror silvering on one side (e.g., mirror 202 comprises a mirror silvering on its right side as shown in FIG. 2 and mirror 204 comprises a mirror silvering on its left side as shown in FIG. 2 ).
- Piezo element 206 and piezo element 208 comprise piezo elements for changing size. Piezo element 206 and piezo element 208 change size according to an applied voltage. When piezo element 206 and piezo element 208 change size, the gap between the mirror silvering of mirror 202 and the mirror silvering of mirror 208 changes. Changing the gap between the mirror silvering of mirror 202 and the mirror silvering of mirror 208 causes the optical properties (e.g., the light transmission and reflectance properties) of Fabry-Perot interferometer 200 to change. In this way, Fabry-Perot interferometer 200 comprises a tunable optical filter.
- mirror silvering comprises a partially reflective metal layer (e.g., a silver layer, an aluminum layer, a titanium layer, etc.).
- mirror 202 and mirror 204 are held together by 1, 2, 3, 4, 5, or any other appropriate number of piezo elements.
- the spatial positioning of the piezo elements separating mirror 202 and mirror 204 enable adjustment of the angle between mirror 202 and mirror 204 .
- the mirrors are separated with a fixed distance and a medium interior to the mirrors changes its index of refraction (e.g., electro- or acousto-optically) and instead of a set of gap sizes there is a set of different index-changed path lengths.
- a medium interior to the mirrors changes its index of refraction (e.g., electro- or acousto-optically) and instead of a set of gap sizes there is a set of different index-changed path lengths.
- FIG. 3 is a diagram illustrating an embodiment of a spectral data cube.
- spectral data cube 300 of FIG. 3 comprises a cube representing data measured by an optical detector (e.g., optical detector 112 of FIG. 1 ).
- Spectral data cube 300 comprises a cube of data recorded by an optical detector.
- the x axis of spectral data cube 300 corresponds to the x axis of the optical detector and the y axis of spectral data cube 300 corresponds to the y axis of the optical detector.
- the z axis of spectral data cube 300 corresponds to an interferometer gap size (e.g., the mirror gap size of a Fabry-Perot interferometer).
- the data intensity shown at a given data location indicates the intensity of the light received by the optical detector.
- the interferometer gap size comprises the gap size of Fabry-Perot interferometer 200 of FIG. 2 .
- spectral data cube 300 comprises a spectral data hypercube with one or more of the following properties: each data location comprising three light intensity measurements, each measurement taken by a separate optical detector at the given location, each optical detector associated with a different color filter, or any other appropriate properties. In some embodiments, multiple peaks associated with different interferometer gap sizes are measured at a given detector location.
- FIG. 4 is a diagram illustrating an embodiment of interferometer transmissivity.
- curve 400 of FIG. 4 illustrates the light transmissivity of a Fabry-Perot interferometer (e.g., Fabry-Perot interferometer 200 of FIG. 2 ) vs. light wavelength.
- curve 400 of FIG. 4 illustrates the light transmissivity of a Fabry-Perot interferometer vs. light wavelength for a given gap size. Multiple light transmission peaks are seen for the given gap size. Three light transmission peaks are seen in curve 400 .
- two light transmission peaks are seen as a function of gap size, three light transmission peaks are seen as a function of gap size, four light transmission peaks are seen as a function of gap size, or any other appropriate number of light transmission peaks are seen as a function of gap size.
- FIG. 5 is a diagram illustrating an embodiment of interferometer transmission peak wavelength locations.
- set of curves 500 illustrates a set of transmission peak locations for a Fabry-Perot interferometer (e.g., Fabry-Perot interferometer 200 of FIG. 2 ).
- set of curves 500 illustrates the location of each of a set of interferometer transmission peak locations as the interferometer gap of the Fabry-Perot interferometer is changed.
- set of curves 500 comprises 4 curves. For a given gap size (e.g., gap size g i ), there are a set of transmission peaks at different wavelengths (e.g., as shown by curve 400 of FIG. 4 ).
- FIG. 6A is a diagram illustrating an embodiment of vectors in a parameter space.
- the vectors of FIG. 6A are two dimensional representations of intensity vectors (e.g., vectors comprising a first color intensity in a first direction as measured by a first color detector and a second color intensity in a second direction as measured by second color detector).
- a vector is calculated and displayed in a three dimensional space (e.g., the three dimensions correspond to three color detectors).
- vectors ⁇ 1 and ⁇ 2 comprise calibration vectors for a Fabry-Perot interferometer (e.g., Fabry-Perot interferometer 200 of FIG. 2 ).
- a set of calibration vectors is associated with each gap size of the Fabry-Perot interferometer.
- Each calibration vector of the set of calibration vectors is associated with a transmission peak associated with the gap size.
- Determining a calibration vector comprises illuminating the Fabry-Perot interferometer with monochromatic light of the transmission peak wavelength and recording the intensity measured by each optical detector of a set of optical detectors forming a pixel (e.g., each optical detector associated with a different color filter).
- Each optical detector is associated with an axis of the parameter space.
- Measured intensity vector 600 comprises a vector associated with an optical measurement.
- measured intensity vector 600 comprises a representation of data at one point within data cube 300 of FIG. 3 .
- Angles ⁇ 1 and ⁇ 2 comprise the angles formed between the calibration vectors and measured intensity vector 600 .
- intensity vectors comprise intensity vectors in a two-dimensional parameter space (e.g., representing two color intensities), intensity vectors in a three-dimensional parameter space (e.g., representing three color intensities), intensity vectors in a five-dimensional parameter space (e.g., representing five color intensities), or intensity vectors in any other appropriate parameter space.
- FIG. 6B is a diagram illustrating an embodiment of an angular measurement as a function of interferometer gap.
- ⁇ 1 and ⁇ 2 are plotted as an interferometer gap is varied.
- ⁇ 2 is seen to dip at a gap size of interest, while ⁇ 1 is seen to rise, indicating the measured intensity vector swings toward calibration vector ⁇ 2 .
- This swing indicates that the measured light is passing through the Fabry-Perot interferometer at the transmission peak associated with calibration vector ⁇ 2 and not the transmission peak associated with calibration vector ⁇ 1 .
- ⁇ 1 and ⁇ 2 comprise ⁇ 1 and ⁇ 2 as shown in FIG. 6A .
- the angles are measured in three dimensions towards calibration vectors. In some embodiments, in the event that the angles shift as a function of gap towards one of the calibration vectors as the gap is incremented or decremented, it is determined that the peak corresponds to the peak associated with the calibration vector.
- FIG. 7 is a flow diagram illustrating an embodiment of a process for spectral reading using targeted spatial spectral detection.
- a sample set of intensity data is received for an array of spatial locations and a range of spectral configurations.
- data in the array of spatial locations is transformed for rotation, translation, and/or key stoning.
- a region of interest is determined using the sample set of data.
- a spectral peak is determined for the region of interest.
- a process of FIG. 7 is executed by spectral response detector control system 114 .
- a set of regions of interest is determined in 702 .
- a spectral peak is determined in 704 for all regions of interest in the set of regions of interest.
- more than one spectral peak is determined for a region of interest.
- determining one or more spectral peaks comprises decoding a signature.
- the signature comprises a tag signature.
- spectral peak is identified within the spatial array of data associated with one spectral configuration.
- the data of the spatial array is corrected for rotation, translation, and/or keystoning (e.g., trapezoidal scaling).
- spatial array data is processed in an area larger than a region of interest to make sure that a peak that is associated with one spectral configuration can be matched to the peak associated with another spectral configuration. For example, a first spatial array of data is taken associated with one spectral configuration and then at a later time a spatial array of data is taken associated with another spectral configuration. Between the two times, it is possible that the data taking device is rotated, translated, and/or tilted making the data in the two corresponding spatial arrays of data related to each other with a rotation, translation, and/or key stoning translation.
- FIG. 8 is a flow diagram illustrating an embodiment of a process for determining a region of interest using a sample set of data.
- the flow diagram of FIG. 8 illustrates an embodiment of a process for determining a region of interest using a standard deviation calculation.
- a data frame associated with a spectral configuration is received.
- data frame is transformed for rotation, translation, and/or key stoning. For example, to get correspondence between spatial arrays of data associated with different spectral configurations, transformation is performed if necessary between spatial arrays to make sure that the data in the arrays are spatially associated with each other. In some embodiments, fiducials in the data frames are used to determine the transformations.
- the data frame is added to a value accumulator.
- the value accumulator is set to the value of the data frame.
- the data frame values are squared (e.g., each value of the data frame values is squared).
- the squared data frame values are added to a squared value accumulator.
- the squared value accumulator is set to the value of the squared data frame.
- Determining the standard deviation for a set of data frames comprises determining the standard deviation for each point of the data frame, across the set of data frames.
- the standard deviation for the set of data frames can be determined by first determining the data mean by dividing the values of the value accumulator by the total number of data frames received.
- a mean of squared data can additionally be determined by dividing the values of the squared value accumulator by the total number of data frames received.
- the standard deviation for the set of data frames can then be determined by determining the square root of the difference between the mean of squared data and the square of the data mean.
- one or more regions of interest are identified by determining local maxima in the standard deviation data (e.g., local maxima across the data frame).
- a data frame comprises a two-dimensional array of data pixels.
- each data pixel comprises three colored pixels, each colored pixel associated with a color filter of a different color.
- one or more signal processing techniques other than standard deviation computation are used for processing the spectral axis of the data cube (e.g., thresholding, filtering, matched filtering, etc.).
- FIG. 9 is a flow diagram illustrating an embodiment of a process for determining a spectral peak for a region of interest.
- the process of FIG. 9 implements 704 of FIG. 7 .
- an indication to capture further intensity data for one or more regions of interest is provided.
- the further intensity data for the one or more regions of interest is received.
- the intensity data is transformed into a parameter space (e.g., the parameter space shown in FIG. 6A ).
- the difference between the intensity data in the parameter space and calibration data in the parameter space is determined.
- the spectral peak is determined (e.g., by determining a calibration data vector in the parameter space that the intensity data in the parameter space exhibits a movement towards).
Landscapes
- Physics & Mathematics (AREA)
- Spectroscopy & Molecular Physics (AREA)
- General Physics & Mathematics (AREA)
- Biochemistry (AREA)
- Chemical & Material Sciences (AREA)
- Analytical Chemistry (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Immunology (AREA)
- Pathology (AREA)
- Spectrometry And Color Measurement (AREA)
- Instruments For Measurement Of Length By Optical Means (AREA)
- Solid State Image Pick-Up Elements (AREA)
- Investigating Or Analysing Materials By Optical Means (AREA)
Abstract
A system for determining a spectrum includes an interface and a processor. The interface is configured to receive a sample set of intensity data for an array of spatial locations and a set of spectral configurations. The processor is configured to determine a region of interest using the sample set of intensity data and determine a spectral peak for the region of interest.
Description
- This application is a continuation of co-pending U.S. patent application Ser. No. 15/348,873 entitled TAG READING USING TARGETED SPATIAL SPECTRAL DETECTION filed Nov. 10, 2016, which claims priority to U.S. Provisional Patent Application No. 62/259,244 entitled TAG READING USING TARGETED SPATIAL SPECTRAL DETECTION filed Nov. 24, 2015, both of which are incorporated herein by reference for all purposes.
- Normally hyperspectral imaging is used for object detection, such as diseased crops, military targets, or geological formations. In those cases once the objects are detected, the job is done. So the number of frames in the hyperspectral cube is set at just enough to ensure that the detection job can be done. However for determining spectra, location and decoding must be achieved. So, just detection is not sufficient. Location and decoding require a much larger amount of data than detection, creating a problem where the storage and processing capabilities of the reader are challenged.
- Various embodiments of the invention are disclosed in the following detailed description and the accompanying drawings.
-
FIG. 1 is a diagram illustrating an embodiment of an optical setup for spectral response detection. -
FIG. 2 is a diagram illustrating an embodiment of a Fabry-Perot interferometer. -
FIG. 3 is a diagram illustrating an embodiment of a spectral data cube. -
FIG. 4 is a diagram illustrating an embodiment of interferometer transmissivity. -
FIG. 5 is a diagram illustrating an embodiment of interferometer transmission peak wavelength locations. -
FIG. 6A is a diagram illustrating an embodiment of vectors in a parameter space. -
FIG. 6B is a diagram illustrating an embodiment of an angular measurement as a function of interferometer gap. -
FIG. 7 is a flow diagram illustrating an embodiment of a process for spectral reading using targeted spatial spectral detection. -
FIG. 8 is a flow diagram illustrating an embodiment of a process for determining a region of interest using a sample set of data. -
FIG. 9 is a flow diagram illustrating an embodiment of a process for determining a spectral peak for a region of interest. - The invention can be implemented in numerous ways, including as a process; an apparatus; a system; a composition of matter; a computer program product embodied on a computer readable storage medium; and/or a processor, such as a processor configured to execute instructions stored on and/or provided by a memory coupled to the processor. In this specification, these implementations, or any other form that the invention may take, may be referred to as techniques. In general, the order of the steps of disclosed processes may be altered within the scope of the invention. Unless stated otherwise, a component such as a processor or a memory described as being configured to perform a task may be implemented as a general component that is temporarily configured to perform the task at a given time or a specific component that is manufactured to perform the task. As used herein, the term ‘processor’ refers to one or more devices, circuits, and/or processing cores configured to process data, such as computer program instructions.
- A detailed description of one or more embodiments of the invention is provided below along with accompanying figures that illustrate the principles of the invention. The invention is described in connection with such embodiments, but the invention is not limited to any embodiment. The scope of the invention is limited only by the claims and the invention encompasses numerous alternatives, modifications and equivalents. Numerous specific details are set forth in the following description in order to provide a thorough understanding of the invention. These details are provided for the purpose of example and the invention may be practiced according to the claims without some or all of these specific details. For the purpose of clarity, technical material that is known in the technical fields related to the invention has not been described in detail so that the invention is not unnecessarily obscured.
- A system for determining a spectrum comprises an interface and a processor. The interface is configured to receive a sample set of intensity data for an array of spatial locations and a set of spectral configurations, where each spectral configuration detects a different wavelength or combination of wavelengths of light. The processor is configured to determine a region of interest using the sample set of data and determine a spectral peak for the region of interest.
- In some embodiments, for spectral decoding, both finding an object and decoding a reflected spectrum is required. Memory, time, and/or processing power can be saved by splitting the operations of detection and extraction/decoding.
- In some embodiments, for determining a spectrum, memory can be saved by processing frames as they appear without saving them, so that the full set of frames required for spectral detection doesn't have to be kept in memory. For example, objects (e.g., tags) can be found by looking for local maxima in the standard deviation of received intensity values along the spectral axis. In another example, objects (e.g., tags) can be found by looking for peaks by looking for maxima after filtering input data (e.g., running a convolutional filter—for example, a matched filter with suppression in the surround). In some embodiments, filtering and looking for a maxima in standard deviation are done in sequence to identify a region of interest. In some embodiments, filtering and looking for peaks in two ranges of frequencies are done in sequence to identify a region of interest. In this case each frame is a digitized image of a sample collected at a specific wavelength or set of wavelengths, and different frames are collected using different wavelengths or set of wavelengths. To calculate the standard deviation, the sum of the frames and the sum of the square of the frames are needed. So when a frame appears, each intensity value in each location of the frame and its square are each added to an accumulator. Each frame is then overwritten by the next frame. Once all the frames are collected, a simple operation is performed on the two accumulated values (e.g., the sum and the sum of the squares) for each location in the frame to get the standard deviation of the value in that location of the frame. In this manner, a new frame (e.g., a map) is created that has the same spatial dimensions as the original frames but contains the standard deviation through the frames at each point. Then local maxima in the map correspond to locations of candidate tags on the full hyperspectral cube. In various embodiments, this method is applied either to a full hypercube as the hypercube is captured or to a subset of a hypercube.
- In some embodiments, spectral detection is achieved using filtering along the spectral axis, assuming that the filter kernel is shorter than the full spectral axis. With filtering, a subset of frames equal to the kernel length is kept in memory at one time, rather than just the one for the standard deviation. This is what we're calling sequential processing. To determine the kernel length used for this step, we find the minimum number of frames sufficient to detect an object reliably by isolating a spectral feature in the filtering approach. For example, in the event that the filter kernel is tuned to couple strongly to a spectral feature with spectral width equal to 1/10 the length of the full spectral axis, the kernel length might be 1/10 the full spectral axis length. Or it could be done by capturing a subset of many spectral features in the standard deviation approach. For example, the targeted spectral features might be a set of strong peaks or valleys in the spectrum that serve to increase the standard deviation along the spectral axis. Also in the event that memory isn't a constraint, the frames in this step could be stored in memory and reused in the last step below. In that case processing power is saved by not processing the entire hyperspectral cube, and time is saved, by computing the regions of interest while capture of the hyperspectral cube is still ongoing. At the end of the sequential processing, a 2D array has been determined over the spatial axes that has a higher value where candidate objects are present, and a lower value where they are not. From this array, regions of interest are chosen that are likely to contain an object. For example, regions of interest may be chosen by searching the 2D array for maxima (points where all neighbors are less than the point itself). Maxima may then be sorted in descending order of value, creating a list of points, with the first in the list most likely to correspond to a tag, the second in the list the second most likely, etc. Regions of interest can then be determined by including a fixed range of points around each point in the list, with the size of the range determined from the expected size of an object. The regions of interest are then the focus for analysis.
- In some embodiments, at this point a full scan is run to extract spectral information with enough frames to extract the object information. But during the data collection, only the hyperspectral information in the regions of interest is saved. This greatly reduces the amount of data saved in memory. For example, in the event that the objects comprise 1% of the reader field of view, a data reduction on the order of 99% can be achieved in this manner.
- In some embodiments, the data collected is not a computed spectrum, so further processing is necessary to obtain a spectrum from the data collected. In the event that the reader is based on a Fabry-Perot Interferometer in a low-finesse Fourier Transform mode, for example, then conversion from captured data to a spectrum requires a Fourier transform. If only the regions of interest are processed into spectra, the computational effort required to decode a spectrum of an object is further reduced. Once a spectrum from an object such as a tag is obtained, decoding can proceed. In some embodiments, a tag comprises a reflector with selective reflection. In various embodiments, the reflector comprises one or more of the following: a rugate tag, a Bragg reflector, or any other appropriate reflector. In various embodiments, tags comprise one of the following materials: silicon, silicon dioxide, silicon nitride, doped silicon, or any other appropriate material. In some embodiments, the unique optical signature of each tag can be read using an absolute or a relative spectral measurement device, apparatus, or system. In some embodiments, tags comprise the surface of a silicon wafer that is etched to have a spectral code encoded by the etching. A thin layer from the surface of the etched wafer is removed and divided into small tags, and the resultant tags contain a complex porous nanostructure that is programmed during electrochemical synthesis to display a unique reflectivity spectrum. The tags are then oxidized by a high-temperature bake step to turn the crystalline, nanoporous silicon tags into amorphous, nanoporous silica. This bake step stabilizes the nanoporous structure against further oxidation (thus stabilizing the spectral signature) and provides for the tags to be characterized as a GRAS excipient.
- In some embodiments, spectral configuration detects a different wavelength or combination of wavelengths of light by spectral filtering reflected light from an object before detecting the light in a detector. In various embodiments, the spectral filtering comprises a Fabry-Perot filter, an interference filter, or any other appropriate spectral filter. In some embodiments, the spectral filter is tunable. In some embodiments, the spectral filter is a set of fixed filters that are in front of separate detectors or are mechanically swapped or optically switched in front of a fixed detector. In various embodiments, the Fabry-Perot filter is mechanically tunable, electro-optically tunable (e.g., a change in index of refraction of the medium in between the partially reflecting mirrors), acousto-optically tunable, or any other appropriate filter.
-
FIG. 1 is a diagram illustrating an embodiment of an optical setup for spectral response detection.FIG. 1 comprisesmeasurement area 100 comprising one or more regions for producing optical spectra (e.g., region 102).Measurement area 100 is illuminated bylight 104.Reflected light 106 comprises light reflected byregion 102.Reflected light 106 is focused bylens 108, passes throughfilter 110, and is captured byoptical detector 112.Filter 110 comprises a filter for transmitting light at some frequencies and not at other frequencies.Optical detector 112 comprises an optical detector for detecting optical intensities. Spectral responsedetector control system 114 comprises a spectral response detector control system for interacting withoptical detector 112. Spectral responsedetector control system 114 provides control information to optical detector 112 (e.g., control information indicating to capture data) and receives optical intensity data fromoptical detector 112. - In some embodiments, regions for producing optical spectra (e.g., region 102) comprise optical tags (e.g., optical tags engineered to reflect light with a recognizable spectrum). In various embodiments, light 104 comprises broadband light, narrowband light, filtered light, light from a light-emitting diode, laser light, or any other appropriate light. In various embodiments, light 104 is incident to
measurement area 100 from a single point, at a single angle, from multiple angles, or incident in any other appropriate manner. In some embodiments,filter 110 comprises a tunable optical filter. In some embodiments,filter 110 comprises a Fabry-Perot interferometer. In some embodiments,optical detector 112 comprises an array of optical detector pixels for detecting an array of optical intensities. In some embodiments, the array of optical detector pixels comprises an x axis and a y axis. In some embodiments, each pixel of the array of optical detector pixels comprises a set of optical detectors, each optical detector comprising a color filter (e.g., each pixel comprises three detectors, a first detector comprising a red color filter, a second detector comprising a green color filter, and a third detector comprising a blue color filter). In some embodiments, spectral responsedetector control system 114 interacts with filter 110 (e.g., to indicate tunable filter properties). In some embodiments, spectral responsedetector control system 114 interacts withfilter 110 to indicate a Fabry-Perot interferometer gap size. In some embodiments, spectral responsedetector control system 114 is configured to receive a calibration data. In some embodiments, the calibration data comprises a set of intensity data for an array of spatial locations and a range of spectral configurations for a monochromatic source (e.g., a set of gap sizes for a Fabry-Perot interferometer). -
FIG. 2 is a diagram illustrating an embodiment of a Fabry-Perot interferometer. In some embodiments, Fabry-Perot interferometer 200 comprisesfilter 110 ofFIG. 1 . Fabry-Perot interferometer 200 comprisesmirror 202 andmirror 204. Each ofmirror 202 andmirror 204 comprises a partially reflective mirror (e.g., some light is able to pass through and some light is reflected). Each ofmirror 202 andmirror 204 comprises a mirror silvering on one side (e.g.,mirror 202 comprises a mirror silvering on its right side as shown inFIG. 2 andmirror 204 comprises a mirror silvering on its left side as shown inFIG. 2 ).Mirror 202 andmirror 204 are held together bypiezo element 206 andpiezo element 208.Piezo element 206 andpiezo element 208 comprise piezo elements for changing size.Piezo element 206 andpiezo element 208 change size according to an applied voltage. Whenpiezo element 206 andpiezo element 208 change size, the gap between the mirror silvering ofmirror 202 and the mirror silvering ofmirror 208 changes. Changing the gap between the mirror silvering ofmirror 202 and the mirror silvering ofmirror 208 causes the optical properties (e.g., the light transmission and reflectance properties) of Fabry-Perot interferometer 200 to change. In this way, Fabry-Perot interferometer 200 comprises a tunable optical filter. - In some embodiments mirror silvering comprises a partially reflective metal layer (e.g., a silver layer, an aluminum layer, a titanium layer, etc.). In various embodiments,
mirror 202 andmirror 204 are held together by 1, 2, 3, 4, 5, or any other appropriate number of piezo elements. In some embodiments, the spatial positioning of the piezoelements separating mirror 202 andmirror 204 enable adjustment of the angle betweenmirror 202 andmirror 204. - In some embodiments, the mirrors are separated with a fixed distance and a medium interior to the mirrors changes its index of refraction (e.g., electro- or acousto-optically) and instead of a set of gap sizes there is a set of different index-changed path lengths.
-
FIG. 3 is a diagram illustrating an embodiment of a spectral data cube. In some embodiments,spectral data cube 300 ofFIG. 3 comprises a cube representing data measured by an optical detector (e.g.,optical detector 112 ofFIG. 1 ).Spectral data cube 300 comprises a cube of data recorded by an optical detector. The x axis ofspectral data cube 300 corresponds to the x axis of the optical detector and the y axis ofspectral data cube 300 corresponds to the y axis of the optical detector. The z axis ofspectral data cube 300 corresponds to an interferometer gap size (e.g., the mirror gap size of a Fabry-Perot interferometer). The data intensity shown at a given data location (e.g., corresponding to a given x and y location on the optical detector and a given interferometer gap size) indicates the intensity of the light received by the optical detector. - In some embodiments, the interferometer gap size comprises the gap size of Fabry-
Perot interferometer 200 ofFIG. 2 . In various embodiments,spectral data cube 300 comprises a spectral data hypercube with one or more of the following properties: each data location comprising three light intensity measurements, each measurement taken by a separate optical detector at the given location, each optical detector associated with a different color filter, or any other appropriate properties. In some embodiments, multiple peaks associated with different interferometer gap sizes are measured at a given detector location. -
FIG. 4 is a diagram illustrating an embodiment of interferometer transmissivity. In some embodiments,curve 400 ofFIG. 4 illustrates the light transmissivity of a Fabry-Perot interferometer (e.g., Fabry-Perot interferometer 200 ofFIG. 2 ) vs. light wavelength. In the example shown,curve 400 ofFIG. 4 illustrates the light transmissivity of a Fabry-Perot interferometer vs. light wavelength for a given gap size. Multiple light transmission peaks are seen for the given gap size. Three light transmission peaks are seen incurve 400. In various embodiments, two light transmission peaks are seen as a function of gap size, three light transmission peaks are seen as a function of gap size, four light transmission peaks are seen as a function of gap size, or any other appropriate number of light transmission peaks are seen as a function of gap size. -
FIG. 5 is a diagram illustrating an embodiment of interferometer transmission peak wavelength locations. In some embodiments, set ofcurves 500 illustrates a set of transmission peak locations for a Fabry-Perot interferometer (e.g., Fabry-Perot interferometer 200 ofFIG. 2 ). In the example shown, set ofcurves 500 illustrates the location of each of a set of interferometer transmission peak locations as the interferometer gap of the Fabry-Perot interferometer is changed. In the example shown, set ofcurves 500 comprises 4 curves. For a given gap size (e.g., gap size gi), there are a set of transmission peaks at different wavelengths (e.g., as shown bycurve 400 ofFIG. 4 ). -
FIG. 6A is a diagram illustrating an embodiment of vectors in a parameter space. In some embodiments, the vectors ofFIG. 6A are two dimensional representations of intensity vectors (e.g., vectors comprising a first color intensity in a first direction as measured by a first color detector and a second color intensity in a second direction as measured by second color detector). In some embodiments, a vector is calculated and displayed in a three dimensional space (e.g., the three dimensions correspond to three color detectors). In the example shown, vectors λ1 and λ2 comprise calibration vectors for a Fabry-Perot interferometer (e.g., Fabry-Perot interferometer 200 ofFIG. 2 ). A set of calibration vectors is associated with each gap size of the Fabry-Perot interferometer. Each calibration vector of the set of calibration vectors is associated with a transmission peak associated with the gap size. Determining a calibration vector comprises illuminating the Fabry-Perot interferometer with monochromatic light of the transmission peak wavelength and recording the intensity measured by each optical detector of a set of optical detectors forming a pixel (e.g., each optical detector associated with a different color filter). Each optical detector is associated with an axis of the parameter space. Measured intensity vector 600 comprises a vector associated with an optical measurement. In some embodiments, measured intensity vector 600 comprises a representation of data at one point withindata cube 300 ofFIG. 3 . Angles θ1 and θ2 comprise the angles formed between the calibration vectors and measured intensity vector 600. - In various embodiments, intensity vectors comprise intensity vectors in a two-dimensional parameter space (e.g., representing two color intensities), intensity vectors in a three-dimensional parameter space (e.g., representing three color intensities), intensity vectors in a five-dimensional parameter space (e.g., representing five color intensities), or intensity vectors in any other appropriate parameter space.
-
FIG. 6B is a diagram illustrating an embodiment of an angular measurement as a function of interferometer gap. In the example shown, θ1 and θ2 are plotted as an interferometer gap is varied. θ2 is seen to dip at a gap size of interest, while θ1 is seen to rise, indicating the measured intensity vector swings toward calibration vector λ2. This swing indicates that the measured light is passing through the Fabry-Perot interferometer at the transmission peak associated with calibration vector λ2 and not the transmission peak associated with calibration vector λ1. In some embodiments, θ1 and θ2 comprise θ1 and θ2 as shown inFIG. 6A . - In some embodiments, in three dimensions the angles are measured in three dimensions towards calibration vectors. In some embodiments, in the event that the angles shift as a function of gap towards one of the calibration vectors as the gap is incremented or decremented, it is determined that the peak corresponds to the peak associated with the calibration vector.
-
FIG. 7 is a flow diagram illustrating an embodiment of a process for spectral reading using targeted spatial spectral detection. In 700, a sample set of intensity data is received for an array of spatial locations and a range of spectral configurations. In 701, data in the array of spatial locations is transformed for rotation, translation, and/or key stoning. In 702, a region of interest is determined using the sample set of data. In 704, a spectral peak is determined for the region of interest. - In some embodiments, the process of
FIG. 7 is executed by spectral responsedetector control system 114. In some embodiments, a set of regions of interest is determined in 702. In some embodiments, a spectral peak is determined in 704 for all regions of interest in the set of regions of interest. In some embodiments, more than one spectral peak is determined for a region of interest. In some embodiments, determining one or more spectral peaks comprises decoding a signature. In some embodiments, the signature comprises a tag signature. - In some embodiments, spectral peak is identified within the spatial array of data associated with one spectral configuration. To correspond this peak with a peak identified within the spatial array of data associated with another spectral configuration, in some embodiments, the data of the spatial array is corrected for rotation, translation, and/or keystoning (e.g., trapezoidal scaling). In some embodiments, spatial array data is processed in an area larger than a region of interest to make sure that a peak that is associated with one spectral configuration can be matched to the peak associated with another spectral configuration. For example, a first spatial array of data is taken associated with one spectral configuration and then at a later time a spatial array of data is taken associated with another spectral configuration. Between the two times, it is possible that the data taking device is rotated, translated, and/or tilted making the data in the two corresponding spatial arrays of data related to each other with a rotation, translation, and/or key stoning translation.
-
FIG. 8 is a flow diagram illustrating an embodiment of a process for determining a region of interest using a sample set of data. The flow diagram ofFIG. 8 illustrates an embodiment of a process for determining a region of interest using a standard deviation calculation. In 800, a data frame associated with a spectral configuration is received. In 801, data frame is transformed for rotation, translation, and/or key stoning. For example, to get correspondence between spatial arrays of data associated with different spectral configurations, transformation is performed if necessary between spatial arrays to make sure that the data in the arrays are spatially associated with each other. In some embodiments, fiducials in the data frames are used to determine the transformations. In 802, the data frame is added to a value accumulator. In the event the data frame comprises the first data frame, the value accumulator is set to the value of the data frame. In 804, the data frame values are squared (e.g., each value of the data frame values is squared). In 806, the squared data frame values are added to a squared value accumulator. In the event the data frame comprises the first data frame, the squared value accumulator is set to the value of the squared data frame. In 808, it is determined whether there are more data frames. In the event there are more data frames, control passes to 800. In the event there are not more data frames, control passes to 810. In 810, the standard deviation is determined. Determining the standard deviation for a set of data frames comprises determining the standard deviation for each point of the data frame, across the set of data frames. The standard deviation for the set of data frames can be determined by first determining the data mean by dividing the values of the value accumulator by the total number of data frames received. A mean of squared data can additionally be determined by dividing the values of the squared value accumulator by the total number of data frames received. The standard deviation for the set of data frames can then be determined by determining the square root of the difference between the mean of squared data and the square of the data mean. In 812, one or more regions of interest are identified by determining local maxima in the standard deviation data (e.g., local maxima across the data frame). - In some embodiments, the process of
FIG. 8 implements 702 ofFIG. 7 . In some embodiments, a data frame comprises a two-dimensional array of data pixels. In some embodiments, each data pixel comprises three colored pixels, each colored pixel associated with a color filter of a different color. In some embodiments, one or more signal processing techniques other than standard deviation computation are used for processing the spectral axis of the data cube (e.g., thresholding, filtering, matched filtering, etc.). -
FIG. 9 is a flow diagram illustrating an embodiment of a process for determining a spectral peak for a region of interest. In some embodiments, the process ofFIG. 9 implements 704 ofFIG. 7 . In 900, an indication to capture further intensity data for one or more regions of interest is provided. In 902, the further intensity data for the one or more regions of interest is received. In 904, the intensity data is transformed into a parameter space (e.g., the parameter space shown inFIG. 6A ). In 906, the difference between the intensity data in the parameter space and calibration data in the parameter space is determined. In 908, the spectral peak is determined (e.g., by determining a calibration data vector in the parameter space that the intensity data in the parameter space exhibits a movement towards). - Although the foregoing embodiments have been described in some detail for purposes of clarity of understanding, the invention is not limited to the details provided. There are many alternative ways of implementing the invention. The disclosed embodiments are illustrative and not restrictive.
Claims (16)
1. A system for determining a spectrum, comprising:
an interface configured to receive a sample set of intensity data for an array of spatial locations, wherein the sample set of intensity data for the array of spatial locations comprises an imaging measurement at each location in the array of spatial locations, wherein each location in the array of spatial locations corresponds to a sample location, wherein the sample comprises an optical tag, and wherein the optical tag reflects light with a recognizable spectrum;
a processor configured to:
determine a first region of interest using the sample set of intensity data, comprising:
determining a set of locations of the array of spatial locations corresponding to a maxima;
ranking the set of locations based on a likelihood that a location corresponds to the optical tag; and
determining the first region of interest to include a fixed range around the location of the set of locations, wherein the location is ranked most likely to correspond to the optical tag, wherein the fixed range is based at least in part on the predetermined size of the optical tag;
determine first color data for the first region of interest from the sample set of intensity data; and
in response to the first color data for the first region of interest being not identified as the recognizable spectrum, determine a second region of interest using the sample set of intensity data and determine second color data for the second region of interest.
2. The system of claim 1 , wherein the first color data and the second color data comprises three color data.
3. The system of claim 1 , wherein the array of spatial locations comprises a two dimensional array of spatial locations.
4. The system of claim 1 , wherein the set of locations of the array of spatial locations is determined using a filter.
5. The system of claim 1 , wherein the set of locations of the array of spatial locations is determined using a threshold.
6. The system of claim 1 , wherein the set of locations of the array of spatial locations is determined using a calculation of a standard deviation.
7. The system of claim 1 , wherein the first region of interest comprises one of a plurality of regions of interest.
8. The system of claim 1 , wherein the interface is further configured to receive a calibration data.
9. The system of claim 8 , wherein the calibration data comprises a calibration set of intensity data for a calibration array of spatial locations and a calibration set of spectral configurations for a monochromatic source.
10. The system of claim 1 , wherein determining the first color data for the first region of is interest comprises providing an indication to capture further intensity data for the first region of interest.
11. The system of claim 1 , wherein determining the first color data for the first region of interest comprises:
transforming the intensity data into a parameter space; and
determining a difference between the intensity data in the parameter space and a calibration data in the parameter space.
12. The system of claim 1 , wherein the first region of interest comprises one of a set of regions of interest.
13. The system of claim 1 , wherein the processor is further configured to decode a signature.
14. The system of claim 13 , wherein the signature comprises a tag signature.
15. A method for determining a spectrum, comprising:
receiving a sample set of intensity data for an array of spatial locations, wherein the sample set of intensity data for the array of spatial locations comprises an imaging measurement at each location in the array of spatial locations, wherein each location in the array of spatial locations corresponds to a sample location, wherein the sample comprises an optical tag, and wherein the optical tag reflects light with a recognizable spectrum;
determining, using a processor, a first region of interest using the sample set of intensity data, comprising:
determining a set of locations of the array of spatial locations corresponding to a maxima;
ranking the set of locations based on a likelihood that a location corresponds to the optical tag; and
determining the first region of interest to include a fixed range around the location of the set of locations, wherein the location is ranked most likely to correspond to the optical tag, wherein the fixed range is based at least in part on the predetermined size of the optical tag;
determine first color data for the first region of interest from the sample set of intensity data; and
in response to the first color data for the first region of interest being not identified as the recognizable spectrum, determine a second region of interest using the sample set of intensity data and determine second color data for the second region of interest.
16. A computer program product for determining a spectrum, the computer program product being embodied in a non-transitory computer readable storage medium and comprising computer instructions for:
receiving a sample set of intensity data for an array of spatial locations, wherein the sample set of intensity data for the array of spatial locations comprises an imaging measurement at each location in the array of spatial locations, wherein each location in the array of spatial locations corresponds to a sample location, wherein the sample comprises an optical tag, and wherein the optical tag reflects light with a recognizable spectrum;
determining, using a processor, a first region of interest using the sample set of intensity data, comprising:
determining a set of locations of the array of spatial locations corresponding to a maxima;
ranking the set of locations based on a likelihood that a location corresponds to the optical tag; and
determining the first region of interest to include a fixed range around the location of the set of locations, wherein the location is ranked most likely to correspond to the optical tag, wherein the fixed range is based at least in part on the predetermined size of the optical tag;
determine first color data for the first region of interest from the sample set of intensity data; and
in response to the first color data for the first region of interest being not identified as the recognizable spectrum, determine a second region of interest using the sample set of intensity data and determine second color data for the second region of interest.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/009,545 US20180292261A1 (en) | 2015-11-24 | 2018-06-15 | Tag reading using targeted spatial spectral detection |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201562259244P | 2015-11-24 | 2015-11-24 | |
US15/348,873 US10024717B2 (en) | 2015-11-24 | 2016-11-10 | Tag reading using targeted spatial spectral detection |
US16/009,545 US20180292261A1 (en) | 2015-11-24 | 2018-06-15 | Tag reading using targeted spatial spectral detection |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/348,873 Continuation US10024717B2 (en) | 2015-11-24 | 2016-11-10 | Tag reading using targeted spatial spectral detection |
Publications (1)
Publication Number | Publication Date |
---|---|
US20180292261A1 true US20180292261A1 (en) | 2018-10-11 |
Family
ID=58721655
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/348,873 Active US10024717B2 (en) | 2015-11-24 | 2016-11-10 | Tag reading using targeted spatial spectral detection |
US16/009,545 Abandoned US20180292261A1 (en) | 2015-11-24 | 2018-06-15 | Tag reading using targeted spatial spectral detection |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/348,873 Active US10024717B2 (en) | 2015-11-24 | 2016-11-10 | Tag reading using targeted spatial spectral detection |
Country Status (5)
Country | Link |
---|---|
US (2) | US10024717B2 (en) |
EP (1) | EP3380806A4 (en) |
JP (1) | JP2019502097A (en) |
CN (1) | CN108139201A (en) |
WO (1) | WO2017091370A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220090966A1 (en) * | 2020-09-24 | 2022-03-24 | Seiko Epson Corporation | Optical Filter, Spectrometric Module, And Spectral Measurement Method |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10853758B2 (en) * | 2017-04-25 | 2020-12-01 | Tag-it Tech, Inc. | Micro-taggant based agricultural product tracking system for licensed agricultural products and industries |
WO2019127043A1 (en) * | 2017-12-26 | 2019-07-04 | 深圳达闼科技控股有限公司 | Terminal device control method and terminal device |
DE102018103869B3 (en) * | 2018-02-21 | 2019-05-09 | Physik Instrumente (Pi) Gmbh & Co. Kg | Measuring element for an optical measuring device |
KR102663185B1 (en) * | 2018-08-07 | 2024-05-03 | 삼성전자주식회사 | Optical emission spectroscopy system and method of calibrating the same, and method of fabricating semiconductor device |
KR20210158856A (en) | 2019-05-23 | 2021-12-31 | 도쿄엘렉트론가부시키가이샤 | Optical Diagnostics of Semiconductor Processes Using Hyperspectral Imaging |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005083396A1 (en) * | 2004-03-01 | 2005-09-09 | Art Advanced Research Technologies Inc. | Continuous wave optical imaging assuming a scatter-law |
GB0420222D0 (en) * | 2004-09-11 | 2004-10-13 | Koninkl Philips Electronics Nv | Coherent scatter imaging |
WO2006086889A1 (en) * | 2005-02-18 | 2006-08-24 | American Dye Source Inc. | Method for encoding materials with a luminescent tag and apparatus for reading same |
US20120134582A1 (en) * | 2007-01-16 | 2012-05-31 | Chemimage Corporation | System and Method for Multimodal Detection of Unknown Substances Including Explosives |
US7649634B2 (en) * | 2007-10-30 | 2010-01-19 | Mountain View Optical Consultant Corp. | Methods and systems for white light interferometry and characterization of films |
SE532553C2 (en) * | 2008-01-24 | 2010-02-23 | Mikael Lindstrand | Method and apparatus for obtaining high dynamic, spectral, spatial and angular resolved radius information |
WO2010019515A2 (en) * | 2008-08-10 | 2010-02-18 | Board Of Regents, The University Of Texas System | Digital light processing hyperspectral imaging apparatus |
DE112009004707T5 (en) * | 2009-04-22 | 2012-09-13 | Hewlett-Packard Development Co., L.P. | Spatially varying spectral response calibration data |
IL201742A0 (en) * | 2009-10-25 | 2010-06-16 | Elbit Sys Electro Optics Elop | Tunable spectral filter |
US8453929B2 (en) * | 2009-12-19 | 2013-06-04 | Trutag Technologies, Inc. | Producing a microtag identifier |
JP6136357B2 (en) * | 2013-02-25 | 2017-05-31 | セイコーエプソン株式会社 | Spectrometer, communication system and color management system |
JP6003762B2 (en) * | 2013-03-27 | 2016-10-05 | セイコーエプソン株式会社 | Spectral measurement method, spectroscopic instrument, and conversion matrix generation method |
US9495753B2 (en) * | 2013-05-30 | 2016-11-15 | Canon Kabushiki Kaisha | Spectral image data processing apparatus and two-dimensional spectral apparatus |
JP6390090B2 (en) * | 2013-11-19 | 2018-09-19 | セイコーエプソン株式会社 | Optical filter device, optical module, and electronic apparatus |
CN103714546B (en) * | 2013-12-27 | 2016-08-03 | 北京航空航天大学 | A kind of data processing method of imaging spectrometer |
-
2016
- 2016-11-10 US US15/348,873 patent/US10024717B2/en active Active
- 2016-11-11 CN CN201680062190.7A patent/CN108139201A/en active Pending
- 2016-11-11 EP EP16869064.2A patent/EP3380806A4/en not_active Withdrawn
- 2016-11-11 JP JP2018521231A patent/JP2019502097A/en active Pending
- 2016-11-11 WO PCT/US2016/061680 patent/WO2017091370A1/en active Application Filing
-
2018
- 2018-06-15 US US16/009,545 patent/US20180292261A1/en not_active Abandoned
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220090966A1 (en) * | 2020-09-24 | 2022-03-24 | Seiko Epson Corporation | Optical Filter, Spectrometric Module, And Spectral Measurement Method |
US12038325B2 (en) * | 2020-09-24 | 2024-07-16 | Seiko Epson Corporation | Optical filter, spectrometric module, and spectral measurement method |
Also Published As
Publication number | Publication date |
---|---|
EP3380806A4 (en) | 2019-07-10 |
JP2019502097A (en) | 2019-01-24 |
WO2017091370A1 (en) | 2017-06-01 |
US20170146402A1 (en) | 2017-05-25 |
EP3380806A1 (en) | 2018-10-03 |
CN108139201A (en) | 2018-06-08 |
US10024717B2 (en) | 2018-07-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10024717B2 (en) | Tag reading using targeted spatial spectral detection | |
KR101265377B1 (en) | - Task-based imaging system | |
KR102139858B1 (en) | Hyperspectral Imaging Reconstruction Method Using Prism and System Therefor | |
US8023724B2 (en) | Apparatus and method of information extraction from electromagnetic energy based upon multi-characteristic spatial geometry processing | |
EP2216999A1 (en) | Image processing device, image processing method, and imaging device | |
JP6945195B2 (en) | Optical filters, photodetectors, and photodetectors | |
CN109490223B (en) | Target detection and identification system and method based on programmable hyperspectral imaging | |
US8131511B2 (en) | Apparatus for registering and analyzing the spectral signature of a dynamic event | |
US20170180614A1 (en) | Iris imaging | |
WO2013064510A1 (en) | Spectral camera with mosaic of filters for each image pixel | |
JP7257644B2 (en) | Photodetector, photodetector system, and filter array | |
WO2016029276A1 (en) | Imaging method and apparatus | |
US11272163B2 (en) | Image processing apparatus and image processing method | |
WO2021085014A1 (en) | Filter array and optical detection system | |
US11573428B2 (en) | Imaging method and apparatus using circularly polarized light | |
JP2020529602A (en) | Coded aperture spectrum image analyzer | |
Bartlett et al. | Anomaly detection of man-made objects using spectropolarimetric imagery | |
CN107925719B (en) | Imaging device, imaging method, and non-transitory recording medium | |
CN111344711A (en) | Image acquisition method and device | |
US10091440B1 (en) | System and method for providing compressive infrared imaging | |
CN115993329A (en) | Handheld multispectral imager | |
Wong et al. | A novel snapshot polarimetric imager | |
CN114076637A (en) | Hyperspectral acquisition method and system, electronic equipment and coding wide-spectrum imaging device | |
Bartlett et al. | Anomaly detection with varied ground sample distance utilizing spectropolarimetric imagery collected using a liquid crystal tunable filter | |
RU2377510C1 (en) | Displaying spectrometre |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NOTICE OF ALLOWANCE MAILED -- APPLICATION RECEIVED IN OFFICE OF PUBLICATIONS |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO PAY ISSUE FEE |
|
AS | Assignment |
Owner name: FIRST-CITIZENS BANK & TRUST COMPANY, CALIFORNIA Free format text: SECURITY INTEREST;ASSIGNOR:TRUTAG TECHNOLOGIES, INC.;REEL/FRAME:066140/0667 Effective date: 20231215 |