基于扫描线间隔的点云压缩方法
2015-02-07朱宁宁卢小平李向阳边大勇
朱宁宁,卢小平,李向阳,陈 燚,边大勇
(1.河南理工大学 矿山空间信息技术国家测绘地理信息局重点实验室,河南 焦作 454150;2.河南省基础地理信息中心,河南 郑州 450003;3.中铁隧道勘测设计院有限公司测绘分院,天津 300133)
基于扫描线间隔的点云压缩方法
朱宁宁1,卢小平1,李向阳2,陈 燚3,边大勇3
(1.河南理工大学 矿山空间信息技术国家测绘地理信息局重点实验室,河南 焦作 454150;2.河南省基础地理信息中心,河南 郑州 450003;3.中铁隧道勘测设计院有限公司测绘分院,天津 300133)
针对地铁隧道中地面三维激光扫描仪扫描密度不均的问题,提出了基于扫描线点间距的点云压缩算法。该算法利用扫描仪逐线扫描的特性,滤除同一扫描线上点间距小于给定阈值的扫描点,使压缩后的点云呈现较为均匀的分布。通过实验分析了算法中阈值与压缩率之间的函数关系,建立压缩率与给定阈值倒数的多项式拟合模型并验证了模型的精度。
点云压缩;扫描线;点间距;拟合模型
三维激光扫描获取的数据往往达到数百万点量级,数据的存储、显示和传输不仅占用了大量的时间和空间资源,而且大大降低了后续分析和处理的效率。因此,在保证失真较小的情况下,最大限度地压缩点云数量是点云后处理的重要前提[1-4]。钱锦锋[5]提出了一种利用点云数据小邻域内点的相邻关系来检测边界特征点的算法,以满足在点云数据压缩过程中检测并保留边界特征点的要求。王晓明[6]提出了一种基于曲率与距离的三角网格抽样方法,该方法能将规模较大的原始点云压缩到可控数量并能较好地保留曲面的细节特征。张有亮[7]针对单站地面固定式三维激光扫描点云呈扇形特点,提出利用扇形网格法对点云数据进行一次遍历从而完成点云数据的精简、降噪与存储。张鸿飞[8]将点云分块技术用于扫描点法向量及曲率的计算,并根据精简准则保留特征点,最后以八叉树理论为基础细化网格完成点云数据的精简。邢正全[9]基于点云数据的栅格化和法向量估计在压缩过程中较好地保留了点云特征。徐工[10]提出基于小波技术的散乱点云自适应压缩算法,该算法无需设置阈值,能够最大限度地保留点云特征信息,并具有自适应的特点。但上述文献均未充分利用点云按扫描线存储的特性,本文提出基于扫描线点间隔的点云压缩算法,对点云密度大的区域进行重点滤除,使压缩后的点云呈现出较为均匀的分布。
1 算法原理
1.1 扫描线特征
地面三维激光扫描仪采用逐线扫描的工作方式(如图1所示),首先选定扫描起始方向α,在该方向竖直面内按垂直角度步频率⊿θ获取起始扫描线上的各离散点位,然后增加水平角度步频率⊿α,获取第2列扫描线,依次扫描直到获取一周的扫描线[4]。
图1 三维激光扫描仪测量示意图
⊿α和⊿θ为扫描前设置,由于同一列扫描线上各点的扫描距离S不同会导致各扫描点间的距离存在较大差别,造成距离扫描仪中心越远点云间隔越大,密度越小的现象。式(1)可近似表示扫描距离为S的点与相邻扫描点间的距离⊿d:
1.2 算法原理
基于上述扫描线的特性,本文提出利用扫描线间隔进行抽稀的算法删除间距较小的扫描点,使点云密度达到较为均匀的分布,原理如图2所示。
图2 算法原理示意图
选取阈值k,表示点间距的最大值,以第一列扫描线的起点p1为起始点,计算其与相邻点p2之间的距离d12,若d12大于给定的阈值k, 则保留p2点;反之,滤除p2点,并计算p2点与相邻扫描点p3之间的距离d23,若d12与d23之和大于给定的阈值k,则保留p3点;反之,滤除p3点,并按上述方法计算d34。依此类推,直到pt点满足距离之和大于阈值k,保留pt点。然后以pt为起点,计算其与相邻点pt+1的距离,并按上述原则计算,从而实现对各条扫描线进行压缩的目的。上述方法可用下式进行表述:
将压缩后的点数m与压缩前总点数n的比值v作为压缩率,以此建立压缩指标对压缩效果进行评价。
由式(3)可知,v越小说明滤除的点云越多,压缩效果就越好,但是点云局部特征损失也会越明显。
2 实验验证
采用Rigel VZ-400三维激光扫描仪在郑州市某地铁站获取的隧道点云数据进行实验,通过Matlab和VC++编程实现整个运算过程。如图3所示,该段隧道采用盾构法施工,采集数据时处于试运营阶段,截取区域的长度约为20 m(截取点云并未破坏扫描线的存储特性),扫描竖直、水平角度分辨率均为0.04°,包含9 001条扫描线,1 324 919个扫描点。
图3 地铁隧道点云图
选取的实验数据位于激光扫描仪的一侧,故由图3b可看出,点云密度随着离扫描中心(即图中的坐标轴中心)距离的增加逐渐稀疏。通过逆向工程软件Geomagic Studio对该实验区域进行不同比例的抽稀,图4分别为在50%、33%、25%和10%比例下的抽稀效果图。
由图4可知,通过软件对点云进行抽稀,无法使抽稀后的点云均匀分布,造成密度大的区域抽稀后密度依然大。采用本文提出的基于扫描点间隔的抽稀方法,设置不同的点间距k,抽稀后可得到不同的点数n及抽稀率v。表1为k从0.005~0.3 m之间的部分抽稀结果。
图4 抽稀效果图
表1 不同参数下的抽稀效率(n=1 324 919)
由表1可知,当k分别为0.02 m、0.04 m、0.06 m和0.2 m时,抽稀效率对应为51.11%、33.51%、25.47%和10.50%。图5列出在上述4种情况下抽稀后的点云及滤除的点云。
对比图4和图5可知,采用基于点间隔的压缩方法对点云进行抽稀,滤除的点绝大多数位于原点云中密度大的区域,且随着点间距的增大,滤除的区域逐渐向密度小的区域延伸,但密度大的区域滤除的点数仍大大多于密度小的区域,由此可保证抽稀后的点云达到较为均匀的分布。
图5 不同压缩比例下的抽稀效果图
实际工作中往往需要根据要求的抽稀率来设置点间隔参数,为此必须建立点间距k与压缩率v之间的函数对应关系。图6为表1中k与v的对应图,分析其形状特征,采用下式进行拟合:
图6 k-v对应图
利用Matlab对表1中数据按式(4)进行多项式拟合,表1中含有27组数据,因此多项式最高可拟合为26次,结果表明,当拟合次数大于15时会出现较大的局部震荡。表2为拟合次数f与拟合中误差δ的对应关系。图7展示了f分别为10和15时的拟合效果。
式中,v0为拟合压缩率;v为真实压缩率。
表2 f-δ分析表
图7 k-v拟合图
为验证拟合函数的准确性,比较k在0.017 5 m、0.037 5 m、0.075 0 m、0.162 5 m和0.237 5 m等情况下的真实压缩率v、拟合压缩率v0及差值 ⊿v,拟合函数选用f为10时的多项式,对比结果如表3所示。
P225
B
1672-4623(2015)05-0063-03
10.3969/j.issn.1672-4623.2015.05.021
2014-04-21。
项目来源:精密工程与工业测量国家测绘地理信息局重点实验室开放基金资助项目(PF2012-4)。