Image Format Control
Region Of Interest
An image region of interest (ROI) lets you specify a portion of the image so that after each image is acquired only the pixel information from the specified portion is processed.
Use the following features to specify the location and size of the ROI. All values are in pixels.
OffsetX - Horizontal offset from the origin to the ROI.
Width - Width of the image provided by the device. This reflects the current ROI. The maximum value of this feature takes into account horizontal binning, decimation, or any other function changing the maximum horizontal dimensions of the image and is typically equal to WidthMax minus OffsetX.
OffsetY - Vertical offset from the origin to the ROI.
Height - Height of the image provided by the device. This reflects the current ROI. The maximum value of this feature takes into account vertical binning, decimation, or any other function changing the maximum vertical dimensions of the image and is typically equal to HeightMax minus OffsetY.
Binning
Binning refers to the act of combining the signal from groups of photo-sensitive cells into a larger logical pixel. This is achieved by adding (additive). Binning is implemented in analog by the sensor.
Note: Changes to binning features can only be made while the camera is not streaming.
Use the BinningSelector to choose the binning engine. This affects both horizontal and vertical binning. The choices are:
All - the total amount of binning. In this mode, the camera adjusts the sensor/ISP binning to achieve the best image quality with the fastest frame rate.
Sensor - the portion of binning implemented in analog by the sensor. Binning done by the sensor usually results in a higher frame rate. Unless otherwise specified, or unsupported, binning is done by the sensor by default.
ISP - the portion of binning implemented digitally by the ISP. Unless otherwise specified, binning is done by the ISP if sensor binning is is unsupported or compromises image quality.
Use BinningHorizontalMode and BinningVerticalMode to choose the algorithm to perform the combination. The choices are:
Additive - The response from the combined cells are added, resulting in increased sensitivity (a brighter image).
Average - The response from the combined cells are averaged, resulting in increased signal to noise ratio. Some sensors do not support average binning.
Use BinningHorizontal and BinningVertical to set the number of cells to combine. Binning values reduce the resolution of the image by a corresponding factor. A value of 1 indicates no binning. This must be set to 1 for decimation to be active.
ADC Bit Depth
All camera sensors incorporate an analog to digital converter (ADC) to digitize the images.
The camera's ADC is configured to a fixed bit output. This is not the same as pixel bit depth. If the pixel format selected has fewer bits per pixel than the ADC output, the least significant bits are dropped. If the pixel format selected has greater bits per pixel than the ADC output, the least significant bits are padded and can be discarded by the user. Image data is left-aligned across a 2-byte format.
For example, for a 12-bit output, the least significant 4 bits are padded in order to fill 2 bytes (0xFFF0).
A 10-bit conversion produces 1,024 possible values between 0 and 65,472.
A 12-bit conversion produces 4,096 possible values between 0 and 65,520.
A 14-bit conversion produces 16,384 possible values between 0 and 65,532.
Some image sensors support multiple ADC bit depths. (Not all ADC bit depths are supported on all cameras.) A higher ADC bit depth results in better image quality but slower maximum frame rate. Stop acquisition then use the ADC Bit Depth control to make a selection. Supported ADC bit depths are also listed in the camera's specification table.
Test Pattern
The camera is capable of outputting continuous static images for testing and development purposes.
Use the TestPatternGeneratorSelector feature to choose which test pattern to control.
Sensor produces a test pattern that varies based on the image sensor.
Set the TestPattern feature to Off to disable the selected test pattern generator.
When Sensor is selected, create a test pattern by setting the TestPattern feature to Sensor Test Pattern.
When Pipeline Start is selected, the test pattern can be defined by a user uploaded image by setting the TestPattern feature to Injected Image. The image uploaded by this test pattern needs to be the same bit depth as the sensor ADC Bit Depth in an unpacked format.
The Variable Frame Sequence option generates a sequence of frames containing varying test patterns. The sequence resets at the start of acquisition.
Most image processing features (such as Gamma, Balance Ratio, and others) are still available when the test pattern is on and can alter the test pattern image. Some features for controlling the sensor do not affect the test pattern image, such as Exposure Time, Gain, and analog Black Level. It is recommended to turn Exposure Auto and Gain Auto Off when using a test pattern, as those features do not function properly when the test pattern is on.
Note that the test pattern generators must be set to Off to get the actual image data from the sensor.
Pixel Format
Format of the pixel provided by the camera. Use PixelFormat feature to select from a list of supported formats. (Not all formats are supported on all cameras.) Once a format is selected, the following values are derived:
PixelSize provides the total size in bits of the image's pixel. Note: the pixel size is limited by the pixel format, not the sensor.
PixelDynamicRangeMin is the minimum value that can be returned during the digitization process. This corresponds to the darkest value of the camera. For color cameras, this returns the smallest value that each color component can take.
PixelDynamicRangeMax is the maximum value that can be returned during the digitization process. This corresponds to the brightest value of the camera. For color cameras, this returns the largest value that each color component can take.
Note: On the color sensor, non-bayer pixel formats are supported with ISP enabled; and bayer pixel formats are supported with Isp disabled.
Single Channel 8-bit and 16-bit Formats
8-bit Formats | Mono8 | 8-bit monochrome packed format |
16-bit Formats | Mono16 | 16-bit monochrome packed format |
Note: For Mono16 - when ISP is off, the lower n bits of each pixel contain actual image data (where n is the ADC bit depth). For example, on FFY the ADC bit depth is 10-bit so when selecting mono16 on the lower 10 bits contain the image data. This may result in a slightly darker image.
When ISP is on, the bits in each pixel always use the full range of the selecting output pixel format so when selecting mono16 all 16 bits potentially contain image data.
Reverse X
When Reverse X is enabled, it horizontally flips the image sent by the camera. The region of interest is applied after flipping.
For color cameras, the bayer pixel format may be changed after flipping. For example, BayerRG16 is changed to BayerGR16.
Reverse Y
When Reverse Y is enabled, it vertically flips the image sent by the camera. The region of interest is applied after flipping.
For color cameras, the bayer pixel format may be changed after flipping. For example, BayerRG16 is changed to BayerGB16.
Summary Table
Name | Interface | Access | Visibility | Description |
---|---|---|---|---|
Sensor Width | IInteger | RO | Expert | Effective width of the sensor in pixels. |
Sensor Height | IInteger | RO | Expert | Effective height of the sensor in pixels. |
Width Max | IInteger | Expert | Maximum width of the image (in pixels). The dimension is calculated after horizontal binning. WidthMax does not take into account the current Region of interest (Width or OffsetX). | |
Height Max | IInteger | Expert | Maximum height of the image (in pixels). This dimension is calculated after vertical binning. HeightMax does not take into account the current Region of interest (Height or OffsetY). | |
Width | IInteger | Beginner | Width of the image provided by the device (in pixels). | |
Height | IInteger | Beginner | Height of the image provided by the device (in pixels). | |
Offset X | IInteger | Beginner | Horizontal offset from the origin to the ROI (in pixels). | |
Offset Y | IInteger | Beginner | Vertical offset from the origin to the ROI (in pixels). | |
Pixel Format | IEnumeration | Beginner | Format of the pixel provided by the camera. | |
Pixel Size | IEnumeration | RO | Expert | Total size in bits of a pixel of the image. |
Pixel Color Filter | IEnumeration | RO | Expert | Type of color filter that is applied to the image. Only applies to Bayer pixel formats. All others have no color filter. |
Pixel Dynamic Range Min | IInteger | RO | Expert | Minimum value that can be returned during the digitization process. This corresponds to the darkest value of the camera. For color cameras, this returns the smallest value that each color component can take. |
Pixel Dynamic Range Max | IInteger | RO | Expert | Maximum value that can be returned during the digitization process. This corresponds to the brightest value of the camera. For color cameras, this returns the biggest value that each color component can take. |
ISP Enable | IBoolean | RW | Expert | Controls whether the image processing core is used for optional pixel format mode (i.e. mono). Enabling ISP consumes more power but is required for auto algorithms (such as exposure and gain) to work. Pixel format bit depths that are greater than the sensor ADC bit depth utilize the full value range per pixel. When ISP is disabled, raw sensor data is LSB aligned in each pixel. |
Isp Enable Lock State | ICategory | RO | Expert | Category for the Isp Enable Lock State features. |
Binning Selector | IEnumeration | Beginner | Selects which binning engine is controlled by the BinningHorizontal and BinningVertical features. | |
Binning Horizontal Mode [Binning Selector] | IEnumeration | Expert | ||
Binning Vertical Mode [Binning Selector] | IEnumeration | Expert | ||
Binning Horizontal [Binning Selector] | IInteger | Beginner | Number of horizontal photo-sensitive cells to combine together. This reduces the horizontal resolution (width) of the image. A value of 1 indicates that no horizontal binning is performed by the camera. This value must be 1 for decimation to be active. | |
Binning Vertical [Binning Selector] | IInteger | Beginner | Number of vertical photo-sensitive cells to combine together. This reduces the vertical resolution (height) of the image. A value of 1 indicates that no vertical binning is performed by the camera. This value must be 1 for decimation to be active. | |
Reverse X | IBoolean | RW | Expert | Horizontally flips the image sent by the device. The region of interest is applied after flipping. For color cameras the bayer pixel format is affected. For example, BayerRG16 changes to BayerGR16. |
Reverse Y | IBoolean | RW | Expert | Vertically flips the image sent by the device. The region of interest is applied after flipping. For color cameras the bayer pixel format is affected. For example, BayerRG16 changes to BayerGB16. |
Test Pattern Generator Selector | IEnumeration | Selects which test pattern generator is controlled by the TestPattern feature. | ||
Test Pattern [Test Pattern Generator Selector] | IEnumeration | Selects the type of test pattern that is generated by the device as image source. | ||
Injected Image Width | IInteger | Beginner | Width of the injected image pattern. | |
Injected Image Height | IInteger | Beginner | Height of the injected image pattern. | |
ADC Bit Depth | IEnumeration | Beginner | Selects which ADC bit depth to use. A higher ADC bit depth results in better image quality but slower maximum frame rate. |
Image Format Control Features
Sensor Width
Effective width of the sensor in pixels.
Property | Value |
---|---|
Name | SensorWidth |
Interface | IInteger |
Access | RO |
Unit | |
Visibility | Expert |
Value | 1456 |
Sensor Height
Effective height of the sensor in pixels.
Property | Value |
---|---|
Name | SensorHeight |
Interface | IInteger |
Access | RO |
Unit | |
Visibility | Expert |
Value | 1098 |
Width Max
Maximum width of the image (in pixels). The dimension is calculated after horizontal binning. WidthMax does not take into account the current Region of interest (Width or OffsetX).
Property | Value |
---|---|
Name | WidthMax |
Interface | IInteger |
Access | |
Unit | |
Visibility | Expert |
Height Max
Maximum height of the image (in pixels). This dimension is calculated after vertical binning. HeightMax does not take into account the current Region of interest (Height or OffsetY).
Property | Value |
---|---|
Name | HeightMax |
Interface | IInteger |
Access | |
Unit | |
Visibility | Expert |
Width
Width of the image provided by the device (in pixels).
Property | Value |
---|---|
Name | Width |
Interface | IInteger |
Access | |
Unit | |
Visibility | Beginner |
Height
Height of the image provided by the device (in pixels).
Property | Value |
---|---|
Name | Height |
Interface | IInteger |
Access | |
Unit | |
Visibility | Beginner |
Offset X
Horizontal offset from the origin to the ROI (in pixels).
Property | Value |
---|---|
Name | OffsetX |
Interface | IInteger |
Access | |
Unit | |
Visibility | Beginner |
Offset Y
Vertical offset from the origin to the ROI (in pixels).
Property | Value |
---|---|
Name | OffsetY |
Interface | IInteger |
Access | |
Unit | |
Visibility | Beginner |
Pixel Format
Format of the pixel provided by the camera.
Property | Value |
---|---|
Name | PixelFormat |
Interface | IEnumeration |
Access | |
Visibility | Beginner |
Enumeration Values |
---|
Mono8 |
Mono16 |
BayerGR8 |
BayerRG8 |
BayerGB8 |
BayerBG8 |
BayerGR16 |
BayerRG16 |
BayerGB16 |
BayerBG16 |
BGR8 |
Pixel Size
Total size in bits of a pixel of the image.
Property | Value |
---|---|
Name | PixelSize |
Interface | IEnumeration |
Access | RO |
Visibility | Expert |
Enumeration Values |
---|
Bpp8 |
Bpp16 |
Bpp24 |
Pixel Color Filter
Type of color filter that is applied to the image. Only applies to Bayer pixel formats. All others have no color filter.
Property | Value |
---|---|
Name | PixelColorFilter |
Interface | IEnumeration |
Access | RO |
Visibility | Expert |
Enumeration Values |
---|
None |
Pixel Dynamic Range Min
Minimum value that can be returned during the digitization process. This corresponds to the darkest value of the camera. For color cameras, this returns the smallest value that each color component can take.
Property | Value |
---|---|
Name | PixelDynamicRangeMin |
Interface | IInteger |
Access | RO |
Unit | |
Visibility | Expert |
Value | 0 |
Pixel Dynamic Range Max
Maximum value that can be returned during the digitization process. This corresponds to the brightest value of the camera. For color cameras, this returns the biggest value that each color component can take.
Property | Value |
---|---|
Name | PixelDynamicRangeMax |
Interface | IInteger |
Access | RO |
Unit | |
Visibility | Expert |
ISP Enable
Controls whether the image processing core is used for optional pixel format mode (i.e. mono). Enabling ISP consumes more power but is required for auto algorithms (such as exposure and gain) to work. Pixel format bit depths that are greater than the sensor ADC bit depth utilize the full value range per pixel. When ISP is disabled, raw sensor data is LSB aligned in each pixel.
Property | Value |
---|---|
Name | IspEnable |
Interface | IBoolean |
Access | RW |
Visibility | Expert |
Isp Enable Lock State
Category for the Isp Enable Lock State features.
Property | Value |
---|---|
Name | IspLockState |
Interface | ICategory |
Access | RO |
Visibility | Expert |
Binning Selector
Selects which binning engine is controlled by the BinningHorizontal and BinningVertical features.
Property | Value |
---|---|
Name | BinningSelector |
Interface | IEnumeration |
Access | |
Visibility | Beginner |
Enumeration Values |
---|
All |
Sensor |
Binning Horizontal Mode
Property | Value |
---|---|
Name | BinningHorizontalMode [Binning Selector] |
Interface | IEnumeration |
Access | |
Visibility | Expert |
Enumeration Values |
---|
Sum |
Average |
Binning Vertical Mode
Property | Value |
---|---|
Name | BinningVerticalMode [Binning Selector] |
Interface | IEnumeration |
Access | |
Visibility | Expert |
Enumeration Values |
---|
Sum |
Average |
Binning Horizontal
Number of horizontal photo-sensitive cells to combine together. This reduces the horizontal resolution (width) of the image. A value of 1 indicates that no horizontal binning is performed by the camera. This value must be 1 for decimation to be active.
Property | Value |
---|---|
Name | BinningHorizontal [Binning Selector] |
Interface | IInteger |
Access | |
Unit | |
Visibility | Beginner |
Binning Vertical
Number of vertical photo-sensitive cells to combine together. This reduces the vertical resolution (height) of the image. A value of 1 indicates that no vertical binning is performed by the camera. This value must be 1 for decimation to be active.
Property | Value |
---|---|
Name | BinningVertical [Binning Selector] |
Interface | IInteger |
Access | |
Unit | |
Visibility | Beginner |
Reverse X
Horizontally flips the image sent by the device. The region of interest is applied after flipping. For color cameras the bayer pixel format is affected. For example, BayerRG16 changes to BayerGR16.
Property | Value |
---|---|
Name | ReverseX |
Interface | IBoolean |
Access | RW |
Visibility | Expert |
Reverse Y
Vertically flips the image sent by the device. The region of interest is applied after flipping. For color cameras the bayer pixel format is affected. For example, BayerRG16 changes to BayerGB16.
Property | Value |
---|---|
Name | ReverseY |
Interface | IBoolean |
Access | RW |
Visibility | Expert |
Test Pattern Generator Selector
Selects which test pattern generator is controlled by the TestPattern feature.
Property | Value |
---|---|
Name | TestPatternGeneratorSelector |
Interface | IEnumeration |
Access | |
Visibility |
Enumeration Values |
---|
Sensor |
PipelineStart |
Test Pattern
Selects the type of test pattern that is generated by the device as image source.
Property | Value |
---|---|
Name | TestPattern [Test Pattern Generator Selector] |
Interface | IEnumeration |
Access | |
Visibility |
Enumeration Values |
---|
Off |
SensorTestPattern |
Injected Image Width
Width of the injected image pattern.
Property | Value |
---|---|
Name | InjectedWidth |
Interface | IInteger |
Access | |
Unit | |
Visibility | Beginner |
Injected Image Height
Height of the injected image pattern.
Property | Value |
---|---|
Name | InjectedHeight |
Interface | IInteger |
Access | |
Unit | |
Visibility | Beginner |
ADC Bit Depth
Selects which ADC bit depth to use. A higher ADC bit depth results in better image quality but slower maximum frame rate.
Property | Value |
---|---|
Name | AdcBitDepth |
Interface | IEnumeration |
Access | |
Visibility | Beginner |
Enumeration Values |
---|
Bit10 |