10 Aug Accurately Configuring a Sensor Model from a Datasheet
In this post we describe how to configure an accurate model of a sensor in Imager from sensor or camera datasheets. In the case where a datasheet does not provide a particular parameter, we discuss how to estimate the value in addition to reasonable default settings to use.
Pixel Geometry (H,V, Pitch, Fill Factor)
H,V: These parameters are simply the number of imaging pixels in the horizontal and vertical directions.
Pitch: The pitch is defined as the spacing between the center of each individual pixel in the horizontal and vertical directions. This parameter is typically given as “Pixel Size” in datasheets. Imager currently only models square pixels, i.e. the horizontal and vertical pitch are the same.
Fill Factor: The fill factor is defined as the percent area of a pixel that actively senses light.
In a contemporary CMOS sensor, the actual active area of a sensor pixel is less than 100% because of obscuration from electronic components, and the need to optically and electrically isolate adjacent pixels. However most modern CMOS sensors use a combination of microlenses above each pixel and/or back-side illumination (BSI) to give an effective fill factor of near 80%.
If the fill factor is not given in a data sheet, then 80% is a safe assumption for most sensors.
Exposure Time and Frame Rate: The exposure time and frame rate are set by the user depending on their particular imaging application. In Imager, the Frame Rate limits the maximum allowable exposure time to ExposureTimeMAX = 1/FrameRate. If the Auto box is checked, Imager will find the exposure time needed to completely fill the pixel full well in the brightest areas. This condition puts the brightest areas right below the saturation condition.
Bit Depth: Many sensors provide 8 bit monochrome, or 8 bit per color channel, but it is common to find sensors and cameras capable of delivering higher bit depth images, such as 16 bit monochrome, or 10-12 bit per channel color sensors. This specification is typically contained in the datasheet. Note: to save a simulated image with a bit depth above 8, from the menu bar you need to select File>> Save Image >> Save as HDR since the default png format is limited to 8 bit images.
The Full Well is the electron carrying capacity of a pixel. Photons incident on the active pixel area create electrons which are held by the pixel until readout. A pixel can only hold a finite number of electrons, and this is its Full Well. Since the noise in an image is dependent on the number of electrons collected, this parameter must be accurately modeled to get realistic image simulations. Other common terms for full well are saturation capacity, or well depth and are in units of electrons, (see note at the end of this section).
Some sensor and camera data sheets explicitly call out the full well, in which case this value should be used. For example, the sensor review catalogs published by Point Grey give the full well specification for 50 different sensor models.
Often the full well depth is not explicitly stated in the sensor datasheet, but can be calculated from the S/N Ratio Max (dB) parameter, also called SNRMAX, and given in datasheets with units of dB. The full well depth (FW) is calculated as follows:
Full Well from SNRMAX FW = 10(SNRMAX/10)
Thus an SNRMAX of 40dB corresponds to a full well capacity of 10,000e- and an SNRMAX of 37dB means a capacity of 5,000e-.
If neither the full well, nor the SNRMAX are available, the full well for CMOS and CCD sensors can be estimated from the pixel size using the following equations:
Full Well from pixel size (PP = pixel pitch in μm, FW in electrons)
CMOS SENSOR FW = 3300*PP
CCD SENSOR FW = 3000*PP – 3000
This estimate was derived empirically from an analysis of 50 contemporary sensors. As shown in the equation, the full well capacity is correlated to pixel size (a small tea cup cannot hold as much as a large beer stein!)
Advanced Note – Full Well (FW) vs Saturation capacity (SC): In a real sensor the pixel full well may differ from the pixel saturation capacity. The saturation capacity is the number of electrons in a pixel that results in the maximum digital value output. The saturation capacity can be less than the full well capacity of the pixel. In Imager the Full Well is equivalent to the Saturation capacity for a gain of 1, or more generally: SC = FW/Gain.
Read Noise and Dark Current
Read Noise and Dark Current both create “unwanted” background signal that is indistinguishable from the “wanted” signal created by light captured by a pixel. Read Noise is the spurious signal generated by the act of “reading out” a pixel. Experimentally it can be estimated by taking a short exposure in the absence of light. Dark Current is the number of electrons spontaneously generated over time in a pixel, that are not due to light. Dark current is typically given as electrons per second, and its magnitude increases proportionally with exposure time.
Modern CMOS sensors and imaging applications typically experience minimal dark current impact because 1) the dark current is typically less than 100e-/sec, and 2) exposure times are typically less than 1/10th second. If your application involves long exposures, however, it becomes more important to model the dark current accurately.
Determining Read Noise
When a data sheet explicitly provides the Read Noise (sometimes temporal dark noise, or dark noise), this value in electrons can be used directly. Usually datasheets instead cite Dynamic Range in dB (DRdB), which is equivalent to 20log(SNR), where the SNR is the maximum signal to (read) noise ratio.
Read Noise from Dynamic Range RNe-=FWe-/10(DRdB/20)
Determining Dark Current
Datasheets often do not provide a value for Dark Current, but instead include this effect in the Dynamic Range value taken under typical imaging conditions. If your imaging application uses long exposures, or very low light conditions, we suggest either getting the exact value from the sensor vendor or using the a default value of 10e-/sec which is a good estimate for most contemporary CMOS sensors.
Gain and Max Gain
Gain refers to the analog amplification of the voltage signal from a pixel before it is digitized at the A/D converter. In Imager, the sensor model is configured so that at a gain of 1, the A/D converter will output its maximum value when the pixel electron count reaches the Full Well. The gain is linear, so a gain of 2 will result in the max A/D output when the pixel electron count is 50% of the Full Well, as the table below shows:
|Full well (e-)||Pixel Signal (e-)||Gain||ADU Output (for 8 bit ADC)|
Changing the gain does not improve the SNRMAX or Dynamic Range, but for low light levels it reduces the quantization of the pixel intensity values and decreases the effective quantization noise (compared to increasing the brightness of the saved image with photo-editing software).
If a sensor data sheet states the available analog gain settings, then Max Gain should be set to the maximum analog value cited. Otherwise the default value of 10 can be used.
Auto Gain: If auto gain is checked, then Imager will automatically adjust the gain (up to the Max Gain value) to an appropriate value. If this is unchecked, then the Gain value will be used.
Sensor Type, QE Spectrum, and CFA Transmission
These parameters relate to the sensitivity and color response characteristics of the modeled sensor.
Sensor type: Imager models either monochrome (grayscale) or color sensors. The color sensor model has a color filter array (CFA) arranged in a 2×2 cell with a Green, Red, Blue, Green pattern (GRBG).
QE Spectrum: The Quantum Efficiency (QE) Spectrum determines the probability that a pixel will absorb a photon and capture an electron from light of a certain wavelength. Imager has three options for QE spectrum: Silicon, Uniform, and Custom.
- Silicon: Reproduces a QE curve from 300nm to 1.1μm for a typical silicon CMOS sensor.
- Uniform: This setting sets a constant, user defined QE over all wavelengths.
- Custom: This allows the user to enter wavelength/QE pairs to create any QE profile between 300nm and 1.1μm
CFA Transmission: This parameter sets the color characteristics of the color filter array for accurate modeling of color sensor response. The options are Gaussian, Top Hat, and Custom.
- Gaussian: Creates a Gaussian shaped color filter profile for R, G, and B channels that has a maximum value of 1 and FWHM of 100nm, centered on 650nm, 550nm, and 450nm respectively.
- Top Hat: Creates a “square wave” shaped filter profile for R, G, and B channels that has a value of 1 over a width of 100nm, centered on 650nm, 550nm, and 450nm respectively. The values are 0 at all other wavelengths.
- Custom: Allows the user to enter wavelength/transmission pairs to create any color filter profile for the R, G and B channels between 300nm and 1.1μm.
Setting up a monochrome sensor.
First choose “monochrome” for Sensor Type, then set the QE Spectrum.
Silicon: This setting uses typical QE values for a silicon image sensor and can be used if no QE spectrum information is given in a datasheet of a silicon sensor.
Custom: If a datasheet shows a quantum efficiency spectrum, the values can be entered here. Typically no more than 10 pairs of wavelength and QE values need to be entered to get a smooth representative curve. Note that QE value is represented by a number between 0 and 1.
Setting up a Color Sensor
First choose “Color” for Sensor Type.
The next step depends on what kind of Sensor QE and CFA transmission data are provided in the datasheet.
Typically a datasheet will provide the combined sensor/CFA QE response for each color channel. The combined sensor/CFA QE is equivalent to the QE of the silicon sensor, multiplied by the % transmission of the CFA, as a function of wavelength. An example is shown below.
This sensor shows that the green channel has a 62% QE at 540nm. In Imager these points would be entered as wavelength/transmission pairs, with the QE set to uniform with a value of 100%.
Entering Color QE Spectrum into the CFA editor:
QE Spectrum: Set to Uniform, and 100% (because the spectral QE data is the combined sensor/CFA QE)
CFA Transmission: Set to Custom and then open the CFA editor by clicking on the edit button. Enter in Wavelength and QE data pairs for each R,G, and B channel corresponding to the response shown in the above spectral plot.
If you have data in a spreadsheet, you can copy and paste directly into Imager’s Color Filter Array editor, making sure that the Wavelength units are in microns and the Transmission 0-100% is normalized to 0-1.
Example from above datasheet, red channel
The following table of wavelength/ QE values were taken from the RED QE Spectral plot, and then pasted into the RED channel of the CFA Editor.
|Wavelength (um)||QE Value (0 to 1)||Notes|
|0.3||0||The datasheet plot stops at 390nm. Add in a 0 value at a short wavelength and Imager will smoothly interpolate|
Sensor Peak Chief Ray angle and Angular Coupling
Use the following defaults if these parameters are not provided in the datasheet:
Sensor Peak Chief Ray Angle: 0 deg
Angular Coupling: 60 deg (BSI), 35deg (FSI)
Sensor pixels only capture light from within a certain acceptance cone. The extent of this cone is described by the Angular Coupling parameter. At the center of the sensor, the axis of the acceptance cone is vertical, but at pixels near the edge of the sensor, the axis of the cone can be tilted depending on the characteristics of the micro lenses. In Imager, this shift in the angle is described by the Sensor Peak Chief Ray Angle parameter. This is shown in the figure below:
Pixels only detect light that falls within an acceptance cone, the angular extent is described by the Angular Coupling parameter. The angular coupling parameter is not often cited in datasheets, requiring the user to contact the sensor manufacturer for an accurate value.
If the angle of the acceptance cone is known, this should be entered into the Angular Coupling text box. Default values of 35deg for FSI sensors and 60deg for BSI sensors should be used if this data is not available.
Advanced Note: FSI and BSI. Front-side illuminated (FSI) sensors are configured so that electronic components and wiring are on the same side of the sensor as the incident light. Back Side Illuminated (BSI) sensors have light incident on the “back” side of the sensor which lacks these components and interconnects. FSI sensors typically suffer from lower Fill Factors, and smaller acceptance cones (~35 deg), compared to BSI sensors which may have >80% fill factor and acceptance angles of 60deg or more.
Sensor Peak Chief Ray Angle:
In the center of the sensor, the pixel’s acceptance cone is vertical, but at pixels away from the center, the cone’s axis can be tilted towards the center of the sensor. This is by design to accommodate the angle of light coming from the lens (described as the lens chief ray angle), and is accomplished by shifting the microlens’ position with respect to the pixel active area. Two types of Sensor Peak CRA may be entered:
Linear shift (text box): If the data sheet specifies a linearly varying peak CRA, enter its value into the “Sensor peak chief ray angle” text box. If the value is 20deg, for example, this means that the angle of the acceptance cone axis is 20deg from vertical at the corner of the sensor, and 0deg at the center, with intermediate values varying linearly with radial position.
Custom (check box): If a datasheet provides a graph or table of Sensor CRA vs Image height, that data should be entered into the Sensor Chief Ray Angle Editor that is activated by checking the box and clicking the pencil (edit) icon. The example graph below is from a datasheet for the ON Semi AR1335 1/3.2 13Mp CMOS sensor.
Note: not all the values need to be input into Imager, the image below shows the CRA model in Imager using 11 values from the sensor datasheet. In Imager, the image height goes from 0 to 1, whereas in the datasheet it is 0% to 100%.
These two parameters are advanced parameters, and are used to accurately model coupling effects between a lens and sensor which cause fall off of light at the edges of a sensor, or limit the collected light for faster F/# systems.
Tilt and Decenter
These parameters have default values of 0 which should be used unless the user wants to model displacement relative to the lens, for example, to model variation in manufacturing or assembly of camera components.
Entering a non-zero Tilt value will incline the sensor along either the x-axis (horizontal) or y-axis (vertical) up to 45deg.
Entering a non-zero Decenter value will shift the position of the sensor along the x- or y-axis.