eliminate_speliminate_spEliminateSpEliminateSpeliminate_sp (算子)

名称

eliminate_speliminate_spEliminateSpEliminateSpeliminate_sp — 将阈值之外的值替换为平均值。Sp是指椒盐噪声Salt and Pepper noise。

签名

eliminate_sp(Image : ImageFillSP : MaskWidth, MaskHeight, MinThresh, MaxThresh : )

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)

void EliminateSp(const HObject& Image, HObject* ImageFillSP, const HTuple& MaskWidth, const HTuple& MaskHeight, const HTuple& MinThresh, const HTuple& MaxThresh)

HImage HImage::EliminateSp(Hlong MaskWidth, Hlong MaskHeight, Hlong MinThresh, Hlong MaxThresh) const

static void HOperatorSet.EliminateSp(HObject image, out HObject imageFillSP, HTuple maskWidth, HTuple maskHeight, HTuple minThresh, HTuple maxThresh)

HImage HImage.EliminateSp(int maskWidth, int maskHeight, int minThresh, int maxThresh)

def eliminate_sp(image: HObject, mask_width: int, mask_height: int, min_thresh: int, max_thresh: int) -> HObject

描述

算子 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

模块

基础