Я вычислил трифокальный тензор и соответствующие матрицы проекций P_0
, P_1
а также P_2
из линейных соответствий более 3 видов, в соответствии с ‘Multiple View Geometry Хартли & Циссерман, 2-е издание ‘, Глава 16. Вычисленные матрицы:
P_0 =
[1 0 0 0
0 1 0 0
0 0 1 0]
P_1 =
[-0.284955 -0.129918 -0.0276358 0.922516
0.122053 0.560496 0.061383 0.385913
0.00455229 -0.0114709 -0.607497 0.00589735]
P_2 =
[0.21558 -0.10182 0.00499782 0.998876
0.0079606 0.11325 0.0226247 0.047112
0.006613 -0.00260303 -0.130705 0.00512245]
Теперь я хочу вычислить трехмерные (плюкерные) линии из этих проекционных матриц. Я знаю собственную матрицу камеры K
, То, что я не понимаю, как включить внутреннюю матрицу K
с нормированными проекционными матрицами из трифокального тензора P_1
, P_2
а также P_3
для того, чтобы получить правильную 3D информацию. Более конкретно, я хочу следовать процедуре триангуляции, описанной Бартоли и Штурм (Раздел 4, Триангуляция).
Я ценю вашу помощь.
Что вы имеете в виду с правильной 3D-информацией? Вся система координат вычисляется только в масштабе.
Какой именно алгоритм вы использовали для расчета? Алгоритм 16.2 в этой главе?
Почему бы вам не использовать алгоритм триангуляции здесь:
http://www.robots.ox.ac.uk/~vgg/hzbook/code/vgg_multiview/vgg_line3d_from_lP_lin.m
http://www.robots.ox.ac.uk/~vgg/hzbook/code/vgg_multiview/vgg_line3d_from_lP_nonlin.m