付费下载
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
ResearchandImplementationofaThree-dimensionalScanDepthDataRegistrationAlgorithmAuthor:WANGHong-Tutor:HAOAi-Aimingattheproblemthattherearealargenumberofredundantdatapointsafterregistrationofdepthdatawhichisgetfromdifferentangleofscanning,basedonafactthattheaccuracyofthepointclouddataobtainedfromtargetfrontageishigherthanitformotherdirection,inthispaper,weproposeadepthdataregistrationalgorithmwithpriority.Thealgorithmusesthepointcloudsurfacenormalandtheinformationofviewpointwhenweobtainthepointcloud,definetheprioritybetweenthecorrespondpointsinthepointcloudtoberegistration.Achievethealgorithmaccordingtocomparingtheprioritybetweenthecorrespondpoints,reservingthepointshavehigherpriorityinthefullpointcloudandremovingthepointshavelowerpriority.Experimentalresultsshowthatthealgorithmisthispapercannotonlyeffectivelyreducethenumberofredundantdatapointafterregistrationinthefullpointcloud,butalsomaintainingthesamegeometricalcharacteristicsoftheoriginal:Three-dimensionalscanning,IterativeClosestPoint, 绪 研究背 国内外研究现 NDT算 ICP算 研究目标与内 课题来 的组织结 相关技术现 PCD点云文 PCL点云 Qt开发框 本章小 深度数据配准算法的研 深度配准算法的过 关键环节研 关键点的提 特征描述与提 深度数据配准算法的部分优 采样阶 搜索阶 点云优先级的研 点云优先级的概 点云优先级实现思 本章小 深度数据配准算法的实 算法实现概 算法详细实现过 预定 下采样过程实 关键点提取过程的实 点云表面法线特征提取的实 配准过程的实 点云优先级的实 Qt用户界面的实 界面需 界面实 本章小 实验结 实验环 功能实 实验目 实验过 实验总结与分 性能实 实验目 实验过 实验总结与分 本章小 总结与展 工作总 工作展 致 参考文 绪正在引领信息时代的全球产业,被视为推动“第三次工业”的技术之一,相关研究的经济意义、社会意义、科学意义,受到各国和产业界的广泛重视。据预测,三维扫描行业的产值将在2016年达到31亿。而随着面向三维扫描的智能化图1.1三维扫描获得的面部模型与首饰(来源于网络其次,三维扫描技术的研究具有积极的社会意义。三维扫描正在从高端工业大性化设计。与此同时,移动和智能的普及,也为某些简单易用却十分有趣AutoCAD、3dsMax、Maya、Rhino3D、Zbrush等国外商业软件或三维系统。一方面,手工建模的效率异常低下,而且并人都有能力自行建模,另一方面,对于的科学意义和实用价值,将有助于通过技术打破国外在该领域的市场。模型个性化编辑的效率有待提高。作为3打印技术真正迈向大众化普及应用的第一步,3照相馆已先后在西班牙、迪拜、、中国等国家展开了商业化运营。3D人像输出到3之,常需交使Polorkomicbruhudox等多类几何建模处理软件,花费5个小时左右的手工工作量来进行个性化编辑定制。若Curvature)方法、随机采样一致性算法[1](RANSAC)、自旋图像(SpinImage)、点 为线性变换部分,为平移变换部分,为变换部分,s为整体比例因子。 其中旋转矩阵R3×3形式见式(1.3) α,β,γ分别表示沿x,y,z轴的旋转角,tx,ty,tz表示位移量DistributionsTransform)和ICP(IterativeClosestPoint)两种方法。NDTNDT算法即正态分布变换算法是MartinMagnusson于2009年一种的配 使用Hessian矩阵法对这些分数值进行优化,优化后计算新的参数估计值ICPICP算法即最近点迭代算法是BeslP.J.等人于1992年目前应用最广泛且具有很高匹配精度的配准算法[3]。ICP算法是在两个点集中搜索最近的点对,以这些最近点在采样阶段,Turk使用了一致采样方法,Masuda使用的是随机采样方法Rusinkiewicz提出了使用法向量的分布最大化进行采样的方法[5]P(pointtopointud也使用点到点的距离,但是使用的目标函数是以最小中值平方法代替最小平方法得到的,hn采用的是点到面(pointtoplan的距离,如图1.2[6]更快的速度收敛到指定的阈值。1.2关于ICP算法的改进还有很多方案,需要今后进一步的学习与探讨深度数据配准算法,包括应用最广泛的ICP算法的各种修本都没有对点云匹配时的本课题的目标是,设计实现一种带有优先级的ICP算法。在点云深度数据配准时,通过理复原等工作,以此来优化ICP算法,增强深度配准效果,减少后续过程的计算量。并利用Qt将配准过程可视化,方便使用人员操作。原始的部分点云数据之间必须有部分。对于ICP算法来说,部分越高PCD点云格式。当前点云数据格式中,PCD格式所含的原始信2.1节论述。原始数据也可采用可以转换为PCD格式的文件,例如PLY格式。ICPICP算法。ICP算法经过量。基于K-D树的搜索方案,能够更好的处理对应点集合。第三,本文利用Qt开发框架,搭建一个可以方便用户操作的深度数据配准界面。ICP算法的实现过程,并结合前人的工作,选择合适的方法进行一定程度的优化;ICP算法之后,引入点云优先级的概念,通过比较对应点的优先级,来完成深度数据配准算法的进一步优化;在完成点云优先级之后,利用Qt开发框架,搭建一个可第一章绪论相关技术现PCL点云库中的某些函数,节省开发时间,同时提高效率;第三,为了直观的显示配准的效果,需要搭建可视化界面。利用Qt开发框架,能够轻松的完成这一任务。更好的PLY,由Stanford大学的科研人员开发的一种多边形文件格式STL,由3DSystem公司设计开发的文件格式,在CAD,CAM领域应用广二进制mmap/munmap数据类型是在磁盘上速度最快的方法; 可以不同的数据类型,如short,int,double,float,char等,使得点云数据在和处理过程中高效且适应性强,并且增加NAN类型来表示无效的点2.1PCDVERSION——PCD文件版本FIELDS——一个点的数据可以包含的所有维度和字段的名字SIZE——每一个维度的大小,用字节数来表示TYPE——COUNT——指定每一个维度包含的元素数目WIDTH——用点的数量表示数据集的宽度HEIGHT——用点的数量表示数据集的高度VIEWPOINT——指定数据中点云获取的视点POINTS——点云中点的总数DATA——点云数据的数据类型DATA的下一个字节为点云的数据部分PCD格式的另一个优势是能够最大程度适应PCL应用程序的最能,而不用把其他文件格式改变成PCL支持的格式,减少额外的延时。PCL是吸收许多前人在点云上的相关研究,并在这些研究的基础上建立OSX、部分嵌入式实时系统上运行。PCL在三维信息获取与处理上的地位,就如同:Boost、Eigen、FLANN、VTK、OpenNI、Qhull使用setInputCloud输入点云数据 4)Segmentation:实现聚5)Range:生成不同点云数据集的Qt1991C++图形用户界面应用程序开发框架。GUIGUI程序,比如服务器和控制台工具。Qt是面向对象的框架,优良的跨平台特性:Qt支持下列操作系统:Windows95/98WindowsNT,Linux,SunOS,Solaris,DigitalUNIX(OSF/1,Tru64),HP-UX,FreeBSD,BSD/OS,OS390,SCO,AIX,QNX等等。丰富的API:Qt包括200个以上的C++类,还提供基于模板的directorymanagement,I/Odevice,collections,serialization,file,date/time类,甚至还包括处理本章主要介绍了本文实现的深度数据配准算法在研究与实现中所用到的相关技术和理论基础。2.1PDPD点云文件的格式与内容,.2节介绍了本算法实现时使用的PL2.3t深度数据配准算法的研4×4矩阵进行刚性变换,使一个点云数据集(源数据集)精确地与另一4×4矩阵依次相乘,使得所有点云数ICP算法,估计变换矩阵,完成刚性变换, 3.1物体而[8]。无论是哪种关键点,其中重要的一步是减少提取特征时的搜索空间,这样才能把重点放在重要的结构上,因此,提取NARF关键点的过程有着如下需求: 其中 其中,p为边缘点,为p的邻近点 为邻近点的权重值,为空间范围是主方向辨别因子,计算公式如式 ,为所对应的一根据值对其进行平滑过滤3.2NARF, 在这里,k为点Pi点的数目,表示最近的相邻元素的三维质心,是第j个特征向量,是协方差矩阵第j个特征值。 示更为准确[18]。如图3.2为采样前点云数据,图3.3为采样后点云数据。3.33.4kd-tree的方法,可以大大kd-tree的方法是一般采取分割仅仅有一个元素组成。如图3.5所示。3.5kd-tree3.6Aαβ角,所以a位置到的A点优先级要高于b位置到的A点。3.6夹角为,法线方向向量为,视角方向向量为,则有式(3.7)成立: 假 。则的大小如(3.8)所示 。 深度数据配准算法的整个配准过程分为几步,首先建立点云矢量data,在data中加载用户到的多幅算法流程图如图4.1所示:4.1点云文件,同时配准后的点云文件。结构体如下:PCD{PointCloud::Ptrcloud;std::stringPCD():cloud(newPointCloud)pcl::VoxelGird滤波器,将待配准的点云作为滤波器的输入,下采样后的输出在filterd中。sor.setInputCloud(cloud);setlx,ly,lz设置体素栅格在X、Y、Z三个方向上的尺寸。参数。然后创建NarfKeypoint对象,把要提取关键点的深度图像和RangeImageBorderExtractor对象传递给它,并设置一些参数,最后计算获得关键点。pcl::narf_keypoint_detector.setRangeImage(&range_image);narf_keypoint_detector.getParameters().support_size=support_size;pcl::PointCloud<int> pute(keypoint_indices计算值时所用的邻域范围。pcl::search::KdTree::Ptrtree(newpcl::search::KdTree());ne.setRadiusSearch(doubleradius);pcl::NormalEstimation类,并把全部点云的输入数据传递setIndicesindicesptr)来传递索引。之后创建kd-tree对象,把它传递给法线估计对象,使用setSearethod将搜索方式设置为树形,setRadiusSearchcompute函数计算4.2其中利用setMaxCorrespondenceDistance函数用来设置位于源点云和目标点云的两准过程中被忽略,配准过程中只关注对应点距离小于此阈值的对应点对。setTransformationEpsilonepsilon设置的越小,用set umIterations函数设置迭代的最大次数,增强ICP内部迭代的鲁棒性,刷新,将的结果显示出来。在每次的迭代过程中,我们记录并累乘由ICP返回的变换。函数getFinalTransformation用来获得此次迭代过程的转换矩阵,与之前迭代过程得到的矩阵相乘,获得当前的转换矩阵。4.2.4节已经实现了点云法线特征的提取,这ce.determineReciprocalCorrespondences(pcl::Correspondences其中,determineReciprocalCorrespondences函数的对应点查找是相对的,有利于去为了获得原始点云时的视点信息,需要从PCD文件头中提取视点位置,即VIEWPOINT字段,利用FileReader类中已经定义好的PCD文件接口,可以方便的提取VIEWPOINT字段,代码如下:intreadHeader(conststd::string&file_name,sensor_msg::PointCloud&cloud,Eigen::Vector4fEigen::Quaternionf&orientation,int&file_name,int&data_type,unsignedint&data_idx,constintfloata=x1*x2+y1*y2+z1*angle=acos(a/b);returnselector_a+=co[no].index_query;selector_a=src->erase(selector_a);selector_a=src->begin();voidQStringfileName=可视然后利PCL自带的点云窗口CloudViewer实现深度图像可视化具体设置参数过程如图4.3所示。4.3将4.2节的深度数据配准算法封装,调用封装好的align函数,完成配准,点云可视pcl::visualization::PCLVisualizerintvp_1,p->removePointCloud("vp1_target");PointCloudColorHandlerCustom<PointT>tgt_h(cloud_target,0,255,0);Qt中提供了保存文件的相关方法,此部分比较容易实现,代码如QFilefile(fileName);cout<<ui->textEdit->toPlainText();isUntitled=节介绍了整个算法实现的概述。4.2节详细说明了算法各个关键环节的实现过程,并对实验结 (R)Core(TM)2Duo 显示适配器:NVIDIAGeForce320M选择著名的 bunny模型来作为数据输入,相关数据可
5.15.11505144313765.2所示,可以看到已经开始配准5.25.3所示,左面窗口显示最终配准次数,5.45.3405节中给出,由上述的实验设计和实信息Qt开发框架直观的显示出来,便于统计相关配准信息,更好的观察配准效果,同时5.2节已经对一组数据的结果进行了统计,在本节只需要再测试一组数据即5.5.4850485108377891090331585ICP5.8所示。5.85.731585433335.95.9中可以看出,虽然左面点云中点的数量较右面点云少,但其几何特征并未5.3.2节已经展示,通过实验数据可知,当点云数当点云数据集大小增大时,配准过程的总时间随之增加。配准时间的增加不仅因为点云数据的组数增多,其中每幅点云的配准时间也依次增加,这其中计算点云优先5.2节的实验中,带优先级的深度数据配准算法减少的冗余点占总点数的百分比约为%,而在本节的实验中,运用算点数达27%本章介绍了带有优先级的深度数据配准算法的测试的过程和结果。5.1节主要介绍总结与展BeslP.JICP算法后,其无关物体表面三维数据的处理特性而且不需要对物体进行第一,研究ICP算法,在实现标准ICP的基础上,利用前人的优化方案,实现在一kd-treeICP的效率,为之后计算优先级Qt开发框架,设计实现了一个可视化的深度数据配准界面。将点算法的功能与性能作出了一定程度的分析与判断,以便日后对其更次的改进。观察算法的结果。在三维扫描领域中,已经有成软件来实现这一过程,例如Polyworks等,然而这些软件并未将三维建模的全部过程整合在一起,通常完成整个过致个优越的环境来完成的本科毕业设计,过去的半年中在这里锻炼了不少,成的学。在毕设过程中和我并肩完成。感谢同学,在英文文献阅读方面给予的持我在北航接受高等教育,的鼓励让我更有信心追求心中的梦想,我爱!参考文FischlerMA,BollesRC.Randomsampleconsensus:aparadigmformodelfittingwithapplicationstoimageysisandautomatedcartography[J].CommunicationsoftheACM,1981,24(6):381-395.MagnussonM.Thethree-dimensionalnormal-distributionstransform:anefficientrepresentationforregistration,surfaceysis,andloopdetection[M].Örebrouniversitet,BeslPJ,McKayND.Methodforregistrationof3-Dshapes[C]//Robotics-DLtentative.InternationalSocietyforOpticsandPhotonics,1992:586-606.MasudaT,SakaueK,YokoyaN.Registrationandintegrationofmultiplerangeimagesfor3-Dmodelconstruction[C]//PatternRecognition,1996.,Proceedingsofthe13thInternationalConferenceon.IEEE,1996,1:879-883.RusinkiewiczS,LevoyM.EfficientvariantsoftheICPa
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 探寻中国电信业规制改革的破局与发展之路
- 探寻中国影子银行的现状、影响与监管策略:基于金融稳定视角的深度剖析
- 2026年物联网在智能制造中的创新应用报告
- 2025年生态农业科技示范园智能温室环境控制系统创新可行性评估报告
- 数字媒体传播服务承诺函范文7篇
- 产品定价策略分析及实施方案
- 环保责任实施计划承诺书(5篇)
- 2026年公务员考试题库行政职业能力测验试题
- 2026年化学实验操作基本原理与安全规范实操考试题集
- 婚礼筹备执行手册大全:四大金刚挑选与当天流程安排
- 2026年1月浙江省高考(首考)化学试题(含标准答案及解析)
- 2025年河北省公务员考试行测试卷真题附答案详解
- 全屋定制讲解方案
- 上海市奉贤区2026届初三一模英语试题(含答案)
- 《电力系统继电保护及应用》课件-110kv线路保护配置-双语
- 餐饮厨房消防安全培训
- 养老院春节安全培训内容课件
- 天津市和平区天津一中2026届高二上数学期末学业水平测试试题含解析
- 第十八章分式单元测试题(含答案)2025-2026学年人教版八年级数学上册
- 鼻眼相关解剖课件
- 中频电疗产品注册技术审查指导原则(2025年修订版)
评论
0/150
提交评论