Использование XBox 360 Kinect с Kinect для Windows SDK

Я работаю над проектом класса, который использует Kinect. Согласно [информационной странице Microsoft Kinect для Windows][1]:

Если вы получаете одно из этих сообщений об ошибках, вы, вероятно, используете Kinect для Xbox 360, а не новый Kinect для Windows. Убедитесь, что ваш датчик Kinect является датчиком Kinect для Windows. (Это просто: просто убедитесь, что на передней панели написано "Xbox 360".)

Если вы разработчик программного обеспечения, вы можете использовать Kinect для Xbox 360 вместе с вашим компьютером, чтобы протестировать программное обеспечение, над которым вы работаете. Однако, чтобы получить полную версию Kinect для Windows, мы рекомендуем вам скачать Kinect для Windows SDK и использовать его с Kinect для Windows.

Примечание. Убедитесь, что ваш датчик Kinect является датчиком Kinect для Windows. Если на передней панели написано "Xbox 360", это Kinect для Xbox 360, а не Kinect для Windows.

Несмотря на двусмысленность этого сообщения, мне кажется, что я должен быть в состоянии использовать XBox 360 Kinect для разработки. SDK ограничивает только развертывание, что идеально подходит для моего проекта.

Тем не менее, когда я запускаю следующий код:

Console.WriteLine("Sensor count: " + KinectSensor.KinectSensors.Count);
Console.WriteLine("Sensor status: " + KinectSensor.KinectSensors[0].Status);

Я получаю вывод:

Sensor count: 1
Sensor status: NotReady

Что дает? Мой Kinect подключен к моему компьютеру. Зеленый индикатор на передней панели мигает. Любая помощь здесь будет оценена.

3 ответа

Решение

Вы можете использовать Kinect SDK, который был разработан для работы с Kinect для XBox: Kinect SDK Beta 2. Загрузите его бесплатно с microsoft.com.

Из ссылки на скачивание:

Бета-версия Kinect для Windows SDK предоставляет любителям и исследователям инструменты для разработки некоммерческих приложений, работающих на Kinect для Xbox 360.

(акцент мой)

Датчик Kinect нуждается в высоком напряжении питания, а обычный USB-порт не обеспечивает достаточной мощности. Убедитесь, что вместе с USB-разъемом подключен и адаптер питания датчика Kinect.

Я бы предложил сначала использовать демонстрационное приложение Kinect Explorer, поставляемое с последней версией SDK.

Это подтвердит, связано ли это только с вашим конкретным решением или с интерфейсом Kinect в целом.

Вы также можете попробовать выполнить итерацию по коллекции KinectSensor.KinectSensors, чтобы увидеть, дает ли она другой результат свойству Count.

Другие вопросы по тегам