In this paper, we propose a novel LiDAR(-inertial) odometry and mapping framework to achieve the goal of simultaneous localization and meshing in real-time. This proposed framework termed ImMesh comprises four tightly-coupled modules: receiver, localization, meshing, and broadcaster. The localization module utilizes the prepossessed sensor data from the receiver, estimates the sensor pose online by registering LiDAR scans to maps, and dynamically grows the map. Then, our meshing module takes the registered LiDAR scan for incrementally reconstructing the triangle mesh on the fly. Finally, the real-time odometry, map, and mesh are published via our broadcaster. The key contribution of this work is the meshing module, which represents a scene by an efficient hierarchical voxels structure, performs fast finding of voxels observed by new scans, and reconstructs triangle facets in each voxel in an incremental manner. This voxel-wise meshing operation is delicately designed for the purpose of efficiency; it first performs a dimension reduction by projecting 3D points to a 2D local plane contained in the voxel, and then executes the meshing operation with pull, commit and push steps for incremental reconstruction of triangle facets. To the best of our knowledge, this is the first work in literature that can reconstruct online the triangle mesh of large-scale scenes, just relying on a standard CPU without GPU acceleration. To share our findings and make contributions to the community, we make our code publicly available on our GitHub: https://github.com/hku-mars/ImMesh.
翻译:本文提出了一种新颖的激光雷达(-惯性)里程计与建图框架,旨在实现实时同步定位与网格构建。该框架命名为ImMesh,包含四个紧密耦合的模块:接收器、定位模块、网格构建模块和广播模块。定位模块利用接收器预处理后的传感器数据,通过将激光雷达扫描数据配准到地图来在线估计传感器位姿,并动态扩展地图。随后,网格构建模块接收已配准的激光雷达扫描数据,在运行过程中增量式重建三角网格。最后,实时里程计、地图和网格通过广播模块发布。本文的关键贡献在于网格构建模块,该模块采用高效的分层体素结构表征场景,快速查找新扫描数据观测到的体素,并以增量方式在每个体素内重建三角面片。这种逐体素的网格构建操作专为高效性设计:首先通过将三维点投影到体素内的二维局部平面进行降维,然后通过拉取(pull)、提交(commit)和推送(push)步骤执行网格构建操作,以实现三角面片的增量重建。据我们所知,这是文献中首个仅依赖标准CPU(无需GPU加速)即可在线重建大规模场景三角网格的工作。为分享研究成果并回馈社区,我们已将代码公开于GitHub:https://github.com/hku-mars/ImMesh。