Advertisement

LIO-SAM配置运行

阅读量:

版本:Ubuntu16.04+kinetic

Dependency

复制代码
        1. sudo apt-get install -y ros-kinetic-navigation

    
        2. sudo apt-get install -y ros-kinetic-robot-localization
    
        3. sudo apt-get install -y ros-kinetic-robot-state-publisher
复制代码
        1. wget -O ~/Downloads/gtsam.zip https://github.com/borglab/gtsam/archive/4.0.2.zip

    
        2. cd ~/Downloads/ && unzip gtsam.zip -d ~/Downloads/
    
        3. cd ~/Downloads/gtsam-4.0.2/
    
        4. mkdir build && cd build
    
        5. cmake -DGTSAM_BUILD_WITH_MARCH_NATIVE=OFF ..
    
        6. sudo make install -j8

Install

Use the following commands to download and compile the package.

复制代码
 cd ~/catkin_ws/src

    
 git clone https://github.com/TixiaoShan/LIO-SAM.git
    
 cd ..
    
 catkin_make

安装完成后必须进行文件配置才能正常运行。特别强调imu与激光雷达的坐标系关系需深入理解

参考如下:https://zhuanlan.zhihu.com/p/171589473

复制代码
  Eigen::Vector3d acc(imu_in.linear_acceleration.x, imu_in.linear_acceleration.y, imu_in.linear_acceleration.z);

    
     acc = extRot * acc;
    
     imu_out.linear_acceleration.x = acc.x();
    
     imu_out.linear_acceleration.y = acc.y();
    
     imu_out.linear_acceleration.z = acc.z();
    
     // rotate gyroscope
    
     Eigen::Vector3d gyr(imu_in.angular_velocity.x, imu_in.angular_velocity.y, imu_in.angular_velocity.z);
    
     gyr = extRot * gyr;
    
     imu_out.angular_velocity.x = gyr.x();
    
     imu_out.angular_velocity.y = gyr.y();
    
     imu_out.angular_velocity.z = gyr.z();
    
     // rotate roll pitch yaw
    
     Eigen::Quaterniond q_from(imu_in.orientation.w, imu_in.orientation.x, imu_in.orientation.y, imu_in.orientation.z);
    
     Eigen::Quaterniond q_final = q_from * extQRPY;
    
     imu_out.orientation.x = q_final.x();
    
     imu_out.orientation.y = q_final.y();
    
     imu_out.orientation.z = q_final.z();
    
     imu_out.orientation.w = q_final.w();

全部评论 (0)

还没有任何评论哟~