一、ROS下安装环境

1、按照官方指导第一步,但并未成功配置,也不知道在哪make

wget https://raw.githubusercontent.com/oroca/oroca-ros-pkg/master/ros_install.sh && \
chmod 755 ./ros_install.sh && bash ./ros_install.sh catkin_ws kinetic

2、然后选择自己下载编译源码

git clone https://github.com/slightech/MYNT-EYE-S-SDK
cd <SDK>
make ros

会自动运行

make init
make install
make samples
make tools

运行完,配置成功

3、测试,试试samples

make samples
./samples/_output/bin/api/camera_a

二、相机测试、标定参数获取

1、测试相机

cd <sdk>
make ros   //仅第一次需要
source wrappers/ros/devel/setup.bash
roslaunch mynt_eye_ros_wrapper mynteye.launch     // 打开摄像头,但默认不显示图像
roslaunch mynt_eye_ros_wrapper display.launch    //也可以运行这个节点,会打开 RViz 显示图像

2、获得当前工作设备的图像校准参数与imu校准参数:

cd <sdk>
./samples/_output/bin/tutorials/get_img_params     //获取相机标定参数
./samples/_output/bin/tutorials/get_imu_params    //获取IMU标定参数

3、安装vins并建立启动文件
vins源码:https://github.com/HKUST-Aerial-Robotics/VINS-Mono

    cd ~/ws_vins/src   //your vins_workspacegit clone https://github.com/HKUST-Aerial-Robotics/VINS-Mono.gitcd ../catkin_makesource ~/ws_vins/devel/setup.bash

TIP:如果报错,需要看是否缺少ceres库
1、打开终端 git clone https://github.com/ceres-solver/ceres-solver.git

2、把ceres库拷贝下来。

3、安装依赖项和编译工具:

3.1、 CMake安装:

sudo apt-get install cmake

3.2、 google-glog + gflags

sudo apt-get install libgoogle-glog-dev

3.3、 BLAS & LAPACK

sudo apt-get install libatlas-base-dev

3.4、 Eigen3

sudo apt-get install libeigen3-dev

3.5、 SuiteSparse and CXSparse (optional)

sudo apt-get install libsuitesparse-dev

4、编译ceres库:在终端打开进入ceres-solver

mkdir build
cd build
cmake ..
make
sudo make install

这样就安装到系统的默认地方。

三、建立启动文件

第一步:在~/ws_vins/src/VINS-Mono/vins_estimator/launch下新建一个mynteye.launch文件。
第二步:在/home/fish/ws_vins/src/VINS-Mono/config文件下建立一个名为mynteye的文件夹,并新建mynteye_config.yaml文件。
两个文件内容分别如下:
mynteye.launch :

<node name="feature_tracker" pkg="feature_tracker" type="feature_tracker" output="log"><param name="config_file" type="string" value="$(arg config_path)" /><param name="vins_folder" type="string" value="$(arg vins_path)" />
</node><node name="vins_estimator" pkg="vins_estimator" type="vins_estimator" output="screen"><param name="config_file" type="string" value="$(arg config_path)" /><param name="vins_folder" type="string" value="$(arg vins_path)" />
</node><node name="pose_graph" pkg="pose_graph" type="pose_graph" output="screen"><param name="config_file" type="string" value="$(arg config_path)" /><param name="visualization_shift_x" type="int" value="0" /><param name="visualization_shift_y" type="int" value="0" /><param name="skip_cnt" type="int" value="0" /><param name="skip_dis" type="double" value="0" />
</node>

mynteye_config.yaml :
注意将部分参数更换(如topic和相机、imu参数)

