gray_opening_shape gray_opening_shape GrayOpeningShape GrayOpeningShape gray_opening_shape (算子)
名称
gray_opening_shape gray_opening_shape GrayOpeningShape GrayOpeningShape gray_opening_shape — 使用选定的掩模执行灰度值打。
签名
void GrayOpeningShape (const HObject& Image , HObject* ImageOpening , const HTuple& MaskHeight , const HTuple& MaskWidth , const HTuple& MaskShape )
HImage HImage ::GrayOpeningShape (const HTuple& MaskHeight , const HTuple& MaskWidth , const HString& MaskShape ) const
HImage HImage ::GrayOpeningShape (double MaskHeight , double MaskWidth , const HString& MaskShape ) const
HImage HImage ::GrayOpeningShape (double MaskHeight , double MaskWidth , const char* MaskShape ) const
HImage HImage ::GrayOpeningShape (double MaskHeight , double MaskWidth , const wchar_t* MaskShape ) const
(
Windows only)
描述
gray_opening_shape gray_opening_shape GrayOpeningShape GrayOpeningShape GrayOpeningShape gray_opening_shape applies a gray value opening to the input image
Image Image Image Image image image with the structuring element of shape MaskShape MaskShape MaskShape MaskShape maskShape mask_shape .
The mask's offset values are 0 and its horizontal and vertical size is
defined by MaskHeight MaskHeight MaskHeight MaskHeight maskHeight mask_height and MaskWidth MaskWidth MaskWidth MaskWidth maskWidth mask_width . The resulting image
is returned in ImageOpening ImageOpening ImageOpening ImageOpening imageOpening image_opening 。
If the parameters MaskHeight MaskHeight MaskHeight MaskHeight maskHeight mask_height or MaskWidth MaskWidth MaskWidth MaskWidth maskWidth mask_width are of the
type integer and are even, they are changed to the next larger odd value.
In contrast, if at least one of the two parameters is of the type float, the
input image Image Image Image Image image image is transformed with both the next larger and
the next smaller odd mask size, and the output image ImageOpening ImageOpening ImageOpening ImageOpening imageOpening image_opening
is interpolated from the two intermediate images. Therefore, note that
gray_opening_shape gray_opening_shape GrayOpeningShape GrayOpeningShape GrayOpeningShape gray_opening_shape returns different results for mask sizes of,
e.g., 4 and 4.0 !
In case of the values
'rhombus' and 'octagon' for the MaskShape MaskShape MaskShape MaskShape maskShape mask_shape control parameter,
MaskHeight MaskHeight MaskHeight MaskHeight maskHeight mask_height and MaskWidth MaskWidth MaskWidth MaskWidth maskWidth mask_width must be equal. The parameter
value 'octagon' for MaskShape MaskShape MaskShape MaskShape maskShape mask_shape denotes an equilateral octagonal
mask which is a suitable approximation for a circular structure.
At the border of the image the gray values are mirrored.
The gray value opening of an image i with a structuring element
s is defined as
i.e., an erosion of the image with s followed by a dilation with
s (see gray_erosion_shape gray_erosion_shape GrayErosionShape GrayErosionShape GrayErosionShape gray_erosion_shape and gray_dilation_shape gray_dilation_shape GrayDilationShape GrayDilationShape GrayDilationShape gray_dilation_shape ).
注意
Note that gray_opening_shape gray_opening_shape GrayOpeningShape GrayOpeningShape GrayOpeningShape gray_opening_shape requires considerably more time for
mask sizes of type float than for mask sizes of type integer. This is
especially true for rectangular masks with different width and height!
gray_opening_shape gray_opening_shape GrayOpeningShape GrayOpeningShape GrayOpeningShape gray_opening_shape 可在 OpenCL 设备上执行。 In case of
mask sizes of type float the result can vary slightly from the CPU as the
interpolation is calculated in single precision on the OpenCL device.
请注意,若使用域缩减后的图像作为输入,滤波器算子可能会返回意外结果。请参阅 滤波器 一章
执行信息
支持 OpenCL 计算设备。
多线程类型:可重入(与非独占算子并行运行)。
多线程作用域:全局(可从任何线程调用)。
在元组级别上自动并行化。
在通道级别上自动并行化。
在域级别上自动并行化。
参数
Image Image Image Image image image (输入对象) (multichannel-)image(-array) → object HImage HObject HImage Hobject (byte* / uint2*) *允许用于计算设备
Image for which the minimum gray values are to
be calculated.
ImageOpening ImageOpening ImageOpening ImageOpening imageOpening image_opening (输出对象) (multichannel-)image(-array) → object HImage HObject HImage Hobject * (byte / uint2)
Image containing the minimum gray values.
MaskHeight MaskHeight MaskHeight MaskHeight maskHeight mask_height (输入控制) extent.y → HTuple Union[int, float] HTuple Htuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
Height of the filter mask.
默认值:
11
建议值:
3, 5, 7, 9, 11, 13, 15
值范围:
1.0
≤
MaskHeight
MaskHeight
MaskHeight
MaskHeight
maskHeight
mask_height
≤
511.0
MaskWidth MaskWidth MaskWidth MaskWidth maskWidth mask_width (输入控制) extent.x → HTuple Union[int, float] HTuple Htuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
Width of the filter mask.
默认值:
11
建议值:
3, 5, 7, 9, 11, 13, 15
值范围:
1.0
≤
MaskWidth
MaskWidth
MaskWidth
MaskWidth
maskWidth
mask_width
≤
511.0
MaskShape MaskShape MaskShape MaskShape maskShape mask_shape (输入控制) string → HTuple str HTuple Htuple (string) (string ) (HString ) (char* )
Shape of the mask.
默认值:
'octagon'
"octagon"
"octagon"
"octagon"
"octagon"
"octagon"
值列表:
'octagon' "octagon" "octagon" "octagon" "octagon" "octagon" , 'rectangle' "rectangle" "rectangle" "rectangle" "rectangle" "rectangle" , 'rhombus' "rhombus" "rhombus" "rhombus" "rhombus" "rhombus"
结果
gray_opening_shape gray_opening_shape GrayOpeningShape GrayOpeningShape GrayOpeningShape gray_opening_shape 在所有参数正确时返回 2 ( H_MSG_TRUE )。
替代
gray_opening gray_opening GrayOpening GrayOpening GrayOpening gray_opening
另见
gray_dilation_shape gray_dilation_shape GrayDilationShape GrayDilationShape GrayDilationShape gray_dilation_shape ,
gray_erosion_shape gray_erosion_shape GrayErosionShape GrayErosionShape GrayErosionShape gray_erosion_shape ,
opening opening Opening Opening Opening opening
模块
基础