Will Kinect v2 support multiple sensors?
Asked Answered
E

6

5

Working with multiple Kinect v1 sensors is very difficult because of the IR interference between the sensors.

Based on what I read on this gamastura article, Microsoft got rid of the interference problem with the time-of-flight mechanism that Kinect v2 sensor uses to gauge depth.

Does that mean I could use multiple Kinect v2 sensors at the same time, or did I misunderstand the article?

Thanks for the help!

Ellsworthellwood answered 16/6, 2014 at 21:8 Comment(0)
C
6

I asked this question, in person, of the dev team at the meetup in San Francisco in April. The answer I got was:

"This feature is 3+ months away. We want to prioritize single-Kinect features before working on multiple Kinects."

I'm a researcher, and my goal is to have a bunch of odd setups, so this is a frustrating answer, but I understand that they need to prioritize usage that will be immediately useful to a larger market.

Could you connect them to multiple computers and stream data back and forth?

Coster answered 17/6, 2014 at 3:35 Comment(0)
E
1

As @escapecharacter mentioned not likely to have support for multiple kinect v2 sensors in the very near future.

I can also confirm, one of the Kinect V2 SDK samples has this comment:

// for Alpha, one sensor is supported
this.kinectSensor = KinectSensor.Default;

I think the hardware itself is capable of avoiding the interference problem. Hopefully the slightly larger amount of data (higher res RGB stream) won't be a problem with multiple sensors(and available USB bandwidth) and it would be a matter of enabling the SDK to safely handle multiple sensor instances in the future.

I wouldn't expect a fast/quick update to the SDK enabling though, so in the meantime, although not ideal you could try either:

  • Using multiple V2 sensors on multiple machines communicating over a local network, passing only processed/minimal data (to keep the delay as small as possible)
  • Using multiple V1 sensors using Shake'n'Sense (pdf link to paper) to reduce interference

At least you would to a certain extent make some progress testing some of your assumptions for your project with multiple sensors, and update the project when the updated SDK is out.

Electrostriction answered 18/6, 2014 at 11:18 Comment(2)
I'll be very curious to see if the new time-of-flight sensors can avoid the interference problem. They can't use the shaking hack that the Kinect v1s did.Coster
Why do you say the hardware can avoid interference? Is it the time of flight mechanism, or something else? The reason I asked my original question is because my project lead is thinking of using multiple kinects* for motion tracking, but we don't know whether we should use v1 or wait for v2.Ellsworthellwood
C
1

I realize I misread your question, and interpreted it as "how can I connect to Kinect 2's to a computer" when you were actually asking about how to avoid interference, and Kinect 2 was your hoped-for solution.

You can hack avoiding Kinect 1 interference by lighting shaking one of them independent of the other. See here:

http://channel9.msdn.com/coding4fun/kinect/Shaking-some-sense-into-using-multiple-Kinects-with-Shake-n-Sense

One of the craziest things I've ever seen that actually worked. I was at Microsoft Research when they figured this out, and it works quite well.

Coster answered 18/6, 2014 at 14:10 Comment(1)
Yeah, I read about that "Shake n Sense" workaround, but like you said, I wanted to learn more about Kinect 2. Thanks for telling me about the developer's plans though. It's nice to hear that MS Research realizes that Kinect is so much more than a gaming device.Ellsworthellwood
D
1

You can have a Kinect v1 viewing the same scene as a Kinect v2 without interference. I know this isn't exactly what you're looking for, but it could be useful.

Demetria answered 18/7, 2014 at 21:37 Comment(0)
B
1

2 Years later, and this still cannot be done.

See:

  1. https://social.msdn.microsoft.com/Forums/en-US/8e2233b6-3c4f-485b-a683-6bacd6a74d53/how-to-prevent-interference-between-multiple-kinect-v2-sensors?forum=kinectv2sdk

  2. https://github.com/OpenKinect/libfreenect2/issues/424

As stated in the second link,

What happens is this: Each Kinect v2 continuously switches between different modulation frequencies. When two Kinects switch to the same frequency range, the interference occurs. They typically gradually drift into the same range and after a while drift out of that range again. So, theoretically, you just have to wait a bit until the interference is gone. The only way I found to stop the interference immediately was to disconnect (and reconnect) the concerned Kinect from its power supply

...

Quite unfortunate that these modulation frequencies aren't controllable at this time. Let's hope MS surprises us with that custom firmware

IIRC, I came across a group at MIT that got custom firmware from MS which solved the problem, but I can't seem to find the reference. Unfortunately, it is not available to the public.

Busy answered 23/8, 2016 at 18:0 Comment(0)
E
-1

I think we cant use multiple Kinect v2 in same environment because they will interfere lot comparatively kinect v1. As Kinect v2 depth sensing based on time of flight principle, multiple kinect v2 will interfere lot. For kinect v1 interference is not that much severe.

Everyplace answered 10/4, 2015 at 7:43 Comment(1)
Actually, that's not true. Kinect v2 sensors change their modulation frequency periodically randomly, reducing the chance of interference. It does still occur from time to time, but way less than with the Kinect v1Gleda

© 2022 - 2024 — McMap. All rights reserved.