2016-06-02 8 views
0

Я пытаюсь взять координаты из рамки индекса тела и отобразить их в цветовое пространство, чтобы выяснить, лежат они в пределах определенной области цветового пространства.Отображение точек индекса тела (пространство глубины) в цветовое пространство

Однако метод CoordinateMapper.MapDepthPointToCameraSpace (и связанные с ним методы) зависит от фактических данных глубины, которые не отображаются в кадре индекса тела.

Какое решение предлагает API?

ответ

1

Вам потребуется рамка глубины в дополнение к рамке индекса тела. Но они тесно связаны: рамка индекса тела основана на кадре глубины. Получение рамки глубины в дополнение к рамке индекса тела не должно создавать никаких дополнительных накладных расходов, так как кадр глубины вычисляется внутренне уже в любом случае.

И отображение между ними также легко: каждый пиксель в кадре индекса тела соответствует одному и тому же пикселю в кадре глубины.

Итак, Чтобы отобразить пиксель (1,1) из рамки индекса тела в цветовое пространство, вы просто сопоставляете один и тот же пиксель (1,1) от рамки глубины до цветового пространства.

+0

Хорошо, спасибо - я уже начал экспериментировать с этим, задав вопрос. Я приму свой ответ, если все пойдет хорошо! (Пока выглядит хорошо!) – Archimaredes

0

HenningJ уже дал вам ответ. Вам действительно не нужен кадр глубины, потому что это проблема разрешения.

Что нужно для калибровки разрешения bodyindex/инфракрасный/глубина/(512x424) до разрешения цвета (1920x1080). Я еще не знаю, как это сделать для Kinect v2 (эта проблема не возникала в Kinect v1, потому что разрешение было таким же), но наизусть, я думаю, вам нужно отобразить некоторые точки в цвете и bodyindex (1,1), а затем перечислить, что точка должна быть в одном и других пространствах. Я думаю одно решение.

Идеальным решением было бы сохранить эту информацию - https://msdn.microsoft.com/en-us/library/windowspreview.kinect.coordinatemapper.mapdepthframetocolorspace.aspx

Таким образом, вы имеете идеальное выравнивание с самого SDK.