一种霍夫投票3D彩色点云识别方法与流程

文档序号:18901550发布日期:2019-10-18 22:00阅读:416来源:国知局
一种霍夫投票3D彩色点云识别方法与流程

本发明属于3d点云数据处理技术领域,具体涉及一种霍夫投票3d彩色点云识别方法。



背景技术:

随着人工智能的发展,机器视觉逐渐从二维图像过度到三维图像,而3d点云作为三维图像的典型代表之一,已逐渐被广泛应用。3d点云识别是利用计算机对3d点云进行预处理、分割、特征提取、关键点标注,并选取合适的分类器对3d场景中的物体加以识别的技术。其特征提取及关键点的标注方法的优劣直接影响识别准确率及识别的速度。

近些年,利用3d霍夫投票方法对点云进行识别逐渐引起了一些学者的关注。这种识别方法的基本思想是:3d模型转换到3d测试物体上的各个关键点参考向量对测试物体进行投票,若霍夫投票数在霍夫空间某区域内达到一定阈值时,则识别其为目标物体。3d点云霍夫投票识别方法霍夫投票具有较强的抗干扰和抗噪能力。但仍旧存在一些缺陷:(1)特征匹配好坏直接影响投票结果,从而决定识别准确率的高低;(2)不规则物体模型选择模型质心为参考点计算过于复杂,影响识别速度。



技术实现要素:

本发明的目的是提供一种霍夫投票3d彩色点云识别方法,解决了现有霍夫投票识别算法中关键点特征匹配准确度低且识别速度较低的问题。

本发明所采用的技术方案是,一种霍夫投票3d彩色点云识别方法,具体按照以下步骤实施:

步骤1,分别均匀提取3d点云模型和测试物体关键点;

步骤2,计算经步骤1后得到的每个关键点的shot3d特征描述子;

步骤3,经步骤2后,逐一计算测试物体关键点和3d点云模型关键点间shot3d特征匹配度δ(a,b)函数,选取δ(a,b)函数值最接近1的将其进行匹配,直到测试物体上的关键点特征完全匹配完成为止;

步骤4,选取3d模型表面任意一关键点为参考点,计算3d模型上各个关键点到参考点的参考向量;

步骤5,经步骤4后,将3d点云模型每个关键点的参考向量坐标转换到与测试物体特征相匹配的关键点上,并在测试物体各个关键点上形成参考向量;

步骤6,对测试物体每个关键点的参考向量进行3d霍夫投票,若投票在物体表面或表面附近同一区域且此区域达到一定票数,则认为测试物体为模型物体,识别成功,否则,识别失败。

本发明的特点还在于,

步骤1中,具体按照以下步骤实施:

步骤1.1,分别将3d点云模型和测试物体划分为多个大小相同的3d体素网格,将体素网格看作空间中微小的3d盒;

步骤1.2,经步骤1.1后,分别计算每个3d盒的中心点位置,如式(1)所示;

式(1)中,(xi、yi、zi)为3d盒中点云数据中各点坐标,n为3d盒中点数量;

步骤1.3,经步骤1.2后,将每个3d盒中心点标记为所提取的关键点。

步骤2中,具体按照以下步骤实施:

步骤2.1,经步骤1后,在已提取的关键点处构造局部坐标系;具体按照以下步骤实施:

步骤2.11,对关键点及其邻域建立协方差矩阵m,并进行特征值分解,如式(2)所示;

式(2)中,di=||pi-p||2,pi为给定点的邻域点,p为邻域点的重心;

利用公式(3)计算邻域点内的中心点pc,然后,通过公式(4)求取各点到中心的空间距离di,所求距离di最小的点为所求重心p;

步骤2.12,计算并求出m的三个特征向量v0、v1、v2,其中,v0即为给定点的法向量,作为z轴,另两个特征向量v1和v2分别作为x轴和y轴;

步骤2.2,对关键点邻域进行子空间划分;其中,经度划分为4份,纬度划分为2份,径向长度划分为2份,最终得到16个子空间;

