Как правильно использовать cv :: triangulatePoints ()
Я пытаюсь триангулировать некоторые моменты с OpenCV, и я нашел этоcv::triangulatePoints()
функция. Проблема в том, что почти нет документации или примеров.
У меня есть некоторые сомнения по этому поводу.
Какой метод он использует? Я провел небольшое исследование о триангуляции, и есть несколько методов (Линейный, Линейный LS, Собственный, итерационный LS, Итерационный Собственный, ...), но я не могу найти, какой из них он использует в OpenCV.
Как я должен использовать это? Похоже, что в качестве входных данных ему нужна матрица проекции и3XN гомогенный2D точки. Я их определил какstd::vector<cv::Point3d> pnts
, но в качестве выхода это нужно4xN массивы и, очевидно, я не могу создатьstd::vector<cv::Point4d>
потому что он не существует, так как мне определить выходной вектор?
На второй вопрос я попробовал:cv::Mat pnts3D(4,N,CV_64F);
а такжеcv::Mat pnts3d;
, ни один, кажется, не работает (это исключение).