标题:Real-Time Spatio-Temporal LiDAR Point Cloud Compression
作者:Yu Feng , Shaoshan Liu , and Yuhao Zhu
本文仅做学术分享,如有侵权,请联系删除。
●论文摘要
实时压缩大量的激光雷达点云对于自动驾驶汽车等自动化机器至关重要。虽然目前大多数的工作都集中在压缩单个点云帧上,但是本文提出了一个新的系统,可以有效地压缩一系列点云。利用点云帧序列中的空间和时间冗余的思想。首先在点云序列中识别关键帧,然后通过迭代平面拟合对关键帧进行空间编码。然后我们利用连续点云在物理空间中有大量重叠的事实,因此空间编码的数据可以(重新)用于对时间流进行编码。利用空间编码数据进行时间编码,不仅提高了压缩率,而且避免了冗余计算,大大提高了压缩速度。实验表明,我们的压缩系统达到了40×90的压缩率,明显高于MPEG的LiDAR点云压缩标准,同时保持了较高的端到端应用精度。同时,我们的压缩系统的压缩速度与目前激光雷达的点云生成速率相匹配,并优于现有的压缩系统,实现了实时点云传输。
代码开源(有兴趣的可以测试后与我交流和分享):
https://github.com/horizon-research/Real-Time-Spatio-Temporal-LiDAR-Point-Cloud-Compression
●内容介绍
本文的压缩系统的思想是利用点云(空间)和点云(时间)之间的冗余。在空间上,现实世界中的许多曲面都是平面(例如墙和地面);甚至非平面曲面也可以用一组平面来近似。在时间上,连续的点云共享场景的大部分重叠区域;因此,可以使用同一组平面来编码跨越点云的点。虽然直观,但由于不规则/非结构化点云和计算密集的平面拟合过程,实时利用空间和时间冗余具有挑战性。我们提出了一个压缩系统,在保持高应用精度的同时,实现了最先进的压缩率和压缩速度。
本文的主要贡献如下:
•据我们所知,这是第一次利用空间和时间冗余压缩激光雷达点云的工作。
•与当今的压缩方法(包括MPEG的点云压缩标准)相比,压缩方法同时实现了更高的压缩率、更高的压缩速度和更高的应用程序级精度。
我们的压缩系统概述,它压缩一系列连续的点云。将所有点云转换为距离图像,以加快压缩速度。我们首先对序列中的关键点云(K帧)进行空间编码,通常是中间点云。然后使用K帧的空间编码结果对其余的点云进行时间编码,我们称之为预测点云(P帧)。
文章中提到了关于非结构化的点云编码,常用的方法是空间树结构的方法,比如八叉树就是应用十分广泛的编码方式。那么对于结构化的点云压缩与非结构化使用空间树的方式来编码点云不同,结构化的点云可以转换为图像编码的形式,然后利用常规的图像压缩的方法实现点云的压缩。
每个点云被转换成一个距离图像,以便进行后续计算。距离图像不仅对原始点云进行初始压缩,而且提供了非结构化点云的结构化表示。然后我们通过拟合平面对K帧进行空间编码;然后利用K帧中的拟合平面对P帧进行时间编码,大大提高了整体压缩速率和速度。为了对IMU观测中可能引入的变换误差具有鲁棒性,我们提出了一套补偿传感器噪声并保持编码质量的技术。最后,在我们的压缩中使用不同的数据结构。原始点云将转换为距离图像。经过空间编码后,距离图中的大部分片段都是平面编码的,不合格的区域留在残差图中。(如图)
距离转换公式
空间编码示例
在运动变换之前和之后五个连续的点云的结果
●评估指标
论文在三种常见的点云应用程序上评估了这种点云压缩方法:点云配准,点云对象检测,点云场景的分割。
- 点云配准:配准的测试使用了基于点云PCL库的ICP算法进行对比测试。
- 点云目标检测:使用了体素网格的深度学习的方法测试对比。
- 点云场景的分割:使用了基于DNN的squezeseg方法。
使用三个评估指标:未压缩点云的压缩率、FPS的压缩速度和应用程序结果的精确度。评估压缩如何影响点云应用结果,这才是最终的关键。所以这里数据集使用KITTI数据集来评估点云配准和点云对象检测。为了评估点云分割,使用SemanticKITTI数据集。
硬件平台:使用英特尔I5-7500与,和一个移动平台配备Nvidia Jethon Tx2使用C++实现点云的压缩。
不同压缩方法的配准平移误差和压缩率比较
比较了各种压缩方法的目标检测精度和压缩率
各种压缩方法的分割误差和压缩率比较
●总结
本文提出了一种新的时空压缩方法。结果表明,利用连续点云的空间和时间冗余,我们的压缩方法可以达到90倍的压缩率,在保持较高的应用精度的同时实现了实时(>10fps)的压缩速度。它在压缩率、速度和准确度方面优于最先进的点云压缩标准。