距离变换

距离变换提供了像素与图像子集(如物体或特征)的距离度量。算法输入为二值图,输出为灰度图。它计算每个点到背景集合的最短距离,常用于寻找物体形心。算法包括直观计算和快速计算,后者通过特定模板和两次遍历实现。掩模的设计和距离公式的选取影响结果,可能出现亮线现象。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 距离变换的目的

距离变换提供了像素与某个图像子集(可能表示物体或某些特征)的距离度量。


2. 距离变换算法的输入输出

输入:二值图;输出:灰度图


3. 距离变换实例

​ 一个比较好的例子,就是目标物体是白色圆形,背景为黑色,源图像如下图所示,

在这里插入图片描述

其中背景(黑色部分)和目标物体(白色部分)两个集合都是已经确定的,现在度量的是目标物体到背景的距离。经过距离变换后的图像是什么样的呢?如下图所示,
在这里插入图片描述
​ 理解:从距离变换后的图中可以看出,离背景部分距离越远,该点也就越亮(像素值越大)。那么这个性质有什么用呢?可以想象一下,在黑色的背景中的任意一个物体,那个经过距离变换后最亮的像素点不就可以大致看作这个物体的形心吗!这个形心可以为后续的图像处理提供信息,比如作为种子区域生长法的初始种子。

​ 细心的同学可能发现,距离变换后的图像有几道比较亮的直线,不符合设想啊,按理说,应该是一个无数个(理想情况)同心圆组成的图案啊。产生这一现象和下面我要介绍的内容——距离变换的具体计算有关。


4. 距离变换算法

距离变换实际就是求一个点到点集合的最近距离,那么首先就是来确定这个距离。常用的距离公式有欧式距离、曼哈顿距离等等,不太了解的同学可以自行百度,具体使用哪种距离进行度量,需要结合自己的实际情况来选择。

直观计算

确定了距离公式之后,根据直观的理解应该怎么计算呢?还是拿上面的例子进行说明,B代表着黑色背景的集合,里面有 b 1 , b 2 , b 3 b_1,b_2,b_3 b1,b2,b3……等一些点;W代表着白色物体的集合,里面有 w 1 , w 2 , w 3 w_1,w_2,w_3 <

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值