步骤2.3,对每个子空间,采用双线性插值法统计其邻域内点法向量夹角余弦直方图;计算其内每点的法向量与z轴正方向的夹角余弦,将此余弦值等值划分为11份作为横坐标轴,纵轴为该余弦值范围内夹角数量,即每个特征点描述子的维数为16*11=176维。

步骤3中,具体按照以下步骤实施:

利用公式(5)逐一计算测试物体关键点和3d点云模型关键点间shot3d特征匹配度δ(a,b)函数,选取δ(a,b)函数值最接近1的将其进行匹配,直到测试物体上的关键点特征完全匹配完成为止;

式(5)中,pe为人工设定的距离阈值,pe=0.1,为a、b关键点上的单位法向量,fa、fb分别为a、b关键点间特征值;

当a和b间的特征距离大于阈值pe或局部坐标下单位法线量间夹角大于90度时,认为a和b间不匹配,舍弃;当a和b间的特征距离小于阈值pe时,局部坐标下单位法向量夹角越小并且特征距离越近,计算所得值越趋向于1,则这两个关键点特征匹配度越高。

步骤4中,具体按照以下步骤实施:

步骤4.1,选取3d模型表面任意一个关键点为参考点cm,对于模型上每一个特征点利用公式(6)计算出参考点cm和特征点间的全局参考向量

步骤4.2,将步骤4.1后得到的每个全局参考向量转换到相应的局部参考坐标下,并利用公式(7)计算得到模型局部参考向量

式(7)中,是旋转矩阵,由公式(8)计算得到;

式(8)中,矩阵中每一行分别是三个坐标方向下的特征点及其邻域内点构建的局部坐标下的单位特征向量。

步骤5中,具体按照以下步骤实施:

步骤5.1,经过步骤3后,得到模型和测试物体特征匹配的关键点对因为在局部坐标中的参考向量具有旋转平移不变性,所以局部坐标下的模型参考向量等同于测试物体的参考向量

步骤5.2,利用公式(9)将局部坐标下的测试物体的参考向量转换到全局坐标下的测试物体的参考向量

式(9)中,为旋转矩阵,由公式(10)计算所得,其每一列分别是三个坐标方向下的特征点及其邻域内点构建的局部坐标的单位特征向量;

步骤6中,具体按照以下步骤实施:

步骤6.1,在测试物体上设计一个空的3d投票数组;

步骤6.2,统计测试物体上各个参考向量指向的位置,若参考向量指向的位置落在3d投票数组内部,则该位置所对应的3d投票数组区域的计数器加1,即投出一票,对测试物体上的所有参考向量进行同样的处理,最终累加得到一个含有不同票数的3d投票数组;

步骤6.3,根据数组内票数分布及峰值确定物体真假性及位置;若累加数组某元素的值达到所设定的阈值且在物体表面,则表示该数组对应区域内存在识别物体,否则不存在识别物体。

本发明的有益效果是:

该方法均匀提取3d点云模型和测试物体关键点,计算每个关键点的shot3d特征描述子,利用shot3d特征匹配度δ(a,b)函数进行特征匹配,选取模型表面任意一关键点为参考点,计算模型上各个关键点到参考点的参考向量,将其转化到测试物体各个关键点上形成参考向量,最后,利用霍夫投票的方法对3d场景中的物体进行识别。在识别过程中,由于均匀选取关键点,选取模型表面任意一点为模型参考点,以及利用特征匹配度δ(a,b)函数进行特征匹配,使得识别准确率和识别速率得到一定的提高。

附图说明

图1是本发明一种霍夫投票3d彩色点云识别方法的流程图;

图2是本实施例中3d点云关键点特征匹配的标注图;

图3是本实施例中的shot描述子子空间划分图;

图4是本实施例中的shot描述子直方图;

图5(a)是采用特征距离法进行特征匹配的结果;

图5(b)是采用本实施例中进行特征匹配的结果;

