在Intel nuc上配置D435i、运行VINS-Mono及问题记录

作者:神秘网友 发布时间:2020-09-23 10:34:19

在Intel nuc上配置D435i、运行VINS-Mono及问题记录

在Intel nuc上配置D435i、运行VINS-Mono及问题记录

参考网址:https://blog.csdn.net/weixin_44580210/article/details/89789416
问题1:
安装测试librealsense SDK 2.0的过程中,运行到这一步,sudo apt-get install librealsense2-dkms,弹出了一个蓝色窗口,好像是软件安全设置,原因可能跟UEFI引导项有关系,让设置了一个密码,我设置的是18822091613,之后按步骤安装,到最后一步,测试SDK:realsense-viewer时,打开的窗口里不显示d435i相机信息,如下图:
在Intel nuc上配置D435i、运行VINS-Mono及问题记录

因为整个安装过程只有上述那一步出现了问题,所以我猜可能是安装library时的问题,于是将其卸载sudo apt-get autoremove librealsense2-dkms,卸载完之后再打开SDK,realsense-viewer,发现竟然能显示相机了,之后我又多次试验,反复安装和卸载library,发现真的能影响相机的连接,具体的原因我现在还不清楚。

第一步:

参考网址:https://blog.csdn.net/jiangchuanhu/article/details/92795791
参考里面的第二部分:二、安装ROS Wrapper for Intel RealSense

.

如下

Create a catkin workspace

mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/src/

#Clone the latest Intel RealSense ROS into ‘catkin_ws/src/’

git clone https://github.com/IntelRealSense/realsense-ros.git
cd realsense-ros/
git checkout `git tag | sort -V | grep -P "^\d+\.\d+\.\d+" | tail -1`
cd ../..

Make sure all dependent ros packages are installed. You can check .travis.yml file for reference.

sudo apt install ros-kinetic-cv-bridge ros-kinetic-image-transport ros-kinetic-tf ros-kinetic-diagnostic-updater ros-kinetic-ddynamic-reconfigure
catkin_make -DCATKIN_ENABLE_TESTING=False -DCMAKE_BUILD_TYPE=Release
catkin_make install
echo source $(pwd)/devel/setup.bash >> ~/.bashrc
source ~/.bashrc

Step 4:检验是否能在ros使用realsense相机:

通过usb连接相机到电脑

sudo apt install ros-kinetic-rgbd-launch
roslaunch realsense2_camera rs_rgbd.launch

查看一下相机发布的topic

rostopic list

查看相机内参信息的两种方式

rostopic echo /camera/color/camera_info
rostopic echo /camera/aligned_depth_to_color/camera_info

再打开一个终端

rviz

此时并不能看到什么结果,左上角 Displays 中 Fixed Frame 选项中,下拉菜单选择 camera_link,这是主要到Global Status变成了绿色

点击该框中的Add -> 上方点击 By topic -> /depth_registered 下的 /points 下的/PointCloud2

点击该框中的Add -> 上方点击 By topic -> /color 下的 /image_raw 下的image

此时,d435i的配置已经完成,剩下的就是在VINS上跑,步骤如下
参考
https://blog.csdn.net/weixin_44580210/article/details/89789416这里面的第四步:

1、 修改realsense包里的rs_camera.launch文件

第一处,修改unite_imu_method如下,这里是让IMU的角速度和加速度作为一个topic输出

第二处,修改enable_sync参数为true,这里是开机相机和IMU的同步

2、修改VINS-Mono包里的realsense_color_config.yaml文件

第一处,修改订阅的topic

imu_topic: “/camera/imu”
image_topic: “/camera/color/image_raw”

第二处,修改相机内参,这里先再次打开运行realsesne包,然后可以通过如下命令获取相机内参

rostopic echo /camera/color/camera_info

第三处,IMU到相机的变换矩阵,这里我根据注释的提示修改成2

Extrinsic parameter between IMU and Camera.

estimate_extrinsic: 2 # 0 Have an accurate extrinsic parameters. We will trust the following imu^R_cam, imu^T_cam, don’t change it.
# 1 Have an initial guess about extrinsic parameters. We will optimize around your initial guess.
# 2 Don’t know anything about extrinsic parameters. You don’t need to give R,T. We will try to calibrate it. Do some rotation movement at beginning.
#If you choose 0 or 1, you should write down the following matrix.

第四处,IMU参数,这里我全部修改注释给的参数

#imu parameters The more accurate parameters you provide, the better performance
acc_n: 0.2 # accelerometer measurement noise standard deviation. #0.2
gyr_n: 0.05 # gyroscope measurement noise standard deviation. #0.05
acc_w: 0.02 # accelerometer bias random work noise standard deviation. #0.02
gyr_w: 4.0e-5 # gyroscope bias random work noise standard deviation. #4.0e-5
g_norm: 9.80 # gravity magnitude

第五处,是否需要在线估计同步时差,根据上述博主的建议这里选择不需要

#unsynchronization parameters
estimate_td: 0 # online estimate time offset between camera and imu
td: 0.000 # initial value of time offset. unit: s. readed image clock + td = real image clock (IMU clock)

第六处,相机曝光改成全局曝光

#rolling shutter parameters
rolling_shutter: 0 # 0: global shutter camera, 1: rolling shutter camera
rolling_shutter_tr: 0 # unit: s. rolling shutter read out time per frame (from data sheet).

  1. 打开摄像头,运行VINS-Mono
roslaunch realsense2_camera rs_camera.launch 
roslaunch vins_estimator realsense_color.launch 
roslaunch vins_estimator vins_rviz.launch

下一项 用d435i跑ORB-SLAM2
参考网址:https://blog.csdn.net/jiangchuanhu/article/details/92795791

在Intel nuc上配置D435i、运行VINS-Mono及问题记录相关教程

  1. Maven的IDea配置及Servlet的创建
  2. centos7配置rabbitmq服务
  3. 如何用裸机从零开始配置深度学习环境
  4. Mysql主主中Keepalived的配置
  5. 利用openswan配置×××服务
  6. rsyslog收集nginx日志配置
  7. Swagger配置
  8. Maven的IDEA配置和创建JavaWeb项目步骤