Spectral reconstruction of detector sensitivity
Through the spectral reconstruction method of detector sensitivity, the light source and the configurable light source emit light beams of different wavelengths in sequence, and calculate the calibration matrix of the sensor, solving the problems of low accuracy and long time for spectral sensor calibration in the prior art, achieving more efficient calibration.
Patent Information
- Application Number
- CN202080044682.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2019-06-18
- Filing Date
- 2020-06-17
- Publication Date
- 2025-05-23
- Estimated Expiration
- 2040-06-17
AI Technical Summary
Existing spectral sensor calibration methods have low accuracy when calibrating different targets or light sources, and have long setup and testing time for different types of sensors, and are not feasible in some scenarios.
By using a spectral reconstruction method of detector sensitivity, one or more light sources and/or configurable light sources sequentially emit beams of different wavelengths, receive multiple channel spectral outputs of the sensor, compare the output with the reference intensity to calculate the difference, and calculate the calibration matrix based on the difference.
Improves the calibration accuracy of the spectral sensor for different targets and light sources, shortens calibration time, and makes it feasible in more scenarios.
Smart Images

Figure CN114026396B_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to sensor calibration. Background Art
[0002] The typical method for calibrating a spectral sensor involves target calibration. Typically, a set of targets or light sources with known spectral and chromaticity values are measured, and a calibration matrix can be calculated based on the ratio of the target values to the sensor output. There are several problems with this method. One problem is that this type of calibration will be accurate for targets or light sources similar to the calibration target or light source, but for dissimilar targets, the calibration will be far less accurate. Another problem is that the setup and testing of different types of sensors will take a long time and is not feasible in some scenarios. Summary of the invention
[0003] The present disclosure describes a method and apparatus for solving the above and other problems using spectral reconstruction of detector sensitivity. Specifically, one or more light sources and / or configurable light sources (e.g., visible light, infrared light, and / or ultraviolet light) can sequentially emit light beams of different wavelengths (e.g., infrared light, visible light, ultraviolet light). Receive the spectral output of multiple channels of the sensor, the output including the intensity (e.g., peak intensity) of each channel. Compare the output with a reference intensity of each of the one or more light sources and / or the configurable light sources and calculate the difference. Based on the difference, a calibration matrix that can be used to calibrate the particular sensor is calculated. In addition, the present disclosure describes an apparatus comprising: one or more light sources and / or configurable light sources; a receiver for receiving sensor output; and a circuit configured to generate a calibration matrix using the light source, the receiver using spectral reconstruction of detector sensitivity.
[0004] The described techniques may be performed, for example, by a hardware device. In some embodiments, the hardware device may be used in combination with software to perform the actions described in the present disclosure. The present disclosure refers to the hardware and / or software that performs the method of spectral reconstruction of the detector sensitivity as a calibration device. In some embodiments, the calibration device includes a memory and a control circuit coupled to the memory. The calibration device receives spectral sensitivity data from a sensor, wherein the spectral sensitivity data is generated based on the spectral response of the spectral channel of the sensor to the emission from one or more light sources, and the one or more light sources may include one or more configurable light sources.
[0005] For example, the calibration device may cause a first emission from a first light source of the plurality of light sources (the first light source emitting light of a first wavelength) and store the spectral response to the first emission from the spectral channel. The calibration device may then cause a second emission from a second light source of the plurality of light sources (the second light source emitting light of a second wavelength) and store the spectral response to the second emission from the plurality of channels. These emissions may be performed sequentially, and in response to each emission, the sensor output may be stored. The received spectral sensitivity data may be in the form of voltage readings, or may be further processed, and peak intensity data for each channel may be received.
[0006] In another example, the calibration device may cause a first emission from the configurable light source, the first emission having a first wavelength range, and may store spectral responses to the first emission from the spectral channels. The calibration device may then cause a second emission from the configurable light source, the second emission having a second wavelength range, and may store spectral responses to the second emission from the plurality of channels. These emissions may be performed sequentially, and in response to each emission, the sensor output may be stored. The received spectral sensitivity data may be in the form of a voltage reading, or may be further processed, and peak intensity data for each channel may be received. The light source may be configurable to emit radiation having the first wavelength range. The light source may be configurable to emit radiation having the second wavelength range. The light source may be configured to select a wavelength range of radiation emitted by the light source.
[0007] In some embodiments, the calibration device converts the spectral sensitivity data into spectral sensitivity data values, wherein each spectral sensitivity data value represents the spectral response of a channel in the plurality of spectral channels to the emission from the light source in the one or more light sources mentioned above. For example, if the spectral data is received in the form of a voltage, the calibration device converts the voltage into an intensity value or a peak intensity value. In some embodiments, the calibration device converts the intensity value or the peak intensity value into a scaled value (e.g., on a scale from 0 to 1 or from -1 to 1) that can be compared with the reference spectral sensitivity value. In some embodiments, other data conversion methods can be used to convert the spectral response data into a state in which it can be compared with the reference spectral sensitivity data.
[0008] The calibration device retrieves from the memory reference spectral sensitivity data values for each of the one or more light sources, each spectral sensitivity data value corresponding to a channel in the spectral channels discussed above. The reference spectral sensitivity data may be stored in various forms. For example, the data may be stored as a scaled intensity value (e.g., on a scale of 0 to 1 or -1 to 1), an unscaled peak intensity value, a voltage, or other suitable value that can be compared to a sensor spectral channel output.
[0009] The calibration device compares each of the plurality of spectral sensitivity data values with a corresponding reference value of the reference spectral sensitivity data. For example, the calibration device may compare scaled intensity values, peak intensity values, voltages, or other suitable values. Based on the comparison, the calibration device calculates a difference of the spectral sensitivity data values. In some embodiments, the difference may be a difference in scaled intensity values, a difference in peak intensity values, a voltage difference, a percentage difference, or other suitable values.
[0010] The calibration device generates a calibration matrix for the sensor based on the difference. For example, the calibration matrix may be a data structure storing the difference for each of the channels of the sensor. Thus, each of the differences may correspond to a specific wavelength or wavelength range. In some embodiments, the method may be used to calibrate a sensor in a particular device. In these embodiments, the calibration device transmits the calibration matrix to the device hosting the sensor. In some embodiments, the calibration device stores the corresponding difference for each wavelength (e.g., each available wavelength point).
[0011] In some embodiments, the spectral sensitivity data value is a peak intensity value corresponding to the wavelength of the spectral channel. For example, since each emission from the one or more light sources is detected by the sensor, each channel of the sensor records a peak voltage corresponding to the emission. In some embodiments, the voltage is converted to a peak intensity value or the voltage is stored as the peak intensity value.
[0012] In some embodiments, the calibration device is a device including an illumination source (e.g., a light box) having a plurality of illuminators (lights that may emit visible light, ultraviolet light, infrared light, or another suitable light).
[0013] In some embodiments, the calibration device is a device including an illumination source (e.g., a light box) having one or more illuminators (lights that may emit visible light, ultraviolet light, infrared light, or another suitable light), wherein at least one of the one or more illuminators is configurable to emit light having selectable characteristics (such as a selectable wavelength and / or a selectable peak intensity).
[0014] The device further includes a receiver operable to receive spectral response data of a spectral channel (e.g., of a sensor). In some embodiments, the receiver is operable to receive any kind of spectral sensitivity data. The device further includes a control circuit (e.g., one or more processors) coupled to the illumination source and the receiver.
[0015] In some embodiments, the control circuit is configured to cause the illumination source to sequentially activate each of the plurality of illuminators. For example, the processor may transmit a command to cause each of the lights to be sequentially turned on and off so that the sensor can detect the light. The device (e.g., a calibration device) receives spectral sensitivity data for each of the spectral channels of the sensor in the receiver for each illuminator. For example, the receiver may receive a voltage associated with a peak intensity detected by each channel of the sensor. In some embodiments, the spectral sensitivity data may be received in other formats (e.g., as a scaled peak intensity value). In one example, the sensor may include a channel that responds to light of wavelengths between 400 nanometers and 500 nanometers. The control circuit may receive the peak intensity value for the channel of each illuminator.
[0016] In some embodiments, the processor may transmit a command that causes an illuminator of the illumination source (e.g., an illuminator including a configurable light source) to emit radiation having the first wavelength range and subsequently emit radiation having the second wavelength range. In some embodiments, the processor may transmit a command that causes an illuminator of the illumination source to sequentially emit radiation having different wavelengths or wavelength ranges. The device (e.g., a calibration device) receives spectral sensitivity data for each of the spectral channels of the sensor in the receiver for each wavelength range from the illuminator. For example, the receiver may receive a voltage associated with a peak intensity detected by each channel of the sensor. In some embodiments, the spectral sensitivity data may be received in other formats (e.g., as a scaled peak intensity value). In one example, the sensor may include a channel that responds to light of a wavelength between 400 nanometers and 500 nanometers. The control circuit may receive the peak intensity value for the channel for each wavelength range from the illuminator.
[0017] In some embodiments, the control circuit converts the spectral sensitivity data into spectral sensitivity data values, wherein each of the spectral sensitivity data values represents the spectral response of a channel of the sensor to emission from a particular illuminator of the calibration device. For example, the spectral sensitivity data can be received as a voltage and converted to a scaled data value (e.g., on a scale from 0 to 1 or on a scale from -1 to 1). In some embodiments, the control circuit can convert the different format data into a format that enables comparison with stored reference data values.
[0018] The control circuit may retrieve reference spectral sensitivity data values for each of the one or more illuminators and / or each emission from the one or more illuminators. Each spectral sensitivity data value may correspond to a channel of the sensor. For example, each channel may be associated with a specific wavelength range (e.g., a 100 nanometer range between 400 nanometers and 500 nanometers) and the reference data may have intensity values for these specific wavelength ranges.
[0019] At this stage, the control circuit compares each of the spectral sensitivity data values with a corresponding reference value of the obtained reference spectral sensitivity data value, and calculates a corresponding difference value for the spectral sensitivity data value and based on the comparison. In some embodiments, the difference value may be a difference in scaled intensity values, a difference in peak intensity values, a voltage difference, a percentage difference, or other suitable values.
[0020] The control circuit generates a calibration matrix for the sensor based on the difference values, and transmits the calibration matrix to a device associated with the sensor to be calibrated. For example, the calibration matrix may be a data structure that stores the difference values for each of the channels of the sensor. Thus, each of the difference values may correspond to a specific wavelength or wavelength range. The calibration device may transmit the calibration matrix to a device hosting the sensor.
[0021] In some embodiments, the calibration device stores a corresponding difference value for each wavelength (e.g., each available wavelength point) and generates other difference values for other wavelengths. For example, if the calibration matrix includes difference values for a wavelength of 500 nanometers and a wavelength of 600 nanometers, the control circuit may interpolate the difference value for a wavelength of 550 nanometers (e.g., using spline interpolation and standard chromaticity calculations).
[0022] In some embodiments, the illumination source includes a plurality of illuminators that emit light beams of different wavelengths. The more illuminators of different wavelengths included in the illumination source, the better the accuracy of the calibration matrix. For example, if the illumination source includes thirty-five different illuminators of different wavelengths divided between visible light, ultraviolet light, and infrared light, the illumination source will produce more differences than an illumination source with only ten illuminators. In some embodiments, the illumination source can be modified to include illuminators of different wavelengths covering the sensitivity range of the spectral channel of the sensor being analyzed. For example, if the sensor being analyzed has a channel that responds only to visible light wavelengths, the illumination source can be modified (e.g., using different illuminators) to cover the spectrum. In some embodiments, the control circuit causes the light beam to be emitted from the illuminator corresponding to the response range of the sensor.
[0023] In some embodiments, the illumination source includes an illuminator that emits light beams of different wavelengths or different wavelength ranges and / or different peak intensities. For example, the illumination source can be configured to emit light beams of different wavelengths or different wavelength ranges that cover the sensitivity range of the spectral channel of the sensor being analyzed. For example, if the sensor being analyzed has a channel that responds only to visible wavelengths, the illumination source can be modified or configured (e.g., the illuminator is configured) to cover that spectrum. In some embodiments, the control circuit causes the illuminator to emit a light beam corresponding to the response range of the sensor.
[0024] In some embodiments, the control circuit is further configured to transmit a command to a device associated with the sensor to calibrate the sensor based on the calibration matrix. For example, if the calibration device is used to calibrate a camera at a factory, the control circuit can transmit the calibration matrix to the camera with a command to calibrate the camera based on the calibration matrix.
[0025] In some embodiments, the spectral sensitivity data value includes a peak intensity value corresponding to the wavelength of the spectral channel. For example, each spectral channel may be responsive to an eighty nanometer spectrum (e.g., for one channel, the range may be between 480 nanometers and 560 nanometers). Thus, each channel will be responsive to a channel-specific range of light (for that channel, any peak intensity value will be in the range of 480 to 560 nanometers). Thus, comparing each spectral sensitivity data value to a corresponding reference value may be performed by comparing the peak value of the corresponding wavelength for each of the plurality of channels. For example, if there are peak intensity values for 500 nanometers, 520 nanometers, and 540 nanometers, then these peak intensity values are compared to the reference values of 500, 520, and 540 nanometers, respectively. Additionally, if some sensitivity values or reference values are not received, these values may be interpolated (e.g., using spline interpolation and standard colorimetric calculations). After performing the comparison, or in some embodiments, while performing the comparison, each difference in the corresponding peak intensity value is stored to generate a calibration matrix. In some embodiments, the value may be modified to a desired format.
[0026] The details of one or more embodiments are set forth in the accompanying drawings and the description below. Other features and advantages will be apparent from the description and drawings, and from the claims. BRIEF DESCRIPTION OF THE DRAWINGS
[0027] Figure 1 A calibration device that can be used to perform the actions of the present disclosure is shown.
[0028] Figure 2 is a block diagram illustrating actions for generating a calibration matrix.
[0029] Figure 3 An example of a matrix for a three-channel sensor and the corresponding difference values is shown.
[0030] Figure 4 Actions that the control circuitry may perform to generate a calibration matrix for a given sensor are shown.
[0031] Figure 5 A three channel sensor is shown with ambient light and target remission for the color and spectral sensor.
[0032] Figure 6 Another example of extrapolation of a three-channel sensor calibration matrix is shown.
[0033] Figure 7 Various Y-fit functions for an eight-channel sensor are shown.
[0034] Figure 8 is a block diagram illustrating a further embodiment of actions for generating a calibration matrix.
[0035] Fig. 9 Further embodiments of actions that the control circuitry may perform to generate a calibration matrix for a given sensor are shown. DETAILED DESCRIPTION
[0036] Figure 1 A calibration device that can be used to perform the actions of the present disclosure is shown. In an embodiment, the calibration device 100 is a special-purpose computing device. The special-purpose computing device is hardwired to perform the technology or includes a digital electronic device (such as one or more application-specific integrated circuits (ASICs) or field programmable gate arrays (FPGAs)) that is permanently programmed to perform the technology, or may include one or more general-purpose hardware processors that are programmed to perform the technology in accordance with program instructions in firmware, memory, other storage, or a combination. These special-purpose computing devices may also combine custom hard-wired logic, ASICs, or FPGAs with custom programming designs to implement the technology. In various embodiments, the special-purpose computing device is a desktop computer system, a portable computer system, a handheld device, a network device, or any other device that incorporates hard-wiring and / or program logic to implement the technology.
[0037] The computer system 100 may include a bus 102 or other communication mechanism for transmitting information, and a control circuit (e.g., a hardware processor) 104 coupled to the bus 102 for processing the information. The control circuit 104 is, for example, a general-purpose microprocessor. The computer system 100 also includes a memory 106, such as a random access memory (RAM) or other dynamic storage device, coupled to the bus 102 for storing information and instructions executed by the processor 104. In one embodiment, the memory 106 is used to store temporary variables or other intermediate information during the execution of instructions to be executed by the processor 104. These instructions, when stored in a non-transitory storage accessible to the processor 104, make the computer system 100 a special-purpose machine customized to perform the operations specified in the instructions.
[0038] Computer system 100 further includes a storage device 110 coupled to bus 102 for storing information and instructions. For example, the storage device may include one or more of a magnetic disk, an optical disk, a solid state drive, or another suitable device.
[0039] According to one embodiment, the techniques of the present disclosure are performed by computer system 100 in response to control circuitry 104 executing one or more sequences of one or more instructions contained in memory 106. These instructions may be read into memory 106 from another storage medium, such as storage device 110. Execution of the sequences of instructions contained in main memory 106 causes control circuitry 104 to perform the described process steps. In alternative embodiments, hardwired control circuitry is used in place of or in combination with software instructions.
[0040] In some embodiments, the computer system 100 also includes a communication interface 118 coupled to the bus 102. The communication interface 118 provides two-way data communication (e.g., with other devices). In some embodiments, the communication interface 118 sends and receives electrical, electromagnetic, or optical signals that carry digital data streams representing various types of information. The communication interface 118 can support various protocols. For example, the communication interface can support Bluetooth, WiFi, USB, and other suitable protocols for connecting external electronic devices to the computer system 100.
[0041] Figure 2 2 is a block diagram illustrating actions for generating a calibration matrix. In block 202, a control circuit (e.g., control circuit 104) receives spectral sensitivity data from a sensor (e.g., via communication interface 118), wherein the spectral sensitivity data is generated based on spectral responses of spectral channels of the sensor to emissions from one or more light sources. For example, a calibration device may be connected to the sensor being calibrated via communication interface 118 through an intermediate device. Communication interface 118 may receive the spectral sensitivity data and transmit it to control circuit 104 via bus 102.
[0042] In block 204, a control circuit (e.g., control circuit 104) converts the spectral sensitivity data into a plurality of spectral sensitivity data values, wherein each of the plurality of spectral sensitivity data values represents a spectral response of a channel in a plurality of spectral channels to emission from a light source in a plurality of light sources. For example, the control circuit may receive the spectral sensitivity values as a voltage or another count generated by a photodiode when it is struck by light.
[0043] In block 206, a control circuit (e.g., control circuit 104) retrieves reference spectral sensitivity data values for each light from a memory (e.g., memory 106), each spectral sensitivity data value corresponding to a spectral channel. For example, the memory may include data corresponding to spectral sensitivity values for various light sources. The data may be stored with a corresponding identifier for each light source. When the light source emits light, the identifier of the light source is transmitted to the control circuit. The control circuit uses the identifier to retrieve a reference spectral sensitivity data value corresponding to the identifier.
[0044] In block 208, the control circuit (e.g., the control circuit 104) compares each sensitivity data value to a corresponding reference value of the reference spectral sensitivity data value. For example, each reference spectral sensitivity value may be stored with an identifier of the corresponding spectral channel. The identifier may be an alphanumeric value generated when the reference value is generated. In some embodiments, the identifier may be a wavelength range (e.g., five hundred nanometers to four hundred nanometers) that the spectral channel responds to. The control circuit may iterate through each value (i.e., for each spectral channel) and identify the corresponding reference value for the channel with a matching channel identifier based on the spectral channel identifier. The control circuit then compares each matching value pair (i.e., comparing the value from the reference data to the value received from the sensor for the matching channel).
[0045] In block 210, the control circuit (e.g., control circuit 104) calculates a plurality of difference values for the plurality of spectral sensitivity data values and based on the comparison. For example, the control circuit may subtract a reference value from a corresponding (i.e., for a corresponding spectral channel) measured spectral sensitivity value. In block 212, the control circuit (e.g., control circuit 104) generates a calibration matrix for the sensor based on the plurality of difference values.
[0046] Figure 3 An example of a matrix of a three-channel sensor (eg, RGB) and corresponding difference values is shown. The matrix 300 includes slots C 1,1 To C 3,3 Each slot is configured to hold a difference value (eg, one of the difference values calculated as part of process 200). Matrix example 320 includes calculated values 322 that may be inserted into slots 302 to create a three by three matrix for a three channel sensor (eg, an RGB sensor).
[0047] In some embodiments, the control circuit is configured to transmit the calibration matrix to a device including the sensor. For example, if the control circuit uses the method described above to configure a sensor built into an electronic device (e.g., a camera), the control circuit can transmit the calibration matrix to the device for use by the device.
[0048] In some embodiments, the control circuit uses the peak intensity value for the wavelength to which the spectral channel responds. For example, because the light source emits light for a specific time period, the control circuit can use the highest intensity value recorded during this emission. In embodiments, where the control circuit calculates and uses the highest intensity (e.g., peak received level), the control circuit compares the peak intensity value for the corresponding wavelength to reference data (e.g., per spectral channel, where each channel corresponds to a wavelength range to which it responds) that is also stored as a corresponding peak intensity value. In these and other embodiments, the control circuit can store a corresponding difference value for each peak intensity value. For example, Figure 3 Element 320 shows an example of stored difference values.
[0049] In some embodiments, the control circuit can add the intensity for the time period of the emitted light. In these embodiments, the control circuit can determine the emission period of the reference data (e.g., one second) and cause the emission of light for the same period (e.g., one second) so that the reference data and the measured data have the same time period for comparing corresponding values. The control circuit can further store the difference and the time interval (e.g., one second) in a matrix. So that the calibration matrix can be used with the time interval.
[0050] In some embodiments, the control circuit causes the receiving of the measurement data. Specifically, the control circuit causes a first emission from a first light source of the plurality of light sources, the first light source emitting a first type of light. For example, the first light source can be a halogen lamp, a fluorescent lamp, an incandescent lamp, or another type of lamp. In some embodiments, the first light source can be configured to transmit light of a specific wavelength range. The control circuit stores (e.g., in memory 106) the spectral response to the first emission from the plurality of channels.
[0051] The control circuit causes a second emission from a second light source in the plurality of light sources, the second light source emitting light of a second wavelength. For example, the second light source may be a halogen lamp, a fluorescent lamp, an incandescent lamp, or another type of lamp. In some embodiments, the second light source may be configured to transmit light of a specific wavelength range. The control circuit stores (e.g., in memory 106) the spectral response to the second emission from the plurality of channels. The control circuit may repeat the process with each light source that may be used for calibration.
[0052] In some embodiments, a calibration device can be used to calibrate a sensor. The calibration device includes an illumination source having a plurality of illuminators. Each illuminator can be configured to emit light of a specific wavelength range. For example, each illuminator can be a light emitting diode (LED) lamp. The illumination source can include other components. For example, the illumination source can include a power conversion component and a command component to receive a command to start light emission of a specific illuminator and stop light emission of a specific illuminator.
[0053] In some embodiments, the control circuit causes the reception of the measurement data. Specifically, the control circuit causes a first emission from one or more light sources. For example, one or more light sources may include a device that can be configured to separate and / or mix spectral components from one or more light sources by using an optical component. That is, one or more light sources may include a configurable light source. In some embodiments, radiation from one or more light sources may be combined with a spectral filter. In some embodiments, radiation from one or more light sources may be directed through one or more filters of a filter wheel, for example, a mechanical device that can be configured to select and / or change the optical filter through which radiation from one or more light sources is directed. In some embodiments, the wavelength of radiation from one or more light sources may be adjusted. For example, the full width at half maximum (FWHM) of the radiation may be defined by the width of a slit, and / or the peak intensity of the radiation may be selected or configured. In some embodiments, one or more light sources may include a spectrally adjustable light source based on a digital micromirror device (DMD). Thus, it will be appreciated that some embodiments may include a plurality of different light sources, while other embodiments may include one or more configurable light sources that may be configured alone and / or in combination with one or more other light sources. For example, in some example embodiments, one or more configurable light sources may be configured to emit radiation substantially equivalent to a halogen lamp, a fluorescent lamp, an incandescent lamp, or another type of lamp. In some implementations, one or more configurable light sources may be configured to emit light of a specific wavelength range.
[0054] Similarly, in some embodiments, a calibration device can be used to calibrate the sensor. The calibration device can include an illumination source having one or more light sources. At least one of the one or more light sources can be a configurable light source as described above.
[0055] The calibration device also includes a receiver operable to receive spectral response data for a plurality of spectral channels. The receiver may be connected to a housing holding the sensor or may be directly connected to the sensor. The calibration device may also include a control circuit (e.g., a processor) coupled to the illumination source and the receiver. Figure 4 Actions that the control circuit may perform to generate a calibration matrix for a given sensor are shown.
[0056] In block 402, a control circuit (e.g., control circuit 104) causes a lighting source to sequentially activate each of the luminaires. For example, the control circuit may transmit a command to the lighting source to begin a lighting sequence. The lighting source may sequentially illuminate each luminaire in response to the command. In some embodiments, the control circuit may transmit a command to the lighting source to illuminate a particular luminaire. The control circuit may transmit an identifier associated with the particular luminaire with the lighting command.
[0057] In block 404, the control circuit (e.g., control circuit 104) receives, in a receiver, spectral sensitivity data for each of the spectral channels of the sensor for each luminaire. For example, the calibration device may include an interface connected to the sensor being calibrated. The receiver may be connected to one side of the interface and the sensor may be connected to the other side of the interface.
[0058] In block 406, control circuitry (e.g., control circuitry 104) converts the spectral sensitivity data into spectral sensitivity data values, where each of the spectral sensitivity data values represents a spectral response of a channel to emission from the illuminator. For example, the spectral sensitivity data may be received as a voltage and converted to scaled data values (e.g., on a scale from 0 to 1 or on a scale from -1 to 1). In some implementations, the control circuitry may convert the different format data into a format that enables comparison with stored reference data values.
[0059] In block 408, a control circuit (e.g., control circuit 104) retrieves reference spectral sensitivity data values for each of the luminaires, each spectral sensitivity data value corresponding to a channel. For example, a memory may include data corresponding to spectral sensitivity values for various light sources. The data may be stored with a corresponding identifier for each light source. When the light source emits light, the identifier of the light source is transmitted to the control circuit. The control circuit uses the identifier to retrieve a reference spectral sensitivity data value corresponding to the identifier.
[0060] In block 410, the control circuit (e.g., the control circuit 104) compares each of the spectral sensitivity data values to a corresponding reference value of the reference spectral sensitivity data value. For example, each reference spectral sensitivity value may be stored with an identifier of the corresponding spectral channel. The identifier may be an alphanumeric value generated when the reference value is generated. In some embodiments, the identifier may be a wavelength range (e.g., five hundred nanometers to four hundred nanometers) that the spectral channel responds to. The control circuit may iterate through each value (i.e., for each spectral channel) and identify the corresponding reference value for the channel with a matching channel identifier based on the spectral channel identifier. The control circuit then compares each matching value pair (i.e., comparing the value from the reference data to the value received from the sensor for the matching channel).
[0061] In block 412, the control circuit calculates corresponding difference values for the spectral sensitivity data values and based on the comparison. For example, the control circuit may subtract a reference value from a corresponding (i.e., for a corresponding spectral channel) measured spectral sensitivity value. In block 414, the control circuit (e.g., the control circuit 104) generates a calibration matrix for the sensor based on the plurality of difference values, and in block 416, the control circuit (e.g., the control circuit 104) transmits the calibration matrix to a device associated with the sensor to be calibrated. For example, the calibration matrix may be based on Figure 3A data structure of an illustration of . The data structure may be generated and transmitted to a device (eg, a camera) associated with a sensor to be calibrated.
[0062] In some embodiments, each illuminator is operable to emit a beam of light of a specific wavelength that is different from the wavelengths of the beams of the other illuminators.All or some of the illuminators combined may cover a wavelength range that covers the sensitivity range of the spectral channel of the calibrated sensor.
[0063] In some implementations, control circuitry (eg, control circuitry 104 ) transmits a command to a device associated with the sensor to calibrate the sensor based on the calibration matrix.
[0064] As discussed above, in some embodiments, peak intensity values for multiple wavelengths corresponding to multiple spectral channels may be used in process 400. Thus, for each of the multiple channels, the control circuit compares the peak intensity values for the corresponding wavelengths and stores a corresponding peak intensity difference value for each channel.
[0065] Figure 5 A color and spectral sensor for ambient light and target mitigation for a three-channel sensor (e.g., a sensor that responds to the red, green, and blue (RGB) spectrum) is shown. Based on the functions plotted, the Y channel is the best fit function. Using a matrix (e.g., Figure 3 The Y-fit function can be used to calibrate the Y channel. The Y-fit from a three-channel sensor is shown in more detail below:
[0066] Y(λ) fit =R(λ)*c 2,1 +G(λ)*c 2,2 +B(λ)*c 2,3
[0067] Figure 5 . Function 502 corresponds to the blue component of the Y fit equation. Function 504 corresponds to the green component of the Y fit equation, and function 506 corresponds to the red component of the Y fit equation. In this illustration, CIE_Y has a fairly good fit as shown by function 504. Therefore, the calibration matrix can be extrapolated from the relationship of corresponding points on the functions.
[0068] Figure 6 Another example of extrapolation of a calibration matrix for a three-channel sensor is shown. According to the plotted function 602, the fit of the X function (e.g., one spectral channel) is somewhat acceptable because there is useful information in the mid-wavelength range (e.g., 680 nm to 550 nm), but no useful information in the lower and higher wavelength ranges. Therefore, adjusting the X channel can be achieved by the following function:
[0069] X(λ) fit=R(λ)*c 1,1 +G(λ)*c 1,2 +B(λ)*c 1,3
[0070] where c 1,1 Corresponds to value 604 and example value 606. Value c 1,2 and c 1,3 There are also corresponding values in the example matrix. Y fit function 608 and Z function 610 are illustrative functions for the other two channels in the three-channel sensor.
[0071] Figure 7 Various Y fit functions for an eight channel sensor are shown. The implementation is similar to that discussed above for a 3 channel sensor. Function 702 determines the Y fit for each sensor based on a matrix (not shown), while the plotted function 704 shows the Y fit function for each fit.
[0072] Figure 8 is a block diagram illustrating another embodiment of acts for generating a calibration matrix. Figure 8 The embodiment shown in Figure 2 . However, the emission is from a configurable light source rather than from a plurality of different light sources. As described above, in some embodiments, the configurable light source may include a device that is configurable to separate and / or mix spectral components from one or more light sources by using optical components. In some embodiments, radiation from one or more light sources may be combined with a spectral filter. In some embodiments, radiation from one or more light sources may be directed through one or more filters of a filter wheel, for example, a mechanical device that is configurable to select and / or change the optical filters through which radiation from one or more light sources is directed. In some embodiments, the wavelength of radiation from one or more light sources may be adjusted, for example, the FWHM of the radiation may be limited by the width of a slit, and / or the peak intensity of the radiation may be limited. In some embodiments, one or more light sources may include a spectrally adjustable light source based on a DMD.
[0073] In block 802, a control circuit (e.g., control circuit 104) receives spectral sensitivity data from a sensor (e.g., via communication interface 118), wherein the spectral sensitivity data is generated based on the spectral response of a spectral channel of the sensor to emissions from a configurable light source. For example, a calibration device may be connected to the sensor being calibrated via communication interface 118 through an intermediate device. Communication interface 118 may receive the spectral sensitivity data and transmit it to control circuit 104 via bus 102.
[0074] In block 804, control circuitry (e.g., control circuitry 104) converts the spectral sensitivity data into a plurality of spectral sensitivity data values, wherein each of the plurality of spectral sensitivity data values represents a spectral response of a channel in a plurality of spectral channels to emission from a configurable light source. For example, the control circuitry may receive the spectral sensitivity values as a voltage or another count generated by a photodiode when it is struck by light.
[0075] In block 806, a control circuit (e.g., control circuit 104) retrieves reference spectral sensitivity data values for a configurable light source from a memory (e.g., memory 106), e.g., for each wavelength range emitted by the configurable light source, each spectral sensitivity data value corresponding to a spectral channel. For example, the memory may include data corresponding to spectral sensitivity values for various light sources. The data may be stored with a corresponding identifier of the configurable light source, e.g., for each wavelength range emitted by the configurable light source. When the configurable light source emits light (e.g., radiation), the identifier of the light source is transmitted to the control circuit. The control circuit uses the identifier to retrieve a reference spectral sensitivity data value corresponding to the identifier.
[0076] In block 808, the control circuit (e.g., the control circuit 104) compares each sensitivity data value to a corresponding reference value of the reference spectral sensitivity data value. For example, each reference spectral sensitivity value may be stored with an identifier for the corresponding spectral channel. The identifier may be an alphanumeric value generated when the reference value is generated. In some embodiments, the identifier may be a wavelength range (e.g., five hundred nanometers to four hundred nanometers) that the spectral channel responds to. The control circuit may iterate through each value (i.e., for each spectral channel) and identify the corresponding reference value for the channel with a matching channel identifier based on the spectral channel identifier. The control circuit then compares each matching value pair (i.e., comparing the value from the reference data to the value received from the sensor for the matching channel).
[0077] In block 810, the control circuit (e.g., the control circuit 104) calculates a plurality of difference values for the plurality of spectral sensitivity data values and based on the comparison. For example, the control circuit may subtract a reference value from a corresponding (i.e., for a corresponding spectral channel) measured spectral sensitivity value. In block 812, the control circuit (e.g., the control circuit 104) generates a calibration matrix for the sensor based on the plurality of difference values.
[0078] Fig. 9 Another embodiment of actions that the control circuit may perform to generate a calibration matrix for a given sensor is shown. Fig. 9 The embodiment shown in Figure 4 However, the emission comes from a luminaire comprising a configurable light source rather than from a plurality of different luminaires. Thus, the luminaire is a configurable luminaire.
[0079] In block 902, control circuitry (e.g., control circuitry 104) causes an illumination source to configure a configurable illuminator to sequentially emit radiation corresponding to different light sources (e.g., having different wavelength ranges). For example, the control circuitry may transmit a command to the illumination source to begin an illumination sequence. The illumination source configures the configurable illuminator in response to the command. In some implementations, the control circuitry may transmit a command to the illumination source to configure the configurable illuminator in a particular manner, for example, to emit light corresponding to a particular light source (such as a halogen light source, a fluorescent light source, or the like). The control circuitry may transmit an identifier associated with a particular illuminator with the illumination command.
[0080] In block 904, a control circuit (e.g., control circuit 104) receives spectral sensitivity data for each of the spectral channels of the sensor in a receiver for emitted radiation from the configurable illuminator (e.g., emitted radiation corresponding to each light source). For example, the calibration device may include an interface connected to the sensor being calibrated. The receiver may be connected to one side of the interface and the sensor may be connected to the other side of the interface.
[0081] In block 906, control circuitry (e.g., control circuitry 104) converts the spectral sensitivity data into spectral sensitivity data values, where each of the spectral sensitivity data values represents a spectral response of a channel to emissions from a configurable illuminator. For example, the spectral sensitivity data may be received as a voltage and converted to scaled data values (e.g., on a scale from 0 to 1 or on a scale from -1 to 1). In some implementations, the control circuitry may convert the different format data into a format that enables comparison with stored reference data values.
[0082] In block 908, a control circuit (e.g., control circuit 104) retrieves reference spectral sensitivity data values for radiation from a configurable luminaire (e.g., from each configuration of the configurable luminaire), each spectral sensitivity data value corresponding to a channel. For example, a memory may include data corresponding to spectral sensitivity values for various light sources. The data may be stored with a corresponding identifier for each light source. When the light source emits light, the identifier of the light source is transmitted to the control circuit. The control circuit uses the identifier to retrieve a reference spectral sensitivity data value corresponding to the identifier.
[0083] In block 910, the control circuit (e.g., the control circuit 104) compares each of the spectral sensitivity data values to a corresponding reference value of the reference spectral sensitivity data value. For example, each reference spectral sensitivity value may be stored with an identifier of the corresponding spectral channel. The identifier may be an alphanumeric value generated when the reference value is generated. In some embodiments, the identifier may be a wavelength range (e.g., five hundred nanometers to four hundred nanometers) that the spectral channel responds to. The control circuit may iterate through each value (i.e., for each spectral channel) and identify the corresponding reference value for the channel with a matching channel identifier based on the spectral channel identifier. The control circuit then compares each matching value pair (i.e., comparing the value from the reference data to the value received from the sensor for the matching channel).
[0084] In block 912, the control circuit calculates a corresponding difference value for the spectral sensitivity data value and based on the comparison. For example, the control circuit may subtract a reference value from a corresponding (i.e., for a corresponding spectral channel) measured spectral sensitivity value. In block 914, the control circuit (e.g., the control circuit 104) generates a calibration matrix for the sensor based on the plurality of difference values, and in block 916, the control circuit (e.g., the control circuit 104) transmits the calibration matrix to a device associated with the sensor to be calibrated. For example, the calibration matrix may be based on Figure 3 A data structure of an illustration of . The data structure may be generated and transmitted to a device (eg, a camera) associated with a sensor to be calibrated.
[0085] Various aspects of the subject matter and functional operations described in the present disclosure may be implemented as digital electronic circuits or software, firmware or hardware (including the structures disclosed in this specification and their equivalents), or a combination of one or more of them. The electronic control unit incorporates a digital control circuit that is configured to perform the actions required to generate ambient light measurements. In some embodiments, the electronic control unit may incorporate one or more software, firmware, or other hardware to facilitate the actions of the present disclosure. In addition, aspects of the subject matter described in the present disclosure may be implemented as one or more computer program products, that is, one or more modules of computer program instructions encoded on a computer-readable medium for execution by a data processing device or for controlling the operation of the data processing device. The computer-readable medium may be a machine-readable storage device, a machine-readable storage substrate, a memory device, a material composition that implements a machine-readable propagation signal, or a combination of one or more of them. In addition to hardware, the device may also include program code that establishes an execution environment for the computer program, such as code that constitutes processor firmware.
[0086] A computer program (also referred to as a program, software, software application, script, or code) may be written in any form of programming language, including compiled or interpreted languages, and it may be deployed in any form, including as a stand-alone program or as a module, component, subroutine, or other unit suitable for use in a computing environment. A computer program does not necessarily correspond to a file in a file system. A program may be stored in a portion of a file that holds other programs or data (e.g., one or more scripts stored in a markup language document), in a single file dedicated to the program, or in multiple coordinated files (e.g., files that store one or more modules, subroutines, or portions of code). A computer program may be deployed to execute on one computer or on multiple computers located at one location or distributed across multiple locations and interconnected by communications.
[0087] The processes and logic flows described in this specification may be performed by one or more programmable processors executing one or more computer programs to perform functions by operating on input data and generating output. The processes and logic flows may also be performed by, and the apparatus may be implemented as, a special purpose logic circuit, such as an FPGA (field programmable gate array) or an ASIC (application specific integrated circuit).
[0088] Processors suitable for executing computer programs include, by way of example, both general and special purpose microprocessors, and any one or more processors of any kind of digital computer. Typically, the processor will receive instructions and data from a read-only memory or a random access memory, or both. The essential elements of a computer are a processor for executing instructions and one or more memory devices for storing instructions and data. Computer-readable media suitable for storing computer program instructions and data include all forms of non-volatile memory, media, and memory devices, including, by way of example, semiconductor memory devices, such as EPROM, EEPROM, and flash memory devices; magnetic disks, such as internal hard disks or removable disks; magneto-optical disks; and CD ROM and DVD-ROM disks. The processor and memory may be supplemented by or incorporated into special purpose logic circuits.
[0089] Although this specification contains many details, these should not be interpreted as limitations on the scope of the present disclosure or the claimed invention, but should be interpreted as descriptions of features specific to particular embodiments of the present disclosure. Certain features described in the context of separate embodiments in this specification may also be implemented in combination in a single embodiment. Conversely, various features described in the context of a single embodiment may also be implemented in multiple embodiments individually or in any suitable sub-combination. In addition, although features may be described above as functioning in a particular combination and even if initially claimed as such, in some cases, one or more features from the claimed combination may be removed from the combination, and the claimed combination may point to a sub-combination or a variation of the sub-combination.
[0090] Similarly, while operations are depicted in the drawings in a particular order, this should not be understood as requiring that these operations be performed in the particular order shown or in sequential order, or that all illustrated operations be performed, to achieve desired results. In certain circumstances, multitasking and parallel processing may be advantageous.
[0091] Several embodiments have been described. However, it will be appreciated that various modifications may be made without departing from the spirit and scope of the invention. For example, some of the steps described above may not be order-dependent and may therefore be performed in an order different from that described.
[0092] Other implementations are within the scope of the following claims.
Claims
1. A system, include: Memory; as well as a control circuit coupled to the memory, the control circuit being configured to: receiving spectral sensitivity data from a sensor, wherein the spectral sensitivity data is generated based on spectral responses of a plurality of spectral channels of the sensor to emissions from a plurality of light sources and / or from a configurable light source; converting the spectral sensitivity data into a plurality of spectral sensitivity data values, wherein each of the plurality of spectral sensitivity data values represents a spectral response of a channel in the plurality of spectral channels to emission from a light source from the plurality of light sources and / or from the configurable light source; Retrieve from the memory a plurality of reference spectral sensitivity data values for each of the plurality of lights, each spectral sensitivity data value corresponding to a channel of the plurality of spectral channels; comparing each of a plurality of spectral sensitivity data values during an emission period to a corresponding reference value of a plurality of reference spectral sensitivity data values during the emission period; calculating, for the plurality of spectral sensitivity data values and based on the comparison, a plurality of difference values during the emission period; generating a calibration matrix for the sensor based on the plurality of difference values; as well as Emission from the light source is caused during an emission period so that the corresponding reference value and the spectral sensitivity data have the same period for comparison. 2 . The system of claim 1 , wherein the control circuit is further configured to transmit the calibration matrix to a device comprising the sensor.
3. The system of claim 1, wherein the spectral sensitivity data values include peak intensity values corresponding to a plurality of wavelengths of the plurality of spectral channels.
4. The system of claim 3, wherein the control circuit is configured to compare each of the plurality of spectral sensitivity data values with a corresponding reference value of the plurality of reference spectral sensitivity data values by: The peak intensity value of the corresponding wavelength is compared for each of the plurality of channels.
5. The system of claim 4, wherein the control circuit is configured to generate the calibration matrix for the sensor by: The corresponding difference value is stored for each wavelength.
6. The system of claim 1 , wherein the control circuit is configured to receive the spectral sensitivity data by: causing a first emission from a first light source of the plurality of light sources or from the configurable light source, the first light source or the configurable light source emitting light of a first wavelength; storing spectral responses to the first emission from the plurality of channels; causing a second emission from a second light source from the plurality of light sources or from the configurable light source, the second light source or the configurable light source emitting light at a second wavelength; as well as Spectral responses to the second emission from the plurality of channels are stored.
7. A device, include: an illumination source comprising a plurality of illuminators and / or a configurable illuminator; as well as a receiver operable to receive spectral response data for a plurality of spectral channels; a control circuit coupled to the illumination source and the receiver, the control circuit being configured to: causing the illumination source to sequentially activate each of the plurality of illuminators, or causing the illumination source to configure the configurable illuminators to sequentially emit radiation corresponding to different light sources; receiving, in the receiver, for each luminaire and / or for the configurable luminaire, spectral sensitivity data for each of a plurality of spectral channels of a sensor; converting the spectral sensitivity data into a plurality of spectral sensitivity data values, wherein each of the plurality of spectral sensitivity data values represents a spectral response of a channel of the plurality of spectral channels to emission from an illuminator of the plurality of illuminators and / or from the configurable illuminator; obtaining a plurality of reference spectral sensitivity data values for each of the plurality of luminaires and / or each configuration of the configurable luminaire, each spectral sensitivity data value corresponding to a channel of the plurality of spectral channels; comparing each of the plurality of spectral sensitivity data values with a corresponding reference value of the plurality of reference spectral sensitivity data values; calculating a plurality of difference values for the plurality of spectral sensitivity data values and based on the comparison; generating a calibration matrix for the sensor based on the plurality of difference values; transmitting the calibration matrix to a device associated with the sensor to be calibrated; as well as Emission from the light source is caused during an emission period so that the corresponding reference value and the spectral sensitivity data have the same period for comparison.
8. The apparatus of claim 7, wherein the illumination source comprises a first illuminator and a second illuminator, and wherein the first illuminator is operable to emit a light beam of a first wavelength and the second illuminator is operable to transmit a light beam of a second wavelength.
9. The apparatus of claim 7, wherein the plurality of illuminators include illuminators of different wavelengths covering a sensitivity range of the spectral channel.
10. The apparatus of claim 7, wherein the control circuit is further configured to: A command is transmitted to a device associated with the sensor to calibrate the sensor based on the calibration matrix.
11. The apparatus of claim 7, wherein the spectral sensitivity data values include peak intensity values corresponding to a plurality of wavelengths of the plurality of spectral channels.
12. The apparatus of claim 11 , wherein the control circuit is configured to compare each of the plurality of spectral sensitivity data values with a corresponding reference value of the plurality of reference spectral sensitivity data values by: The peak value of the corresponding wavelength is compared for each of the plurality of channels.
13. The apparatus of claim 12, wherein the control circuit is configured to generate the calibration matrix for the sensor by: The corresponding peak intensity difference is stored for each channel.
14. A method, include: receiving spectral sensitivity data from a sensor, wherein the spectral sensitivity data is generated based on spectral responses of a plurality of spectral channels of the sensor to emissions from a plurality of light sources and / or from a configurable light source; converting the spectral sensitivity data into a plurality of spectral sensitivity data values, wherein each of the plurality of spectral sensitivity data values represents a spectral response of a channel in the plurality of spectral channels to emission from a light source of the plurality of light sources and / or from a configurable light source; Retrieving from a memory a plurality of reference spectral sensitivity data values for each of the plurality of lights, each spectral sensitivity data value corresponding to a channel of the plurality of spectral channels; comparing each of the plurality of spectral sensitivity data values with a corresponding reference value of the plurality of reference spectral sensitivity data values; calculating a plurality of difference values for the plurality of spectral sensitivity data values and based on the comparison; generating a calibration matrix for the sensor based on the plurality of difference values; as well as Emission from the light source is caused during an emission period so that the corresponding reference value and the spectral sensitivity data have the same period for comparison.
15. The method of claim 14, further comprising transmitting the calibration matrix to a device comprising the sensor.
16. The method of claim 14, wherein the spectral sensitivity data values include peak intensity values corresponding to a plurality of wavelengths of the plurality of spectral channels.
17. The method of claim 16, wherein comparing each of the plurality of spectral sensitivity data values to a corresponding reference value of the plurality of reference spectral sensitivity data values comprises comparing the peak intensity value of the corresponding wavelength for each of the plurality of channels.
18. The method of claim 17, wherein generating the calibration matrix for the sensor comprises storing corresponding difference values for each wavelength.
19. The method of claim 14, wherein receiving the spectral sensitivity data include: causing a first emission from a first light source of the plurality of light sources or from the configurable light source, the first light source or the configurable light source emitting light of a first wavelength; storing spectral responses to the first emission from the plurality of channels; causing a second emission from a second light source from the plurality of light sources or from the configurable light source, the second light source or the configurable light source emitting light at a second wavelength; as well as Spectral responses to the second emission from the plurality of channels are stored.
Citation Information
Patent Citations
Methods for Color Sensing Ambient Light Sensor Calibration
US20170084250A1