Skip to content

Decimation#

The Decimation camera feature allows you to reduce the number of sensor pixel columns or rows that are transmitted by the camera.

This procedure is also known as "subsampling". It reduces the amount of data to be transferred and may increase the camera's frame rate.

Info

  • When decimation is used (horizontal, vertical, or both), the Scaling feature is not available.
  • When horizontal decimation is used, horizontal binning is not available.
  • When vertical decimation is used, vertical binning is not available.

Using the Feature#

How It Works#

You can choose between horizontal and vertical decimation.

Vertical Decimation#

If you enable vertical decimation, the following applies:

  • On mono cameras, if you specify a vertical decimation factor of n, the camera transmits only every nth row. For example, when you specify a vertical decimation factor of 2, the camera transmits row 1, skips row 2, transmits row 3, and so on:

    Vertical Decimation by 2 on Mono Cameras

  • On color cameras, if you specify a vertical decimation factor of n, the camera transmits only every nth pair of rows. For example, when you specify a vertical decimation factor of 2, the camera transmits rows 1 and 2, skips rows 3 and 4, transmits rows 5 and 6, and so on:

    Vertical Decimation by 2 on Color Cameras

As a result, the image height is reduced. For example, enabling vertical decimation by 2 halves the image height. The camera automatically adjusts the image ROI settings.

Vertical decimation significantly increases the camera's frame rate.

Horizontal Decimation#

If you enable horizontal decimation, the following applies:

  • On mono* cameras, if you specify a horizontal decimation factor of n, the camera transmits only every nth *column. For example, if specify set a horizontal decimation factor of 2, the camera transmits column 1, skips column 2, transmits column 3, and so on:

    Horizontal Decimation by 2 on Mono Cameras

  • On color* cameras, if you specify a horizontal decimation factor of n, the camera transmits only every nth *pair of columns. For example, if you specify a horizontal decimation factor of 2, the camera transmits columns 1 and 2, skips columns 3 and 4, transmits columns 5 and 6, and so on:

    Horizontal Decimation by 2 on Color Cameras

As a result, the image width is reduced. For example, enabling horizontal decimation by 2 halves the image width. The camera automatically adjusts the image ROI settings.

Horizontal decimation does not (or only to a very small extent) increase the camera's frame rate.

Configuring Decimation#

To configure decimation:

  1. Make sure the camera is idle, i.e., not capturing images.
  2. Disable binning, if available.
  3. Disable scaling, if available, by setting the scaling factor to 1.
  4. To configure vertical decimation, enter a value for the DecimationVertical parameter.
  5. To configure horizontal decimation, enter a value for the DecimationHorizontal parameter.

The value of the parameters defines the decimation factor. Depending on your camera model, the following values are available:

  • 1: Disables decimation.
  • 2, 3, 4, …: Enables decimation by 2, 3, 4, and so on.

For example, setting DecimationHorizontal to 3 enables horizontal decimation by 3.

Info

If decimation is enabled and you set one or both of the parameters back to 1, the image ROI size may be smaller than the maximum possible size. In this case, you must manually restore the image ROI parameters back to their maximum values.

Considerations When Using Decimation#

Effect on ROI Settings

When you are using decimation, the settings for your image ROIs and auto function ROIs refer to the resulting number of rows and columns.

For example, assume that you are using a camera with a 1280 x 960 sensor. Horizontal decimation by 2 and vertical decimation by 2 are enabled. In this case, the maximum ROI width would be 640 and the maximum ROI height would be 480.

Reduced Resolution

Using decimation effectively reduces the resolution of the camera's imaging sensor. For example, if you set a camera with a 1280 x 960 sensor to use horizontal decimation by 2 and vertical decimation by 2, the effective resolution of the sensor is reduced to 640 x 480.

Possible Image Distortion

Objects will only appear undistorted in the image if the vertical and horizontal decimation factors are equal. With all other combinations, objects will appear distorted. For example, if you combine vertical decimation by 2 with horizontal decimation by 4, the target objects will appear squashed.

Specifics#

Show all camera models

