Skip to content

Latest commit

 

History

History
executable file
·
98 lines (72 loc) · 2.88 KB

README.md

File metadata and controls

executable file
·
98 lines (72 loc) · 2.88 KB

Traditional Stereo ROS

Traditional Stereo matching (not machine learning based) and depth map calculation = NOTE that images might need to be scaled down to enable "real-time" performance.

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.

Prerequisites

What things you need to install the software and how to install them

1) ROS Noetic

2) Pull master version of cares_msgs
    a) cd ~/catkin_ws/src
    b) git clone https://github.com/UoA-CARES/cares_msgs.git

3) Compile both libraries
    a) cd ~/catkin_ws
    b) catkin_make

Installing

A step by step series of examples that tell you how to get a development env running

Clone the package into the catkin directory you are using, presumed here to be "~/catkin_ws"

cd ~/catkin_ws/src
git clone https://github.com/maraatech/traditional_stereo_ros.git

Build the package with catkin_make in the source directory

cd ~/catkin_src/
catkin_make

Running the tests

Tests to be added

Applications

Stereo Depth

Subscribes to stereo image pairs with corresponding stereo camera information and constructs a 3D point cloud. A scale factor can be applied to scale the size of images being processed to improve real-time performance.

Subscribed Topics

Left and right image pairs being published by a stereo pair with stereo camera information. Topic names are all default names (left/right), they can be changed via setting parameters in the launch file and refer to topic names.

  • sensor_msgs/Image
    • left/image_rect_color
    • right/image_rect_color
  • cares_mgs/StereoCameraInfo
    • left_right/stereo_info

Published Topics

Publishes the point cloud and depth map generated by the stereo pairs + stereo information.

  • sensor_msgs/Image
    • stereo_pair/stereo/image_color
  • sensor_msgs/Image
    • stereo_pair/stereo/depth
  • sensor_msgs/CameraInfo
    • stereo_pair/stereo/camera_info
  • sensor_msgs/PointCloud2
    • stereo_pair/stereo/points
live_stereo_calibration.launch

Run using launch file as below.

roslaunch traditional_stereo_ros stereo_depth.launch
<?xml version="1.0"?>
<launch>
  <arg name="ns"          default="stereo_pair"/>
  <arg name="left_image"  default="left/image_rect_color"/>
  <arg name="right_image" default="right/image_rect_color"/>
  <arg name="stereo_info" default="stereo_info"/>
  <arg name="scale"       default="1.0"/>

  <node name="traditional_stereo" pkg="traditional_stereo_ros" type="traditional_stereo" output="screen" ns="$(arg ns)">
    <param name ="left_image"   value="$(arg left_image)"/>
    <param name ="right_image"  value="$(arg right_image)"/>
    <param name ="stereo_info"  value="$(arg stereo_info)"/>
    <param name ="scale"        value="$(arg scale)"/>
  </node>
</launch>