CN111553410B - 基于关键点局部曲面特征直方图和空间关系的点云识别方法 - Google Patents

基于关键点局部曲面特征直方图和空间关系的点云识别方法 Download PDF

Info

Publication number
CN111553410B
CN111553410B CN202010341002.2A CN202010341002A CN111553410B CN 111553410 B CN111553410 B CN 111553410B CN 202010341002 A CN202010341002 A CN 202010341002A CN 111553410 B CN111553410 B CN 111553410B
Authority
CN
China
Prior art keywords
point
point cloud
points
key
identification
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010341002.2A
Other languages
English (en)
Other versions
CN111553410A (zh
Inventor
陆军
朱波
华博文
韦攀毅
陈坤
王茁
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Harbin Engineering University
Original Assignee
Harbin Engineering University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Harbin Engineering University filed Critical Harbin Engineering University
Priority to CN202010341002.2A priority Critical patent/CN111553410B/zh
Publication of CN111553410A publication Critical patent/CN111553410A/zh
Application granted granted Critical
Publication of CN111553410B publication Critical patent/CN111553410B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures

Landscapes

  • Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Image Analysis (AREA)

Abstract

本发明属于计算机视觉技术领域,具体涉及一种基于关键点局部曲面特征直方图和空间关系的点云识别方法。本发明通过逐区域移动的点云自动滤波算法对点云数据进行精简,加快点云识别速度;使用关键点间的位置关系和点云关键点分布的全局信息进行特征匹配,提高对应关系的正确率;通过建立离线模型库,加快在线识别速度,当有新增的识别模型时,只需要提取模型点云的关键点和特征描述符,识别系统的可移植性较强。在线识别过程中,采用多线程识别框架,有效利用系统空闲线程和硬件设备的计算能力,加快识别速度。本发明的识别精度和计算效率都比较高,为后续工作开展带来了极大的便利。

Description

基于关键点局部曲面特征直方图和空间关系的点云识别方法
技术领域
本发明属于计算机视觉技术领域,具体涉及一种基于关键点局部曲面特征直方图和空间 关系的点云识别方法。
背景技术
近年来,随着三维扫描技术的迅速发展,使得点云数据的获取变得方便快捷。但是由于 点云的无序性、易变性和数据量较大的性质,这对点云数据的计算性能提出了很高的要求。 因此,如何有效提高识别算法的执行效率一直是该领域的研究热点和难点。基于模型的点云 识别主要是通过关键点与模型匹配来识别的。通常需要在离线阶段生成各类别的模型点云、 关键点和特征描述符。在线识别过程中,在场景点云中提取关键点,使用局部特征描述关键 点的局部邻域,并与已经离线好的模型库匹配,是一种依赖于配准的识别算法。配准是通过 计算点的特征来寻找对应点,从而得到点云之间的旋转平移关系。然而,现存的配准方法大 都存在计算量大和计算效率低的问题,并且需要根据点云尺度的不同进行手动调节参数,自 动化程度较低。
发明内容
本发明的目的在于提供根据点云尺度自动设置滤波后场景点云和目标点云的分辨率大 小、邻域尺寸大小和对应点最大距离等相关参数,识别速度快,自动化程度高的一种基于关 键点局部曲面特征直方图和空间关系的点云识别方法。
本发明的目的通过如下技术方案来实现:包括以下步骤:
步骤1:点云的自动滤波处理;
步骤1.1:计算点云分辨率s,根据点云数据的分布特征,取最小正方体边长为lmin=3*s, 取最大正方体边长为lmax=8*s;
步骤1.2:从模型点云的左上角开始选取边长为lmin的正方体区域,计算区域重心点与区域 内其他点间法线夹角差的平均值;
步骤1.3:若平均值小于5度,则执行步骤1.4;若平均值大于或等于5度,则用重心点表示 该区域的所有点,进行下一区域滤波,执行步骤1.5;
步骤1.4:取lmin=lmin+0.5s,如果此时lmin<lmax,则重新计算更新lmin后的正方体中的点与 其重心点间夹角差的平均值,执行步骤1.3;如果此时lmin>lmax,用重心点表示该区域的所有点, 进行下一区域滤波,执行步骤1.5;
步骤1.5:移动到下一个待滤波区域,重复执行步骤1.1、步骤1.2、步骤1.3和步骤1.4,当 所有点云处理完毕,滤波结束,并计算滤波后的点云分辨率starget
步骤2:查找关键点;
步骤3;计算特征描述符;
步骤4:基于关键点特征描述符和空间关系的特征匹配;
步骤5:多线程识别;
步骤5.1:对场景点云进行欧式距离聚类,对每一个聚类后的场景点云开启线程,计算关键 点和特征描述符;
步骤5.2:维护一个全局容器,将所有类别的场景点云的关键点和特征描述符数据放入全 局容器中,再在每个类别的场景点云线程中开启与模型点云数相同的线程,同时将场景点云 与所有模型点云进行配准,计算重叠率和坐标变换矩阵,将重叠率最高且重叠率大于80%的 模型点云作为识别结果。
本发明还可以包括:
所述的步骤4中基于关键点特征描述符和空间关系的特征匹配具体为:
步骤4.1:对场景点云的一关键点
Figure BDA0002468483370000021
根据其特征描述符,在模型点云中建立kd-tree,搜索 模型点云中与该关键点特征描述符的10个近邻点,并按照这些特征描述符与关键点
Figure BDA0002468483370000022
描述符的 欧氏距离从小到大排序
Figure BDA0002468483370000023
Figure BDA0002468483370000024
表示场景点云关键点
Figure BDA0002468483370000025
在模型点云关键点中按照特 征描述符欧氏距离从小到大排序的第j个近邻;
若最近邻
Figure BDA0002468483370000026
的特征描述符与关键点
Figure BDA0002468483370000027
的特征描述符的欧式距离小于次近邻
Figure BDA0002468483370000028
的特征描 述符与关键点
Figure BDA0002468483370000029
的特征描述符欧氏距离的一半,则将该最近邻
Figure BDA00024684833700000210
作为该场景点云关键点
Figure BDA00024684833700000211
的 对应点,组成一组对应关系;
否则,查找场景点云关键点
Figure BDA00024684833700000212
在场景点云关键点中的按照空间坐标的欧式距离的最近邻点
Figure BDA00024684833700000213
和次近邻点
Figure BDA00024684833700000214
计算点
Figure BDA00024684833700000215
与点
Figure BDA00024684833700000216
的空间距离
Figure BDA00024684833700000217
Figure BDA00024684833700000218
与点
Figure BDA00024684833700000219
的空间距离
Figure BDA00024684833700000220
Figure BDA00024684833700000221
与点
Figure BDA00024684833700000222
的连线和点
Figure BDA00024684833700000223
与点
Figure BDA00024684833700000224
的连线的夹角
Figure BDA00024684833700000225
步骤4.2:按照空间距离,依次计算点
Figure BDA00024684833700000226
在模型点云关键点中的最近邻
Figure BDA00024684833700000227
和 它们之间的空间距离
Figure BDA00024684833700000228
次近邻
Figure BDA00024684833700000229
及其与
Figure BDA00024684833700000230
的空间距离
Figure BDA00024684833700000231
Figure BDA00024684833700000232
与点
Figure BDA00024684833700000233
的 连线与点
Figure BDA00024684833700000234
与点
Figure BDA00024684833700000235
的连线的夹角
Figure BDA00024684833700000236
按照
Figure BDA00024684833700000237
的顺序,依次计算
Figure BDA00024684833700000238
Figure BDA00024684833700000239
的差值d1和特征描述符差值dF1
Figure BDA00024684833700000240
Figure BDA00024684833700000241
的差值d2和特征描述符差值dF2、夹角
Figure BDA00024684833700000242
和夹角
Figure BDA00024684833700000243
的差值angle;
当d1与d2小于3*starget、dF1和dF2小于0.2、夹角差值angle小于10度时,将
Figure BDA00024684833700000244
作为该场 景点云关键点
Figure BDA00024684833700000245
的对应点,将
Figure BDA00024684833700000246
作为
Figure BDA00024684833700000247
的对应点,将
Figure BDA00024684833700000248
作为
Figure BDA00024684833700000249
的对应点,组成三 组对应关系;
步骤4.3:对场景点云中的每一个关键点重复步骤4.1和步骤4.2,找到所有的对应关系, 采用随机采样一致性把错误对应关系去除,得到最终对应关系。
本发明的有益效果在于:
本发明通过逐区域移动的点云自动滤波算法对点云数据进行精简,加快点云识别速度; 使用关键点间的位置关系和点云关键点分布的全局信息进行特征匹配,提高对应关系的正确 率;通过建立离线模型库,加快在线识别速度,当有新增的识别模型时,只需要提取模型点 云的关键点和特征描述符,识别系统的可移植性较强。在线识别过程中,采用多线程识别框 架,有效利用系统空闲线程和硬件设备的计算能力,加快识别速度。本发明根据点云尺度自 动设置滤波后场景点云和目标点云的分辨率大小、邻域尺寸大小和对应点最大距离等相关参 数,自动化程度较高。本发明的特征匹配从全局出发,同时使用关键点间的空间关系和特征 描述符欧氏距离进行匹配,增加了寻找匹配关系的正确率。整个识别过程不需要人工参与, 识别精度和计算效率都比较高,为后续工作开展带来了极大的便利。
附图说明
图1:逐区域移动示意图。
图2:关键点空间关系示意图。
图3:关键点空间关系特征匹配示意图。
图4:点云初始对应关系示意图。
图5:去除错误对应关系后的正确对应关系示意图。
图6:多目标对应关系示意图。
图7:场景聚类示意图。
图8:多线程识别框架示意图。
图9:线程内识别流程示意图。
图10:识别过程示意图。
图11本发明实施例中的实验数据表。
具体实施方式
下面结合附图对本发明做进一步描述。
针对3D点云识别,本发明设计了一种基于关键点局部曲面特征直方图和空间关系的点 云识别方法。第一,通过逐区域移动的点云自动滤波算法对点云数据进行精简,以加快识别 速度。第二,采用基于邻域曲率均值最大的关键点查找算法,选取局部特征较明显的点作为 关键点,使关键点具有排他性和抗噪声能力。第三,特征描述符计算:基于局部曲面直方图, 计算关键点邻域与其重心的相互关系,在误将噪声作为关键点时仍能正确描述局部邻域。第 四,特征匹配:结合临近关键点的空间关系和特征描述符欧氏距离,使用关键点间的局部信 息和位置关系进行匹配,增加寻找匹配关系的正确率。最后,建立离线模型库,采用多线程 识别框架,加快识别速度。实验结果表明,此方法识别速度快,识别精度高,对工程具有实 用价值。
1.识别算法流程
识别算法为基于模板的匹配方法,将场景点云进行预处理后,提取其特征,与模型库中每一 个模型进行配准,根据点云重叠率的高低判断识别结果。算法具体流程如下:
(1)离线识别:对模型点云,依次进行模型重建、逐区域移动的点云自动滤波、基于曲率 均值提取关键点、计算局部曲面特征直方图。
(2)在线识别:对场景点云,依次进行场景点云获取、逐区域移动的点云自动滤波、点云 欧式距离聚类、基于曲率均值提取关键点、计算局部曲面特征直方图、开启多线程识别、基于关 键点特征描述符和空间关系的特征匹配、基于重叠率的假设验证,完成点云识别。
2.逐区域移动的点云自动滤波算法
由于点云中点数过多,这会极大地延长配准时间,本发明对原始点云数据进行自动滤波精简, 以加快算法的识别时间。具体步骤如下:
(1)计算点云分辨率s,根据点云数据的分布特征,取最小正方体边长为lmin=3*s,取最 大正方体边长为lmax=8*s。
(2)对于给定的点云数据,将从左到右、从前往后、从上到下依次移动初始边长为lmin的 正方体区域对被该区域包围的点云数据进行滤波。首先,从所给模型点云的左上角开始选取边长 为lmin的正方体区域,计算区域重心点与区域内其它点间法线夹角差的平均值。
(3)若夹角的平均值小于5度,则继续执行(4),否则用该重心点表示该区域的所有点, 并执行(5)。
(4)取lmin=lmin+0.5s,如果此时lmin<lmax,则重新计算更新lmin后的正方体中的点与其重 心点间夹角差的平均值,执行(3)。如果此时lmin>lmax,用重心点表示该区域的所有点,并执行 (5)。
(5)移动到下一个待滤波区域,重复执行(1)、(2)、(3)和(4),当所有点云处理完毕, 滤波结束,并计算滤波后的点云分辨率starget
3.基于关键点特征描述符和空间关系的特征匹配算法
本发明在匹配过程中不仅使用了单个关键点的邻域信息,还从全局出发,同时使用关键点间 的空间关系和关键点的特征描述符进行关键点匹配,增加了寻找匹配关系的正确率。算法的具体 步骤如下:
(1)对场景点云的一关键点
Figure BDA0002468483370000051
根据其特征描述符,在模型点云中建立kd-tree,搜索模型 点云中与该关键点特征描述符的10个近邻点,并按照这些特征描述符与关键点
Figure BDA0002468483370000052
描述符的欧氏 距离从小到大排序
Figure BDA0002468483370000053
Figure BDA0002468483370000054
表示场景点云关键点
Figure BDA0002468483370000055
在模型点云关键点中按照特征描 述符欧氏距离从小到大排序的第j个近邻。若最近邻
Figure BDA0002468483370000056
的特征描述符与关键点
Figure BDA0002468483370000057
的特征描述 符的欧式距离小于次近邻
Figure BDA0002468483370000058
的特征描述符与关键点
Figure BDA0002468483370000059
的特征描述符欧氏距离的一半,则将该 最近邻
Figure BDA00024684833700000510
作为该场景点云关键点
Figure BDA00024684833700000511
的对应点,组成一组对应关系。否则,查找场景点云关键 点
Figure BDA00024684833700000512
在场景点云关键点中的按照空间坐标的欧式距离的最近邻点
Figure BDA00024684833700000513
和次近邻点
Figure BDA00024684833700000514
并计算 点
Figure BDA00024684833700000515
分别与点
Figure BDA00024684833700000516
和点
Figure BDA00024684833700000517
的空间距离
Figure BDA00024684833700000518
Figure BDA00024684833700000519
计算场景点云关键点
Figure BDA00024684833700000520
与场景点云关键点 最近邻
Figure BDA00024684833700000521
的连线和场景点云关键点
Figure BDA00024684833700000522
与次近邻
Figure BDA00024684833700000523
的连线的夹角
Figure BDA00024684833700000524
(2)按照空间距离,依次计算点
Figure BDA00024684833700000525
在模型点云关键点中的最近邻
Figure BDA00024684833700000526
和它们 之间的空间距离
Figure BDA00024684833700000527
次近邻
Figure BDA00024684833700000528
及其与
Figure BDA00024684833700000529
的空间距离
Figure BDA00024684833700000530
计算模型点云关键点
Figure BDA00024684833700000531
与 模型点云关键点中的最近邻
Figure BDA00024684833700000532
的连线与模型点云关键点中的次近邻
Figure BDA00024684833700000533
的连线的夹角
Figure BDA00024684833700000534
按照
Figure BDA00024684833700000535
的顺序,依次计算
Figure BDA00024684833700000536
Figure BDA00024684833700000537
的差值d1和特征描述符差值dF1
Figure BDA00024684833700000538
Figure BDA00024684833700000539
的差值d2和特征描述符差值dF2、夹角
Figure BDA00024684833700000540
和夹角
Figure BDA00024684833700000541
的差值angle。当d1与 d2小于3*starget、dF1和dF2小于0.2、夹角差值angle小于10度时,则将
Figure BDA00024684833700000542
作为该场景点云关 键点
Figure BDA00024684833700000543
的对应点,将
Figure BDA00024684833700000544
作为
Figure BDA00024684833700000545
的对应点,将
Figure BDA00024684833700000546
作为
Figure BDA00024684833700000547
的对应点,组成三组对应关 系。对场景点云中的每一个关键点重复上述过程,找到所有的对应关系。最后,采用随机采样一 致性把错误对应关系去除,得到最终对应关系。
4.多线程识别框架
在线识别过程中,在对场景点云进行欧式距离聚类之后,对每个类开启一个线程,有效利用 系统的空闲线程和硬件设备的计算能力,加快识别速度。识别过程如下:
首先对场景点云进行欧式距离聚类,对每一个聚类后的场景点云开启线程,计算关键点和特 征描述符。维护一个全局容器,将所有类别的场景点云的关键点和特征描述符数据放入全局容器 中。再在每个类别的场景点云线程中开启与模型点云数相同的线程,同时将场景点云与所有模型 点云进行配准,计算重叠率和坐标变换矩阵,将重叠率最高且重叠率大于80%的模型点云作为 识别结果。
本发明根据点云尺度自动设置滤波后场景点云和目标点云的分辨率大小、邻域尺寸大小 和对应点最大距离等相关参数,自动化程度较高。本发明的特征匹配从全局出发,同时使用 关键点间的空间关系和特征描述符欧氏距离进行匹配,增加了寻找匹配关系的正确率。整个 识别过程不需要人工参与,识别精度和计算效率都比较高,为后续工作开展带来了极大的便 利。
本发明的具体实施步骤是:第一步,通过逐区域移动的点云自动滤波算法对点云数据进 行精简,该过程无需手动调节参数,滤波速度快。第二步,采用基于邻域曲率均值最大的关 键点查找算法,选取局部特征较明显的点作为关键点。第三步,特征描述符为基于局部曲面 直方图,计算关键点邻域与其重心的相互关系。第四步,特征匹配结合临近关键点的空间关 系和特征描述符欧氏距离,使用关键点间的局部信息和位置关系进行匹配,增加寻找匹配关 系的正确率。最后,建立离线模型库,采用多线程识别框架,充分利用硬件设备的计算能力, 加快识别速度。
步骤1.点云的自动滤波处理
由于点云中点数过多,这会极大地延长识别时间,为此本发明提出了逐区域移动的点云自动 滤波算法对点云数据进行精简,该算法无需手动调节参数,滤波速度快,算法步骤如下:
步骤1.1:计算点云分辨率s,根据点云数据的分布特征,取最小正方体边长为lmin=3*s, 取最大正方体边长为lmax=8*s。
步骤1.2:对于给定的点云数据,将从左到右、从前往后、从上到下依次移动初始边长为lmin的正方体区域对被该区域包围的点云数据进行滤波,如图1所示。首先,从所给模型点云的左上 角开始选取边长为lmin的正方体区域,计算区域重心点与区域内其他点间法线夹角差的平均值。
步骤1.3:通过大量实验表明,当被包围的点云中的点与其重心点间的法线夹角的平均值小 于5度时,能很好地保留原始点云的特征。故若平均值小于5度,则继续执行步骤1.4,否则用 重心点表示该区域的所有点,进行下一区域滤波,执行步骤1.5。
步骤1.4:取lmin=lmin+0.5s,如果此时lmin<lmax,则重新计算更新lmin后的正方体中的点与 其重心点间夹角差的平均值,执行步骤1.3。如果此时lmin>lmax,用重心点表示该区域的所有点, 进行下一区域滤波,执行步骤1.5。
步骤1.5:移动到下一个待滤波区域,重复执行步骤1.1、步骤1.2、步骤1.3和步骤1.4,当 所有点云处理完毕,滤波结束,并计算滤波后的点云分辨率starget
步骤2.关键点查找
步骤3.特征描述符计算
步骤4.基于关键点特征描述符和空间关系的特征匹配
常见特征匹配通常基于关键点特征描述符的欧式距离度量特征差异,通过查找特征描述符的 最近点作为对应关系,但由于点云中某些关键点的邻域信息相似,造成大量匹配,若匹配关系错 误过多,则造成最终配准失败。为了增加寻找匹配关系的正确率,在匹配过程中不应该仅仅使用 单个关键点的邻域信息,而应该从全局出发,同时使用关键点间的空间关系和关键点的特征描述 符欧氏距离进行关键点匹配。为此提出了基于关键点复合特征的特征匹配算法。
步骤4.1:对场景点云的一关键点
Figure BDA0002468483370000071
根据其特征描述符,在模型点云中建立kd-tree,搜索 模型点云中与该关键点特征描述符的10个近邻点,并按照这些特征描述符与关键点
Figure BDA0002468483370000072
描述符的 欧氏距离从小到大排序
Figure BDA0002468483370000073
Figure BDA0002468483370000074
表示场景点云关键点
Figure BDA0002468483370000075
在模型点云关键点中按照特 征描述符欧氏距离从小到大排序的第j个近邻。若最近邻
Figure BDA0002468483370000076
的特征描述符与关键点
Figure BDA0002468483370000077
的特征 描述符的欧式距离小于次近邻
Figure BDA0002468483370000078
的特征描述符与关键点
Figure BDA0002468483370000079
的特征描述符欧氏距离的一半,则 将该最近邻
Figure BDA00024684833700000710
作为该场景点云关键点
Figure BDA00024684833700000711
的对应点,组成一组对应关系。否则,查找场景点云 关键点
Figure BDA00024684833700000712
在场景点云关键点中的按照空间坐标的欧式距离的最近邻点
Figure BDA00024684833700000713
和次近邻点
Figure BDA00024684833700000714
并 计算点
Figure BDA00024684833700000715
分别与点
Figure BDA00024684833700000716
和点
Figure BDA00024684833700000717
的空间距离
Figure BDA00024684833700000718
Figure BDA00024684833700000719
计算场景点云关键点
Figure BDA00024684833700000720
与场景点云关 键点最近邻
Figure BDA00024684833700000721
的连线和场景点云关键点
Figure BDA00024684833700000722
与次近邻
Figure BDA00024684833700000723
的连线的夹角
Figure BDA00024684833700000724
步骤4.2:按照空间距离,依次计算点
Figure BDA00024684833700000725
在模型点云关键点中的最近邻
Figure BDA00024684833700000726
和 它们之间的空间距离
Figure BDA00024684833700000727
次近邻
Figure BDA00024684833700000728
及其与
Figure BDA00024684833700000729
的空间距离
Figure BDA00024684833700000730
计算模型点云关键点
Figure BDA00024684833700000731
与模型点云关键点中的最近邻
Figure BDA00024684833700000732
的连线与模型点云关键点中的次近邻
Figure BDA00024684833700000733
的连线的 夹角
Figure BDA00024684833700000734
按照
Figure BDA00024684833700000735
的顺序,依次计算
Figure BDA00024684833700000736
Figure BDA00024684833700000737
的差值d1和特征描述符差值 dF1
Figure BDA00024684833700000738
Figure BDA00024684833700000739
的差值d2和特征描述符差值dF2、夹角
Figure BDA00024684833700000740
和夹角
Figure BDA00024684833700000741
的差值angle。 当d1与d2小于3*starget、dF1和dF2小于0.2、夹角差值angle小于10度时,则将
Figure BDA00024684833700000742
作为该场景 点云关键点
Figure BDA00024684833700000743
的对应点,将
Figure BDA00024684833700000744
作为
Figure BDA00024684833700000745
的对应点,将
Figure BDA00024684833700000746
作为
Figure BDA00024684833700000747
的对应点,组成三组 对应关系。对场景点云中的每一个关键点重复上述过程,找到所有的对应关系。最后,采用随机 采样一致性把错误对应关系去除,得到最终对应关系。
步骤5.多线程识别
步骤5.1:在识别过程中,由于光的直线传播,从不同角度只能观测到的物体在当前角度的 三维表面。为了有效识别单个角度下的物体场景点云,需要在识别之前建立完备的模型库。本发 明采用完整点云模型库,通过将物体多个角度场景点云进行拼接,生成完整三维模型,对物体的 模型点云进行滤波、查找关键点和计算特征描述符,建立模型库,并保存为pcd文件,保证该模 型库的持久性。
步骤5.2:由于在识别过程中,有多个类别的模型点云需要对比,且其配准结果互不影响, 为此使用多线程在线识别框架。在对场景点云进行欧式距离聚类后,对场景点云中的每个类开启 一个线程,对其滤波、查找关键点和计算特征描述符。在特征匹配过程中,由于有多个模型点云 需要匹配,在每个线程中为每个模型点云开启线程,并计算场景点云与每个模型点云的重叠率和 坐标变换矩阵,将重叠率最高且重叠率大于80%的模型点云作为识别结果。
本发明的优点是,通过逐区域移动的点云自动滤波算法对点云数据进行精简,加快点云识别 速度;由于查找关键点和计算特征描述符使用的都是局部信息,当点云多个位置具有相同局部信 息时,仅仅根据特征描述符的欧氏距离匹配关键点容易造成误匹配,为此提出了基于关键点间空 间位置关系的特征匹配算法,使用关键点间的位置关系和点云关键点分布的全局信息进行特征匹 配,提高对应关系的正确率;通过建立离线模型库,加快在线识别速度,当有新增的识别模型时, 只需要提取模型点云的关键点和特征描述符,识别系统的可移植性较强。在线识别过程中,采用 多线程识别框架,有效利用系统空闲线程和硬件设备的计算能力,加快识别速度。该点云识别方 法特征计算数据量少,计算效率和计算精度较高,抗噪声能力强,识别速度快。
实施例1:
本发明使用的点云是通过激光三角测距扫描仪获得。使用armadillo、cheff、dragon和chiken 四组点云数据给出实施方式,并结合附图加以说明。
步骤1:点云的自动滤波处理
由于点云中点数过多,这会极大地延长识别时间,为此本发明提出了逐区域移动的点云自动 滤波算法对点云数据进行精简,该算法无需手动调节参数,滤波速度快,算法步骤如下:
步骤1.1:计算点云分辨率s,根据点云数据的分布特征,取最小正方体边长为lmin=3*s, 取最大正方体边长为lmax=8*s。
步骤1.2:对于给定的点云数据,将从左到右、从前往后、从上到下依次移动初始边长为lmin的正方体区域对被该区域包围的点云数据进行滤波,如图1所示。首先,从所给模型点云的左上 角开始选取边长为lmin的正方体区域,计算区域重心点pk与区域内其他点间法线夹角差的平均 值,pk的计算公式如下:
Figure BDA0002468483370000081
其中pi表示边长为lmin的正方体区域内的点,k表示该区域内点的个数。
步骤1.3:通过大量实验表明,当被包围的点云中的点与其重心点间的法线夹角的平均值小 于5度时,能很好地保留原始点云的特征。故若平均值小于5度,则继续执行步骤1.4,否则用 重心点表示该区域的所有点,进行下一区域滤波,执行步骤1.5。
步骤1.4:取lmin=lmin+0.5s,如果此时lmin<lmax,则重新计算更新lmin后的正方体中的点与 其重心点间夹角差的平均值,执行步骤1.3。如果此时lmin>lmax,用重心点表示该区域的所有点, 进行下一区域滤波,执行步骤1.5。
步骤1.5:移动到下一个待滤波区域,重复执行步骤1.1、步骤1.2、步骤1.3和步骤1.4,当 所有点云处理完毕,滤波结束,并计算滤波后的点云分辨率starget
步骤2:关键点查找
步骤3:特征描述符计算
步骤4:基于关键点空间关系和特征描述符的特征匹配
步骤4.1:对应关系是根据关键点间的空间位置关系和特征描述符的欧氏距离计算的。首先 建立模型点云关键点的特征描述符kd-tree,通过该kd-tree可以快速找到场景点云关键点的特征 描述符的近邻。模型点云关键点
Figure BDA0002468483370000091
的特征向量为
Figure BDA0002468483370000092
场景点云关键点
Figure BDA0002468483370000093
的特征向量为
Figure BDA0002468483370000094
如下:
Figure BDA0002468483370000095
Figure BDA0002468483370000096
计算特征向量
Figure BDA0002468483370000097
Figure BDA0002468483370000098
的欧氏距离:
Figure BDA0002468483370000099
步骤4.2:对场景点云的一关键点
Figure BDA00024684833700000910
根据其特征描述符,由步骤4.1在模型点云中建立 的kd-tree,搜索模型点云中与该关键点特征描述符的10个近邻点,并按照这些特征描述符与 关键点
Figure BDA00024684833700000911
描述符的欧氏距离从小到大排序
Figure BDA00024684833700000912
Figure BDA00024684833700000913
表示场景点云关键点
Figure BDA00024684833700000914
在模型 点云关键点中按照特征描述符欧氏距离从小到大排序的第j个近邻。若最近邻
Figure BDA00024684833700000915
的特征描 述符与关键点
Figure BDA00024684833700000916
的特征描述符的欧式距离小于次近邻
Figure BDA00024684833700000917
的特征描述符与关键点
Figure BDA00024684833700000918
的特征 描述符欧氏距离的一半,则将该最近邻
Figure BDA00024684833700000919
作为该场景点云关键点
Figure BDA00024684833700000920
的对应点,组成一组对 应关系。否则,查找场景点云关键点
Figure BDA00024684833700000921
在场景点云关键点中的按照空间坐标的欧式距离的最 近邻点
Figure BDA00024684833700000922
和次近邻点
Figure BDA00024684833700000923
并计算点
Figure BDA00024684833700000924
分别与点
Figure BDA00024684833700000925
和点
Figure BDA00024684833700000926
的空间距离
Figure BDA00024684833700000927
Figure BDA00024684833700000928
计 算场景点云关键点
Figure BDA00024684833700000929
与场景点云关键点最近邻
Figure BDA00024684833700000930
的连线和场景点云关键点
Figure BDA00024684833700000931
与次近邻
Figure BDA0002468483370000101
的连线的夹角
Figure BDA0002468483370000102
如图2所示。
步骤4.3:按照空间距离,依次计算点
Figure BDA0002468483370000103
在模型点云关键点中的最近邻
Figure BDA0002468483370000104
和它们之间的空间距离
Figure BDA0002468483370000105
次近邻
Figure BDA0002468483370000106
及其与
Figure BDA0002468483370000107
的空间距离
Figure BDA0002468483370000108
计算模型点云关 键点
Figure BDA0002468483370000109
与模型点云关键点中的最近邻
Figure BDA00024684833700001010
的连线与模型点云关键点中的次近邻
Figure BDA00024684833700001011
的 连线的夹角
Figure BDA00024684833700001012
按照
Figure BDA00024684833700001013
的顺序,依次计算
Figure BDA00024684833700001014
Figure BDA00024684833700001015
的差值d1和特征描述 符差值dF1
Figure BDA00024684833700001016
Figure BDA00024684833700001017
的差值d2和特征描述符差值dF2、夹角
Figure BDA00024684833700001018
和夹角
Figure BDA00024684833700001019
的差值 angle。当d1与d2小于3*starget、dF1和dF2小于0.2、夹角差值angle小于10度时,则将
Figure BDA00024684833700001020
作 为该场景点云关键点
Figure BDA00024684833700001021
的对应点,将
Figure BDA00024684833700001022
作为
Figure BDA00024684833700001023
的对应点,将
Figure BDA00024684833700001024
作为
Figure BDA00024684833700001025
的对应点, 组成三组对应关系。对场景点云中的每一个关键点重复上述过程,找到所有的对应关系。最 后,采用随机采样一致性把错误对应关系去除,得到最终对应关系。关键点空间关系的特征 匹配过程如图3所示。
实验中点云的初始对应关系、去除错误关系后的正确对应关系和多目标对应关系分别如 图4和图5所示。图4为初始对应关系,图5为去除错误对应关系后的正确对应关系,通过 基于局部曲面直方图、关键点空间关系特征匹配算法可以寻找到大量有效的对应关系,提高 识别算法的稳健性。图6为复杂场景点云中识别模型的匹配关系,基于关键点空间关系特征 匹配计算出的对应关系准确度较高。图4中(a)为cheff初始对应关系,(b)为dragon初始 对应关系。图5中(a)为cheff对应关系,(b)为dragon对应关系。图6中(a)为cheff对 应关系,(b)为chicken对应关系,(c)为dragon对应关系。
步骤5:多线程识别
通过对物体的模型点云进行滤波、查找关键点和计算特征描述符,建立模型库。在对场 景点云进行欧式距离聚类后(聚类结果如图7所示),对场景点云中的每个类开启一个线程, 对其滤波、查找关键点和计算特征描述符。在特征匹配过程中,由于有多个模型点云需要匹 配,在每个线程中为每个模型点云开启线程(多线程识别框架和线程内识别流程分别如图8 和图9所示),并计算场景点云与每个模型点云的重叠率和坐标变换矩阵,将重叠率最高且重 叠率大于80%的模型点云作为识别结果,识别过程如图10所示。识别过程中的识别时间、配 准精度等如图11所示。其中单目标识别时间约为0.3s,三目标识别约为0.6s,识别速度快。
综上分析,基于关键点局部曲面特征直方图和空间关系的点云识别算法无论在精度上, 还是在速度上都很理想,并且无需人工设置参数,所以它是一种精准快速的自动识别方法。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员 来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等 同替换、改进等,均应包含在本发明的保护范围之内。

Claims (1)

1.一种基于关键点局部曲面特征直方图和空间关系的点云识别方法,其特征在于,包括以下步骤:
步骤1:点云的自动滤波处理;
步骤1.1:计算点云分辨率s,根据点云数据的分布特征,取最小正方体边长为lmin=3*s,取最大正方体边长为lmax=8*s;
步骤1.2:从模型点云的左上角开始选取边长为lmin的正方体区域,计算区域重心点与区域内其他点间法线夹角差的平均值;
步骤1.3:若平均值小于5度,则执行步骤1.4;若平均值大于或等于5度,则用重心点表示该区域的所有点,进行下一区域滤波,执行步骤1.5;
步骤1.4:取lmin=lmin+0.5s,如果此时lmin<lmax,则重新计算更新lmin后的正方体中的点与其重心点间夹角差的平均值,执行步骤1.3;如果此时lmin>lmax,用重心点表示该区域的所有点,进行下一区域滤波,执行步骤1.5;
步骤1.5:移动到下一个待滤波区域,重复执行步骤1.1、步骤1.2、步骤1.3和步骤1.4,当所有点云处理完毕,滤波结束,并计算滤波后的点云分辨率starget
步骤2:查找关键点;
步骤3;计算特征描述符;
步骤4:基于关键点特征描述符和空间关系的特征匹配;
步骤4.1:对场景点云的一关键点
Figure FDA0003750763110000011
根据其特征描述符,在模型点云中建立kd-tree,搜索模型点云中与该关键点特征描述符的10个近邻点,并按照这些特征描述符与关键点
Figure FDA0003750763110000012
描述符的欧氏距离从小到大排序
Figure FDA0003750763110000013
Figure FDA0003750763110000014
表示场景点云关键点
Figure FDA0003750763110000015
在模型点云关键点中按照特征描述符欧氏距离从小到大排序的第j个近邻;
若最近邻
Figure FDA0003750763110000016
的特征描述符与关键点
Figure FDA0003750763110000017
的特征描述符的欧式距离小于次近邻
Figure FDA0003750763110000018
的特征描述符与关键点
Figure FDA0003750763110000019
的特征描述符欧氏距离的一半,则将该最近邻
Figure FDA00037507631100000110
作为该场景点云关键点
Figure FDA00037507631100000111
的对应点,组成一组对应关系;
否则,查找场景点云关键点
Figure FDA00037507631100000112
在场景点云关键点中的按照空间坐标的欧式距离的最近邻点
Figure FDA00037507631100000113
和次近邻点
Figure FDA00037507631100000114
计算点
Figure FDA00037507631100000115
与点
Figure FDA00037507631100000116
的空间距离
Figure FDA00037507631100000117
Figure FDA00037507631100000118
与点
Figure FDA00037507631100000119
的空间距离
Figure FDA00037507631100000120
Figure FDA00037507631100000121
与点
Figure FDA00037507631100000122
的连线和点
Figure FDA00037507631100000123
与点
Figure FDA00037507631100000124
的连线的夹角
Figure FDA00037507631100000125
步骤4.2:按照空间距离,依次计算点
Figure FDA00037507631100000126
在模型点云关键点中的最近邻
Figure FDA00037507631100000127
和它们之间的空间距离
Figure FDA00037507631100000128
次近邻
Figure FDA00037507631100000129
及其与
Figure FDA00037507631100000130
的空间距离
Figure FDA00037507631100000131
Figure FDA00037507631100000132
与点
Figure FDA00037507631100000133
的连线与点
Figure FDA0003750763110000021
与点
Figure FDA0003750763110000022
的连线的夹角
Figure FDA0003750763110000023
按照
Figure FDA0003750763110000024
的顺序,依次计算
Figure FDA0003750763110000025
Figure FDA0003750763110000026
的差值d1和特征描述符差值dF1
Figure FDA0003750763110000027
Figure FDA0003750763110000028
的差值d2和特征描述符差值dF2、夹角
Figure FDA0003750763110000029
和夹角
Figure FDA00037507631100000210
的差值angle;
当d1与d2小于3*starget、dF1和dF2小于0.2、夹角差值angle小于10度时,将
Figure FDA00037507631100000211
作为该场景点云关键点
Figure FDA00037507631100000212
的对应点,将
Figure FDA00037507631100000213
作为
Figure FDA00037507631100000214
的对应点,将
Figure FDA00037507631100000215
作为
Figure FDA00037507631100000216
的对应点,组成三组对应关系;
步骤4.3:对场景点云中的每一个关键点重复步骤4.1和步骤4.2,找到所有的对应关系,采用随机采样一致性把错误对应关系去除,得到最终对应关系;
步骤5:多线程识别;
步骤5.1:对场景点云进行欧式距离聚类,对每一个聚类后的场景点云开启线程,计算关键点和特征描述符;
步骤5.2:维护一个全局容器,将所有类别的场景点云的关键点和特征描述符数据放入全局容器中,再在每个类别的场景点云线程中开启与模型点云数相同的线程,同时将场景点云与所有模型点云进行配准,计算重叠率和坐标变换矩阵,将重叠率最高且重叠率大于80%的模型点云作为识别结果。
CN202010341002.2A 2020-04-27 2020-04-27 基于关键点局部曲面特征直方图和空间关系的点云识别方法 Active CN111553410B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010341002.2A CN111553410B (zh) 2020-04-27 2020-04-27 基于关键点局部曲面特征直方图和空间关系的点云识别方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010341002.2A CN111553410B (zh) 2020-04-27 2020-04-27 基于关键点局部曲面特征直方图和空间关系的点云识别方法

Publications (2)

Publication Number Publication Date
CN111553410A CN111553410A (zh) 2020-08-18
CN111553410B true CN111553410B (zh) 2022-10-28

Family

ID=72000217

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010341002.2A Active CN111553410B (zh) 2020-04-27 2020-04-27 基于关键点局部曲面特征直方图和空间关系的点云识别方法

Country Status (1)

Country Link
CN (1) CN111553410B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112766037B (zh) * 2020-12-14 2024-04-19 南京工程学院 基于最大似然估计法的3d点云目标识别和定位方法
CN116503390B (zh) * 2023-06-25 2023-09-22 深圳市智宇精密五金塑胶有限公司 一种基于计算机视觉的五金零件缺陷检测方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105701862A (zh) * 2014-11-28 2016-06-22 星际空间(天津)科技发展有限公司 一种基于点云的地物关键点提取方法
CN109887015A (zh) * 2019-03-08 2019-06-14 哈尔滨工程大学 一种基于局部曲面特征直方图的点云自动配准方法
CN110490912A (zh) * 2019-07-17 2019-11-22 哈尔滨工程大学 基于局部灰度顺序模型描述符的3d-rgb点云配准方法
CN110634161A (zh) * 2019-08-30 2019-12-31 哈尔滨工业大学(深圳) 一种基于点云数据的工件位姿快速高精度估算方法及装置
CN110930495A (zh) * 2019-11-22 2020-03-27 哈尔滨工业大学(深圳) 基于多无人机协作的icp点云地图融合方法、系统、装置及存储介质

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9547901B2 (en) * 2013-11-05 2017-01-17 Samsung Electronics Co., Ltd. Method and apparatus for detecting point of interest (POI) in three-dimensional (3D) point clouds
WO2017157967A1 (en) * 2016-03-14 2017-09-21 Imra Europe Sas Processing method of a 3d point cloud

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105701862A (zh) * 2014-11-28 2016-06-22 星际空间(天津)科技发展有限公司 一种基于点云的地物关键点提取方法
CN109887015A (zh) * 2019-03-08 2019-06-14 哈尔滨工程大学 一种基于局部曲面特征直方图的点云自动配准方法
CN110490912A (zh) * 2019-07-17 2019-11-22 哈尔滨工程大学 基于局部灰度顺序模型描述符的3d-rgb点云配准方法
CN110634161A (zh) * 2019-08-30 2019-12-31 哈尔滨工业大学(深圳) 一种基于点云数据的工件位姿快速高精度估算方法及装置
CN110930495A (zh) * 2019-11-22 2020-03-27 哈尔滨工业大学(深圳) 基于多无人机协作的icp点云地图融合方法、系统、装置及存储介质

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
3D shape descriptor for objects recognition;Daniel Oliva Sales 等;《2017 Latin American Robotics Symposium (LARS) and 2017 Brazilian Symposium on Robotics (SBR)》;20171218;1-6 *
基于快速点特征直方图的特征点云迭代插值配准算法;陆军 等;《国防科技大学学报》;20141231;第36卷(第6期);12-17 *
基于曲面拟合系数特征的点云快速拼接算法;陆军 等;《光电子激光》;20150930;第26卷(第9期);1724-1731 *

Also Published As

Publication number Publication date
CN111553410A (zh) 2020-08-18

Similar Documents

Publication Publication Date Title
CN109887015B (zh) 一种基于局部曲面特征直方图的点云自动配准方法
JP6216508B2 (ja) 3dシーンにおける3d物体の認識および姿勢決定のための方法
CN103207898B (zh) 一种基于局部敏感哈希的相似人脸快速检索方法
US8798357B2 (en) Image-based localization
CN103577815B (zh) 一种人脸对齐方法和系统
CN111915677A (zh) 一种基于三维点云特征的船舶位姿估计方法
CN109509222B (zh) 直线类物体的检测方法及装置
CN111553410B (zh) 基于关键点局部曲面特征直方图和空间关系的点云识别方法
US11392787B2 (en) Method for grasping texture-less metal parts based on bold image matching
CN113393524B (zh) 一种结合深度学习和轮廓点云重建的目标位姿估计方法
CN113706381A (zh) 一种三维点云数据的拼接方法及装置
CN113223067B (zh) 针对具有平面基准的非完整三维扫描点云的在线配准方法
CN104615998B (zh) 一种基于多视角的车辆检索方法
CN103954280A (zh) 一种快速和高鲁棒性自主恒星识别方法
CN111815686A (zh) 基于几何特征由粗到细点云配准方法
CN115147833A (zh) 一种零部件位姿识别方法及系统
CN109086350B (zh) 一种基于WiFi的混合图像检索方法
CN102708367A (zh) 基于目标轮廓特征的图像识别方法
CN116091727A (zh) 一种基于多尺度特征描述的复杂曲面点云配准方法、电子设备及存储介质
CN113313200B (zh) 一种基于法向约束的点云精匹配方法
CN117745780A (zh) 一种基于孤立簇去除的室外大场景3d点云配准方法
CN116883463A (zh) 一种基于多域多维特征图的三维配准重建方法
CN106056599A (zh) 一种基于物体深度数据的物体识别算法及装置
CN106792510B (zh) 一种指纹定位中的预测式指纹图搜索方法
CN113435256B (zh) 一种基于几何一致性约束的三维目标识别方法及系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant