一、使用mid360配置lio-sam
1.首先从GitHub - nkymzsy/LIO-SAM-MID360 at Livox-ros-driver2 下载能支持mid360的lio-sam版本到 ws_livox/src中,直接编译,就可以成功。
2.使用
roslaunch lio_sam run6axis.launch
以及播之前我才记得Mid360的包,就可以到结果。
最终可以重建出来了三维场景,但是在重建过程中,一卡一卡的,不知道是啥问题。
二、point-lio
下载并编译point-lio
cd src
git clone https://github.com/hku-mars/Point-LIO.git
cd ..
catkin_make
src/config 文件夹下添加的 mid360.yaml 文件配置:
common:lid_topic: "/livox/lidar" imu_topic: "/livox/imu" con_frame: false # true: if you need to combine several LiDAR frames into onecon_frame_num: 1 # the number of frames combinedcut_frame: false # true: if you need to cut one LiDAR frame into several subframescut_frame_time_interval: 0.1 # should be integral fraction of 1 / LiDAR frequencytime_lag_imu_to_lidar: 0.0 # Time offset between LiDAR and IMU calibrated by other algorithms, e.g., LI-Init (find in Readme)# the timesample of IMU is transferred from the current timeline to LiDAR's timeline by subtracting this valuepreprocess:lidar_type: 1 scan_line: 4timestamp_unit: 1 # the unit of time/t field in the PointCloud2 rostopic: 0-second, 1-milisecond, 2-microsecond, 3-nanosecond.blind: 0.5 mapping:imu_en: truestart_in_aggressive_motion: false # if true, a preknown gravity should be provided in following gravity_initextrinsic_est_en: false # for aggressive motion, set this variable falseimu_time_inte: 0.005 # = 1 / frequency of IMUsatu_acc: 3.0 # the saturation value of IMU's acceleration. not related to the unitssatu_gyro: 35 # the saturation value of IMU's angular velocity. not related to the unitsacc_norm: 1.0 # 1.0 for g as unit, 9.81 for m/s^2 as unit of the IMU's accelerationlidar_meas_cov: 0.001 # 0.001; 0.01acc_cov_output: 500gyr_cov_output: 1000 b_acc_cov: 0.0001 b_gyr_cov: 0.0001 imu_meas_acc_cov: 0.1 #0.1 # 0.1imu_meas_omg_cov: 0.1 #0.01 # 0.1gyr_cov_input: 0.01 # for IMU as input modelacc_cov_input: 0.1 # for IMU as input modelplane_thr: 0.1 # 0.05, the threshold for plane criteria, the smaller, the flatter a planematch_s: 81fov_degree: 360 det_range: 100gravity_align: true # true to align the z axis of world frame with the direction of gravity, and the gravity direction should be specified belowgravity: [0.0, 0.0, -9.810] # [0.0, 9.810, 0.0] # gravity to be alignedgravity_init: [0.0, 0.0, -9.810] # [0.0, 9.810, 0.0] # # preknown gravity in the first IMU body frame, use when imu_en is false or start from a non-stationary stateextrinsic_T: [ -0.011, -0.02329, 0.04412 ]extrinsic_R: [ 1, 0, 0,0, 1, 0,0, 0, 1 ]odometry: publish_odometry_without_downsample: falsepublish:path_en: true # false: close the path outputscan_publish_en: true # false: close all the point cloud outputscan_bodyframe_pub_en: false # true: output the point cloud scans in IMU-body-framepcd_save:pcd_save_en: falseinterval: -1 # how many LiDAR frames saved in each pcd file; # -1 : all frames will be saved in ONE pcd file, may lead to memory crash when having too much frames.
src/launch 文件夹下添加 mapping_mid360.launch 文件:
<launch>
<!-- Launch file for Livox AVIA LiDAR --><arg name="rviz" default="true" /><node pkg="point_lio" type="pointlio_mapping" name="laserMapping" output="screen"><rosparam command="load" file="$(find point_lio)/config/mid360.yaml" /><param name="use_imu_as_input" type="bool" value="1"/> <!--change to 1 to use IMU as input of Point-LIO--><param name="prop_at_freq_of_imu" type="bool" value="1"/><param name="check_satu" type="bool" value="1"/><param name="init_map_size" type="int" value="10"/><param name="point_filter_num" type="int" value="1"/> <!--4, 3--> <param name="space_down_sample" type="bool" value="1" /> <param name="filter_size_surf" type="double" value="0.3" /> <!--0.5, 0.3, 0.2, 0.15, 0.1--> <param name="filter_size_map" type="double" value="0.2" /> <!--0.5, 0.3, 0.15, 0.1--><param name="cube_side_length" type="double" value="2000" /> <!--1000--><param name="runtime_pos_log_enable" type="bool" value="0" /> <!--1--></node><group if="$(arg rviz)"><node launch-prefix="nice" pkg="rviz" type="rviz" name="rviz" args="-d $(find point_lio)/rviz_cfg/loam_livox.rviz" /></group>launch-prefix="gdb -ex run --args"</launch>
最后用mid360采集的数据集,得到重建的结果:
三、faster-lio
Ubuntu18.04 Faster_lio 环境搭建与运行全过程记录_在ubuntu18.04上安装以及运行faster-lio-CSDN博客
由于要把gcc升级到版本9,害怕升级后原有的代码会出现错误,因此暂时这个先不做实验了。也先不安装和配置了。