Trouble using multiple Kinects

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

Trouble using multiple Kinects

Martin K
Hello.
I'm trying to make an application using two Kinects looking at the same object from two different angels.
I have translated and rotated the images so that I get a pretty good correspondence between the images, but I have run into some problems that I was wondering if anyone could help me with.

I have one interface and callback function for each Kinect, and each time a new frame is ready on both devices I stitch them togheter to one point cloud consisting of XYZRGB points.

My problems:

1. When using pcl::PointXYZRGB there seem to be a problem that the RGB images gets mixed up, RGB image from Kinect 1 gets mapped with depth readings from Kinect 2, and vice verca. Is there any threading that needs to be considered here? This only seems to be a problem with the RGB part, the depth readings seems to be correct.

2. There is a lot of interference between the Kinects, espescially at their center of view (the object in sight is the side of a box, placed in the center of view for both Kinects). I know that the Kinects use IR light and that therefor interference is expected, but I saw in this thread: https://groups.google.com/group/openkinect/browse_thread/thread/8690daad30dafeb7/cb699aac7667ec0f?#cb699aac7667ec0f that Radu clamied to use two Kinects with minimal interference.  Is there a trick in PCL that I can use to somehow synchronize the Kinects so that they don't disturp each other?

Thanks in advance for any tips!

Martin
Reply | Threaded
Open this post in threaded view
|

Re: Trouble using multiple Kinects

Naveen Anand
This post has NOT been accepted by the mailing list yet.
Hi,

Could you please tell me how you used two OpenNI Grabbers? I have two kinects connected to my laptop and I just have these two lines of code (for starters).

pcl::Grabber* interface1 = new pcl::OpenNIGrabber("#1");
pcl::Grabber* interface2 = new pcl::OpenNIGrabber("#2");

But, it segfaults at line 1 when I run the code. Any ideas on where I am going wrong?

Thanks in advance.
Reply | Threaded
Open this post in threaded view
|

Re: Trouble using multiple Kinects

kwaegel
Administrator
In reply to this post by Martin K
Martin K wrote
1. When using pcl::PointXYZRGB there seem to be a problem that the RGB images gets mixed up, RGB image from Kinect 1 gets mapped with depth readings from Kinect 2, and vice verca. Is there any threading that needs to be considered here? This only seems to be a problem with the RGB part, the depth readings seems to be correct.
This is a known issue with the current OpenNI 1.x grabber.

Martin K wrote
2. There is a lot of interference between the Kinects, espescially at their center of view (the object in sight is the side of a box, placed in the center of view for both Kinects). I know that the Kinects use IR light and that therefor interference is expected, but I saw in this thread: https://groups.google.com/group/openkinect/browse_thread/thread/8690daad30dafeb7/cb699aac7667ec0f?#cb699aac7667ec0f that Radu clamied to use two Kinects with minimal interference.  Is there a trick in PCL that I can use to somehow synchronize the Kinects so that they don't disturp each other?
I'm not sure how to do it in software, but you can attach tiny vibrating motors to each kinect. The vibrations blur out the IR pattern so the other devices can't see it.
Reply | Threaded
Open this post in threaded view
|

Re: Trouble using multiple Kinects

athoesen
In reply to this post by Naveen Anand
CONTENTS DELETED
The author has deleted this message.