sigma_image — 使用西格玛滤波器进行非线性平滑。
sigma_image(Image : ImageSigma : MaskHeight, MaskWidth, Sigma : )
算子 sigma_image carries out a non-linear smoothing
of the gray values of all input images (Image). All
pixels in a rectangular window (MaskHeight x
MaskWidth) are used to determine
the new gray value of the central pixel of this window.
First, the gray value standard deviation
of all pixels in the window is calculated. Then, all pixels of the
window with a gray value that differs from the gray value of the
central pixel by less than Sigma times this standard
deviation are used to calculate the new gray value of the central
pixel. The gray value of the central pixel is the average of the
gray values of the selected pixels. If no pixel could be selected
for the averaging of the gray values, the gray value of the central
pixel remains unchanged.
有关平滑滤波器概念的说明,请参阅 滤波器 / 平滑 一章的引言。
If even values instead of odd values are given for
MaskHeight or MaskWidth, the routine uses the next
larger odd values instead (this way the center of the filter mask is
always explicitly determined).
请注意,若使用域缩减后的图像作为输入,滤波器算子可能会返回意外结果。请参阅 滤波器 一章
Image (输入对象) (multichannel-)image(-array) → object (byte / cyclic / int1 / int2 / uint2 / int4 / real)
待平滑的图像。
ImageSigma (输出对象) (multichannel-)image(-array) → object (byte / cyclic / int1 / int2 / uint2 / int4 / real)
平滑后的图像。
MaskHeight (输入控制) extent.y → (integer)
Height of the mask (number of lines).
默认值: 5
建议值: 3, 5, 7, 9, 11, 13, 15
值范围:
3
≤
MaskHeight
最小增量: 2
建议增量: 2
限制:
odd(MaskHeight)
MaskWidth (输入控制) extent.x → (integer)
Width of the mask (number of columns).
默认值: 5
建议值: 3, 5, 7, 9, 11, 13, 15
值范围:
3
≤
MaskWidth
最小增量: 2
建议增量: 2
限制:
odd(MaskWidth)
Sigma (输入控制) integer → (integer)
Max. deviation to the average.
默认值: 3
建议值: 3, 5, 7, 9, 11, 20, 30, 50
值范围:
0
≤
Sigma
最小增量: 1
建议增量: 2
read_image(Image,'fabrik') sigma_image(Image,ImageSigma,5,5,3) dev_display(ImageSigma)
For each pixel: O(MaskHeight*MaskWidth).
如果参数值正确,算子 sigma_image 返回值 2 (H_MSG_TRUE)。当输入为空(无可用输入图像)时,可设置行为通过算子 set_system('no_object_result',<Result>)。如有必要,则抛出异常。
threshold,
dyn_threshold,
regiongrowing
anisotropic_diffusion,
rank_image
smooth_image,
binomial_filter,
gauss_filter,
mean_image
R. Haralick, L. Shapiro; “Computer and Robot Vision”; Addison-Wesley, 1992, Seite 325
基础