基于激光雷达原理的三维扫描系统_第1页
基于激光雷达原理的三维扫描系统_第2页
基于激光雷达原理的三维扫描系统_第3页
基于激光雷达原理的三维扫描系统_第4页
基于激光雷达原理的三维扫描系统_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于激光雷达的三维扫描系统摘要基于激光雷达原理的三维扫描系统,是以一种基于结构光扫描原理的激光雷达为基础,通过使线激光器发出的线激光在被扫描物体表面扫描,摄像头便可接收到物体上不同位置的线激光的照片。然后提取出成像照片中物体上的线激光每一点的二维坐标吗,由已知量利用三角法可得到线激光中一点到摄像头的距离,由此距离值便可将线激光中这点的位置表达在根据摄像头位置建立的世界坐标系中。每一次扫描可得到一条线激光上若干点的空间位置信息,整个扫描过程结束就可以得到被扫描物体若干点的空间位置信息,根据这些点的位置信息可还原出被扫描物体的三维形状。本系统中以STM32单片机作为下位机控制激光扫描提前照片中激光线的坐标,并将当前提取的激光线在照片中的坐标通过串口传入上位机MATLAB程序。上位机接收到激光坐标数据后进行三维还原运算,计算出每一个激光点对应空间中的三维坐标,之后进行三维作图,还原出物体的三维形状。关键词:激光扫描;三角法;三维成像目录TOC\o"1-5"\h\z一、作品创意1二、方案论证与设计1三、原理分析与硬件电路图21.几何建模与算法分析22.硬件电路设计原理及分析6四、软件设计与流程7五、系统测试8六、作品难点与创新10七、总结11参考文献:12#AB=oL*1―-o'bcota+一8)由等式(4)(8)可以进一步推算出oA的关系式:oA=oL*o'b*f*cota+o'b由于三角形oAD与三角形8)由等式(4)(8)可以进一步推算出oA的关系式:oA=oL*o'b*f*cota+o'b由于三角形oAD与三角形odd'相似,可得:AD=oA,AD=少*od'od'dd'dd'10)而由d点的坐标可得dd'的关系式:dd'=o'b=1x-160111)在直角三角形ABD中,BD的长度可由下列等式求得:BD=xAD2—AB212)由等式(8)(9)(12)可以得出D点在当前随舵机旋转的空间三维坐标系中的坐标为:x=oA=o'b*oL*f*cota+o'b1y=AB=oL*f*cota+o'b(13)接着将求出的坐标转换到柱坐标系中,先分析r和9这两个参量:r=、[x2+y29=arctan—x14)然后将当前随舵机旋转的柱坐标系转换到固定的世界柱坐标系中,其中角B是当前旋转的坐标系与固定的世界坐标系中x轴的夹角:x=rcos(申-P)=rcos申000y=rsin(申一P)=rsin申00015)z=15)0式(15)即为三维成像中所应用到的固定世界坐标系中的坐标。图3:随舵机旋转坐标系与固定世界坐标系关系示意图2.硬件电路设计原理及分析(1)硬件驱动系统硬件驱动系统主要的功能是实现舵机对激光器与摄像头的转动控制。驱动电路中主要用到两个芯片。单片机型号:stm32fl03rbt6,实现与计算机之间的通信及发出对舵机、激光笔以及摄像头的控制信号。驱动芯片:uln2803a,是一款高压大电流达林顿晶体管阵列电路,系统中主要用于对激光笔和舵机的驱动。(2)摄像头系统中应用到的摄像头型号为:PTC08。该摄像头在图像采集、拍摄控制、数据压缩和串口传输方面都很具优势,其内置的高性能数字信号处理芯片能很好的实现对原始图像的高比例压缩,输出标准的jpeg格式。该摄像头在拍摄过程中对环境的抗干扰能力较强,由于三维成像需要收集到最大的激光点信息,故对于数据采集的要求相对较高。而一般的的摄像头需要在较黑暗的情况下才能采集到较好的信息,该在摄像头在普通的环境下就能较好的获取激光点的信息。四、软件设计与流程整个系统的软件分为控制部分和数据处理与显示部分。控制部分是由单片机控制来完成。主要控制内容包括调整舵机的转动角度,控制就激光笔的开关以及摄像头的拍照频率,在控制的过程中同时提取拍得的照片中激光的坐标并将坐标数据通过串口传至上位机MATLAB。单片机中程序流程图:图4:单片机程序流程图数据的后期处理与显示则是通过MATLAB完成,在接收到数据后先对数据进行处理,经过还原运算得到相应世界坐标系中的的空间坐标,然后将得到的坐标显示在MATLABGUI界面中的三维坐标系中。MATLAB程序流程图如下:

