论文部分内容阅读
结构光三维重建技术是近三十年发展并逐渐成熟的一项获取物体表面形貌信息并在计算机上复现物体的技术,该技术现已广泛应用于测量及逆向工程等领域。但目前该技术还未在广大中小企业及个人用户中普及,其原因之一是重建软件应用门槛较高。现有商用重建软件普遍价格昂贵,与硬件深度绑定,重建过程对用户不够透明,而现有开源重建软件在人机界面友好性和易用性上还存在不足。为克服以上因素,使三维重建技术能够服务于广大中小企业及个人用户,在深入研究三维重建相机标定、结构光编码及解码以及点云拼接等关键技术的基础上,开发出一款功能完善的三维重建软件。本论文的主要研究内容如下:(1)利用非对称圆点标定板作为标定模式物体进行相机标定,并借助OpenCV实现标定算法,标定过程除标定板图像采集需要人工介入外,其余过程均实现了自动化。通过试验给出了所用方法的标定精度。(2)采用对硬件性能依赖性低的格雷编码原理生成结构光编码图案。分别根据格雷码对投影区域直接编码及引入极线约束简化解码两种方式设计了物体扫描及重建流程,给出了两种方式所对应的三角计算方法,并将其应用于重建及点云拼接过程。对两种方式的重建精度进行了对比。(3)采用在物体表面粘贴标记点的形式实现点云拼接。提出了一种通过行扫描方式检测标记点边缘,进而确定标记点圆心的方法,将其与基于椭圆拟合的圆心检测方法在检测精度、效率上进行了对比,证明了该方法适用于本文采用的圆环形标记点的检出。(4)提出最小误差三角形(Least Error Triangle,LET)方法,用于自动识别标记点身份,并基于身份匹配进一步利用四元数法计算点云拼接变换矩阵。(5)基于Qt平台利用C++语言开发了一款实用三维重建软件,采用调停者软件架构将上述算法及程序进行了集成,实际运行表明,该软件能够完成相机标定、结构光投射、相机控制、点云生成、点云拼接、三维可视化显示重建结果等任务。