分享

ORB

 谢兴l4nztpvbdk 2017-07-18

ORB_SLAM之双目

手里有个便宜的双目摄像头,打算用来试试orb_slam,到时候直接架上就可以跑了。

先在pc上试试(ubuntu 14.04 LTS)。

在正式使用之前记得把ORB_SLAM加到ROS的环境变量中去。

export ROS_PACKAGE_PATH=${ROS_PACKAGE_PATH}:PATH_TO_PARENT_OF_ORB_SLAM

然后usb摄像头需要用到usb或者uvc,不管那么多,都装装装。

cd ~/catkin_ws/src
git clone https://github.com/bosch-ros-pkg/usb_cam.git
cd .. 
catkin_make  

cd ~/catkin_ws/src
git clone https://github.com/bosch-ros-pkg/uvc_camera.git
cd .. 
catkin_make 

然后用rospack list查看一下装好没

然后是读取摄像头,这里采用的usb_cam,废话不多说,直接上lanunch(我的lanunch直接写到usb_cam下的lanunch下的)。

<launch>
  <group ns="camera">
      <node name="left" pkg="usb_cam" type="usb_cam_node" output="screen" >
        <param name="video_device" value="/dev/video1" />
        <param name="image_width" value="320" />
        <param name="image_height" value="240" />
        <param name="pixel_format" value="yuyv" />
        <param name="camera_frame_id" value="left" />
        <param name="io_method" value="mmap"/>
      </node>
      <node name="right" pkg="usb_cam" type="usb_cam_node" output="screen" >
        <param name="video_device" value="/dev/video2" />
        <param name="image_width" value="320" />
        <param name="image_height" value="240" />
        <param name="pixel_format" value="yuyv" />
        <param name="camera_frame_id" value="right" />
        <param name="io_method" value="mmap"/>
      </node>
  </group> 
  <node name="image_view1" pkg="image_view" type="image_view" respawn="false" output="screen">
    <remap from="image" to="/camera/left/image_raw"/>
    <param name="autosize" value="true" />
  </node>
  <node name="image_view2" pkg="image_view" type="image_view" respawn="false" output="screen">
    <remap from="image" to="/camera/right/image_raw"/>
    <param name="autosize" value="true" />
  </node>

<node pkg="rviz" type="rviz" name="rviz" args="-d $(find ORB_SLAM2)/Data/rviz.rviz" output="log">
   </node>

<node pkg="ORB_SLAM2" type="ORB_SLAM2" name="ORB_SLAM2"  args="Data/ORBvoc.txt Data/Settings.yaml" cwd="node" output="screen">
   </node>

</launch>

因为小本2.0的接口带宽有限这里只能暂时牺牲像素大小了。将格式由yuyv换成mjpeg后闪得厉害,暂时不知道怎么回事。

最后分别在两个终端运行如下命令:

roslaunch ExampleGroovyOrNewer2.launch

rosrun ORB_SLAM2 Stereo /home/qin/Documents/ORB_SLAM2/Vocabulary/ORBvoc.txt /home/qin/Documents/ORB_SLAM2/Examples/Stereo/KITTI00-02.yaml /home/qin/Documents/ORB_SLAM2/Examples/Stereo/EuRoC.yaml 

因为还没有标定和校正,效果有些掺不忍睹,后期补上标定和校正。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多