VINS-MONO Realsense d455运行记录
安装VINS-Mono#
创建工作空间#
mkdir -p ~/vins_mono_ws/src # 创建了第二层级的文件夹src,这是放ROS软件包的地方
cd ~/vins_mono_ws/src # 进入工作空间,catkin_make必须在工作空间这个路径上执行
catkin_init_workspace # 初始化src目录,生成的CMakeLists.txt为功能包编译配置
安装VINS-Mono#
cd ~/vins_mono_ws/src
git clone https://github.com/HKUST-Aerial-Robotics/VINS-Mono.git
cd ..
catkin_make -j8
source ~/catkin_ws/devel/setup.bash # 刷新坏境
OpenCV版本问题#
可以编译不同版本的cv_bridge::
https://blog.csdn.net/cym_hnu/article/details/130007829
使用Realsense d455运行#
https://blog.csdn.net/weixin_44580210/article/details/89789416#t4
修改realsense包里的rs_camera.launch文件#
我的路径是在:/opt/ros/noetic/share/realsense2_camera/launch
- 修改unite_imu_method如下,这里是让IMU的角速度和加速度作为一个topic输出
<arg name="unite_imu_method" default="copy"/>
- 修改enable_sync参数为true,这里是开机相机和IMU的同步
<arg name="enable_sync" default="true"/>
修改VINS-Mono包里的realsense_color_config.yaml文件#
- 修改订阅的topic
imu_topic: "/camera/imu"
image_topic: "/camera/color/image_raw"
- 相机内参,通过打开运行 realsense 包获取内参
roslaunch realsense2_camera rs_camera.launch # 运行realsense
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.
TODO: 因为在运行ORBSLAM3时进行过标定,但是结果不行,这里一会尝试一下使用标定的
- 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).
充分怀疑Realsense在ORBSLAM3上面出现问题是因为这个
运行#
roslaunch realsense2_camera rs_camera.launch
roslaunch vins_estimator realsense_color.launch
roslaunch vins_estimator vins_rviz.launch
我重命名了一些文件,我的命令应该是:
roslaunch realsense2_camera rs_camera.launch
roslaunch vins_estimator realsense_color_d455.launch
roslaunch vins_estimator vins_rviz.launch
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】