[ros-users] problem using TimeSynchronizer with two images
Dan Lazewatsky
lazewatskyd at cse.wustl.edu
Mon Mar 15 19:27:32 UTC 2010
Thanks Patrick,
What you brought up doesn't fix my problem, but does elucidate what's
actually going on. It turns out that there are two problems I'm having:
1) The images are being published independently by two nodes, so they
never have the same timestamp, and thus will never get matched up. Is
there a way to give TimeSynchronizer a threshold so it will match two
message that are close enough?
2) Based on #1, using the raw transport actually shouldn't work. The
reason it currently does is because cvToImgMsg doesn't fill in the
header, so all timestamps are 0. I can manually set the
timestamps/headers before sending off the message, but isn't cv_bridge
supposed to do this?
Thanks,
-Dan
On 3/12/10 9:22 PM, Patrick Mihelich wrote:
> Hi Dan,
>
> You might need to increase the size of the queues used by the
> subscriber filters and/or the synchronizer. If those queues fill up,
> messages can get bumped off before they form a complete synchronized set.
>
> For debugging purposes it can be useful to register another callback
> to the subscriber filters, just so you know when they get any data.
> I've attached some sample source code.
>
> "compressed" transport definitely should work with the time
> synchronizer. "theora" will not work reliably because it seems the
> plugin doesn't retain the timestamp of the original image. I've opened
> a ticket <https://code.ros.org/trac/ros-pkg/ticket/3882> for that.
>
> HTH,
> Patrick
>
> On Fri, Mar 12, 2010 at 9:12 AM, Dan Lazewatsky
> <lazewatskyd at cse.wustl.edu <mailto:lazewatskyd at cse.wustl.edu>> wrote:
>
> Thanks, that did the trick. One thing I'm still having trouble
> with is getting transports other than raw to work with
> image_transport::SubscriberFilter. If I pass
> image_transport::TransportHints th(transport) to
> image_transport::SubscriberFilter, where transport is "compressed"
> or "theora", I never seem to get any data. rxgraph -t shows that
> my node is connected to my image publisher on the right topic, but
> the callback never gets called.
>
> Thanks,
> -Dan
>
>
> On 3/11/10 5:11 PM, Patrick Mihelich wrote:
>> On Thu, Mar 11, 2010 at 2:55 PM, Dan Lazewatsky
>> <lazewatskyd at cse.wustl.edu <mailto:lazewatskyd at cse.wustl.edu>> wrote:
>>
>> On a related note, is there a way to use TimeSynchronizer
>> with image_transport rather than subscribing to the image
>> directly?
>>
>>
>> Use image_transport::SubscriberFilter
>> <http://www.ros.org/doc/api/image_transport/html/classimage__transport_1_1SubscriberFilter.html>
>> as a drop-in replacement for message_filters::Subscriber. It uses
>> an image_transport subscriber under the hood.
>>
>> Cheers,
>> Patrick
>>
>>
>> _______________________________________________
>> ros-users mailing list
>> ros-users at code.ros.org <mailto:ros-users at code.ros.org>
>> https://code.ros.org/mailman/listinfo/ros-users
>
> _______________________________________________
> ros-users mailing list
> ros-users at code.ros.org <mailto:ros-users at code.ros.org>
> https://code.ros.org/mailman/listinfo/ros-users
>
>
>
> _______________________________________________
> ros-users mailing list
> ros-users at code.ros.org
> https://code.ros.org/mailman/listinfo/ros-users
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ros.org/pipermail/ros-users/attachments/20100315/97949fe7/attachment-0004.html>
More information about the ros-users
mailing list