提问人:thAngryUnicorn 提问时间:6/8/2023 更新时间:6/8/2023 访问量:45
用于计算具有 8 个以上匹配项的基本矩阵的 8 点算法
8-point algorithm for computing the fundamental matrix with more than 8 matches
问:
是否必须仅使用 8 个匹配项来计算 8 点算法?
假设我有 n > 8 场比赛。当尝试求解方程组以计算基本矩阵 F 时,我是否必须选择一个 8 个点的子集来构建 A,或者我可以创建 n 行的矩阵 A,然后用更大的 A 求解 SVD。
分解较大 A 的 SVD 会更好吗?还是会更糟?
谢谢
我查看了《多视图几何》一书的第 11 章。虽然他们简要讨论了 A 矩阵的秩对应于一个 8 时的唯一解这一事实,但我似乎找不到他们是否讨论了这个确切的观点。
谢谢
答:
1赞
Cris Luengo
6/8/2023
#1
匹配越多越好,因为该解决方案对估计位置的异常值(不匹配)和噪声的鲁棒性更强。
如果匹配超过 8 次,您就拥有了一个超确定的方程组,可以使用最小二乘法求解。
表示这个方程组的矩阵的 SVD 将为您提供最小二乘解,因此您甚至不需要更改代码......
评论
0赞
Francesco Callari
6/10/2023
答案可能更清楚:只要额外的匹配都是内数,解决方案就会更准确。如果不知道它们是否是,则可以使用最小算法(例如 8 点算法)作为 RANSAC 中的求解器或类似的鲁棒算法来选择一组内数。然后,求解所有内数将产生一个改进的解决方案。
0赞
Cris Luengo
6/10/2023
@FrancescoCallari 好点,请发布答案。
评论