Stereo pair of 1394 cameras does't generate disparity
I am running a pair of Chameleon cameras, driver camera1394, Ubuntu 11.10, Ros Elctric. I am trying to build a stereo node because I need a disparity map. So far the cameras are working fine, I am able to calibrate each one individually, and to get rectified color images from each camera individually.
I've created a stereo.launch file:
<launch>
<group ns="stereo" >
<node pkg="camera1394" type="camera1394_node" name="left_node" >
<!-- left camera --> community wiki (karma is not awarded & many others can edit wiki post)
<param name="guid" value="00b09d01009a2931" />
<param name="video_mode" value="1280x960_mono8" />
<param name="iso_speed" value="400" />
<param name="frame_rate" value="7.5" />
<param name="bayer_pattern" value="gbrg" />
<param name="bayer_method" value="" />
<param name="camera_info_url" value="file:///home/robo/.ros/camera_info/00b09d01009a2931.yaml" />
<remap from="camera" to="left" />
</node>
<!-- right camera -->
<node pkg="camera1394" type="camera1394_node" name="right_node">
<param name="guid" value="00b09d01009a290e" />
<param name="video_mode" value="1280x960_mono8" />
<param name="iso_speed" value="400" />
<param name="frame_rate" value="7.5" />
<param name="bayer_pattern" value="gbrg" />
<param name="bayer_method" value="" />
<param name="camera_info_url" value="file:///home/robo/.ros/camera_info/00b09d01009a290e.yaml" />
<remap from="camera" to="right" />
</node>
<node pkg="stereo_image_proc" type="stereo_image_proc" respawn="false" name="stereo_image_proc" args="_approximate_sync:=True">
</node>
</group>
</launch>
and I'm trying to calibrate the stereo pair, however running something like:
rosrun camera_calibration cameracalibrator.py --approximate=0.1 --size 7x6 --square 0.035 right:=/stereo/right/image_raw left:=/stereo/left/image_raw left_camera:=/stereo/left right_camera:=/stereo/right
and I get:
Waiting for service /stereo/left/set_camera_info ... OK Waiting for service /stereo/right/set_camera_info ... OK
and the calibration window doesn't get displayed. I've try to increase the value of approximate, without any results. However running the calibration node for each left and right camera works and I was able to calibrate the left and right camera.
Stere_image_proc is running and I can display the /stereo/left/image_rect_color and /stereo/right/image_rect_color but I am unable to get the pointcloud or the disparity map. Running stereo_view gives me the following warning:
[ WARN] [1331133349.658131964]: [stereo_view] Low number of synchronized left/right/disparity triplets received.
Left images received: 448 (topic '/stereo/left/image_rect_color')
Right images received: 448 (topic '/stereo/right/image_rect_color')
Disparity images received: 0 (topic '/stereo/disparity')
Synchronized triplets: 0
Possible issues:
* stereo_image_proc is not running.
Does `rosnode info /stereo_view_1331133289570217803` show any connections?
* The cameras are not synchronized.
Try restarting stereo_view with parameter _approximate_sync:=True
* The network is too slow. One or more images are dropped from each triplet.
Try restarting stereo_view, increasing parameter 'queue_size' (currently 5)
So what am I missing here? I suspected that the disparity map cannot be generated because the lack of calibration as a stereo pair. Why am I unable to calibrate the stereo pair and why I don't get the disparity or pointcloud?
Thank you