图6是本实施例中参考向量转换示意图;

图7(a)是现有霍夫投票识别方法的识别结果图;

图7(b)是本实施例中识别方法的识别结果图。

具体实施方式

下面结合附图和具体实施方式对本发明进行详细说明。

本发明一种霍夫投票3d彩色点云识别方法,如图1所示,具体按照以下步骤实施:

步骤1,分别均匀提取3d点云模型和测试物体关键点;具体按照以下步骤实施:

步骤1.1,分别将3d点云模型和测试物体划分为多个大小相同的3d体素网格,将体素网格看作空间中微小的3d盒;

步骤1.2,经步骤1.1后,分别计算每个3d盒的中心点位置,如式(1)所示;

式(1)中,(xi、yi、zi)为3d盒中点云数据中各点坐标,n为3d盒中点数量;

步骤1.3,经步骤1.2后,将每个3d盒中心点标记为所提取的关键点,如图2所示;

使用均匀采样的方法提取3d模型和测试物体的关键点,此方法实现简单,运行时间较短,以缩短后续的3d点云目标识别的时间;

步骤2,计算经步骤1后得到的每个关键点的shot3d特征描述子;具体按照以下步骤实施:

步骤2.1,经步骤1后,在已提取的关键点处构造局部坐标系;具体按照以下步骤实施:

步骤2.11,对关键点及其邻域建立协方差矩阵m,并进行特征值分解,如式(2)所示;

式(2)中,di=||pi-p||2,pi为给定点的邻域点,p为邻域点的重心;

利用公式(3)计算邻域点内的中心点pc,然后,通过公式(4)求取各点到中心的空间距离di,所求距离di最小的点为所求重心p;

步骤2.12,计算并求出m的三个特征向量v0、v1、v2,其中,v0即为给定点的法向量,作为z轴,另两个特征向量v1和v2分别作为x轴和y轴;

步骤2.2,对关键点邻域进行子空间划分;其中,经度划分为4份,纬度划分为2份,径向长度划分为2份,最终得到16个子空间,如图3所示;

步骤2.3,对每个子空间,采用双线性插值法统计其邻域内点法向量夹角余弦直方图;计算其内每点的法向量与z轴正方向的夹角余弦,将此余弦值等值划分为11份作为横坐标轴,纵轴为该余弦值范围内夹角数量,如图4所示;这样,每个特征点描述子的维数为16*11=176维;

步骤3,经步骤2后,逐一计算测试物体关键点和3d点云模型关键点间shot3d特征匹配度δ(a,b)函数,选取δ(a,b)函数值最接近1的将其进行匹配,直到测试物体上的关键点特征完全匹配完成为止;具体按照以下步骤实施:

利用公式(5)逐一计算测试物体关键点和3d点云模型关键点间shot3d特征匹配度δ(a,b)函数,选取δ(a,b)函数值最接近1的将其进行匹配,直到测试物体上的关键点特征完全匹配完成为止;

式(5)中,pe为人工设定的距离阈值,pe=0.1,为a、b关键点上的单位法向量,fa、fb分别为a、b关键点间特征值;在本发明中,设计了一个分段函数,当a和b间的特征距离大于阈值pe或局部坐标下单位法线量间夹角大于90度时,认为a和b间不匹配,舍弃;当a和b间的特征距离小于阈值pe时,局部坐标下单位法向量夹角越小并且特征距离越近,计算所得值越趋向于1,则这两个关键点特征匹配度越高;图5(a)、(b)分别是采用特征距离法和采用本发明进行特征匹配的结果;

步骤4,选取3d模型表面任意一关键点为参考点,计算3d模型上各个关键点到参考点的参考向量;具体按照以下步骤实施:

步骤4.1,选取3d模型表面任意一个关键点为参考点cm,对于模型上每一个特征点利用公式(6)计算出参考点cm和特征点间的全局参考向量

步骤4.2,将步骤4.1后得到的每个全局参考向量转换到相应的局部参考坐标下,并利用公式(7)计算得到模型局部参考向量

