[ros-users] nodelets for highlevel percetion

Tully Foote tfoote at willowgarage.com
Mon Mar 15 18:32:36 UTC 2010


Uli,

You are correct that nodelets are basically a thin layer on top of
pluginlib.  The goal of nodelets is to facilitate composition of higher
level algorithms maintaining the ROS interface for compatability.  And with
forthcoming roscpp improvements, messages can be passed intraprocess with
zero copies.  And you can have arbitrarily many nodelets in a single
process.

For your specific questions:
 - Likely you would want to convert each of your plugins into a nodelet.
 - As Radu stated, nodelets don't put any restrictions on what you can do
inside of them, service calls and servers are definitely fine.
 - For "linking" nodelets directly with a node, all you have to do is create
a nodelet::NodeletLoader class in the node into which you want to load the
nodelets.  Then you can address the node as a nodelet manager, just like a
standalone manager.

Tully

PS please see my last email about stability.  Keep in mind that nodelets are
still in the early developmental stage and will be changing.
http://www.ros.org/wiki/StackVersionPolicy

On Mon, Mar 15, 2010 at 7:41 AM, Radu Bogdan Rusu <rusu at willowgarage.com>wrote:

> Hi Uli,
>
> Think about a nodelet as a C++ class with a ROS interface, sitting on top
> of pluginlib. There aren't a lot of
> constraints right now, so you can do pretty much what you want. That being
> said, the nodelets themselves are just a
> small part of a bigger architectural change that we are pushing, that also
> includes roscpp optimizations, etc.
>
> The nodelet and nodelet_topic_tools are already released under common 1.1,
> so you can already give them a try.
>
> We are working on constructing a set of library layers on top of nodelets,
> including stacks for 3D point cloud
> processing (PCL), 2D image processing (IPL?), and machine learning (MLL?).
> PCL has already been released with
> point_cloud_perception 0.1, while the others are being developed right now.
> These stacks/packages should provide good
> examples on how to use the nodelets architecture for 2D/3D processing and
> learning.
>
> Cheers,
> Radu.
> --
> | Radu Bogdan Rusu | http://rbrusu.com/
> _______________________________________________
> ros-users mailing list
> ros-users at code.ros.org
> https://code.ros.org/mailman/listinfo/ros-users
>



-- 
Tully Foote
Systems Engineer
Willow Garage, Inc.
tfoote at willowgarage.com
(650) 475-2827
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ros.org/pipermail/ros-users/attachments/20100315/0d5907ae/attachment-0004.html>


More information about the ros-users mailing list