Я настраиваю систему стереокамер (с двумя камерами). Я пытаюсь получить матрицу вращения и вектор трансляции с OpenCV в C++. Я вычислил матричную камеру и вектор искажения для каждой камеры, используя cameraCalibrate
opencv. Теперь я пытаюсь вычислить матрицу вращения и вектор трансляции с использованием stereoCalibrate
. Я не понял параметры stereoCalibrate: imagePoints1
и imagePoints2
. Имеют ли эти два параметра одну и ту же точку в одной и той же сцене, просматриваемой двумя камерами, или я могу обнаружить разные точки из той же сцены, что и камеры?Параметры OpenCV stereoCalibrate
0
A
ответ
0
Цель, если стереокалибровка заключается в сборе информации о местоположении того же объекта на двух изображениях. Принимая во внимание точки, принадлежащие разным объектам, не имеет никакого смысла в stereoCalibrate. Вот что говорит documentation. Другими словами, вы должны передать туда «те же точки зрения, которые просматривают две камеры».
Спасибо за ответ! Я пытаюсь сделать все автоматически, но обнаруживаю одну и ту же шахматную доску на двух изображениях (с двух камер), меньше, чем на шахматной доске на бумаге, это не шутка. Я попытаюсь обнаружить всю печатную карточку. – Bino
Вы пробовали detectCheccboardCorners()? – marol
Вы бы сказали findChessboardCorners()? Да. Чтобы сделать все автоматическим, мне нужно обнаружить всю большую шахматную доску, а не доски. Я постараюсь в этом направлении. Если у вас есть другие идеи, я все уши. – Bino