Движение объекта в два кадра - PullRequest
0 голосов
/ 07 мая 2018

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

То, что я сделал:

  1. У меня есть 2 кадра с предыдущими и текущими контурами. -Прикреплено
  2. Я знаю, как взять глубину в пикселях (х, у)

Я хочу получить представление о том, как рассчитать смещение в пикселях (x, y)

предыдущий:

enter image description here

ток:

enter image description here

1 Ответ

0 голосов
/ 07 мая 2018

Вы можете попробовать сопоставить функции (используя что-то вроде SIFT или ORB может работать).

Вы также можете попытаться использовать алгоритм ICP . Получите контуры обоих изображений и сохраните все точки этих контуров в отдельных контейнерах (например, cv::Mat или std::vector<cv::Point>). Используйте один вектор в качестве исходного облака ICP, а другой вектор - в качестве облака запросов. Вы можете найти реализацию ICP здесь (или использовать стороннюю библиотеку, например PCL ). Затем алгоритм ICP дает вам приблизительное преобразование, которое лучше всего соответствует облакам. Это то преобразование, которое вы ищете.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...