式(7)中,·表示矩阵乘积,是旋转矩阵,由公式(8)计算得到;

式(8)中,矩阵中每一行分别是三个坐标方向下的特征点及其邻域内点构建的局部坐标下的单位特征向量;

步骤5,经步骤4后,将3d点云模型每个关键点的参考向量坐标转换到与测试物体特征相匹配的关键点上,并在测试物体各个关键点上形成参考向量;具体按照以下步骤实施:

步骤5.1,经过步骤3后,得到模型和测试物体特征匹配的关键点对因为在局部坐标中的参考向量具有旋转平移不变性,所以局部坐标下的模型参考向量等同于测试物体的参考向量

步骤5.2,利用公式(9)将局部坐标下的测试物体的参考向量转换到全局坐标下的测试物体的参考向量

式(9)中,为旋转矩阵,由公式(10)计算所得,其每一列分别是三个坐标方向下的特征点及其邻域内点构建的局部坐标的单位特征向量;

步骤4和步骤5的参考向量的转换过程如图6所示;

步骤6,对测试物体每个关键点的参考向量进行3d霍夫投票,若投票在物体表面或表面附近同一区域且此区域达到一定票数,则认为测试物体为模型物体,识别成功,否则,识别失败;具体按照以下步骤实施:

步骤6.1,在测试物体上设计一个空的3d投票数组;

步骤6.2,统计测试物体上各个参考向量指向的位置,若参考向量指向的位置落在3d投票数组内部,则该位置所对应的3d投票数组区域的计数器加1,即投出一票,对测试物体上的所有参考向量进行同样的处理,最终累加得到一个含有不同票数的3d投票数组;

步骤6.3,根据数组内票数分布及峰值确定物体真假性及位置;若累加数组某元素的值达到所设定的阈值且在物体表面,则表示该数组对应区域内存在识别物体,否则不存在识别物体。

图7(a)、(b)分别现有霍夫投票识别方法和本发明方法识别的结果,无矩形框表示无法识别电脑椅,有矩形框表示正确识别电脑椅。现有方法对场景中旋转一定角度或旋转角度大的目标物体无法识别,如图7(a)无法识别旋转后的电脑椅;而本发明由于采用了shot3d特征描述子对场景中的目标物具有旋转不变性,且采用的特征匹配技术提高了特征匹配正确率,故能够识别出旋转目标物,如图7(b)中的矩形框框出的电脑椅,表示能够很好的识别场景中的目标物,所以本发明不仅能够很好的识别出场景中非旋转目标物,而且也能很好的识别旋转的目标物。

将现有的基于特征距离的霍夫投票3d点云识别方法和本发明识别方法在多个性能方面进行了对比,对比结果如表1、表2和表3所示。由表1可知,本发明在关键点特征匹配方面,正确匹配的点对数均高于现有方法,增加了投票的准确性,为后续的正确识别打下良好基础。表2是将现有方法与本发明方法在识别准确率方面进行了对比,结果表明,本发明方法的正确识别率均高于现有霍夫投票的识别方法,其原因是在特征匹配时使用了特征匹配度函数进行特征匹配,增加了匹配正确率,从而提高了识别准确率。统计结果表明,本发明方法的识别准确率平均增加了3.6%。表3是将现有方法与本发明方法在识别时间上进行了对比,本发明识别方法所花时间均少于现有识别方法的运行时间,其主要原因是在关键点提取时,本发明采用均匀采样方式,该方式运算简单,且选择模型表面任意一点作为参考点,而现有识别方法采用目标的质心作为参考点的选择,质心计算复杂度高,运行时间长。统计结果表明,本发明方法的总体运行时间比现有的霍夫投票的识别方法运行时间减少约1.79秒。由表1、表2、表3可以验证本发明方法的有效性。

表1算法中关键点特征匹配对比

表2算法识别准确率(%)的对比

表3各个室内物体平均识别时间(s)

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1