Получить вектор направления (направление) от пикселя на изображении

Я инженер-робототехник и не являюсь экспертом в области компьютерного зрения или визуального обслуживания. Это один из моих лучших опытов с камерами.

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

Установка следующая. У меня есть камера с разрешением 1040×776, которую я откалибровал. В моем изображении есть какой-то объект, который я могу обнаружить и связать с точкой на изображении. Пиксели выражены в и, v (Я думаю), так что эти точки идут между 0 и 1040 на U ось (горизонтальная) и между 0 и 776 в v ось.

Давайте предположим, что u, v = 0,0 находится в центре изображения (даже если оно находится в верхнем левом углу. Но это не проблема).

Мне нужен единичный вектор, который идет от центра камеры к вышеупомянутому пикселю. Так, например, если пиксель находится в центре изображения, результирующий вектор должен быть (1,0,0).

Я думаю, что уже нашел ответ на stackexchange, но я не уверен на 100%, что мне нужно:
OpenCV: вычислить угол между камерой и пикселем

Рецепт:

1 — Откалибруйте камеру, получив матрицу камеры K и параметры искажения D. В OpenCV это делается, как описано в этом руководстве.

2 — Удалите нелинейные искажения из интересующего положения пикселя. В OpenCV это делается с помощью подпрограммы undistortPoints без передачи аргументов R и P.

3 — Обратный проецирование представляющих интерес пикселей на лучи (единичные векторы с хвостом в центре камеры) в 3D-координатах камеры путем умножения их положений в пикселях на однородные координаты, умноженные на значение, обратное матрице камеры.

Как вы думаете?

Заранее спасибо за внимание.

1

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]