0
$\begingroup$

Rosanswers logo

I wanted to use my Kinect Camera with a stereo vision node which estimates visual Odometry. The package is viso2_ros link text . I use openni_launcher package to get Kinect data. According to Openni_launch package's documentation link text i can use kinect data for stereo nodes(under IR projector paragraph in above link( Fuerte Tab))..

Now the problem is that what should i take as left camera and what as right camera..? And also accordingly what input images..

I have tried various frames but i always get.."[ WARN] [1358249627.907026303]: Visual Odometer got lost!"


Originally posted by Karan on ROS Answers with karma: 263 on 2013-01-15

Post score: 1

$\endgroup$

1 Answer 1

0
$\begingroup$

Rosanswers logo

Unfortunately viso2_ros does not support RGBD cameras (yet). The input for the viso2_ros stereo node must be two images from left and right camera.

The underlying library libviso2 would have to be modified a lot to support it.

Up to now there exist interfaces for mono odometry and for stereo odometry.

To support RGBD odometry, one would have to create a similar interface for image+depth input. The math would be the same as for stereo odometer but the matcher would have to be extended. You are very welcome to add this feature!

Another option would be to use the mono odometer of viso2_ros (with all its drawbacks) using just the RGB camera or use other packages that are especially designed for RGBD cameras, e.g. RGBDSLAM.

EDIT:

If you are looking for an RGBD odometry, fovis was especially designed to work with the Kinect. Unfortunately there is no "official" ROS wrapper for that library (yet), but it should be simple to write one.

EDIT2: We just released fovis_ros, a wrapper for the above mentioned library. This one works with stereo cameras as well as RGBD cameras such as the Kinect.


Originally posted by Stephan with karma: 1924 on 2013-01-15

This answer was ACCEPTED on the original site

Post score: 5


Original comments

Comment by Karan on 2013-01-15:
According to openni_launch documentation i can use CameraInfo of rgb/depth/Ir frames for stereo. I can change that in stereo_processor.cpp file in viso2_ros so that it subscribes to correct topics.... What is the problem because of which the two input images do not work with viso2_ros package ??

Comment by Karan on 2013-01-15:
Also what can i do to add the feature...??

Comment by Stephan on 2013-01-15:
The node is not the problem, it is the underlying library that lacks support for RGBD. I modified the answer to clarify this.

Comment by Karan on 2013-01-15:
Ok so if RGBD wont work... Can rgb mono image and ir mono image work...?? Also there is disparity image in topics being published by openni_launch..can that be of some use??

Comment by Stephan on 2013-01-15:
The stereo odometer tries to match like this: current left image -> current right image -> previous right image -> previous left image -> current left image. Taking images from different modalities for left and right image make no sense and would not work. Please read the referenced paper!

Comment by Karan on 2013-01-15:
In what other ways can i get visual odometry for Kinect..?

Comment by mruniverse on 2015-11-07:
@stephan will ur package work in ros indigo?

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.