2013-04-29 3 views
0

Я использую Kinect-SDK для отслеживания человека. Однако Kinect-SDK дает мне информацию о суставах. Я хотел бы получить каждый пиксель, который связан с определенной частью тела или суставом.Получить пиксели, связанные с определенной частью тела

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

Я знаю, что SDK маркирует части тела гусеничного лица, чтобы вычислить скелет, но эта информация все еще доступна? http://research.microsoft.com/apps/pubs/default.aspx?id=145347

+0

Посмотрите на CoordinateMapper - http://msdn.microsoft.com/en-us/library/jj663707.aspx. Я могу посмотреть более подробный ответ, когда я нахожусь на своем компьютере. –

+0

@EvilClosetMonkey afaik with the CoordinateMapper Я мог только отобразить положение сустава в пространстве цвета/глубины. Тем не менее, это дает мне только одно очко, но нет намека на то, какой пиксель связан с ним. Сопоставление пикселя цвета/глубины в пространстве скелета не помогает, так как снова, например, ручное соединение было бы точно одной точкой, но не всей областью в скелетном пространстве. –

+0

Действительно, я пропустил эту точку вопроса. Как отмечает @MentohlBonbon, нет официального SDK-способа вытащить эту информацию. Возможно, вы сможете использовать комбинацию 'CoordinateMapper' и OpenCV' findContours' для вытягивания конечностей. –

ответ

0

Существует библиотека с открытым исходным кодом, которую вы можете использовать для отслеживания скелета. Его называют NITE. Найдите его здесь: http://www.openni.org/files/nite/#.UX7UT8rOj2k

Вы также можете отслеживать руки с этим.

В целом: изображение RGB и изображение глубины карты kinect. Таким образом, вы можете узнать о положении руки в изображении глубины и затем нарисовать круг в этом положении в изображении rgb. Прекрасно работает с. OpenCV.

Если у вас есть еще вопросы, просто спросите, пожалуйста, будьте конкретны.

EDIT:

Вы получаете г-координату руки. Вы можете использовать это как ссылку, а затем вы можете порог в области руки (все, что слишком далеко в терминах x или y, не может принадлежать руке).

С помощью функции OpenCV и ее функции findContours вы можете найти область руки на изображении, а затем цвет этой области в другом изображении так, как вы этого хотите.

+0

Боюсь, вам, вероятно, понадобится реализовать это самостоятельно. – MentholBonbon

+0

Боюсь, я не сделал себе достаточно ясно, поэтому я попытался перефразировать исходный вопрос. Я знаю, что есть библиотеки, которые могут выполнять отслеживание скелета, и я использую Kinect-SDK для этого. Мой вопрос: если я могу использовать Kinect-SDK для получения информации о пикселе, то в изображении, которое я получаю от Kinect, назначается конкретный сустав скелета отслеживаемых лиц? –

+0

KinectSDK, насколько мне известно, не поддерживает функции, которые связывают пиксели в глубине или изображении rgb с суставами или частями тела. Вам нужно написать этот код самостоятельно. – MentholBonbon

Смежные вопросы