%YAML:1.0#common parameters
imu_topic: "/mynteye/imu/data_raw"  #换成你的IMU的话题
image_topic: "/mynteye/left/image_raw"  #换成你的相机的话题
output_path: "/home/fish/ws_vins/src/VINS-Mono/config/output_path/" #换成你的路径#camera calibration
model_type: PINHOLE
camera_name: camera
image_width: 752   #换成你的相机参数(step2中获取的参数)
image_height: 480  #换成你的相机参数
distortion_parameters:   #换成你的畸变参数k1: -0.266278k2: 0.0527945p1: -0.000182013p2: 0.000422317
projection_parameters:   #换成你的相机内参fx: 365.75fy: 373.236cx: 357.402cy: 241.418# Extrinsic parameter between IMU and Camera.
estimate_extrinsic: 0   # 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.
#Rotation from camera frame to imu frame, imu^R_cam
extrinsicRotation: !!opencv-matrixrows: 3cols: 3dt: ddata: [-0.00646620000000000, -0.99994994000000004, -0.00763565000000000, 0.99997908999999996, -0.00646566000000000, -0.00009558000000000, 0.00004620000000000, -0.00763611000000000, 0.99997084000000003]
#Translation from camera frame to imu frame, imu^T_cam
extrinsicTranslation: !!opencv-matrixrows: 3cols: 1dt: ddata: [0.00533646000000000, -0.04302922000000000, 0.02303124000000000]#feature traker paprameters
max_cnt: 150            # max feature number in feature tracking
min_dist: 30            # min distance between two features
freq: 10                # frequence (Hz) of publish tracking result. At least 10Hz for good estimation. If set 0, the frequence will be same as raw image
F_threshold: 1.0        # ransac threshold (pixel)
show_track: 1           # publish tracking image as topic
equalize: 1             # if image is too dark or light, trun on equalize to find enough features
fisheye: 0              # if using fisheye, trun on it. A circle mask will be loaded to remove edge noisy points#optimization parameters
max_solver_time: 0.04  # max solver itration time (ms), to guarantee real time
max_num_iterations: 8   # max solver itrations, to guarantee real time
keyframe_parallax: 10.0 # keyframe selection threshold (pixel)#imu parameters       The more accurate parameters you provide, the better performance
acc_n: 0.08          # accelerometer measurement noise standard deviation. #0.2   0.04
gyr_n: 0.004         # gyroscope measurement noise standard deviation.     #0.05  0.004
acc_w: 0.00004         # accelerometer bias random work noise standard deviation.  #0.02
gyr_w: 2.0e-6       # gyroscope bias random work noise standard deviation.     #4.0e-5
g_norm: 9.81007     # gravity magnitude#loop closure parameters
loop_closure: 1                    # start loop closure
load_previous_pose_graph: 0        # load and reuse previous pose graph; load from 'pose_graph_save_path'
fast_relocalization: 0             # useful in real-time and large project
pose_graph_save_path: "/home/fish/ws_vins/src/VINS-Mono/config/output_path/" # #换成你的路径#unsynchronization parameters
estimate_td: 0                      # online estimate time offset between camera and imu
td: 0.0                             # 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). #visualization parameters
save_image: 1                   # save image in pose graph for visualization prupose; you can close this function by setting 0
visualize_imu_forward: 0        # output imu forward propogation to achieve low latency and high frequence results
visualize_camera_size: 0.4      # size of camera marker in RVIZ

四、开启相机节点并运行vins

1、 启动相机

cd <sdk>
source ./wrappers/ros/devel/setup.bash
roslaunch mynt_eye_ros_wrapper mynteye.launch

2、启动vins

cd ws_vins     //your vins_workspace
source devel/setup.bash
roslaunch vins_estimator mynteye.launch

3、启动可视化环境

cd ws_vins     //your vins_workspace
source devel/setup.bash
roslaunch vins_estimator vins_rviz.launch

完成。

