CImage:ApplyPixelMask


The ApplyPixelMask method repairs point defects identified by locations stored in a pixel mask file. This is effective for repairing point defects as well as single row and single column artifacts.

Syntax

bSuccess = CImage:ApplyPixelMask( nMethod, sMaskFile )

bSuccess = CImage:ApplyPixelMask( nMethod, sMaskFile, CRect )

where

    nMethod is a number corresponding to the repair method.

    sMaskFile is the name of the text file containing the pixel mask.

    CRect is a CRect object that describes the rectangular region to repair. If omitted, the entire image is repaired.

    bSuccess is the returned success code. On success it is true, otherwise false.

  

This method replaces point values using a statistic computed from pixels in the neighborhood. The neighborhood method is described in the table below.

Pixel Mask Neighborhood Methods

Method

Description

1

Replaces the pixel by the mean value from its 4 nearest neighbors.

2

Replaces the pixel by the median value from its 4 nearest neighbors.

3

Replaces the pixel by the median value from its 8 nearest neighbors. Use this method for repairing 1 pixel wide line defects.

Point locations in need of repair are identified by pixel coordinates in a Pixel Mask File. A related pixel repair method is SetMaskedValue which replaces pixels with a specific value rather than a computed neighborhood value.

Example

Assume that a pixel mask file named sMaskFile exists. The following script repairs point values in the image in a file named sPath using defect coordinates from the pixel mask file. Points in the central 50% of the image are repaired by replacing them with the median of their 8 nearest neighbors:

 

I = CImage:new()

-- Create a CImage

I:Open( sPath )

-- Open the image from sPath.

w = I:Cols() ; h = I:Rows()

-- get image width and height

R = NewRect()

-- create a rectangle

R:Set( 0.25*w, 0.75*w, 0.25*h, 0.25*h ) )

-- central 50% of columns and rows

I:ApplyPixelMask( 3, sMaskFile, R )

-- apply the pixel mask

I:Save()

-- save the image

Related Topics

CImage , SetMaskedValue , Pixel Mask File