使用docker部署livox_camera_calib環境

啃骨头不吃饭啊發表於2024-04-25

ROS系統安裝

使用fishros的一鍵安裝指令碼,選擇ros1kinetic版本。具體安裝以及連線容器過程可檢視影片Docker版ROS安裝
注意:啟動容器時應從命令列啟動,不要在vscode中連線容器。否則在啟動rviz時,程式會找不到顯示輸出裝置,rviz會直接die。

環境配置

安裝完Docker版本ROS後需要的再次依賴庫極少,僅需編譯安裝ceres-solver 1.14.x即可,此時仍需要再安裝編譯所需部分依賴庫。

# 依賴庫安裝
sudo apt-get update
sudo apt-get install liblapack-dev libsuitesparse-dev libcxsparse3.1.2 libgflags-dev 
sudo apt-get install libgoogle-glog-dev libgtest-dev

# 編譯ceres
git clone https://github.com/ceres-solver/ceres-solver --branch 1.14.x
cd ceres-solver
mkdir build
cd build
cmake ..
make -j6
# Docker中預設root使用者
make install

執行livox_camera_calib

在啟動標定程式之前應該修改config目錄下的calib.yaml檔案

mkdir -p ~/workspace/livox_camera_calib_ws/src
cd ~/workspace/livox_camera_calib_ws/src
git clone https://gitcode.com/hku-mars/livox_camera_calib.git
cd ..
catkin_make -j6

source devel/setup.bash
roslaunch livox_camera_calib calib.launch

接著可以看到rviz啟動繪製影像稜角


程式先進行Rough Optimization

接著進行Optimization進行迭代擬合

最後程式給出Result Optimization

總結

可以看到程式可以正常執行,但擬合結果並不太理想,這與收集點雲干擾和參照物有很大關係。可以考慮更換參照物或者多次擬合。在Docker容器下執行該標定程式較快但在筆者電腦上仍需要4分鐘左右時間。

相關文章