Re: [ros-users] Skeletons

Top Page
Attachments:
Message as email
+ (text/plain)
+ (text/html)
Delete this message
Reply to this message
Author: User discussions
Date:  
To: User discussions
Subject: Re: [ros-users] Skeletons
Hi Marcus,

I haven't thought through use cases very much but one application would
be creating a library of human gestures and poses that the robot can
learn to recognize. The only reason I created a Skeleton message type
for my pi_tracker package is that I wanted to have access to the joint
confidence values. Otherwise, I think the standard ROS tf/tfMessage
type comes close.

In the meantime, and just for fun, I have created a skeleton_markers
package at:

http://www.ros.org/wiki/skeleton_markers

This allows the visualization of the tracked joints in RViz. There are
two ways to run the package--two different Python scripts: one is used
with pi_tracker and subscribes to the skeleton message topic. The other
uses just the transforms published by the openni_tracker package. See
the Wiki page for details. Here is a short video of the result:

http://www.youtube.com/watch?v=nTRi_kIgGW0

--patrick

On 03/26/2011 03:27 PM, Marcus Liebhardt wrote:
> Hi there!
>
> That indeed looks like a tree to me.
> I would be interested in the use cases you have in mind for these
> skeleton messages.
> What information would you like to gather in those messages?
> Poses of the tracked frames, interconnections of each frame, also
> distances between the connected frames?
>
> I don't have deep knowledge about the processing of the KInect or the
> openni_tracker. I'm currently just using the transforms. But I think
> there are simplifications made for some frames, which could be useful
> to take into account. For example, I think the neck is always half way
> between the left and right shoulder, and the head is always on top of
> it. Things like that might be interesting as well to keep in the
> message, so that one can easily reproduce the previously mentioned
> skeleton - if that is one of the use cases.
>
> Best regards,
>
> :-) Marcus
>
>
>
> 2011/3/26 Patrick Goebel <
> <mailto:patrick@pirobot.org>>
>
>     I see what you mean--the user looks more like a cactus than a
>     tree. :)))  However, I think if you take the torso joint as the
>     root, don't you end up with a tree structure?  e.g.

>
>     torso->neck->head
>     torso->left_shoulder->left_elbow->left_hand
>     torso->right_shoulder->right_elbow->right_hand
>     torso->left_hip->left_knee->left_foot
>     torso->right_hip->right_knee->right_foot

>
>     Maybe this is what you meant by it depends on how you define them.

>
>     --patrick

>
>
>     On 03/26/2011 12:22 PM, David Lu!! wrote:
>>     It depends on how you define them. The skeleton visualized with
>>     the kinect (
>>     http://www.ros.org/wiki/openni_tracker?action=AttachFile&do=get&target=nite.png
>>     <http://www.ros.org/wiki/openni_tracker?action=AttachFile&do=get&target=nite.png>)
>>     isn't a tree, although it could be converted to be one, I suppose

>>
>>     On Sat, Mar 26, 2011 at 1:11 PM, Patrick Goebel
>>     < <mailto:patrick@pirobot.org>> wrote:

>>
>>         Hi David,

>>
>>         I agree it would be nice to have a standardized Skeleton
>>         message.  If all skeleton's are trees (is this true?) then
>>         perhaps an existing tree message type could be used if it
>>         exists.  KDL has kinematic chains and tf is already built
>>         around trees (right?).  That's about as far as I've thought
>>         it through...

>>
>>         --patrick

>>
>>
>>         On 03/22/2011 04:17 PM, David Lu!! wrote:
>>>         Hey Ros-users-

>>>
>>>         Has there been any talk of creating a standardized Skeleton
>>>         message? Right now, it seems like the openni_tracker package
>>>         just publishes transforms. It seems like if the Kinect does
>>>         skeleton tracking, there should be a skeleton message.

>>>
>>>         I know pi_tracker has its own Skeleton message, which looks
>>>         like it might fit the bill, although I don't think it
>>>         defines which parts are connected (hip bone is connected to
>>>         the thigh bone).
>>>         http://www.ros.org/doc/api/pi_tracker/html/msg/Skeleton.html

>>>
>>>         It might be good to have for not only the Kinect, but for
>>>         other motion capture rigs (Vicon and the like).

>>>
>>>         Are there any other similar message out there?

>>>
>>>         -David!!

>>>
>>>
>>>         _______________________________________________
>>>         ros-users mailing list
>>>           <mailto:ros-users@code.ros.org>
>>>         https://code.ros.org/mailman/listinfo/ros-users

>>
>>
>
>     _______________________________________________
>     ros-users mailing list
>      <mailto:ros-users@code.ros.org>
>     https://code.ros.org/mailman/listinfo/ros-users

>
>
>
> _______________________________________________
> ros-users mailing list
>
> https://code.ros.org/mailman/listinfo/ros-users