论文部分内容阅读
近年来,随着逆向工程的发展和三维数据扫描设备精度的提高,所得到的点云的密度往往很大,导致后续存储、传输、显示和重构都将消耗大量的时间和计算机资源。如何高效地对数据进行处理成了各国专家研究的热点,其中点云的压缩和精简可以分别减轻工程上在传输、存储和重构方面的压力。本文针对点云压缩和精简中的关键技术进行了较为深入的研究并分别提出了一种优化算法。1.提出了一种基于八叉树的点云压缩算法。算法改进了八叉树分割的停止条件,可以在适当的深度停止分割并确保体素大小合适;在分割的基础上建立K邻域,利用简单有效的统计方法去除原始点云的离群点;在数据结构上,对每个节点分配位掩码,通过操纵位掩码,在遍历时对数据查询和操作,并优化随后的点位置编码。算法有效地移除了离群点和表面杂点,并在区间编码提高了点云压缩效率。该算法较完整地保留了点云的关键信息,取得了良好的压缩率并缩短了压缩时间。2.针对无任何预知信息下的三维点云数据,提出了一种特征保留的点云精简算法。算法首先通过分析点云数据的细节信息,选取X,Y轴方向进行分割并运算,提取X-Y边界;然后利用栅格法对已经提取过边界的散乱点云数据进行空间划分并建立K邻域;通过计算点云在不同邻域内的法向量变化度来提取点云数据的关键特征点;最后利用栅格索引对非特征点区域进行适当简化。该算法既能够保留点云的细节特征使其在重构之后逼近原始模型,又取得了良好的运算效率与精简率。在对精简算法研究的基础上,本文对点云重构算法进行了探讨和研究,并通过PCL_visualization库对重构结果进行可视化处理。本文中的算法使用了在点云处理中通用的点云库文件和本实验室光栅系统获取的点云文件来验证,实验结果表明本文算法具有实际的可行性和有效性,能够对点云做较好的处理。