点云孔洞定位_一种对具有孔洞的三维点云的检测与识别方法与流程
本发明属于待测点云处理技术领域,涉及三维点云检测与识别方法,尤其是一种对具有孔洞的三维点云的检测与识别方法。
背景技术:
点云技术在逆向工程中有很普遍的应用。构建大量的几何模型之后,需要对点云模型进行特征描述,分类,根据模型的特征信息进行模型的检索。如何从场景中检索某类特定的物体是目前亟待解决的问题。在过去的几年中,基于物体3D点云识别的一般方法需要先将两模型的待测点云对齐到同一坐标系下(又可称为粗配准),然后通过ICP算法进行精确配准,当点云之间的配准误差小于阈值时认为识别成功。随后,Rusu等人提出了具有鲁棒性的全局特征描述子:视角特征直方图方法(VFH)。VFH方法包含了视角和几何特征信息,此方法在识别精度上有所不足。
Drost等人根据点对特征提出一种投票算法。在预处理阶段,将待测点云中提取出的点对特征进行哈希索引。在识别阶段,随机选出一些特征点,并与周围的其他点构成新的点对特征,在模型库中寻找匹配的特征,每一对匹配的特征都构成对全体候选的一个投票,筛选出得票最多的即为识别结果,此方法在识别过程中需要耗费大量时间。
但上述视角特征直方图方法(VFH)和投票算法在实际应用场景中,待测点云是通过扫描仪获取的,所以点云往往会包含一些不规则的孔洞,该两种识别算法均不能精确的对其进行识别。
经检索,未发现与本发明相同或相似的已公开的专利文献。
技术实现要素:
本发明的目的在于克服现有技术的不足,提供一种设计合理、识别精度高且计算速度快的对具有孔洞的三维点云的检测与识别方法。
一种对具有孔洞的三维点云的检测与识别方法,包括以下步骤:
步骤1、利用待测点云数据描述某一物体,并对待测点云进行平移,将待测点云的质心与直角坐标系的坐标原点重合,完成待测点云的直角坐标系到球坐标系的转换;
步骤2、将待测点云与标准数据库中的点云进行快速对齐;
步骤3、将对齐后的待测点云按照最小包围盒的范围进行均匀分割,然后读取标准库点云,根据分割位置可以得到多组点云间对应的局部点云区块对;
步骤4、针对每组局部点云区块对,计算SRT结果;
步骤5、将每组区块对得出的SRT值与预设的阈值T进行比较,如果SRT值小于阈值,则会对待测点云的识别构成投票;若最终投票数与局部点云区块对的个数的比值大于阈值H,则点云识别成功,给出识别结果。
而且,所述步骤1的具体方法为:
通过如下所示公式1将待测点云从笛卡尔坐标系(xi,y,zi),i∈[1,N]转换为球坐标系其中,R为当前点到原点的距离,θ为当前点与Z轴的夹角,为当前点与Y轴的夹角:
而且,所述步骤2的具体步骤包括:
(1)利用主成分分析法将待测点云与标准点云分别求得主轴,依、跟据主轴分别得到了两点云最小包围盒,进而可以分别得到两点云最小包围盒的8个顶点;
(2)根据两点云的最小包围盒的顶点可以找到点云间的旋转矩阵T1,通过T1对待测点云进行变换;
(3)分别对于X轴,Y轴,Z轴进行至少两次反转180度的变换,在至少六次计算中取待测点云与标准点云间欧氏距离最小的变换矩阵作为点云间的旋转矩阵T,将T应用于待测点云即可完成快速对齐操作。
而且,所述步骤4的具体步骤包括:
(1)把N个顶点的代入球谐函数中,利用l阶m次球谐波函数逼近原模型,l为球谐函数的阶数,m为-l
其中,cj是点云模型的球谐系数,为Cj对应的球谐函数;
(2)将公式2中的期望表达式对Ck求偏导数,k∈[0,1,2,...,(l+1)2-1],获得如下所示公式3:
其中,为Ck对应的球谐函数;
(3)将公式3中的偏导数方程的值设为0,可得驻点方程,即如下所示公式4:
(4)为了简化计算表达,我们可以假设,即如下所示公式5:
那么公式4中的驻点方程可改写为内积形式,即如下所示公式6:
(5)将公式6中的内积方程展开为矩阵方程,即如下所示公式7:
(6)求解公式7的矩阵方程可以求得模型的球谐扩展系数并通过零阶球谐系数c0与零阶球谐函数可拟合出点云向量描述形式,即如下所示公式8:
其中,SRT为最终的点云的描述向量。
而且,所述步骤5的阈值T的取值范围是10-7-10-3;阈值H的取值范围是0.7-0.85。
本发明的优点和积极效果是:
1、本发明将物体的待测点云分解为局部点云区块,利用零阶球谐波函数的正交基扩展系数去识别局部点云区块,最后根据待测点云与标准库中存储的点云包含的区块对的相似度的投票结果给出点云的识别结果,从而实现对具有孔洞的三维点云的检测与识别。
2、本发明成功的引入零阶球谐函数解决了其他识别算法时间复杂度较高的问题,在保证识别准确的基础上进一步缩短的识别所需要的时间,为今后实时识别提供了一种新的解决方法。
附图说明
图1是本发明的处理流程图;
图2是本发明的步骤1的点云坐标-笛卡尔坐标系到球坐标系变换示意图。
具体实施方式
以下结合附图对本发明实施例作进一步详述:
本发明公开了一种基于零阶球谐函数的针对具有孔洞点云的检测与识别的方法,运用快速对齐方法将点云对齐到同一坐标系下并将点云坐标从之间坐标系转换到球坐标系下,分别将待测点云依照最小包围盒范围均匀分割成若干个局部点云区块,标记待测点云与标准库中的点云对应的区块对,针对每一组区块对中的局部点云使用零阶球谐函数及其对应的球谐系数组合成一组描述待测点云的向量SRT,运用欧氏距离判定局部区块的SRT误差值。如果误差值小于设定的阈值,则会对整体点云的识别构成投票。若最终投票数与区块对的个数的比值大于0.8,则点云识别成功,给出识别结果。为实现上述目的,提出了一种对具有孔洞的三维点云的检测与识别方法。
一种对具有孔洞的三维点云的检测与识别方法,包括以下步骤:
步骤1、利用待测点云数据描述某一物体,并对待测点云进行平移,将待测点云的质心与直角坐标系的坐标原点重合,完成待测点云的直角坐标系到球坐标系的转换;
所述步骤1的具体方法为:
通过如下所示公式1将待测点云从笛卡尔坐标系(xi,y,zi),i∈[1,N]转换为球坐标系其中,R为当前点到原点的距离,θ为当前点与Z轴的夹角,为当前点与Y轴的夹角:
步骤2、将待测点云与标准数据库中的点云进行快速对齐;
所述步骤2的具体步骤包括:
(4)利用主成分分析法将待测点云与标准点云分别求得主轴,依、跟据主轴分别得到了两点云最小包围盒,进而可以分别得到两点云最小包围盒的8个顶点;
(5)根据两点云的最小包围盒的顶点可以找到点云间的旋转矩阵T1,通过T1对待测点云进行变换;
(6)在这种情况下,会产生轴向反转的问题,需要进一步分别对于X轴,Y轴,Z轴进行至少两次反转180度的变换,在至少六次计算中取待测点云与标准点云间欧氏距离最小的变换矩阵作为点云间的旋转矩阵T,将T应用于待测点云即可完成快速对齐操作。
步骤3、将对齐后的待测点云按照最小包围盒的范围进行均匀分割,然后读取标准库点云,根据分割位置可以得到多组点云间对应的局部点云区块对;
步骤4、针对每组局部点云区块对,计算SRT结果;
所述步骤4的具体步骤包括:
(1)把N个顶点的代入球谐函数中,利用l阶m次球谐波函数逼近原模型,l为球谐函数的阶数,m为-l
其中,cj是点云模型的球谐系数,为cj对应的球谐函数;
(2)将公式2中的期望表达式对Ck求偏导数,k∈[0,1,2,...,(l+1)2-1],获得如下所示公式3:
其中,为Ck对应的球谐函数;
(3)将公式3中的偏导数方程的值设为0,可得驻点方程,即如下所示公式4:
(4)为了简化计算表达,我们可以假设,即如下所示公式5:
那么公式4中的驻点方程可改写为内积形式,即如下所示公式6:
(5)将公式6中的内积方程展开为矩阵方程,即如下所示公式7:
(6)求解公式7的矩阵方程可以求得模型的球谐扩展系数并通过零阶球谐系数C0与零阶球谐函数可拟合出点云向量描述形式,即如下所示公式8:
其中,SRT为最终的点云的描述向量。
步骤5、将每组区块对得出的SRT值与预设的阈值T进行比较,如果SRT值小于阈值,则会对待测点云的识别构成投票;若最终投票数与局部点云区块对的个数的比值大于阈值H,则点云识别成功,给出识别结果。
在本实施例中,阈值T的取值范围是10-7-10-3;阈值H的取值范围是0.7-0.85;
本发明还可应用在人脸识别领域,在实际应用场景中,人脸点云是通过扫描仪获取的,但扫描仪往往会得到具有孔洞的非完整点云,这时可以利用本发明的算法进行识别计算,在保证识别准确性的同时快速的分析出人脸的特征,经过比对后可以给出人脸识别的结果,避免孔洞带来的影响。
需要强调的是,本发明所述的实施例是说明性的,而不是限定性的,因此本发明包括并不限于具体实施方式中所述的实施例,凡是由本领域技术人员根据本发明的技术方案得出的其他实施方式,同样属于本发明保护的范围。
点云孔洞定位_一种对具有孔洞的三维点云的检测与识别方法与流程相关推荐
- python椭圆形骨料_一种基于python再生混凝土三维随机球形骨料模型的构建方法与流程...
本发明涉及建筑技术领域,尤其涉一种基于python再生混凝土三维随机球形骨料模型的构建方法. 背景技术: 再生混凝土是指利用再生粗骨料部分或者全部代替天然骨料配置而成的混凝土,再生混凝土技术的开发和利 ...
- gateway请求拦截_一种网关对用户请求进行统一拦截判断是否放行的方法与流程...
本发明涉及互联网技术领域,特别涉及一种网关对用户请求进行统一拦截判断是否放行的方法. 背景技术: 随着互联网发展的越来越快,技术也更新的非常频繁,比如开发一个系统的架构由最初始的单个服务器就能处理演变 ...
- java扫描接口_一种扫描接口并生成可调用API接口文档的方法与流程
本发明属于JavaWeb开发技术领域,涉及一种API接口文档的生成方法,尤其是一种扫描接口并生成可调用API接口文档的方法. 背景技术: API(Application Programming Int ...
- 微分算法 非侵入式负荷识别_一种非侵入式用电负荷识别方法与流程
本发明涉及智能电网领域,具体地,涉及一种非侵入式用电负荷识别方法. 背景技术: 在智能电网环境下,智能量测设备会逐步得到广泛应用,从而能够得到用户负荷准确的.海量的数据.利用数据挖掘方法对用户负荷大数 ...
- AAAI2020 一种启发式变分路径推理(VPR)脑电情绪识别方法
AAAI2020|| 一种启发式变分路径推理(VPR)脑电情绪识别方法 论文工作 人类情感认知的研究表明,在情感表达过程中,空间相邻区域和功能相关区域之间存在着联系和通路.作者提出了一种启发式的变分路 ...
- 点云孔洞定位_孔洞修补研究总结
本人最近需要研究三维模型的孔洞修补算法,故上网看了一些大神写的资料,现汇总如下: 重建骨骼比较典型的方法有:用径向基函数从不完整的扫描数据生成连续网格:基于CT等值面数据生成曲面:用傅里叶级数拟合CT ...
- 点云孔洞定位_点云处理——孔洞修补
之前在做基于点云的孔洞修补研究,参考了一些学位论文后选择了一种基于自己能力能够复现的简单算法,虽然最终效果一般,不过在这个过程中收获了很多,特此记录. 基于点云的孔洞修补与基于三角网格的孔洞修补相比, ...
- orb特征 稠密特征_一种基于ORB-SLAM2的双目三维稠密建图方法技术
本发明专利技术公开了一种基于ORB‑SLAM2的双目稠密建图方法,涉及机器人同步定位与地图创建领域,该方法主要由跟踪线程.局部地图线程.闭环检测线程和稠密建图线程组成.其中稠密建图线程包含以下步骤:1 ...
- gis快速接地开关_一种基于扫描电镜和能谱仪的GIS放电异物来源分析方法
扫描电镜(SEM)及其附带的能谱仪(EDS)可以用来进行金属的组织形貌观察和微区成分分析.扫描电镜具有景深大.图像立体等优点,图像放大倍数范围为8~300000倍,试验人员可以通过调节扫描电镜的相关参 ...
最新文章
- 模拟 Codeforces Round #249 (Div. 2) C. Cardiogram
- MongoDB基础命令
- Qt图形界面编程入门(4)
- USB HID学习:数据包分析
- 团队选题报告(团队)
- jquery提交表单错误
- 【菜鸟练习】Java方法实现高尔顿瓶
- java-word模板导出
- oracle 字段名中有空格 的查询
- php 输入经纬度查询位置,php 根据实际地址获取对应的经纬度
- Data Structure - Doubly Linked List (Java)
- python中如何进行类的派生与继承_python 面向对象之继承与派生
- javascript思维导图大全
- 基于ESP8266的遥控小车
- h5广告与html5,那些刷爆朋友圈儿的H5广告大揭秘
- linux sh文件格式,SH文件扩展名 - 什么是.sh以及如何打开? - ReviverSoft
- vbs:模拟键盘操作和在指定窗口进行操作
- 四十八个音素发音方法
- 物联网技术融合成为新趋势,LPWAN2.0泛在物联·ZETA生态大会在深圳召开
- Go语言学习笔记—golang标准库xml包
热门文章
- 线性代数(六):相似对角化
- 成都java薪资待遇怎么样?还值得学习吗?
- L3-008 喊山 (30 分)(bfs)
- 永硕E盘:很实用的网络硬盘和网址收藏夹
- win10wifi间歇性断网重启后恢复_win10间接性断网怎么解决_win10电脑网络老是间歇性断网如何恢复-win7之家...
- 拉格朗日插值代码python实现(不掉包)
- 10倍于以往的传输速度带宽,Bluetooth(蓝牙)4.2标准发布
- win7如何设置通电自动开机_如何通过BIOS设置电脑接通电源就自动启动进入系统...
- DirectSound简单的概述|DirectSound SDK文档翻译
- 多功能数字钟c语言单片机PPT,基于STC89C52单片机的多功能数字钟的设计