Defective Pixel Correction

The camera supports table-based defective pixel correction, where a list of defective pixel coordinates is specified, and the values of those pixels are replaced based on the values of their neighbors. The camera comes with a list of defective pixels calibrated during manufacturing (the factory default table), but you can update or replace this list.

Defect Correct Static Enable turns table-based defective pixel correction On or Off.

Defect Correction Mode controls the method used for replacing the value of pixels within the table. The options are Average or Highlight. Average replaces defective pixels with the average of their neighbors. Highlight is used for debugging purposes and sets pixels within the table to the maximum possible pixel value to highlight them.

Modifying the List of Defective Pixels

Defect Correct Pixel Count controls the number of defective pixels in the table.

Defect Table Index selects an individual pixel within the table. This is a zero-based index, so if there are N pixels in the table, the index range is from 0 to N-1. Defect X Coordinate and Defect Y Coordinate define the (X,Y) coordinates of the defective pixel selected by the index. These values can be changed. These (X,Y) coordinates are relative to the full image ROI, when Offset X and Offset Y are both zero.

Changes made to the defective pixel table using these controls do NOT take effect immediately. When you have finished making a series of changes to the table, execute the command Defect Table Apply for the changes to affect images captured by the camera. This writes the table to volatile memory, so changes are lost if the camera loses power.

Defect Table Save saves the table to persistent storage within the camera, so that the modified table is loaded whenever the camera boots up. Saving overwrites the existing table stored in memory.

Defect Table Factory Restore resets the table to its factory default state. This completely overwrites any changes made to the table, both the active table used in images being captured by the camera and the table saved in memory.

Important Note: Because it takes time to download a full defect table, if the camera is streaming when a table is either applied or restored to factory default, the results may appear momentarily corrupted until the complete table is written to the FPGA.

Example: Adding a location to the Defective Pixel Table

These steps illustrate how to add a pixel to the table:

  1. Set Offset X and Offset Y to zero, and Width and Height at least large enough so that the defective pixel falls within the image ROI.
  2. Note the X and Y coordinates of the defective pixel under these ROI settings.
  3. Increase Defect Correct Pixel Count by 1 to add a new defective pixel to the list.
  4. Set Defect Table Index to the new value of Defect Correct Pixel Count minus 1, to control the last defective pixel in the table, which is the one that was just added.
  5. Set the values of Defect X Coordinate and Defect Y Coordinate to the coordinates of the pixel being added.
  6. Click Defect Table Apply to have the change affect images being captured.
  7. Use Defect Table Save to save the modified table so that it is loaded every time the camera boots up.

Summary Table

Name Interface Access Visibility Description
Defect Correct Static Enable IBoolean Guru Enables/Disables table-based defective pixel correction.
Defect Correction Mode IEnumeration Guru Controls the method used for replacing defective pixels.
Defect Table Pixel Count IInteger Guru The number of defective pixel locations in the current table.
Defect Table Index IInteger Guru Controls the offset of the element to access in the defective pixel location table.
Defect X Coordinate [Defect Table Index] IInteger Guru Returns the X coordinate of the defective pixel at DefectTableIndex within the defective pixel table. Changes made do not take effect in captured images until the command DefectTableApply is written.
Defect Y Coordinate [Defect Table Index] IInteger Guru Returns the Y coordinate of the defective pixel at DefectTableIndex within the defective pixel table. Changes made do not take effect in captured images until the command DefectTableApply is written.
Defect Table Apply ICommand RW Guru Applies the current defect table, so that any changes made affect images captured by the camera. This writes the table to volatile memory, so changes to the table are lost if the camera loses power. To save the table to non-volatile memory, use DefectTableSave.
Defect Table Save ICommand Guru Saves the current defective pixel table non-volatile memory, so that it is preserved when the camera boots up. This overwrites the existing defective pixel table. The new table is loaded whenever the camera powers up.
Defect Table Factory Restore ICommand Guru Restores the Defective Pixel Table to its factory default state, which was calibrated during manufacturing. This permanently overwrites any changes made to the defect table.

Defective Pixel Correction Features


Defect Correct Static Enable

Enables/Disables table-based defective pixel correction.

Property Value
Name DefectCorrectStaticEnable
Interface IBoolean
Access
Visibility Guru

Defect Correction Mode

Controls the method used for replacing defective pixels.

Property Value
Name DefectCorrectionMode
Interface IEnumeration
Access
Visibility Guru

Enumeration Values
Average
Highlight
Zero

Defect Table Pixel Count

The number of defective pixel locations in the current table.

Property Value
Name DefectTablePixelCount
Interface IInteger
Access
Unit
Visibility Guru

Defect Table Index

Controls the offset of the element to access in the defective pixel location table.

Property Value
Name DefectTableIndex
Interface IInteger
Access
Unit
Visibility Guru

Defect X Coordinate

Returns the X coordinate of the defective pixel at DefectTableIndex within the defective pixel table. Changes made do not take effect in captured images until the command DefectTableApply is written.

Property Value
Name DefectTableCoordinateX [Defect Table Index]
Interface IInteger
Access
Unit
Visibility Guru

Defect Y Coordinate

Returns the Y coordinate of the defective pixel at DefectTableIndex within the defective pixel table. Changes made do not take effect in captured images until the command DefectTableApply is written.

Property Value
Name DefectTableCoordinateY [Defect Table Index]
Interface IInteger
Access
Unit
Visibility Guru

Defect Table Apply

Applies the current defect table, so that any changes made affect images captured by the camera. This writes the table to volatile memory, so changes to the table are lost if the camera loses power. To save the table to non-volatile memory, use DefectTableSave.

Property Value
Name DefectTableApply
Interface ICommand
Access RW
Visibility Guru

Defect Table Save

Saves the current defective pixel table non-volatile memory, so that it is preserved when the camera boots up. This overwrites the existing defective pixel table. The new table is loaded whenever the camera powers up.

Property Value
Name DefectTableSave
Interface ICommand
Access
Visibility Guru

Defect Table Factory Restore

Restores the Defective Pixel Table to its factory default state, which was calibrated during manufacturing. This permanently overwrites any changes made to the defect table.

Property Value
Name DefectTableFactoryRestore
Interface ICommand
Access
Visibility Guru