小觅摄像头 VINS-MONO安装相关推荐

  1. 小觅智能 | VINS 学习笔记

    摘自:https://zhuanlan.zhihu.com/p/48728586 小觅智能 | VINS 学习笔记(持续更新中) 小觅智能 专注立体视觉技术整体解决方案,网站 http://mynta ...

  2. 小觅摄像头Opencv处理

    小觅摄像头Opencv处理 首先下载opencv-python的函数库 将伪RGB图像转化为灰度图像 灰度图像中存在两个通道,利用通道分割获取图像数据 源码:https://download.csdn ...

  3. vins中imu融合_小觅智能 | VINS 学习笔记(持续更新中)

    VINS 基本介绍 VINS-Mono 和 VINS-Mobile 是香港科技大学沈劭劼老师开源的单目视觉惯导 SLAM 方案.2017年发表于<IEEE Transactions on Rob ...

  4. vins安装及小觅深度版运行

    本小白在对VINS进行实践的过程中,走了许多的弯路,现在将全部过程都记下来,希望能对大家有所帮助 VINS安装 vins源代码地址 ros ros-csdn sudo sh -c 'echo &quo ...

  5. 小觅双目摄像头固件升级失败的解决办法

    原链接: https://community.bwbot.org/topic/656 开发测试平台:小强机器人 小觅官方没有提供固件烧录工具,只提供了固件升级工具,但是他们方案实际是一种通用方案,找到 ...

  6. MSCKF_VIO作者就是用小觅双目摄像头跑的

    https://gitee.com/maxibooksiyi/msckf_vio_GPS 我在youtube上也看到有人用小觅摄像头跑MSCKF_VIO 还有小觅自己也写过用小觅摄像头跑MSCKF h ...

  7. 安装小觅相机(1030)驱动以及如何将Ubuntu18.04的内核降到4.15.0版本

    小觅相机驱动安装以及可能出现的问题 小觅相机的驱动安装非常的简单,因为他们的服务非常的好,还有非常完善的官网. 话不多说,小觅驱动安装链接如下: https://mynt-eye-s-sdk.read ...

  8. 小觅相机深度版运行Vins-mono

    首先声明,本人自己也是slam新手,此贴只因为自己在用小觅相机深度版运行Vins的时候太过无助,所以想写个自己运行出结果的完整过程,仅供参考,如有不对之处,还望不吝指教. 我的电脑是Ubuntu16. ...

  9. 小觅相机 相机以及IMU外参标定

    最近在使用IMU和双目相机进行相关VIO算法的测试,首先要对IMU和相机的外参进行标定,本文主要是对标定过程做一个全面的记录,方便总结和讨论.测试中采用的是小觅双目模组标准版S1030-IR-120/ ...

  10. 通过opencv (python) 获得mynteye小觅双目图像

    通过opencv (python) 获得mynteye小觅双目图像 注:本文仅针对小觅摄像头标准入门版 利用opencv调用摄像头 这个比较简单,随处可见,这里直接上代码. # -*- coding: ...

最新文章

  1. phpMyAdmin操作之改管理员密码
  2. UIPageControl
  3. web服务器的文档根目录,web服务器根目录中
  4. BZOJ 4070 [Apio2015]雅加达的摩天楼 ——分块 SPFA
  5. 10余万行C代码开源之后,我被震惊了。。。
  6. [洛谷2397]yyy loves Maths VI
  7. (54)FPGA基础编码D触发器(三)
  8. 爱上一个人的七个预兆
  9. python itertools卡死_Python使用itertools模块来解决算法问题,python
  10. python sqlite row
  11. 处理 ODBC, OLE DB, 和 SQL Server .NET Provider 中的异常
  12. PDFDOC365工具箱
  13. 【材料课堂】锂电池基础
  14. windows电脑提醒功能,定时打卡
  15. 怎么恢复删除的文件?试试这几个方法
  16. ES2016/ES2017/ES2018/ES2019 新语法
  17. Linux学习笔记:
  18. RTL88X2BU网卡驱动失效,重新安装
  19. 一物一码(7): 【一物一码营销场景之促销】
  20. 电力电子技术笔记(5)——其它新型电力电子器件、功率集成电路

热门文章

  1. 第十六周助教工作总结——NWNU李泓毅
  2. 传微软iPod杀手Zune今年秋季上市 定价299美元
  3. 在线LOGO的设计工具推荐
  4. 微信跳转手机浏览器实现
  5. C# 改变鼠标样式
  6. mysql数据库如何查看表空间_MYSQL:查看的数据库表空间
  7. 双代号网络图节点编号原则_网络绘图进行的节点编号时原则
  8. 赢在中国 - 史玉柱经典语录(转载)
  9. 汇编语言-字符串大写转小写,小写转大写
  10. php清除垃圾代码,批处理清理系统垃圾代码,简单快速实用(适用于xp win7)