Realsense에서 SLAM, visual odometry

로봇의 자기 위치 추정을 할 때 필요한 SLAM을 realsense로 실현한다.
Odometry는 로봇의 이동량을 다양한 방법으로 계산하는 수법.
SLAM은 주변 환경의 지도 작성과 로봇의 자기 위치를 추정하는 알고리즘.

환경


  • 우분투 18.04
  • ROS melodic
  • Intel realsense D415

  • 준비



    ROS와 Realsense 설치 방법은 이전에 썼습니다.
    htps : // 이 m/케이_도/있어 ms/c0387b7d277948451881

    Visual odometry, SLAM에 필요한 rtabmap( ㅡㅡㅡㅡ 로 s. 오 rg / r 타마 p_로 s ) 등의 패키지를 인스톨 한다.
    Realsense의 SLAM with D435i( htps : // 기주 b. 코 m / I L LE L SENSE / LE L 센 세로 s / u / S / M U th D435 ) 를 참고로 설치.
    사용하고 있는 것이 ROS melodcic이기 때문에 그 부분을 변경했다.
    sudo apt-get install ros-melodic-imu-filter-madgwick
    sudo apt-get install ros-melodic-rtabmap-ros
    sudo apt-get install ros-melodic-robot-localization
    

    SLAM 실행



    SLAM을 실행합니다.
    roslaunch realsense2_camera opensource_tracking.launch
    

    rtabmap에서 실행하는 방법도 있습니다.
    htps : // 이 m / k65c1 /

    Visual odometry만 한다.



    계산 자원이 적은 등 SLAM이 너무 무거울 경우는 visual odometry만 할 수 있다.
    이를 위해서는 launch file을 스스로 만들어 간다.
    *Launch file은 ROS의 노드를 정리해 시작하기 위한 파일.

    패키지 만들기



    우선은 패키지를 만든다.
    패키지는 이하의 커멘드로 작성할 수 있다.catkin_create_pkg [package名] [依存package名1] [依存package名2] …
    cd ~/catkin_ws/src
    catkin_create_pkt visual_odometry std_msgs rospy roscpp rtabmap
    

    * 의존 패키지는 위에서 충분하지만 요구 사항이 아닐 수도 있습니다.

    Launch file 만들기



    Launch file는 관례적으로 launch 디렉토리의 창조에 만든다.
    cd ~/catkin_ws/src/visual_odomety
    mkdir launch
    cd launch
    touch run_visual_odometry.launch
    

    run_visual_odometry.launch의 내용은 다음과 같다.
    <launch>
       <node pkg="rtabmap_ros" type="rgbd_odometry" name="visual_odometry" output="screen">
       <remap from="rgb/image"       to="/camera/color/image_raw"/>
       <remap from="depth/image"     to="/camera/depth/image_rect_raw"/>
       <remap from="rgb/camera_info" to="/camera/color/camera_info"/>
       <param name="frame_id"    type="string" value="camera_link"/>
       <param name="publish_tf"  type="bool"   value="false"/>
       </node>
    </launch>
    

    포인트는 publish_tf를 false로 만드는 곳.

    빌드


    cd ~/catkin_ws
    catkin_make 
    
    source devel/setup.bash
    

    실행



    Terminal 1 realsense를 시작합니다.
    roslaunch realsense2_camera rs_camera.launch
    

    Terminal 2 visual odometry를 시작합니다.
    roslaunch visual_odometry run_visual_odometry.launch
    

    Topic 확인



    Terminal 3
    rostopic list
    
    /rtabmap/odom 가 publish 되고 있는 것을 알 수 있다. !

    노드 확인
    rosgraph
    



    기타


  • 계산 자원이 적고 처리를 가볍게 하고 싶은 경우는 파라미터를 조정해 처리를 조금 가볍게 할 수도 있다
    h tp // 우우키. 로 s. 오 rg / r 타마 p_ 여 s / 쓰리 아 ls / 아 d
  • 좋은 웹페이지 즐겨찾기