I haven't played around with it, but doesn't the Kinect SDK (Windows) contain the functions required to make a robust skeletal tracker? Otherwise, i guess you could use OpenCV and perform it the hard way -- have a seperate filter for each part. basically create a skin tracker and have a blur with quite a high kernel so it breaks the skin up into parts. Use findcontours() with color detection for skin. Instead of boundRect(), use minAreaRect() and change the bounding rectangle vector from vector<Rect> to vector<RotatedRect>. The syntax for minAreaRect() is exactly the same as boundRect(), so nothing much to worry about there! Get the angle of rotation from the RotatedRect, RotatedRect.angle, i believe. That way, you can get the angle of each limb. Classify the body into different parts. I think, if I understand, that t2bl2r() function that you wrote does something similar. This way, you will get the angle of the limbs, along with the center point of the limb, because minAreaRect() stores the center point. The only problems I can think of are that when you get too far, the blur will cause the part to disappear. You can, for sure, come up with a better algorithm, but this is what I thought of off the top of my head.
I am just wondering, why am I receiving the message,
PHP Code:
Your IP has been banned due to its location and needs to be unbanned by an administrator.
Please send an e-mail to webmaster@ this domain, and explain what FRC team you are on, where you are located.
? I am on vacation, in India.