图像处理函数——colfilt、bwperim、bwlabel、bwareaopen

1.colfilt

功能: 列式邻域运算
介绍:

  • B = colfilt(A,[m n],block_type,fun)
    通过将A的每个m×n块重新排列为临时矩阵的一列,然后将函数fun应用于该矩阵来处理图像A。
  • B = colfilt(A,[m n],[mblock nblock],block_type,fun)
    将A细分为大小为m X n的区域以节省内存。请注意,使用[mblock nblock]参数时,操作的结果不会更改。例如,如果[mblock nblock]是[3 4],并且每个块的大小是16×16像素,则colfilt将图像细分为大小为48×64像素的区域,并且分别处理每个区域。
  • B = colfilt(A,‘indexed’,…)
    将A作为索引图像处理,如果A的类是uint8、uint16或logical,则用0填充,否则用1填充。

代码示例:

I = imread('tire.tif');
I2 = uint8(colfilt(I,[5 5],'sliding',@mean));%执行按列筛选,对每个5×5像素邻域调用函数mean
subplot(121);imshow(I);title('Original Image');
subplot(122);imshow(I2);title('Filtered Image')

运行结果:
在这里插入图片描述

2.bwperim

功能: 确定图像目标边界
介绍:

  • BW2 = bwperim(BW1)返回仅包含输入图像BW1中目标像素边界的二值图像BW2。其中,一个像素确定为边界像素的条件是其值非0,且它的邻域中至少有一个像素值为0。
  • BW2 = bwperim(BW1,conn)返回仅包含输入图像BW1中目标像素边界的二值图像BW2。参量conn为连通数,可以为4、8、6、18或26。n=4或n=8分别表示二维图像中采用的4-连通和8-连通,n=6、18或26分别表示三维图像中采用的6-连通、18-连通和26-连通。

代码示例:

bw1 = imread('circbw.tif');
subplot(221);imshow(bw1);
bw2 = bwperim(bw1);
subplot(222);imshow(bw2);
bw3 = bwperim(bw1,4);
subplot(223);imshow(bw3);

运行结果:

在这里插入图片描述

3.bwlabel

功能: 标注二值图像中的目标物体
介绍:

  • L = bwlabel(BW,n) 标注二值图像BW中的目标物体,返回标识矩阵L。参量L与BW的给维数相同。参量n表示连通数,可为4或8,默认n=8。
  • [L,num] = bwlabel(BW,n) 标注二值图像BW中的目标物体,返回标识矩阵L和 BW中目标物体的数量num。

代码如下(示例):

bw = imread('text.png');
L = bwlabel(bw,4);

运行结果:
在这里插入图片描述
代码如下(示例):

bw = imread('text.png');
[L,num] = bwlabel(bw,4)

运行结果:
在这里插入图片描述

4.bwareaopen

功能: 移除小目标
介绍:

  • BW2= bwareaopen(BW,P) 移除二值图像BW中所有少于P个像素的连通元素,生成另一个二值图像BW2。默认情况下,bwareaopen采用8连通邻域(二维图像)或26连通邻域(三维图像)。对于高维图像,连通数为conndef(ndims(BW),‘maximal’)
  • BW2 = bwareaopen(BW,P,conn) 指定运算时的连通
    数为conn。其它参量及结果同上。

代码如下(示例):

I = imread('text.png');
subplot(221);imshow(I);
BW = bwareaopen(I,10);
subplot(222);imshow(BW);
BW2 = bwareaopen(I,10,26);
subplot(223);imshow(BW2);

运行结果:
在这里插入图片描述

  • 4
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值