Официальный Kinect SDK и Unity3d - PullRequest
6 голосов
/ 23 июня 2011

Кто-нибудь знает что-нибудь об использовании ввода Kinect для Unity3d с официальным SDK?Мне поручили проект, чтобы попытаться объединить эти два, но мой супер не хочет, чтобы я использовал открытый материал Kinect.Последними новостями с сайта Unity было то, что Kinect SDK требует 4.0 .Net, а Unity3D - всего 3,5

Обходные пути?Направьте меня к ресурсам, если вы знаете что-нибудь об этом, пожалуйста.

Ответы [ 2 ]

7 голосов
/ 02 августа 2011

Привязки OpenNI для Unity, вероятно, лучший путь. Скелет NITE более стабилен, чем Microsoft Kinect SDK, но все еще требует калибровки (PrimeSense упомянул, что скоро у них будет скелет без калибровки).

Существуют привязки к OpenNI из Kinect SDK, которые делают Kinect SDK похожим на SensorKinect. Этот модуль также предоставляет скелет без калибровки KinectSDK в качестве модуля OpenNI:

https://www.assembla.com/code/kinect-mssdk-openni-bridge/git/nodes/

Поскольку KinectSDK также предоставляет лодыжки и запястья, а OpenNI уже поддерживал их (хотя NITE не поддерживал их), все элементы OpenNI, включая наборы символов Unity, которые включали лодыжки и запястья, просто все работают и без калибровки. Привязки KinectSDK для OpenNI также поддерживают использование скелетов и ручных трекеров NITE, с одной оговоркой, кажется, что обнаружение жестов NITE еще не работает с Kinect SDK. Обходной путь при использовании KinectSDK с NITE handGenerator заключается в использовании отслеживания без скелета, чтобы обеспечить вас рукой. К сожалению, вы теряете способность просто отслеживать руки, когда ваше тело не видно сенсору.

Тем не менее, скелет NITE кажется более стабильным и более отзывчивым, чем KinectSDK.

4 голосов
/ 01 июля 2011

Сколько необработанных данных Kinect вам нужно? Для ограниченной проблемы, такой как просто получение суставов конечностей, вы задумывались об использовании агностической схемы связи, такой как TcpClient . Просто создайте простой TCP-сервер в .net 4.0, который соединяется с Kinect SDK и выкачивает пакеты с необходимой информацией каждые 30 мс или что-то в этом роде. Тогда просто напишите принимающего клиента в Unity. У меня была похожая проблема с другим SDK. Я не пробовал Kinect, хотя, может быть, мое предложение излишне.

Если вам нужны данные о глубине / цвете в реальном времени, вам может понадобиться что-то немного быстрее, возможно, с использованием Pipes ?

...