2013-01-21 6 views
0

Я использую OpenCV для калибровки пары стереокамер. Я взял различные фотографии калибровки, и у меня есть удовлетворительное соответствие внутренним параметрам с помощью cv2.calibrateCamera. Однако неясно, как получить внешние параметры.Внешние параметры от OpenCV

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

Я предполагаю, что cv2.solvePnP - это что-то вроде того, что мне нужно, но неясно, что такое R/T - они [R | t] в формуле проектирования или что-то еще?

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

+2

R и T является 3x1 векторами, описывающих вращение и перемещение вашего камеры – Hammer

+0

Yep спасибо, понял, что я задал довольно Daft вопроса здесь. – Josh

+0

это случается со всеми. Если это все, что вам нужно, я просто поставлю его как ответ. – Hammer

ответ

0

R и T являются 3x1 векторами, описывающих вращение и перемещение камеры

+1

не R 3x3? матрица вращения –

+1

@AnderBiguri Существует множество способов выражения вращения. Вектор 3x1 представляет собой обозначение осевого угла, где направление вектора определяет ось вращения, а ее величина определяет величину вращения. cv :: Rodrigues может преобразовать эту нотацию в матрицу 3x3 для вас – Hammer

+0

Oh! Я полностью забыл об этом, ты очень строгий. сожалею –

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