6.细化/粗化 (1)细化(Thin)
XoT?X/?T?X?(X?T)C
XX?TX?TX?T???XoT????X?T?????去掉满足匹配条件的点。 图5-4 细化示意图
系统细化Xo?T??(((XoB1)oB2)?Bn, Bi是Bi?1旋转的结果(90,180,270)共8种情形 适于细化的结构元素
000
I?d1d 1Thick11)
(2)粗化(X?T?X?(X?T)
dL?1d0010 1d用T1???0,0??T2???1,0??时,X?T?X?X?X
故要选择合适的结构元素,如T1????1,0??,T2???0,0?? 对偶性:?X?T?C?XC?T*(验证一下) where T*?(T2,T1) 7. Morphology小结
A.通过物体(对象)和结构元素的相互作用,得到更本质的形状(shape)
图像滤波 平滑区域的边界
将一定形状施加于区域边界
描述和定义图像的各种几何参数和特点(区域数、面积、周长、连通度、颗粒度、骨架、边界)
B.形状运确实是并行运算
when T?(T1,T2)
C.细化
区域或边界变为1个象素的宽度,但它不破坏连通性 四方向细化算法:逻辑运算(可删除条件) 形状运确实是否可用于细化?
(1)腐蚀:收缩(去掉边缘的点)何时终止?能否保证连通性? (2)开:去毛刺,能否细化(去掉尺寸小于结构元素的块)
3.实验内容与要求
1.设计程序实现对图5-5,实现去除图像中的噪声。
2.设计程序,实现将图5-6转化为二值图像,并运算图中鸡块中骨头的比重。
3.设计程序,实现去除图5-7中的矩形区域外的噪声,并填充矩形区域内部了。
图5-5
图5-6
图5-7
实验具体实现
1.对图5-5,实现去除图像中的噪声。 程序设计如下: I=imread('test1.tif'); J=im2bw(I);
se = strel('diamond',2); K=imerode(J,se); subplot(131),imshow(I) subplot(132),imshow(J) subplot(133), imshow(K)
2.设计程序,实现将图5-6转化为二值图像,并运算图中鸡块中骨头的比重。
程序如下:
I=imread('test2.tif'); J=im2bw(I); total1=bwarea(J); a=size(J); s1=a(1),s2=a(2); s=s1*s2 k=total1/s
运算结果为:
K为比重。
3.设计程序,实现去除图5-7中的矩形区域外的噪声,并填充矩形区域内部了。
I=imread('test3.tif'); se = strel('diamond',5); J=imerode(I,se);
se = strel('diamond',10); K=imdilate(J,se); subplot(131),imshow(I) subplot(132),imshow(J) subplot(133), imshow(K)