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 also supports dynamic defective pixel correction, where defective pixels are automatically corrected if they are an outlier with respect to the pixels of a 5x5 neighborhood. Dynamic defective pixel correction is capable of correcting both hot and cold pixels.
Defect Correct Static Enable turns table-based defective pixel correction On or Off.
Defect Correct Dynamic Enable turns dynamic defective pixel correction On or Off.
Defect Correction Mode controls the method used for replacing the value of pixels within the table. The option is Average. Average replaces defective pixels with the average of their neighbors.
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.
Important Note: Because it takes time to download a full defect table, if the camera is streaming when a table is either applied, the results may appear momentarily corrupted until the complete table is written.
Example: Adding a location to the Defective Pixel Table
These steps illustrate how to add a pixel to the table:
- 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.
- Note the X and Y coordinates of the defective pixel under these ROI settings.
- Increase Defect Correct Pixel Count by 1 to add a new defective pixel to the list.
- 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.
- Set the values of Defect X Coordinate and Defect Y Coordinate to the coordinates of the pixel being added.
- Click Defect Table Apply to have the change affect images being captured.
- 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 Correct Dynamic Enable | IBoolean | Guru | Enables/Disables dynamic 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. |
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 Correct Dynamic Enable
Enables/Disables dynamic defective pixel correction.
Property | Value |
---|---|
Name | DefectCorrectDynamicEnable |
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 |
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 |