一种识别部分遮挡曲面物体的方法 【技术领域】
本发明涉及一种识别曲面物体的方法,尤其涉及一种识别部分遮挡曲面物体的方法。
背景技术
在物体识别的许多应用中,都是匹配物体的图像与模型库识别物体。如果轮廓包含足够的信息,那么识别的问题就转化为平面曲线的匹配问题。传统的识别方法大都是提取待识别目标和模型曲线的关键特征点,通过特征点的匹配达到对目标的识别。但在实际情况中,特征点的提取不可能完全准确,噪声和遮挡也不可避免地存在,因此采用传统的点点对应的匹配算法不能奏效。主要用于测量两个点集之间匹配程度的Hausdorff距离(简称HD)不需要建立两个点集之间点与点的对应,将模板与被遮挡的目标图像匹配时也能产生较好的效果。在通常的Hausdorff距离计算中,由于是对物体边缘象素点逐个计算,当直接比较2个大尺寸物体边缘图像的相似程度时,其计算量非常大。用关键特征点(角点,切点,拐点)代替边缘点来计算Hausdorff距离,大大降低了Hausdorff距离的计算复杂度。Nirwan等和N.Ayache等直接用关键特征点进行匹配,认为特征点匹配,这两条曲线就相互匹配。实际上轮廓曲线用特征点表示不具有唯一性,两个特征点之间可以连成光滑的任意曲线。在机器人装配线中,由于多个物体堆积或重叠在一起,物体的图像产生相互遮挡;在遥感图像识别方面,物体可能被树、房屋和车辆的影子遮挡,因此有必要开展部分遮挡物体的识别研究。目前,对于部分遮挡物体的识别学者们已进行了一些研究。Krolupper提出用圆弧逼进物体的边界,是对物体的局部描述,且对遮挡是鲁棒的。但该方法假设物体的边界是一条封闭曲线,物体只经过平移、旋转和比例变化。Shan提出了将模型物体表示为直方图的集合,然后将待识别物体的直方图与模型直方图匹配。可解决部分遮挡物体的匹配。Park提出用特征间的二值向量关系描述物体,物体的标记仅仅受特征间的二值关系值的影响,该方法是基于局部特征的描述方法。Cho根据很多物体都具有对称性的特点,首先根据对称性恢复物体被遮挡部分的形状,而后再进行匹配,该方法能识别刚体变换下的三维物体,但该方法只适合于识别有对称结构和截面为椭圆或近似圆的部分遮挡物体。Dinesh提出了基于完美哈希法(perfect hash)识别部分遮挡的物体。Gorman用动态规划识别被遮掩形状,他们首先提出了基于Fourier描绘子的线段表示方法,每个形状被分成几个线段,每个线段由一个长度为2的Fourier描绘子表示,然后计算模型与待识别目标之间的动态匹配表,最后根据匹配的线段数来判断是否匹配。Schwartz直接匹配两条曲线,将两条曲线进行等间距的分割,由此产生了两个曲线的点集,然后用最小二乘法计算两条曲线点集间的距离。计算出的距离小于给定的阈值则认为这两条曲线是匹配的。这种方法只适合于模型曲线完全包含了场景曲线,并且这种直接匹配的方法在复杂的变换下是失效的。Rajpal提出了用神经网络来解决遮掩问题,使用了多层感知网和索引的方法来匹配部分遮挡的形状,在一定程度上解决了部分遮掩问题。上述的别方法均只适用于刚体或相似变换,在仿射变换或透视变换下会失效。张等提出了平面多边形状目标存在遮挡的识别方法,且能适合于仿射变换。但在工程上,有些物体不一定能用平面多边形近似。Orrite提出用双切点描述物体的局部边界,并用优化的Hausdorff距离(简称PHD)度量模型和目标地匹配程度,但该度量的可区分性小,会导致误判,且在存在较大几何变换的情况下,模型和图像的一一对应关系不能获得。
上述大部分的方法都只适合于简单的刚体变换和相似变换,而摄像机成像模型不是简单的刚体和相似变换。Orrite的识别方法虽然适合于透视变换,但它的方法用优化的Hausdorff距离(简称PHD)度量模型和目标的匹配程度,该度量的可区分性小,会导致误判,且在存在较大几何变换的情况下,模型和图像的一一对应关系不能获得。
【发明内容】
本发明针对现有技术中存在的缺陷和不足,提供了一种识别部分遮挡曲面物体的方法,基于改进的Hausdorff距离和匹配子曲线识别部分遮挡的曲面物体的方法。本发明提出首先提取模型和待识别目标的轮廓曲线上的关键特征点,基于这些关键特征点将轮廓曲线分段,通过对每段子曲线的识别实现对整条曲线的识别;提出一种新且稳定的Hausdorff距离(简称RHD),基于RHD测量目标和模型特征点集的匹配程度,估计最佳仿射或透视变换矩阵;基于最佳仿射或透视变换矩阵搜寻目标和模型所有子曲线的匹配段对,计算匹配率,匹配仿射或透视变换下部分遮挡的曲线。该算法匹配目标和模型轮廓曲线上的每段子曲线,解决了用特征点表示曲线的不唯一性问题;新的RHD综合考虑了出格点和遮挡的影响,能够胜任有遮挡和噪声的曲线的匹配。理论分析和实例结果表明该发明提出的方法适合于仿射变换或透视变换,抗噪声能力强,在有比较大的遮挡时仍有效。
本发明是这样来实现的,其特征是识别方法为:
(1)首先提取模型轮廓和待识别目标轮廓的关键特征点,用关键特征点初步描述轮廓曲线,这些关键特征点将目标轮廓和模型轮廓曲线分成许多子曲线;
(2)提出一种稳定的Hausdorff距离,基于稳定的Hausdorff距离测量模型和待识别目标轮廓曲线上关键特征点集的匹配程度,并确定最佳仿射或透视变换矩阵;
(3)在关键特征点匹配的前提下,再匹配目标和模型轮廓曲线上的每段子曲线,设计了一种新的算法匹配目标和模型轮廓曲线上的每段子曲线;
(4)最后基于得到的最佳仿射变换阵搜寻目标和模型所有子曲线的匹配段对,计算匹配率,识别仿射或透视变换下部分遮挡的曲面物体。
本发明所述的关键特征点优选角点、切点和拐点。
本发明的优点是:1、摄像机成像模型不是简单的刚体和相似变换,本发明将部分遮挡曲面物体的识别扩展到仿射变换或透视变换;2、能够胜任有遮挡和噪声的曲面物体的识别;3、用关键特征点代替边缘象素点计算Hausdorff距离,可大大降低Hausdorff距离的计算复杂度;在估计仿射变换或透视变换矩阵时,采取了同类点匹配的原则,大大减少了搜索空间,提高了估计仿射变换或透视变换矩阵的效率;4、建立了模型与待识别目标特征间的一一对应关系,解决了通常的基于Hausdorff距离的匹配方法不能处理特征之间对应关系的问题;5、解决了用多边形或圆锥曲线近似曲线的低精度性问题。
【附图说明】
图1为本发明曲线的模型轮廓细分图.
图2为本发明的模型成仿射对应的目标轮廓。
图3、图4为本发明的噪声与识别率的关系图。
图5为本发明的遮挡率与识别率的关系图。
【具体实施方式】
1、改进的Hausdorff距离
首先,本发明综合考虑出格点、遮挡等因素,构造出一种稳定的Hausdorff距离(简称RHD)度量关键特征点集A和B之间的相似度,其中点集A是模型轮廓经过投影变换后的关键特征点的集合,点集B是目标轮廓关键特征点的集合,在该度量函数中同时考虑遮挡和出格点的影响。
RHD具体定义如下:
其中num(A)表示特征点集A中特征点的个数,点集A′是满足{min‖a-b‖<δ}的集合,δ是用来消除出格点的阈值,M是一个具有很大值的常数。当集合A′中的元素个数不大于3时,hRHD置为M;反之hRHD的值由两项决定,前一项主要考虑遮挡的因素,后一项主要考虑出格点的影响,其值取集合A′中dB(a′)的最大值。(1)式中的阈值取3是因为在假设中计算仿射变换矩阵时至少用到三对对应点,所以无论模型与目标是否具有对应关系,至少都有三对点会满足{min‖a-b ‖<δ}的条件。
HRHD(A,B)按下式求得
HRHD(A,B)=max(hRHD(A,B),hRHD(B,A)) (2)
通过恰当地选取参数δ,出格点能被很好地克服。类似地,通过恰当地选取参数ρ,遮挡问题能得到很好的解决.因此HRHD(A,B)对出格点及物体遮挡均不敏感。
本文提出的方法与Orrite(Carlos Orrite and J.Elias Herrro.Shape matchingof partially occluded curves invariant under projective transformation[J].ComputerVision and Image Understanding,2004,93(2):pp34-64)方法的主要区别有以下三点:1、Orrit的Hausdorff距离是对物体边缘象素点逐个计算,当直接比较两个大尺寸物体边缘图像的相似度时,其计算量非常大,本文用关键特征点(角点,切点,拐点)代替边缘象素点计算Hausdorff距离,可大大降低Hausdorff距离的计算复杂度;2、Orrite只考虑了出格点的影响,在错误图像和存在较大遮挡的图像匹配中,PHD的值仍比较大,该度量的可区分性小,会导致误判,本文综合考虑了出格点和遮挡的影响,能够胜任有遮挡和噪声的曲线匹配;3、Orrite认为PHD取得全局最小值所对应的模型即是与目标匹配的模型,实际上由于物体遮挡和图像噪声的存在,使得PHD取得全局最小值所对应的模型并不一定是与目标匹配的模型,本文在满足RHD<p(p是给定的阈值)的候选模型中,通过进一步匹配子曲线和计算匹配率,确定与目标匹配的模型。2、匹配模型和待识别轮廓曲线上的关键特征点
本发明提出的RHD作为测度匹配模型曲线和待识别曲线上的关键特征点,并将点的匹配限制在同一类型上进行,即角点、切点、拐点分别只能与角点、切点、拐点对应。这样可大大减少搜索空间,提高匹配效率。
用关键特征点代替象素点计算RHD,并遵循同类点匹配原则,但关键特征点的匹配方案仍然有多种,本发明通过求取RHD的最小值估计姿态变换阵,求得的最小RHD是一个局部最小值,即模型中的某一条曲线与目标轮廓匹配时,在特征点的各种匹配方案中,RHD取最小值。对于模型库中的每条曲线都对应着一个局部最小的RHD。满足RHD<p(p是给定的阈值)的仿射变换矩阵都认为是可能的最佳仿射或透视变换矩阵。因为物体遮挡和图像噪声的存在,使得这些局部最小值中的全局最小值对应的模型不一定是所求的模型,故需进一步用匹配率验证。
匹配关键特征点的方法如下:
Step1:提取待识别目标轮廓上的关键特征点;
Step2:根据同类点匹配的原则,与模型轮廓Mi(i=1,2...,n,n为模型库中模型的个数)上的同类点进行匹配;
Step3:估计模型曲线与待识别曲线的仿射或透视变换矩阵T,计算模型曲线经过上述仿射或透视变换后的曲线与待识别曲线关键特征点间的RHD;
Step4:与用其它匹配方案计算出的RHD进行比较,得到RHD的一个局部最小值;
Step5:目标与模型库中的每条曲线进行匹配,都可以得到一个局部最小的RHD,满足RHD<p(p是给定的阈值)的仿射变换矩阵都是可能的最佳仿射或透视变换矩阵(若有m个);
Step6:仿射或透视变换矩阵求出的同时,模型和待识别曲线的关键特征点的对应关系也即确定了。
3、匹配模型和待识别目标轮廓曲线的子曲线
两条曲线的关键特征点匹配,不一定表示这两条曲线匹配。由于在两个不变点之间,曲线的形状不唯一,即用关键特征点表示曲线不具有唯一性。为了解决这个问题,我们将曲线上两个关键特征点间的每段子曲线根据精度要求进行细分[10]。判断两条曲线上对应的细分点是否满足同样的仿射对应关系。
如图1、图2所示,根据精度要求将弧12细分,细分点为a,b,...i,过这些细分点分别作定方向的(与连接两个特征点的直线平行)扫描线。
匹配子曲线的算法如下:
(1)根据精度要求细分相邻两特征点间的子曲线,如图1中的12;
(2)过模型曲线上的这些细分点作一系列定方向的扫描线,这些扫描线与模型轮廓曲线上过某两个特征点的连线平行;
(3)将这些扫描线根据仿射变换矩阵T映射到目标平面上,映射后的扫描线与目标轮廓曲线上的对应曲线段1′2′有一系列的交点,如图2所示;
(4)验证模型与待识别曲线对应子曲线上的细分点是否对应,以及对应的细分点之间的关系是否满足前面计算出的仿射变换关系T;
(5)若(4)中条件满足,则模型和待识别曲线的该段子曲线匹配。
4、部分遮挡曲面物体的识别算法
假设模型库中满足RHD<p的模型有m个,其轮廓用Mi表示,i=1,2...,m,待识别目标的轮廓用I表示。
具体的识别算法如下:
Step1:提取目标轮廓曲线上的关键特征点,根据关键特征点将待识别物体的轮廓曲线分段;
Step2:根据同类点匹配原则初步匹配目标和模型曲线上的关键特征点,再根据第2节的方法确定关键特征点的对应关系;
Step3:匹配模型轮廓与待识别目标轮廓的每段子曲线,记录相互匹配的段数ki,若目标轮廓和第i个模型的轮廓相互匹配的曲线段数目最多,即ki最大,则把目标归为模型i中,识别完毕。
假设从第j个特征点开始连续(如果不连续,可循环移位使之变成连续的)有kj小段模型曲线与待识别曲线相互匹配,则匹配率的定义为:f=kj/Ki,待识别的目标轮廓与库中某个模型比较,即取该模型的总段数Ki为分母。0<f<1,f越接近于1,说明这两条曲线越相似。上式所决定的匹配率不仅是分类的依据,而且还反映了图形的完整程度。
以识别工作台上的工具及机器零件为目的,摄像机在工作台上方,摄像机到工作台的距离与工具或机器零件的最大高度之比大于10。工作台上的工具或机器零件都可以近似简化为二维曲面物体。多组实验结果均表明本发明提出的方法是切实可行的,效果较好。
为了验证本发明提出的识别方法的稳定性,通过对合成图像和真实图像提取出的关键特征点的端点坐标增加高斯噪声,验证识别率和噪声的关系。
分别对图象中提取出的关键特征点的端点加σ2为0.5,1,1.5,2.5,3的高斯噪声,重复进行实验,得到识别率与噪声的关系图,如图3、图4所示。图中带有“o”标志的曲线为文献Carlos Orrite and J.Elias Herrro.Shape matching ofpartially occluded curves invariant under projective transformation[J].ComputerVision and Image Understanding,2004,93(2):pp34-64中基于PHD的方法得到的识别率与噪声的关系图,带有“*”标志的曲线为基于本文提出RHD的方法得到的识别率与噪声的关系图。实验结果表明本文提出的基于RHD的方法具有更好的鲁棒性。
为了验证识别率和遮挡率的关系,输入图像的被遮挡部分的比率慢慢增加。对实验中的图形分别遮挡10%、20%,30%,40%,50%,60%重复进行实验,得到识别率与遮挡率的关系图(其中σ2=0.5),如图5所示。图中带有‘+’标志和‘*’标志的曲线为图5的遮挡率与识别率的关系图,这两条曲线很接近,说明了本文提出的识别部分遮挡物体的算法具有较好的处理遮挡能力,只要待识别物体轮廓曲线有40%幸存,本文的算法就能识别出物体。