What you're seeing makes sense. Though your disparity "looks good", I am sure you don't have valid disparity values at
each pixel in the disparity image. None of us do :). What you are seeing as the output of rostopic echo is the list of
> I do not really understand why, but I looked to the TF tutorial, added a
> few things to my program and rviz do not complain anymore. To recap, I
> now have a disparity map, rviz do not complain about a fixed_frame, but
> my goal is to get the points cloud. Rviz warns :
> [ WARN] 1274372115.122808000: TF_OLD_DATA ignoring data from the past
> for frame /test at time 16566 according to authority /camera_sync
> Possible reasons are listed at
>
>
>
> $rostopic echo /stereo/points | less :
> header:
> seq: 937
> stamp: 18596000000000
> frame_id: fixed_frame
> points: [
> x: 0.0
> y: 0.0
> z: nan,
> x: 0.0
> y: 0.0
> z: nan,
> x: 0.0
> y: 0.0
> z: nan,
> x: 0.0
> y: 0.0
> z: nan,
> x: 0.0
> y: 0.0
> z: nan,
> x: 0.0
>
> I don't get it, since my disparity map looks good. I can send you a
> screenshot of the map if you need it.
> So, why is the processing not sending the good coords ? I did not
> calibrate my cameras since I did not find a way to do it for stereo
> vision, is there a problem with that ?
>
> Thanks.
>
> Le mercredi 19 mai 2010 à 10:38 -0700, Josh Faust a écrit :
>> If you don't have a TF transform tree (http://ros.org/wiki/tf), the
>> fixed frame needs to match the frame you've set. You also need to set
>> the timestamp in the header.
>>
>> msg.header.stamp = ros::Time::now();
>>
>> Josh
>>
>> On Wed, May 19, 2010 at 7:53 AM, Sacha Aury<sacha@shadowrobot.com>
>> wrote:
>> Thanks for your help. I now have a single node synchronizing
>> my two
>> cameras (image and infos). It works with the stereo_view and I
>> get the
>> disparity map, which I am configuring. My question is now
>> about rviz,
>> which I've never used. It seems to need a fixed frame to
>> display my 3D
>> cloud points. I tried to set a frame_id in my synchronization
>> node
>> (before broadcasting it to stereo_image_proc), but it does not
>> work,
>> rviz still can't get any fixed frame.
>>
>> How can I do that ? I think I am close to the result, but I
>> can't see
>> it !
>>
>> Le mardi 18 mai 2010 à 09:07 -0700, Blaise Gassend a écrit :
>>
>> > Hi Sacha,
>> >
>> > stereo_image_proc doesn't care about when your message was
>> published, it
>> > just cares about the timestamp in the message. So your
>> republishing node
>> > needs to set the timestamp, both in the image topic and in
>> the
>> > camera_info topic.
>> >
>> > Blaise
>> >
>> > On Tue, 2010-05-18 at 16:29 +0100, Sacha Aury wrote:
>> > > I think that having a hardware solution is a bit overkill
>> for my
>> > > problem. So I tried to write a node which collected image
>> messages from
>> > > my two cameras and which published both message every x
>> seconds,
>> > > typically 1/2. And when I am using
>> image_pipeline/stereo_image_proc, I
>> > > got messages of that kind :
>> > >
>> > > [ WARN] 1274196325.866264000: [stereo_image_proc] Low
>> number of
>> > > synchronized left/right image pairs received.
>> > > Left images received: 831
>> > > Right images received: 831
>> > > Synchronized pairs: 0
>> > > Possible issues:
>> > > * The cameras are not synchronized.
>> > > * The network is too slow. For each synchronized image
>> pair, at most 1
>> > > is getting through.
>> > >
>> > > I don't know what I could do more, since the
>> synchronisation should be
>> > > done by a TimeSynchronizer in the stereo_image_proc class.
>> Could it be
>> > > posible to cheat on the timestamps in any way ?
>> > >
>> > > Thanks, and sorry for the double post, I made a mistake at
>> first.
>> > >
>> > > Le lundi 17 mai 2010 à 07:53 -0700, Gary Bradski a écrit :
>> > > > What level do you want synchronization on? Within
>> framerate (both
>> > > > frames happen randomly but within 1/30 of a second of
>> each other) or
>> > > > exact frame synchronization? The first is achievable,
>> the second needs
>> > > > extra hardware.
>> > > >
>> > > > At most, ROS can get you timestamps to align to, but to
>> get actual
>> > > > simultaneous frames, you'll need a triggering signal in
>> hardware such
>> > > > as a wire between 2 cameras (that allow for this). Some
>> 1394 cameras
>> > > > may allow triggering over the 1394 bus and then you'll
>> only have the
>> > > > problem of getting both buses to trigger at the same
>> time ... which
>> > > > may be approximately possible, most of the time ... on
>> average.
>> > > > Depends on the driver and the 1394 port.
>> > > >
>> > > > I've seen an automotive 1394 article (not ROS related)
>> where they have
>> > > > about 10 cameras. The cameras run the cameras at very
>> high framerates
>> > > > and then they do timestamp synchronization which allows
>> fairly
>> > > > synchronous alignment of multiple with no extra
>> hardware.
>> > > >
>> > > > Gary
>> > > >
>> > > > On Mon, May 17, 2010 at 5:23 AM, Sacha Aury
>> <sacha@shadowrobot.com>
>> > > > wrote:
>> > > > Hi,
>> > > >
>> > > > I am trying to make a stereo camera acquisition
>> using ROS with
>> > > > the
>> > > > cameradc1394 driver and the stereo_proc package.
>> I've got a
>> > > > separate
>> > > > computer to stream the image_raw from my two
>> cameras. The
>> > > > stream works,
>> > > > but when I launch stereo_image_proc, it seems
>> that my two
>> > > > cameras are
>> > > > not synchronized :
>> > > >
>> > > > [ WARN] 1274098675.074074000:
>> [stereo_image_proc] Low number
>> > > > of
>> > > > synchronized left/right image pairs received.
>> > > > Left images received: 3079
>> > > > Right images received: 3076
>> > > > Synchronized pairs: 0
>> > > > Possible issues:
>> > > > * The cameras are not synchronized.
>> > > > * The network is too slow. For each
>> synchronized image
>> > > > pair, at most 1
>> > > > is getting through.
>> > > >
>> > > > Here is my launch file :
>> > > >
>> > > > <!-- startstream.launch -->
>> > > > <launch>
>> > > > <param name="display" type="int"
>> value="0"/>
>> > > > <param name="framerate" type="double"
>> value="15"/>
>> > > > <param name="mode"
>> value="MODE_320x240_YUV422"/>
>> > > >
>> > > > <node name="camera_left" pkg="cameradc1394"
>> > > > type="cameradc1394"
>> > > > respawn="true">
>> > > > <param name="prefix" type="string"
>> > > > value="/stereo/left/"/>
>> > > > <param name="cameraindex" type="int"
>> value="0"/>
>> > > > </node>
>> > > >
>> > > >
>> > > > <node name="camera_right" pkg="cameradc1394"
>> > > > type="cameradc1394"
>> > > > respawn="true">
>> > > > <param name="prefix" type="string"
>> > > > value="/stereo/right/"/>
>> > > > <param name="cameraindex" type="int"
>> value="1"/>
>> > > > </node>
>> > > >
>> > > > </launch>
>> > > >
>> > > > Is there any specific way to make the two
>> cameras
>> > > > synchronize ?
>> > > >
>> > > > I am following that tutorial :
>> > > >
>> > > > http://www.ros.org/wiki/stereo_image_proc
>> > > >
>> > > > Thank you for any help.
>> > > >
>> > > > Sacha
>> > > >
>> > > >
>> > > > _______________________________________________
>> > > > ros-users mailing list
>> > > > ros-users@code.ros.org
>> > > > https://code.ros.org/mailman/listinfo/ros-users
>> > > >
>> > > > _______________________________________________
>> > > > ros-users mailing list
>> > > > ros-users@code.ros.org
>> > > > https://code.ros.org/mailman/listinfo/ros-users
>> > >
>> > >
>> > > _______________________________________________
>> > > ros-users mailing list
>> > > ros-users@code.ros.org
>> > > https://code.ros.org/mailman/listinfo/ros-users
>> >
>> >
>> > _______________________________________________
>> > ros-users mailing list
>> > ros-users@code.ros.org
>> > https://code.ros.org/mailman/listinfo/ros-users
>>
>>
>> _______________________________________________
>> ros-users mailing list
>> ros-users@code.ros.org
>> https://code.ros.org/mailman/listinfo/ros-users
>>
>>
>> _______________________________________________
>> ros-users mailing list
>> ros-users@code.ros.org
>> https://code.ros.org/mailman/listinfo/ros-users
>
>
> _______________________________________________
> ros-users mailing list
> ros-users@code.ros.org
> https://code.ros.org/mailman/listinfo/ros-users