Camera Model Horizontal Decimation Factors Vertical Decimation Factors
a2A1920-51gcBAS Decimation feature not supported Decimation feature not supported
a2A1920-51gcPRO Decimation feature not supported Decimation feature not supported
a2A1920-51gmBAS Decimation feature not supported Decimation feature not supported
a2A1920-51gmPRO Decimation feature not supported Decimation feature not supported
a2A1920-160ucBAS Decimation feature not supported Decimation feature not supported
a2A1920-160ucPRO Decimation feature not supported Decimation feature not supported
a2A1920-160umBAS Decimation feature not supported Decimation feature not supported
a2A1920-160umPRO Decimation feature not supported Decimation feature not supported
a2A2590-22gcBAS Decimation feature not supported Decimation feature not supported
a2A2590-22gcPRO Decimation feature not supported Decimation feature not supported
a2A2590-22gmBAS Decimation feature not supported Decimation feature not supported
a2A2590-22gmPRO Decimation feature not supported Decimation feature not supported
a2A2590-60ucBAS Decimation feature not supported Decimation feature not supported
a2A2590-60ucPRO Decimation feature not supported Decimation feature not supported
a2A2590-60umBAS Decimation feature not supported Decimation feature not supported
a2A2590-60umPRO Decimation feature not supported Decimation feature not supported
a2A3840-13gcBAS Decimation feature not supported Decimation feature not supported
a2A3840-13gcPRO Decimation feature not supported Decimation feature not supported
a2A3840-13gmBAS Decimation feature not supported Decimation feature not supported
a2A3840-13gmPRO Decimation feature not supported Decimation feature not supported
a2A3840-45ucBAS Decimation feature not supported Decimation feature not supported
a2A3840-45ucPRO Decimation feature not supported Decimation feature not supported
a2A3840-45umBAS Decimation feature not supported Decimation feature not supported
a2A3840-45umPRO Decimation feature not supported Decimation feature not supported
acA640-90gc Decimation feature not supported Decimation feature not supported
acA640-90gm Decimation feature not supported Decimation feature not supported
acA640-90uc Decimation feature not supported Decimation feature not supported
acA640-90um Decimation feature not supported Decimation feature not supported
acA640-120gc Decimation feature not supported Decimation feature not supported
acA640-120gm Decimation feature not supported Decimation feature not supported
acA640-120uc Decimation feature not supported Decimation feature not supported
acA640-120um Decimation feature not supported Decimation feature not supported
acA640-121gm Decimation feature not supported Decimation feature not supported
acA640-300gc Decimation feature not supported Decimation feature not supported
acA640-300gm Decimation feature not supported Decimation feature not supported
acA640-750uc Decimation feature not supported Decimation feature not supported
acA640-750um Decimation feature not supported Decimation feature not supported
acA720-290gc Decimation feature not supported Decimation feature not supported
acA720-290gm Decimation feature not supported Decimation feature not supported
acA720-520uc Decimation feature not supported Decimation feature not supported
acA720-520um Decimation feature not supported Decimation feature not supported
acA780-75gc Decimation feature not supported Decimation feature not supported
acA780-75gm Decimation feature not supported Decimation feature not supported
acA800-200gc Decimation feature not supported Decimation feature not supported
acA800-200gm Decimation feature not supported Decimation feature not supported
acA800-510uc Decimation feature not supported Decimation feature not supported
acA800-510um Decimation feature not supported Decimation feature not supported
acA1280-60gc 1, 2, 3, …, 32 1, 2, 3, …, 32
acA1280-60gm 1, 2, 3, …, 32 1, 2, 3, …, 32
acA1300-22gc Decimation feature not supported Decimation feature not supported
acA1300-22gm Decimation feature not supported Decimation feature not supported
acA1300-30gc Decimation feature not supported Decimation feature not supported
acA1300-30gm Decimation feature not supported Decimation feature not supported
acA1300-30uc Decimation feature not supported Decimation feature not supported
acA1300-30um Decimation feature not supported Decimation feature not supported
acA1300-60gc 1, 2, 3, …, 32 1, 2, 3, …, 32
acA1300-60gm 1, 2, 3, …, 32 1, 2, 3, …, 32
acA1300-60gmNIR 1, 2, 3, …, 32 1, 2, 3, …, 32
acA1300-75gc Decimation feature not supported Decimation feature not supported
acA1300-75gm Decimation feature not supported Decimation feature not supported
acA1300-200uc Decimation feature not supported Decimation feature not supported
acA1300-200um Decimation feature not supported Decimation feature not supported
acA1440-73gc Decimation feature not supported Decimation feature not supported
acA1440-73gm Decimation feature not supported Decimation feature not supported
acA1440-220uc Decimation feature not supported Decimation feature not supported
acA1440-220um Decimation feature not supported Decimation feature not supported
acA1600-20gc Decimation feature not supported Decimation feature not supported
acA1600-20gm Decimation feature not supported Decimation feature not supported
acA1600-20uc Decimation feature not supported Decimation feature not supported
acA1600-20um Decimation feature not supported Decimation feature not supported
acA1600-60gc 1, 2, 3, …, 32 1, 2, 3, …, 32
acA1600-60gm 1, 2, 3, …, 32 1, 2, 3, …, 32
acA1920-25gc Decimation feature not supported Decimation feature not supported
acA1920-25gm Decimation feature not supported Decimation feature not supported
acA1920-25uc Decimation feature not supported Decimation feature not supported
acA1920-25um Decimation feature not supported Decimation feature not supported
acA1920-40gc Decimation feature not supported Decimation feature not supported
acA1920-40gm Decimation feature not supported Decimation feature not supported
acA1920-40uc Decimation feature not supported Decimation feature not supported
acA1920-40ucMED Decimation feature not supported Decimation feature not supported
acA1920-40um Decimation feature not supported Decimation feature not supported
acA1920-40umMED Decimation feature not supported Decimation feature not supported
acA1920-48gc Decimation feature not supported Decimation feature not supported
acA1920-48gm Decimation feature not supported Decimation feature not supported
acA1920-50gc Decimation feature not supported Decimation feature not supported
acA1920-50gm Decimation feature not supported Decimation feature not supported
acA1920-150uc Decimation feature not supported Decimation feature not supported
acA1920-150um Decimation feature not supported Decimation feature not supported
acA1920-155uc Decimation feature not supported Decimation feature not supported
acA1920-155ucMED Decimation feature not supported Decimation feature not supported
acA1920-155um Decimation feature not supported Decimation feature not supported
acA1920-155umMED Decimation feature not supported Decimation feature not supported
acA2000-50gc Not supported 1, 2, 3, …, 542
acA2000-50gm Not supported 1, 2, 3, …, 1087
acA2000-50gmNIR Not supported 1, 2, 3, …, 1087
acA2000-165uc Decimation feature not supported Decimation feature not supported
acA2000-165um Decimation feature not supported Decimation feature not supported
acA2000-165umNIR Decimation feature not supported Decimation feature not supported
acA2040-25gc Not supported 1, 2, 3, …, 1022
acA2040-25gm Not supported 1, 2, 3, …, 2047
acA2040-25gmNIR Not supported 1, 2, 3, …, 2047
acA2040-35gc Decimation feature not supported Decimation feature not supported
acA2040-35gm Decimation feature not supported Decimation feature not supported
acA2040-55uc Decimation feature not supported Decimation feature not supported
acA2040-55um Decimation feature not supported Decimation feature not supported
acA2040-90uc Decimation feature not supported Decimation feature not supported
acA2040-90um Decimation feature not supported Decimation feature not supported
acA2040-90umNIR Decimation feature not supported Decimation feature not supported
acA2040-120uc Decimation feature not supported Decimation feature not supported
acA2040-120um Decimation feature not supported Decimation feature not supported
acA2440-20gc Decimation feature not supported Decimation feature not supported
acA2440-20gm Decimation feature not supported Decimation feature not supported
acA2440-35uc Decimation feature not supported Decimation feature not supported
acA2440-35ucMED Decimation feature not supported Decimation feature not supported
acA2440-35um Decimation feature not supported Decimation feature not supported
acA2440-35umMED Decimation feature not supported Decimation feature not supported
acA2440-75uc Decimation feature not supported Decimation feature not supported
acA2440-75ucMED Decimation feature not supported Decimation feature not supported
acA2440-75um Decimation feature not supported Decimation feature not supported
acA2440-75umMED Decimation feature not supported Decimation feature not supported
acA2500-14gc Decimation feature not supported Decimation feature not supported
acA2500-14gm Decimation feature not supported Decimation feature not supported
acA2500-14uc Decimation feature not supported Decimation feature not supported
acA2500-14um Decimation feature not supported Decimation feature not supported
acA2500-20gc Decimation feature not supported Decimation feature not supported
acA2500-20gcMED Decimation feature not supported Decimation feature not supported
acA2500-20gm Decimation feature not supported Decimation feature not supported
acA2500-20gmMED Decimation feature not supported Decimation feature not supported
acA2500-60uc Decimation feature not supported Decimation feature not supported
acA2500-60um Decimation feature not supported Decimation feature not supported
acA3088-16gc Decimation feature not supported Decimation feature not supported
acA3088-16gm Decimation feature not supported Decimation feature not supported
acA3088-57uc Decimation feature not supported Decimation feature not supported
acA3088-57um Decimation feature not supported Decimation feature not supported
acA3800-10gc 1, 2, 4 1, 2, 4
acA3800-10gm 1, 2, 4 1, 2, 4
acA3800-14uc 1, 2, 4 1, 2, 4
acA3800-14um 1, 2, 4 1, 2, 4
acA4024-8gc Decimation feature not supported Decimation feature not supported
acA4024-8gm Decimation feature not supported Decimation feature not supported
acA4024-29uc Decimation feature not supported Decimation feature not supported
acA4024-29um Decimation feature not supported Decimation feature not supported
acA4096-11gc Decimation feature not supported Decimation feature not supported
acA4096-11gm Decimation feature not supported Decimation feature not supported
acA4096-30uc Decimation feature not supported Decimation feature not supported
acA4096-30ucMED Decimation feature not supported Decimation feature not supported
acA4096-30um Decimation feature not supported Decimation feature not supported
acA4096-30umMED Decimation feature not supported Decimation feature not supported
acA4096-40uc Decimation feature not supported Decimation feature not supported
acA4096-40ucMED Decimation feature not supported Decimation feature not supported
acA4096-40um Decimation feature not supported Decimation feature not supported
acA4096-40umMED Decimation feature not supported Decimation feature not supported
acA4112-8gc Decimation feature not supported Decimation feature not supported
acA4112-8gm Decimation feature not supported Decimation feature not supported
acA4112-20uc Decimation feature not supported Decimation feature not supported
acA4112-20ucMED Decimation feature not supported Decimation feature not supported
acA4112-20um Decimation feature not supported Decimation feature not supported
acA4112-20umMED Decimation feature not supported Decimation feature not supported
acA4112-30uc Decimation feature not supported Decimation feature not supported
acA4112-30ucMED Decimation feature not supported Decimation feature not supported
acA4112-30um Decimation feature not supported Decimation feature not supported
acA4112-30umMED Decimation feature not supported Decimation feature not supported
acA4600-7gc 1, 2, 4 1, 2, 4
acA4600-10uc 1, 2, 4 1, 2, 4
acA5472-5gc Decimation feature not supported Decimation feature not supported
acA5472-5gm Decimation feature not supported Decimation feature not supported
acA5472-17uc Decimation feature not supported Decimation feature not supported
acA5472-17ucMED Decimation feature not supported Decimation feature not supported
acA5472-17um Decimation feature not supported Decimation feature not supported
boA4096-93cc Decimation feature not supported Decimation feature not supported
boA4096-93cm Decimation feature not supported Decimation feature not supported
boA4112-68cc Decimation feature not supported Decimation feature not supported
boA4112-68cm Decimation feature not supported Decimation feature not supported
daA1280-54lc Decimation feature not supported Decimation feature not supported
daA1280-54lm Decimation feature not supported Decimation feature not supported
daA1280-54uc Decimation feature not supported Decimation feature not supported
daA1280-54um Decimation feature not supported Decimation feature not supported
daA1600-60lc Decimation feature not supported Decimation feature not supported
daA1600-60lm Decimation feature not supported Decimation feature not supported
daA1600-60uc Decimation feature not supported Decimation feature not supported
daA1600-60um Decimation feature not supported Decimation feature not supported
daA1920-15um Decimation feature not supported Decimation feature not supported
daA1920-30uc Decimation feature not supported Decimation feature not supported
daA1920-30um Decimation feature not supported Decimation feature not supported
daA2500-14lc Decimation feature not supported Decimation feature not supported
daA2500-14lm Decimation feature not supported Decimation feature not supported
daA2500-14uc Decimation feature not supported Decimation feature not supported
daA2500-14um Decimation feature not supported Decimation feature not supported
daA2500-60mc Decimation feature not supported Decimation feature not supported
daA2500-60mci Decimation feature not supported Decimation feature not supported
daA4200-30mci Decimation feature not supported Decimation feature not supported
puA1280-54uc Decimation feature not supported Decimation feature not supported
puA1280-54um Decimation feature not supported Decimation feature not supported
puA1600-60uc Decimation feature not supported Decimation feature not supported
puA1600-60um Decimation feature not supported Decimation feature not supported
puA1920-30uc Decimation feature not supported Decimation feature not supported
puA1920-30um Decimation feature not supported Decimation feature not supported
puA2500-14uc Decimation feature not supported Decimation feature not supported
puA2500-14um Decimation feature not supported Decimation feature not supported

