On 12/07/10 09:31, Patrick Mihelich wrote:
If you publish a shared_ptr<sensor_msgs::Image> using raw transport, image_transport takes advantage of roscpp's optimized intraprocess message passing. So you can use image_transport to pass images in nodelets.

Generalizing image_transport to handle other representations - including something like shared_ptr<cv::Mat> - is on my wishlist, but too invasive to make it into Diamondback at this point.


Hi Patrick,

Would our message_transport plugin architecture help for that? I'm not sure exactly what you want to do with the shared_ptr<cv::Mat>, but our package generalise the concept of specialised transport to any type. It is basically a templated rewrite of the image_transport framework.

Depending on what you want to do, it may be just a couple of lines to change/add in message_transport.

More details: http://www.ros.org/wiki/ethzasl_message_transport

-- 
Dr. Cedric Pradalier
http://www.asl.ethz.ch/people/cedricp