livox_loam是HKU做的一個非重複掃描激光雷達的SLAM系統,使用的是大疆的livox_mid40這款激光雷達
代碼開源:https://github.com/hku-mars/loam_livox
他的github裏面有兩篇相關論文,分別是livox系統和livox的閉環檢測。
目錄
livox_loam安裝
安裝livox_loam需要cmake3,pcl1.9,ceres,ros
cmake升級可以參考https://www.jianshu.com/p/8c01dd978337
pcl如果小於1.7程序可以運行,但效果會有問題,刪除原版本可以從/usr/include/pcl-1.7/
& /usr/share/pcl-1.7/入手刪除相關文件,再重裝pcl1.9
ros安裝可以參考https://blog.csdn.net/unlimitedai/article/details/105390609
livox_loam的rosbag使用
之後可以使用rosbag跑一跑程序,作者數據集在googledriver上,不方便的小夥伴可以從這裏下載
鏈接: https://pan.baidu.com/s/1XUMnhNKQYvDqoHbbePkgUA 提取碼: wnme
裏面有個mxz_room是我用mid40測的,其他是我國外朋友下載給我的。
跑一跑效果如下
mid40使用
mid的手冊鏈接: https://pan.baidu.com/s/1oeGFstQwc6JAP_GbqM7ZZg 提取碼: 4hdx
首先如果你購買的是最便宜的那個版本,應該要自己做個10-16V直流電源,之後找一個路由器連接電腦和mid40,再下載livox_viewer
使用livox_viewer設置靜態ip
1. 首先通過路由器,按照上圖(4.2.1)所示的方式連接 Livox Mid-40、電源轉接插座、路由器、外部電源和 PC。
2. 在電腦上運行 Livox Viewer,於設備屬性中將局域網內激光探測測距儀的 IP 地址設置爲靜態 IP地址。請注意,激光探測測距儀的靜態 IP 地址應設置爲 192.168.1.X 。其中,X 與激光探測測距儀的廣播碼有關。若激光探測測距儀的廣播碼以 1 結尾,則 X 需設置爲 11 至 80 之間的任意數字;若激光探測測距儀的廣播碼以 2 結尾,則 X 需設置爲 81 至 150 之間的任意數字;若激光探測測距儀的廣播碼以 3 結尾,則 X 需設置爲 151 至 220 之間的任意數字。
3. 設置完畢後,斷開激光探測測距儀的所有連接,注意靜態 IP 重啓後生效。
4. 然後將電腦設置爲靜態 IP。電腦的靜態 IP 地址應設置爲 192.168.1.X(其中,X 爲 2~233 之間的任意數字,並且電腦的靜態 IP 地址不可與需要連接的激光探測測距儀的 IP 地址相同)。
設置完靜態ip就可以使用livox_viewer來看mid40的激光信息了
mid40製作自己的rosbag
1.首先要生成lvx激光數據,可以livox_viewer生成,也可以下載安裝livox_ros_driver
https://github.com/Livox-SDK/livox_ros_driver
安裝後在.../livox_ros_driver/src/livox_ros_driver/Livox-SDK/build/sample/lidar_lvx_file裏有一個運行程序lidar_lvx_sample,可以採集10s數據,將.../livox_ros_driver/src/livox_ros_driver/Livox-SDK/sample/lidar_lvx_file/main.cpp裏的int lvx_file_save_time = 10;改成一個較大的數就可以採很多的數據了。改完編譯,使用時ctrl+c停止或是直接停mid40電都可以停止採集。
2.將lvx轉換爲bag
使用livox_ros_driver,類似這樣就可以在原目錄生成bag包,之後按上面跑rosbag的方式運行livox_loam即可
source livox_ros_driver_path
roslaunch livox_ros_driver lvx_to_rosbag.launch lvx_file_path:="/home/livox/test.lvx"
一個自己的效果如下。不過由於Fov較小,所以mid40容易跟丟,尤其是旋轉。