Sample Code#

// Enable horizontal decimation by 2
camera.DecimationHorizontal.SetValue(2);
// Enable vertical decimation by 2
camera.DecimationVertical.SetValue(2);
// Disable horizontal decimation
camera.DecimationHorizontal.SetValue(1);
// Disable vertical decimation
camera.DecimationVertical.SetValue(1);
INodeMap& nodemap = camera.GetNodeMap();
// Enable horizontal decimation by 2
CIntegerPtr(nodemap.GetNode("DecimationHorizontal"))->SetValue(2);
// Enable vertical decimation by 2
CIntegerPtr(nodemap.GetNode("DecimationVertical"))->SetValue(2);
// Disable horizontal decimation
CIntegerPtr(nodemap.GetNode("DecimationHorizontal"))->SetValue(1);
// Disable vertical decimation
CIntegerPtr(nodemap.GetNode("DecimationVertical"))->SetValue(1);
INodeMap& nodemap = camera.GetNodeMap();
// Enable horizontal decimation by 2
CIntegerParameter(nodemap, "DecimationHorizontal").SetValue(2);
// Enable vertical decimation by 2
CIntegerParameter(nodemap, "DecimationVertical").SetValue(2);
// Disable horizontal decimation
CIntegerParameter(nodemap, "DecimationHorizontal").SetValue(1);
// Disable vertical decimation
CIntegerParameter(nodemap, "DecimationVertical").SetValue(1);
// Enable horizontal decimation by 2
camera.Parameters[PLCamera.DecimationHorizontal].SetValue(2);
// Enable vertical decimation by 2
camera.Parameters[PLCamera.DecimationVertical].SetValue(2);
// Disable horizontal decimation
camera.Parameters[PLCamera.DecimationHorizontal].SetValue(1);
// Disable vertical decimation
camera.Parameters[PLCamera.DecimationVertical].SetValue(1);
// Enable horizontal decimation by 2
Pylon.DeviceSetIntegerFeature(hdev, "DecimationHorizontal", 2);
// Enable vertical decimation by 2
Pylon.DeviceSetIntegerFeature(hdev, "DecimationVertical", 2);
// Disable horizontal decimation
Pylon.DeviceSetIntegerFeature(hdev, "DecimationHorizontal", 1);
// Disable vertical decimation
Pylon.DeviceSetIntegerFeature(hdev, "DecimationVertical", 1);
/* Macro to check for errors */
#define CHECK(errc) if (GENAPI_E_OK != errc) printErrorAndExit(errc)
GENAPIC_RESULT errRes = GENAPI_E_OK;  /* Return value of pylon methods */
/* Enable horizontal decimation by 2 */
errRes = PylonDeviceSetIntegerFeature(hdev, "DecimationHorizontal", 2);
CHECK(errRes);
/* Enable vertical decimation by 2 */
errRes = PylonDeviceSetIntegerFeature(hdev, "DecimationVertical", 2);
CHECK(errRes);
/* Disable horizontal decimation */
errRes = PylonDeviceSetIntegerFeature(hdev, "DecimationHorizontal", 1);
CHECK(errRes);
/* Disable vertical decimation */
errRes = PylonDeviceSetIntegerFeature(hdev, "DecimationVertical", 1);
CHECK(errRes);

You can also use the pylon Viewer to easily set the parameters.