图像处理之距离变换
概述
距离变换是二值图像处理与操作中常用手段,在骨架提取,图像窄化中常有应用。距离
变换的结果是得到一张与输入图像类似的灰度图像,但是灰度值只出现在前景区域。并
且越远离背景边缘的像素灰度值越大。
基本思想
根据度量距离的方法不同,距离变换有几种不同的方法,假设像素点p1(x1, y1),
p2(x2, y2)计算距离的方法常见的有:
1. 欧几里德距离,Distance =
2. 曼哈顿距离(City Block Distance),公式如下:Distance = |x2-x1|+|y2-y1|
3. 象棋格距离(Chessboard Distance),公式如下:Distance = max(|x2-x1|,|y2-y1|)
一旦距离度量公式选择,就可以在二值图像的距离变换中使用。一个最常见的距离变换
算法就是通过连续的腐蚀操作来实现,腐蚀操作的停止条件是所有前景像素都被完全
腐蚀。这样根据腐蚀的先后顺序,我们就得到各个前景像素点到前景中心骨架像素点的
距离。根据各个像素点的距离值,设置为不同的灰度值。这样就完成了二值图像的距离
变换。
注意点:
腐蚀操作结构体的选取会影响距离变换的效果,例子使用3*3的矩阵完成。有很多快速
的距离变换算法,感兴趣的可以自己研究。
运行