平面上的点模式匹配的一般问题是确定仿射变换下两个点集是否匹配。现设第一个点集为模型点,一共有n个点,第二个点集为图象点,有m个点。设第二个点集是第一个点集经过某个仿射变换得到的,但由于噪声的作用,点的相对位置有微小的变化,而且第一个点集中可能有部分点(称为缺少点)在第二个点集中找不到对应点,第二个点集中可能随机出现一些新的点(称为伪),点匹配主要有以下三个问题:
(1) 找到第一个点集中所有的在第二个点集中没有匹配的点;
(2)找到第二个点集中所有的在第一个点集中没有匹配的点;
(3)对有匹配的点,找出正确的对应关系。
◎ 寻找两幅图像中特征点对应关系可以有许多不同的算法,但是基本上是通过两步来进行的:
第一步,选择物体投影图像上的特征点,如局部灰度极大值点、角顶点等
第二步,利用所选择特征点在结构上或其他特征上的差异进行匹配
◎ 常用的角点匹配算法有常用的角点匹配算法有Hausdorff距离法、松弛标记法、确定性退火算法以及迭代最近点算法(ICP)。下面说说Hausdorff距离法:
Hausdorff距离是描述两组点集之间相似程度的一种量度,它是两个点集之间距离的一种定义形式:假设有两组集合A={a1,…,ap},B={b1,…,bq},则这两个点集合之间的Hausdorff距离定义为H(A,B)=max(h(A,B),h(B,A)) (1)
其中,
h(A,B)=max(a∈A)min(b∈B)‖a-b‖ (2)
h(B,A)=max(b∈B)min(a∈A)‖b-a‖ (3)
‖·‖是点集A和B点集间的距离范式(如:L2或Euclidean距离).
这里,式(1)称为双向Hausdorff距离,是Hausdorff距离的最基本形式;式(2)中的h(A,B)和h(B,A)分别称为从A集合到B集合和从B集合到A集合的单向Hausdorff距离.即h(A,B)实际上首先对点集A中的每个点ai到距离此点ai最近的B集合中点bj之间的距离‖ai-bj‖进行排序,然后取该距离中的最大值作为h(A,B)的值.h(B,A)同理可得.
由式(1)知,双向Hausdorff距离H(A,B)是单向距离h(A,B)和h(B,A)两者中的较大者,它度量了两个点集间的最大不匹配程度.
◎ 说到诸如著名的Hausdorff距离法,建议先看看聚类、判决方面的书,好像有一本叫《图像识别导论》讲的挺不错的,然后在看这些论文,深入了解物理意义和仿真一下现有算法,有助于发散思维构思新方法或提出有价值的改进,写出有分量的论文