bandpass_imagebandpass_imageBandpassImageBandpassImagebandpass_image带通图像(算子)

名称

bandpass_imagebandpass_imageBandpassImageBandpassImagebandpass_image — 使用带通滤波器进行边缘提取。

签名

bandpass_image(Image : ImageBandpass : FilterType : )

Herror bandpass_image(const Hobject Image, Hobject* ImageBandpass, const char* FilterType)

Herror T_bandpass_image(const Hobject Image, Hobject* ImageBandpass, const Htuple FilterType)

void BandpassImage(const HObject& Image, HObject* ImageBandpass, const HTuple& FilterType)

HImage HImage::BandpassImage(const HString& FilterType) const

HImage HImage::BandpassImage(const char* FilterType) const

HImage HImage::BandpassImage(const wchar_t* FilterType) const   ( Windows only)

static void HOperatorSet.BandpassImage(HObject image, out HObject imageBandpass, HTuple filterType)

HImage HImage.BandpassImage(string filterType)

def bandpass_image(image: HObject, filter_type: str) -> HObject

描述

bandpass_imagebandpass_imageBandpassImageBandpassImageBandpassImagebandpass_image 作为边缘滤波器使用。它对 ImageImageImageImageimageimage 应用具有以下卷积掩模的线性滤波器:

FilterTypeFilterTypeFilterTypeFilterTypefilterTypefilter_type: 'lines'"lines""lines""lines""lines""lines" 与边缘算子 sobel_ampsobel_ampSobelAmpSobelAmpSobelAmpsobel_amp 不同,该滤波器检测的是线条而非边缘,即两条紧密相邻的边缘。 0 -2 -2 -2 0 -2 0 3 0 -2 -2 3 12 3 -2 -2 0 3 0 -2 0 -2 -2 -2 0

在图像边界处,灰度值被镜像处理。灰度值的溢出与下溢均被截断。最终生成的图像通过 ImageBandpassImageBandpassImageBandpassImageBandpassimageBandpassimage_bandpass 返回。

注意

请注意,若使用域缩减后的图像作为输入,滤波器算子可能会返回意外结果。请参阅 滤波器 一章

执行信息

参数

ImageImageImageImageimageimage (输入对象)  (multichannel-)image(-array) objectHImageHObjectHImageHobject (byte / uint2)

输入图像。

ImageBandpassImageBandpassImageBandpassImageBandpassimageBandpassimage_bandpass (输出对象)  (multichannel-)image(-array) objectHImageHObjectHImageHobject * (byte / uint2)

带通滤波后的图像。

FilterTypeFilterTypeFilterTypeFilterTypefilterTypefilter_type (输入控制)  string HTuplestrHTupleHtuple (string) (string) (HString) (char*)

滤波器类型:目前仅支持 “lines” 模式。

默认值: 'lines' "lines" "lines" "lines" "lines" "lines"

值列表: 'lines'"lines""lines""lines""lines""lines"

示例(C)

bandpass_image(Image,&LineImage,"lines");
threshold(LineImage,&Lines,60.0,255.0);
skeleton(Lines,&ThinLines);

结果

bandpass_imagebandpass_imageBandpassImageBandpassImageBandpassImagebandpass_image 在所有参数正确时返回 2 ( H_MSG_TRUE )。如果输入为空时,可设置行为通过算子 set_system(::'no_object_result',<Result>:)set_system("no_object_result",<Result>)SetSystem("no_object_result",<Result>)SetSystem("no_object_result",<Result>)SetSystem("no_object_result",<Result>)set_system("no_object_result",<Result>)。如有必要,则抛出异常。

可能的后继

thresholdthresholdThresholdThresholdThresholdthreshold, skeletonskeletonSkeletonSkeletonSkeletonskeleton

替代

convol_imageconvol_imageConvolImageConvolImageConvolImageconvol_image, topographic_sketchtopographic_sketchTopographicSketchTopographicSketchTopographicSketchtopographic_sketch, texture_lawstexture_lawsTextureLawsTextureLawsTextureLawstexture_laws

另见

highpass_imagehighpass_imageHighpassImageHighpassImageHighpassImagehighpass_image, gray_skeletongray_skeletonGraySkeletonGraySkeletonGraySkeletongray_skeleton

模块

基础