我在 openCV 的三角测量功能中遇到了一个奇怪的问题。对于我的两视图姿态估计测试,我这样做:
案例 1:单个相机从两个视图拍摄场景,然后计算基本矩阵并对场景进行三角剖分:效果相当好。
案例 2:我正在尝试使用两台相机(均已校准)进行此操作,但三角测量失败。对于来自相同姿势的图像对,三角点应该或多或少相同(实际上它们在情况 1 中是相同的),但现在它们正在漂移。
例子:
t1 = [0.9950924870426178, 0.0518147862900856, -0.08429810290303305] (cam 2 at 0, 0, 0)
Homogenized feature match: (-0.1558, -0.1504, 1); (-0.0574, -0.1619, 1);
Triangulated point: [-4.8177, -4.6760, 30.92588]
t2 = [0.9962326376676536, 0.05676863562110455, -0.08508433760191333] (approx. the same as before)
Homogenized feature match: (-0.1557, -0.1504, 1); (-0.0574, -0.1619, 1); (approx. the same)
Triangulated point: [-2.3599, -2.3053, 15.1603]
我在这里做错了什么?对于下一组点,triangulatePoints 提出了另一个奇怪的估计。