Items with no label
3335 Discussions

Upper body bone recognition

gguo5
Beginner
2,069 Views

hi,everyone

Do you know where to find the code that identifies the upper body or the bone point of the body? In Person Tracking, only the right and left hand, the bone in the head, the other parts are not given. I need to use the shoulder, left and right bones, but I don't know how to program it.And if you know where there are programs that recognize bones, please tell me,

THANKS.

0 Kudos
6 Replies
MartyG
Honored Contributor III
388 Views

In the form of Person Tracking used in the RealSense SDK for Linux, the shoulders are identified with the instruction HEAD_SHOULDERS

The form of Person Tracking used in the Windows RealSense SDK does not seem to track shoulders - just hands, head and chest.

https://vimeo.com/166142848 RealSense SR300 Person Tracking Preview from .NET on Vimeo

In my own project in the Unity game creation engine, I detect various bone bones that are not normally trackable by looking at the points that can be tracked and working out how the untracked bones should be behaving when the tracked points such as hand and face are moved. I call this method Reverse Thinking, which has been compared to the principle of Inverse Kinematics.

https://en.wikipedia.org/wiki/Inverse_kinematics Inverse kinematics - Wikipedia

0 Kudos
gguo5
Beginner
388 Views

Can I use the R200 or SR300 to identify the upper body bone junction? I wanted to get the upper body bone point and then get the location information of the individual bone points, but I don't know where to find the program to identify the bones.

0 Kudos
gguo5
Beginner
388 Views
0 Kudos
MartyG
Honored Contributor III
388 Views

Thanks for the information about the Windows SDK containing shoulder definitions in its joint system in the documentation.

Despite extensive research, I have not been able to find anyone who has been able to access the shoulder joints in the Windows SDK, even though shoulder commands are listed in the documentation. They can only access hands, chest and head.

0 Kudos
gguo5
Beginner
388 Views

31/5000

Is it that no matter how we write the program, we can't access the information of other nodes, such as the shoulders?

0 Kudos
MartyG
Honored Contributor III
388 Views

It is hard to even find a script that references how to call a specific skeleton joint. Most scripts go up to the point where it is about to call the joint and then leave that section blank for others to fill in.

I did manage to find a script that shows the instruction for calling a joint though.

https://software.intel.com/en-us/forums/realsense/topic/645536 Skeleton Tracking Not Working

In their script, they use:

PXCMPersonTrackingData.PersonJoints.JointType.JOINT_HEAD

So if you wanted to call the left shoulder joint, for example, you might substitute in the shoulder joint instruction from the RealSense documentation.

PXCMPersonTrackingData.PersonJoints.JointType.JOINT_SHOULDER_LEFT

As I said, I have not seen any scripts that use the shoulder joint. But there is no harm in trying this and seeing what happens.

Once I had found this instruction, I was also able to find an alternative Librealsense script that references the shoulder joints by a RealSense expert called Andre Carlucci..

https://github.com/SharpSenses/libpxcclr.cs/blob/master/src/pxcmpersontrackingdata.cs libpxcclr.cs/pxcmpersontrackingdata.cs at master · SharpSenses/libpxcclr.cs · GitHub

0 Kudos
Reply