论文部分内容阅读
三维点云数据的交互式处理通常依赖点云数据三维实时渲染。随着三维激光扫描技术的深入应用,越来越多的三维点云数据被获取和积累下来。随着点云数据量的不断增大,大规模三维激光扫描点云的实时渲染已经成为点云数据处理的瓶颈问题。本文提出一种支持大规模点云实时渲染的技术方法,主要成果如下:根据用RTK测得的扫描站点和靶标的真实地理坐标与其对应的在激光扫描仪独立坐标系下的相对坐标,使用坐标转换矩阵经旋转和平移将点云数据全部统一到真实地理坐标系中,然后通过配准完成多站地面三维激光扫描点云的融合。研究了点云数据的数据特征,采用"分之而治"的思想,使用C++语言实现了对大规模点云数据的分块,每个分块包含一定数量的扫描点,可直接读入内存进行处理。对于每个点云分块,构建kd tree,使用PCL滤波以最近邻点数为阈值滤除点云中的孤立点。遍历经过去噪的点云分块,统计测区覆盖的空间范围。在外存储器上建立不同细节层次的八叉树索引结构,对海量点云数据进行有效的组织。通过与商业软件的对比渲染实验,验证了本文方法的可行性。最终的实验结果表明,本文提出的方法支持对超过内存容量的三维点云数据进行实时渲染。该方法有望用于大规模三维激光扫描点云数据的可视化和交互式处理。