我正在处理一个使用Kinect的类项目。根据[Microsoft Kinect for Windows信息页面][1]:
如果您收到以下任何一条错误消息,您可能使用适用于Xbox 360的Kinect,而不是适用于Windows的新Kinect。制作请确保您的Kinect传感器是Kinect for Windows传感器。(是简单:只要确保前面没有写"Xbox 360"。)
如果你是一名软件开发人员,你可以使用Kinect for Xbox 360与您的计算机一起测试您正在开发的软件。但是,要获得完整的Kinect for Windows体验,我们建议您下载了Kinect for Windows SDK并将其与Kinect for一起使用Windows。
注意:请确保您的Kinect传感器是适用于Windows的Kinect传感器如果正面写着"Xbox 360",那就是Xbox的Kinect360,而不是Kinect for Windows。
尽管这个消息有歧义,但我似乎应该能够使用XBox360Kinect进行开发。SDK只限制部署,这对我的项目来说非常好。
然而,当我运行以下代码时:
Console.WriteLine("Sensor count: " + KinectSensor.KinectSensors.Count);
Console.WriteLine("Sensor status: " + KinectSensor.KinectSensors[0].Status);
我得到输出:
Sensor count: 1
Sensor status: NotReady
什么东西?我的Kinect已连接到我的计算机。前面的绿灯在闪烁。如有任何帮助,我们将不胜感激。
您可以使用专为配合Kinect for XBox而设计的Kinect SDK:Kinect SDK Beta 2。从microsoft.com免费下载。
从下载链接:
Kinect for Windows SDK测试版为爱好者和研究人员提供了开发非商业应用程序的工具,这些应用程序可在Kinect for Xbox 360上运行。
(强调矿)
Kinect传感器需要高电源,而普通USB端口无法提供足够的电源。请确保在插入USB的同时,Kinect传感器的电源适配器也已插入。
我建议先使用最新版本SDK附带的Kinect Explorer演示应用程序。
这将确认它是与您的特定解决方案有关,还是与Kinect的接口有关。
您可能还想尝试迭代KinectSensor.KinectSenators集合,看看它是否为Count属性提供了不同的结果。