SLAM相关的开源包好像都比较喜欢基于ROS框架开发,而在实际项目中,用到ROS的还不是很多,这给SLAM算法的集成就带来了一些麻烦。这段时间刚好在看LOAM,就顺便把LOAM改了一下,让它不依靠ROS也能运行。
LOAM的核心算法在几个以Basic开头的cpp文件中,这几个文件都是没有调用ROS的功能的,所以只要把它的数据流搞明白了,把LOAM从ROS框架下剥离开来也不是很难。
我主要把原版LOAM的几个节点换成了std::thread,用队列进行不同节点(线程中的传输),于是乎多线程版的LOAM就可以脱离ROS,在Mac、Windows和Linux下运行了。
代码地址:https://github.com/tiger20/LOAM-multi-thread
