基于轮廓模板匹配的物体检测算法
摘要 本文提出了一种基于轮廓模板匹配技术的物体识别检测算法。物体检测器使用部分已有的轮廓图片,通过AdaBoost训练得出。此算法达到了一般基于纹理检测器的效果,而且更加简单且易于实现。
关键词 轮廓模板;Chamfer;Boost
1 概述
我们的模型训练方法采用了一种过饱和的模式,即使用冗余的特征集合进行训练,而这些冗余特征集合恰恰克服了同类物体的不同点(如不同的体型、不同的动作以及不同的面部表情)、图像场景变化(不同的光照条件、遮挡等)。
2 检测
整个检测器是建立在局部的基于轮廓特征匹配基础上的,匹配算法使用了方向性的Chamfer距离考量,这个距离值通过其权重求和,并最终作为物体检测分类器。特征集合F代表了物体的轮廓T的局部片段,每个特征都包括了它自身到物体中心的偏移量p。另外的3个参数分别是:方向量的权重λ,检测阈值θ以及特征权重量a。
2.1 方向性Chamfer匹配
Chamfer匹配技术在轮廓匹配应用中非常广泛。它提供了一种计算两个轮廓距离量的方法,并且在有大量非对齐的情况下,仍有很高的鲁棒性。从最简单的模型讲,Chamfer匹配需要两个边缘点集,图像边缘点集E={e}和匹配模板点集T={t},下面的公式描述了计算这两个点集在偏移量为x情况下的Chamfer值:
NT为T中点的数量。这个公式计算了匹配模板中的边缘点到最近的图像边缘点的平均距离。通过预处理,例如距离变换(Distance Transform),计算Chamfer距离的效率会提高很多,公式(1)即可以转化为公式(3):
欧几里得距离DT的计算可以参照文章[1]。
另外,一个很大的改进,就是引用了轮廓的方向考量。这种考量通过边缘点的斜率来表达。在图像点集中,通常有很多地方边缘非常嘈杂混乱,方向性Chamfer距离可以很好的解决这个问题。其中一种技术是将图像和匹配模板中的边缘点划分为不同的几个离散的方向通道,并求出Chamfer值的和。但这种方法的通道数量并不明确,而且需要格外注意连个通道之间的边缘曲线。我们使用一种略微不同的方法,精确的计算匹配模板上每个边缘点斜率与图像中每个边缘点斜率的差:
o(·)代表一个边缘点的斜率,|o1-o2|表示计算两个点的斜率差,ADTE(t+x)表示