Обнаружение отслеживания 3D-объектов с помощью Kinect

Я работаю над идентификацией объекта с помощью датчика Kinect, чтобы получить координаты x, y, z объекта.

Я пытаюсь найти соответствующую информацию для этого, но не смог найти много. Я тоже видел видео, но никто не делится информацией или примерами кода? Это то, чего я хочу достичь https://www.youtube.com/watch?v=nw3yix3XomY< /а>

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

Я где-то читал, что обнаружение объектов невозможно с помощью Kinect v1. Нам нужно использовать сторонние библиотеки, такие как open CV или облака точек (pcl).

Может ли кто-нибудь помочь мне, даже используя сторонние библиотеки, как именно я могу идентифицировать объект с помощью датчика Kinect?

Это будет очень полезно.

Спасибо.


person u_gandhi    schedule 15.08.2016    source источник


Ответы (1)


Как указал автор видео, на которое вы ссылаетесь, в комментарии после этого Учебник PCL поможет вам. Как вы уже поняли, реализовать это с помощью автономного SDK может быть невозможно. Использование PCL поможет вам не изобретать велосипед.

Идея состоит в том, чтобы:

  1. Понизьте дискретизацию облака, чтобы иметь меньше данных для обработки на следующих шагах (это также немного уменьшит шум).
  2. Определите ключевые точки/признаки (то есть точки, области, текстуры, которые каким-то образом остаются инвариантными к некоторым преобразованиям).
  3. Вычислите дескрипторы ключевых точек, математические представления этих функций.
  4. Для каждого дескриптора ключевых точек сцены найдите ближайшего соседа в облаке дескрипторов ключевых точек модели и добавьте его в вектор соответствий.
  5. Выполните кластеризацию по ключевым точкам и определите модель в сцене.

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

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

Когда у вас есть покадровое обнаружение, вы можете начать думать о реальном отслеживании объекта по кадрам. Но это другая тема.

person Dexter    schedule 16.08.2016
comment
Спасибо за ответ. Это описание мне очень помогло. Следуя вашим шагам, я продвигаюсь вперед, чтобы загрузить библиотеку Point Cloud. - person u_gandhi; 17.08.2016
comment
Привет, Декстер, я скачал PCL и задаюсь вопросом, что именно вы имеете в виду под понижением дискретизации облака. Не могли бы вы уточнить для меня, поскольку я действительно новичок в Cloud? - person u_gandhi; 24.08.2016
comment
Я имею в виду использование pcl::UniformSampling или аналогичного, как это сделано в учебнике, указанном в ответе! Пожалуйста, рассмотрите возможность принятия ответа, если он помог. - person Dexter; 24.08.2016
comment
В порядке. Я понял. Спасибо. - person u_gandhi; 27.08.2016