对二值图像进行膨胀处理

2020/06/19 01:39

本文,介绍数学形态学处理里面的膨胀处理。

给出如下图片,后面的图片是对前面的图片放大的效果,每一个方格代表一个像素。

我们对前面的图片进行膨胀处理,并放大以便于查看。

考虑某个像素连带周围8个像素,这9个像素排列出一个3*3的格子阵。

比如img[6,6]对应的格子阵是img[5:8,5:8],里面的像素全部都是黑色的。

像素img[6,13]的格子阵有三个白色像素:

img[5:8,12:15]

如果某个像素周围有白色像素,就把这个像素变成白色,否则保持不变。

为此,先得在原图上下左右各增加一排像素,防止出现边界效应。

img0=np.zeros((27,27))

img0[1:26,1:26]=img

开始处理图片:

for i in range(25):

for j in range(25):

if np.sum(img0[i+1:i+3,j+1:j+3])>0:

img[i,j]=255

效果如下。

连续两次膨胀处理的效果。

连续三次膨胀的效果。

免费直播

    精选课程 更多

    注册电脑版

    版权所有 2003-2020 广州环球青藤科技发展有限公司