图5:matlab程序流程图为了方便整个系统的连续运行以及作图的实时显示,用MATLAB做了上位机图形用户交互界面,如图所示:图6:MATLAB上位机界面图五、系统测试为了能够实时观测整个系统的运行状态,设计了单片机液晶显示功能。主要完成将摄像头采集到的图片信息并将提取出的激光坐标点显示在白屏上。,作用

在于能够检测摄像头的正常工作以及观察激光坐标提取的准确性。在整个过程中,舵机每转动一次,摄像头拍照一次,单片机控制将拍照信息显示在液晶上,由此能判断摄像机的正常运行。接着是将采集到的激光线以打点的形式显示在液晶上,通过判断激光线位置与原照片中位置的差异,可以判断坐标提取的的是否准确和完整。在整个测试过程中,通过判断相关信息,整个系统的运行状态是比较顺利和可靠的。分别对笔筒和工艺品小葫芦进行了三维扫描测试,效果图如下面三图所示:图7:笔筒扫描效果图图8:小葫芦扫描效果图六、作品难点与创新1.SD卡读取由于在系统设计中,限于单片机STM32F103中RAM的限制,不可能将每次从摄像头获取的JPG格式的图片存在RAM中,必须要先存储到SD卡中再进行后续的解码及提取坐标操作。同时为了方便调试,需要在电脑上读出SD卡中存取的照片进行分析。为了实现上述功能,必须要对SD卡植入与Windows相兼容的文件系统。通过反复对比试验,最终选择了一款小巧方便的fatfs文件系统。FatFS是一个为小型嵌入式系统设计的通用FAT(FileAllocationTable)文件系统模块。FatFs的编写遵循ANSIC,并且完全与磁盘I/O层分开。因此,它独立(不依赖)于硬件架构。它可以被嵌入到低成本的微控制器中,如AVR,8051,PIC,ARM,Z80,68K等等,而不需要做任何修改。将FatFs移植到STM32平台需要修改与底层相关的10文件以及操作读写SD卡的基本通信函数。2.JPG图片解码本系统中使用的是一款以UART方式输出压缩后的JPG格式图片的摄像头。它的好处是可以以较小的存储空间获取到整幅图片的信息。然而,其缺点是在进行图片处理之前需要对其进行解码到RGB色彩空间,既得到每一个像素点的RGB信息。同样由于单片机RAM的限制,想整幅图片一起读入RAM再进行解码是不实际的。因此,我们在设计中采取JPG解码与fatfs文件系统配合的策略,以数据流的方式将SD卡中图片数据读入单片机中缓存数组中,再对这一段图片数据流进行解码。这样可以大大节省系统资源的消耗,同时取得较好的效果。3.系统还原算法的创新本题目设计的基于结构光的三维扫描系统是一款功能相对完善,同时制作成本比较低廉的低成本系统。为了以这些低成本的元器件实现三维扫描的功能,我们设计了相对简单易于实现且资源消耗少的三维还原算法。创新点主要在三维建模的算法设计上,本算法根据已知激光点在CCD中成像的位置和整个扫描空间中激光光路的三角关系,来计算得到物体上激光点的三维位置信息。整个算法涉及到的变量相对较少,算法的运算量较小简单可靠,大大减少了系统运算开销。同时,经过验证本系统具有一定的鲁棒性,系统微小的偏差对结果的影响并不大。七、总结本题主要是设计一种低成本的容易实现的三维扫描系统,应用于SLAM导航和三维成像领域的。利用激光点在成像平面上的位置和激光从激光器到成像平面之间的几何光路可以,计算出激光器到目标表面激光光斑之间的距离,然后根据几何关系可以将这个距离关系转化成空间坐标关系,通过matlab进行绘图成像。该题最重要的也是最关键的问题就是三维成像。三维成像最重要的是确定扫描物的三维坐标,在经过反复推算和验证后,我们找到了一种思路相对简单处理过程相对精简的算法。该算法主要特征是将旋转的坐标系中的点转换到世界坐标系中,整个过程设计到的主要变量是舵机的旋转角度,而该变量又能由单片机控制,所以整个过程处理起来相对简单。在整个三维扫描系统的实际制作中,特别要注意激光器和摄像头的安装,如果安装的不牢固,就容易出现在舵机旋转扫描过程中出现松动,进而影响计算模型的固有参数发生改变,导

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论