Hausdorff distance
Hausdorff distance
微分动力系统原理 这本书里有介绍
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)两者中的较大者,它度量了两个点集间的最大不匹配程度.
http://blog.sina.com.cn/s/blog_5caa94a00100fa26.html
http://cgm.cs.mcgill.ca/~godfried/teaching/cg-projects/98/normand/main.html
Hausdorff distance
H (A, B) = max { h (A, B), h (B, A) }
给定欧氏空间中的两点集 , ,Hausdorff距离就是用来衡量这两个点集间的距离。
其中, , 。 称为双向Hausdorff距离, 称为从点集A到点集B的单向Hausdorff距离。相应地 称为从点集B到点集A的单向Hausdorff距离。
下面从一个例子来理解Hausdorff距离。
上图中,给出了A,B,C,D四条路径,其中路径A具体为(16-17-18-19-20),路径B具体为(1-2-3-4-9-10)。要求Hausdorff距离 ,则需要先求出单向Hausdorff距离 和 。
对于 ,以A中的点16为例,在路径B中的所有点中,距离点16最近的是点1,距离为3。即 。同理由图可得 , , , 。在它们中,值最大的为3,故 。
同理可得, 。
所以 。
同理可求出上图中四条路径间的单向Hausdorff距离如下表所示:
双向Hausdorff距离 是单向Hausdorff距离 和 两者中的较大者,显然它度量了两个点集间的最大不匹配程度。
当A,B都是闭集的时候,Hausdorff距离满足度量的三个定理:
(1) ,当且仅当A=B时, 。
(2)
(3)
若凸集A,B满足 且 ,并记 , 分别为A,B边界的点集合,则A,B的Hausdorff距离等于 , 的Hausdorff距离。
Hausdorff距离易受到突发噪声的影响。
当图像受到噪声污染或存在遮挡等情况时,原始的Haudorff距离容易造成误匹配。所以,在1933年,Huttenlocher提出了部分Hausdorff距离的概念。
简单地说,包含q个点的集合B与集合A的部分Hausdorff距离就是选取B中的K( 且 )个点,然后求这K个点到A集合的最小距离并排序,则排序后的第K个值就是集合B到集合A的部分单向Hausdorff距离。定义公式如下:
相应地,部分双向Hausdorff距离定义为: