eliminate_speliminate_spEliminateSpEliminateSpeliminate_sp (算子)
名称
eliminate_speliminate_spEliminateSpEliminateSpeliminate_sp — 将阈值之外的值替换为平均值。Sp是指椒盐噪声Salt and Pepper noise。
签名
Herror eliminate_sp(const Hobject Image, Hobject* ImageFillSP, const Hlong MaskWidth, const Hlong MaskHeight, const Hlong MinThresh, const Hlong MaxThresh)
Herror T_eliminate_sp(const Hobject Image, Hobject* ImageFillSP, const Htuple MaskWidth, const Htuple MaskHeight, const Htuple MinThresh, const Htuple MaxThresh)
描述
算子 eliminate_speliminate_spEliminateSpEliminateSpEliminateSpeliminate_sp replaces all gray values outside
the indicated gray value intervals (MinThreshMinThreshMinThreshMinThreshminThreshmin_thresh to
MaxThreshMaxThreshMaxThreshMaxThreshmaxThreshmax_thresh) with the neighboring mean values. Only those
neighboring pixels which also fall within the gray value interval
are used for averaging. If no such pixel is present in the vicinity
the original gray value is used. The gray values in the input image
falling within the gray value interval are also adopted without
change.
有关平滑滤波器概念的说明,请参阅 滤波器 / 平滑 一章的引言。
注意
If even values instead of odd values are given for
MaskHeightMaskHeightMaskHeightMaskHeightmaskHeightmask_height or MaskWidthMaskWidthMaskWidthMaskWidthmaskWidthmask_width, the routine uses the
next larger odd values instead (this way the center of the filter
mask is always explicitly determined).
请注意,若使用域缩减后的图像作为输入,滤波器算子可能会返回意外结果。请参阅 滤波器 一章
执行信息
- 多线程类型:可重入(与非独占算子并行运行)。
- 多线程作用域:全局(可从任何线程调用)。
- 在元组级别上自动并行化。
- 在通道级别上自动并行化。
- 在域级别上自动并行化。
参数
ImageImageImageImageimageimage (输入对象) (multichannel-)image(-array) → objectHImageHObjectHImageHobject (byte / uint2)
输入图像。
ImageFillSPImageFillSPImageFillSPImageFillSPimageFillSPimage_fill_sp (输出对象) (multichannel-)image(-array) → objectHImageHObjectHImageHobject * (byte / uint2)
平滑后的图像。
MaskWidthMaskWidthMaskWidthMaskWidthmaskWidthmask_width (输入控制) extent.x → HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)
Width of filter mask.
默认值:
3
建议值:
3, 5, 7, 9, 11
值范围:
3
≤
MaskWidth
MaskWidth
MaskWidth
MaskWidth
maskWidth
mask_width
(lin)
最小增量:
2
建议增量:
2
限制:
odd(MaskWidth) && MaskWidth < width(Image) * 2
MaskHeightMaskHeightMaskHeightMaskHeightmaskHeightmask_height (输入控制) extent.y → HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)
Height of filter mask.
默认值:
3
建议值:
3, 5, 7, 9, 11
值范围:
3
≤
MaskHeight
MaskHeight
MaskHeight
MaskHeight
maskHeight
mask_height
(lin)
最小增量:
2
建议增量:
2
限制:
odd(MaskHeight) && MaskHeight < height(Image) * 2
MinThreshMinThreshMinThreshMinThreshminThreshmin_thresh (输入控制) integer → HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)
Minimum gray value.
默认值:
1
建议值:
1, 5, 7, 9, 11, 15, 23, 31, 43, 61, 101
MaxThreshMaxThreshMaxThreshMaxThreshmaxThreshmax_thresh (输入控制) integer → HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)
Maximum gray value.
默认值:
254
建议值:
5, 7, 9, 11, 15, 23, 31, 43, 61, 101, 200, 230, 250, 254
限制:
MinThresh <= MaxThresh
示例(HDevelop)
read_image(Image,'mreut')
dev_display(Image)
eliminate_sp(Image,ImageFillSP,3,3,101,201)
dev_display(ImageFillSP)
示例(C)
read_image(&Image,"mreut");
disp_image(Image,WindowHandle);
eliminate_sp(Image,&ImageFillSP,3,3,101,201);
disp_image(ImageFillSP,WindowHandle);
示例(HDevelop)
read_image(Image,'mreut')
dev_display(Image)
eliminate_sp(Image,ImageFillSP,3,3,101,201)
dev_display(ImageFillSP)
示例(HDevelop)
read_image(Image,'mreut')
dev_display(Image)
eliminate_sp(Image,ImageFillSP,3,3,101,201)
dev_display(ImageFillSP)
示例(HDevelop)
read_image(Image,'mreut')
dev_display(Image)
eliminate_sp(Image,ImageFillSP,3,3,101,201)
dev_display(ImageFillSP)
可能的后继
disp_imagedisp_imageDispImageDispImageDispImagedisp_image
替代
mean_spmean_spMeanSpMeanSpMeanSpmean_sp,
mean_imagemean_imageMeanImageMeanImageMeanImagemean_image,
median_imagemedian_imageMedianImageMedianImageMedianImagemedian_image,
eliminate_min_maxeliminate_min_maxEliminateMinMaxEliminateMinMaxEliminateMinMaxeliminate_min_max
另见
binomial_filterbinomial_filterBinomialFilterBinomialFilterBinomialFilterbinomial_filter,
gauss_filtergauss_filterGaussFilterGaussFilterGaussFiltergauss_filter,
smooth_imagesmooth_imageSmoothImageSmoothImageSmoothImagesmooth_image,
anisotropic_diffusionanisotropic_diffusionAnisotropicDiffusionAnisotropicDiffusionAnisotropicDiffusionanisotropic_diffusion,
sigma_imagesigma_imageSigmaImageSigmaImageSigmaImagesigma_image,
eliminate_min_maxeliminate_min_maxEliminateMinMaxEliminateMinMaxEliminateMinMaxeliminate_min_max
模块
基础