How does openni_tracker distinguish left or right, front or back?

asked 2015-07-06 06:30:37 -0600

Veerachart gravatar image

updated 2015-07-06 06:31:29 -0600

Hi guys,

I have been using openni_tracker for a while, using the position of some joints and direction of the person. However, now I add more rotation to the person, and the direction of the person seems messed up. After trying rotation and observe closely, I saw that when the person's side just rotates pass the Kinect, left and right joints are switched, making the direction of the person also switched.

So it is:

Before rotation

left | right

After 180 degree

left | right (should be right | left )

And after another 180 degree

left | right

I also tried rotating while lifting my right hand up, and now the left and right joints are not messed. I think it is because the lifted right hand provide something for the tracker to track.

Does anyone have any solutions about correctly detecting person's direction?

edit retag flag offensive close merge delete


Hi @Veerachart! Have you tried openni2_tracker? I'm pretty sure it can distinguish left from right...

Chaos gravatar image Chaos  ( 2015-07-06 07:37:22 -0600 )edit

Hi @Chaos, I have never tried that. I searched the wiki, and found openni2_launch package, but it says that it is for RGB-D sensors other than Kinect, which I am using. The package openni2_tracker seems to be only in hydro, but I'm using groovy. If it is usable on groovy & Kinect, I'll try tomorrow.

Veerachart gravatar image Veerachart  ( 2015-07-06 08:42:18 -0600 )edit

Hi @Veerachart! I edited the openni2_tracker package. I'm using it with Indigo and with the xTion pro live. You can download it here. I don't know if it can be used with the Kinect.

Chaos gravatar image Chaos  ( 2015-07-06 08:46:58 -0600 )edit

@Chaos the link for Nite2 there is broken ( is already closed for some time.)

I installed openni2_camera and tried it with Kinect; not working. Worked well with Asus Xtion.

I tried catkin_make your package, but it said Nite2 is not found.

Veerachart gravatar image Veerachart  ( 2015-07-07 02:56:25 -0600 )edit

@Veerachart, you can download Nite2 from here. Follow these guidelines for install all the stuff. Let me know if this helps or if you have troubles.

Chaos gravatar image Chaos  ( 2015-07-07 03:25:54 -0600 )edit

@Chaos I finished installing Nite2 and openni2_tracker package, after some edits of the code. Now I can run it with Asus Xtion, but not with Kinect. It says "Can't open device." and crashes.

Now the published frame seems to be mirrored with the depth image at this moment.

Veerachart gravatar image Veerachart  ( 2015-07-08 06:14:59 -0600 )edit

Tracking while the person is rotating seems somehow working well. Anyway, it always thinks that you enter facing away from the camera, even you are looking at the camera

I also found that the joints aren't rotating, they only show positions. The first version gives some clues about the direction.

Veerachart gravatar image Veerachart  ( 2015-07-08 06:18:11 -0600 )edit

I'm using that software for commanding a robot through gesture recognition and it works fine for me. I hope it helped....

Chaos gravatar image Chaos  ( 2015-07-08 07:39:05 -0600 )edit