Matlab 处理侵蚀和膨胀
从上一个链接: 下面的代码基于此Matlab 处理侵蚀和膨胀,matlab,image-processing,image-segmentation,Matlab,Image Processing,Image Segmentation,从上一个链接: 下面的代码基于此 se = strel('disk',9); p_mask=imerode(Ic(BB,1).Image,se); k_mask=imdilate(p_mask,se); Ipointer=I2.*repmat( k_mask , [1 1 3]); figure,imshow(Ipointer) Mch=Ic(BB,1).Image-k_mask; Mbch=bwareaopen(Mch,3000); Ichaplet=I2.*repmat( Mbch
se = strel('disk',9);
p_mask=imerode(Ic(BB,1).Image,se);
k_mask=imdilate(p_mask,se);
Ipointer=I2.*repmat( k_mask , [1 1 3]);
figure,imshow(Ipointer)
Mch=Ic(BB,1).Image-k_mask;
Mbch=bwareaopen(Mch,3000);
Ichaplet=I2.*repmat( Mbch , [1 1 3]);
figure,imshow(Ichaplet)
所以,我不明白谷歌是你的朋友。如果你不知道一个函数是做什么的,谷歌matlab+它的名字并阅读参考文档 se是您的结构元素。此处定义为半径为9的圆盘 你的二值图像被腐蚀,然后被放大(这称为打开) 假设白色被认为是前景(我只能猜测没有你的图像)打开将删除小白点。侵蚀通过蚕食轮廓来缩小一切。如果你咬得足够多,你就吃掉了洞对象:)膨胀会调整那些没有被完全腐蚀的对象的大小。膨胀将在轮廓周围添加像素
BWAREOPEN将删除小于3000像素的连接组件
我相信你可以自己解决剩下的问题 你的问题是什么?你的意见是什么?你想干什么?为什么它对您不起作用?如果您有关于图像处理的问题,您应该始终提供您的图像。“bwareaopen将删除小于3000像素的连接组件”,而不是更大的;-)