目录
语法
说明
示例
使用底帽和顶帽滤波增强对比度
imbothat函数的功能是对图像进行底帽滤波。
语法
J = imbothat(I,SE)
J = imbothat(I,nhood)
说明
J = imbothat(I,SE) 使用结构元素 SE 对灰度或二值图像 I 执行形态学底帽滤波。底帽滤波计算图像的形态学闭运算(使用 imclose),然后从结果中减去原始图像。
J = imbothat(I,nhood) 对图像 I 执行底帽滤波,其中 nhood 是由 0 和 1 组成的矩阵,用于指定结构元素邻域。
此语法等效于 imbothat(I,strel(nhood))。
示例
使用底帽和顶帽滤波增强对比度
将图像读入工作区并显示它。
I = imread('pout.tif');
imshow(I)
如图所示:
创建一个盘形结构元素。
se = strel('disk',3);
将原始图像 I
加到顶帽滤波图像上,然后减去底帽滤波图像。
J = imsubtract(imadd(I,imtophat(I,se)),imbothat(I,se));
figure
imshow(J)
如图所示:
参数说明
I — 输入图像
输入图像,指定为任意维度的灰度图像或二值图像。
SE — 结构元素
结构元素,指定为单个 strel 对象或 offsetstrel 对象。如果图像 I 的数据类型为 logical,则结构元素必须为平面结构。
nhood — 结构元素邻域
结构元素邻域,指定为 0 和 1 组成的矩阵。
J — 底帽滤波图像
经过底帽滤波的图像,以灰度图像或二值图像形式返回。J 与输入图像 I 具有相同的数据类型。
提示
-
如果图像 I 的维度大于结构元素的维度,则 imbothat 函数将相同的形态学闭运算应用于较高维度上的所有平面。
可以使用此行为对 RGB 图像执行底帽滤波。为 RGB 图像指定二维结构元素,以便对每个颜色通道分别执行运算。
-
当指定结构元素邻域时,imbothat 通过 floor((size(nhood)+1)/2) 确定 nhood 的中心元素。