A-LOAM调试记录
环境配置
所需环境:
Ubuntu and ROS
Ceres Solver
PCL
Ubuntu and ROS
pass
Ceres Solver
主要用于求解优化问题
通过对测量获取的不十分可靠的数据和理想化的预测模型进行优化处理获取尽可能接近真实值的结果
-
依赖安装
# CMake sudo apt-get install cmake # google-glog + gflags sudo apt-get install libgoogle-glog-dev libgflags-dev # Use ATLAS for BLAS & LAPACK sudo apt-get install libatlas-base-dev # Eigen3 sudo apt-get install libeigen3-dev # SuiteSparse (optional) sudo apt-get install libsuitesparse-dev
git clone https://ceres-solver.googlesource.com/ceres-solver
-
build, test, and install Ceres
tar zxf ceres-solver-2.1.0.tar.gz mkdir ceres-bin cd ceres-bin cmake ../ceres-solver-2.1.0 make -j3 make test # Optionally install Ceres, it can also be exported using CMake which # allows Ceres to be used without requiring installation, see the documentation # for the EXPORT_BUILD_DIR option for more information. sudo make install
-
验证安装结果
bin/simple_bundle_adjuster ../ceres-solver-2.1.0/data/problem-16-22106-pre.txt
PCL
$ sudo apt install libpcl-dev
Build A-LOAM
cd ~/catkin_ws/src
git clone https://github.com/HKUST-Aerial-Robotics/A-LOAM.git
cd ../
catkin_make
source ~/catkin_ws/devel/setup.bash
问题记录
环境:
Ubuntu:20.01
gcc:9.4.0
-
#error PCL requires C++14 or above
catkin_make报错
解决方法:
open the CMakeLists.txt at /catkin_ws/src/ti_mmwave_rospkg
change the line add_definitions(-std=c++11) to add_definitions(-std=c++14) -
版本兼容问题?(或许
- 将scanRegistration.cpp中的 #include <opencv/cv.h> 修改为#include <opencv2/imgproc.hpp>
- 将kittiHelper.cpp中 CV_LOAD_IMAGE_GRAYSCALE修改为 cv::IMREAD_GRAYSCALE
NSH indoor outdoor 数据集
roslaunch aloam_velodyne aloam_velodyne_VLP_16.launch
rosbag play {{YOUR_DATASET_FOLDER}}/nsh_indoor_outdoor.bag
运行结果:
禾赛32线LiDAR
调试
查看网卡信息
ifconfig
配置ip
sudo ifconfig {{gateway_name}} 192.168.1.100
测试连接
ping 192.168.1.201
配置launch文件(检查IP与端口)
vim .../xxx.launch
运行launch
roslaunch {{package_name}} xxx.launch
运行rviz可视化结果
roscore
rosrun rviz rviz
配置rviz
- Fixed Frame //通过rostopic echo指令获得
- 添加Topic:PointCloud2
常用指令
sudo wireshark
rostopic hz {{topic_name}}
rostopic echo {{topic_name}} --noarr