Skip to content

Traditional Stereo matching (not machine learning based) and depth map calculation using the existing ROS infrastructure. Note that this system was intended to work with BlackFLY cameras and that images might be scaled down to enable "real-time" performance.

Notifications You must be signed in to change notification settings

maraatech/traditional_stereo_ros

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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>

About

Traditional Stereo matching (not machine learning based) and depth map calculation using the existing ROS infrastructure. Note that this system was intended to work with BlackFLY cameras and that images might be scaled down to enable "real-time" performance.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published