close
Top  Previous  Next

close ( integer Input, integer Output , integer Iterations, integer Probe )

Use this function to fill gaps in bright objects and connect objects that are close together. The function works by applying the
dilate function followed by erode. The shape and size of the neighborhood pattern is selected with the Probe parameter. The process could be repeated in a number of successive Iterations that correspond to the distance the boundaries of the objects will expand and shrink back.

Parameters

Input  
 
An integer between 0 and 116 specifying the input image frame number. A value of 0 represents the DMA memory buffer of the video device. Values in the range of 100-116 correspond to hidden frames.  
 
Output  
 
An integer between 1 and 116 specifying the output image frame number. Values in the range of 100-116 correspond to hidden frames.  
 
Iterations  
 
A positive integer specifying how many times the operation will be applied.  
 
Probe  
 
An enumerated integer that describes the shape and size of the kernel used in the operation. The value is determined as a combination of four basic shapes constructed of 3 pixels:  
 
PR_VBAR=1 – vertical bar  
PR_BKSLASH=2 – diagonal bar (top left – bottom right)  
PR_HBAR=4 – horizontal bar  
PR_FWSLASH=8 –diagonal bar (bottom left – top right)  
 
The following frequently used shapes represent combinations of the basic shapes:  
 
PR_CROSS=5 – cross 3x3  
PR_DCROSS=10 – diagonal cross 3x3  
PR_SQUARE=15 – square 3x3  
 
You can also assign one kernel of size 5x5:  
 
PR_CIRCLE=16 – circle 5x5  
 
Error flags

ERR_OK  
 
The flag set if successful.  
 
ERR_FAILED  
 
The flag set if failed.  

Example

This set of statements binarizes a sample image and applies 4 cycles of opening with the circular probe:  
 
setCurDir ("samples")  
loadIm (1,"sample4.iwd")  
threshold(1,1,M_PRESET,0.,113.,TRUE,FALSE)  
close (1,2,4,PR_CIRCLE)