computer-vision - 2个视图的捆绑调整有意义吗?
问题描述
如果我只有两个单目图像,捆绑调整真的有用吗?根据我的想法,只有当我有多个视图/图像并因此计算多个图像中一个(或实际上更多)3D 点的重投影时,束调整才有意义。为什么?因为我在每个图像中都有例如离散化错误,我可以通过捆绑调整来减轻多个图像。如果我只考虑两个视图,那么重投影误差应该几乎为零,不是吗?或者这是错误的,它对 2 张图像也很有用,因为基本/基本矩阵以及因此相对变换可能是错误的,从而导致大的错误?我很困惑,因为我见过一些实现,它们总是只在一组图像之间最小化重投影误差。
解决方案
对于一般针孔相机的图像,可以最小化两个视图的重投影误差。点的投影和三角化 3D 位置由中心投影下的两个视图明确定义。根据您的初始估计/初始重建结果的准确性,效果可能会更小或更显着。
根据我的想法,只有当我有多个视图/图像并因此计算多个图像中一个(或实际上更多)3D 点的重投影时,束调整才有意义。
好吧,您需要检测到一些 3D 点的图像坐标。根据您用于对点的 3D 位置进行三角剖分的视图数量,束调整的效果会有所不同,例如,当您将其图像坐标包含在 3 个图像中并将其最小化时,应改进从 2 个视图三角剖分的点这三个视图的重投影误差是非线性的,而不是基于两个视图执行线性三角剖分。
这还取决于您是否还优化了相机参数。在这种情况下,当基于具有足够视图改变的大量图像时,束调整应该更准确。
在仿射成像属性和相机模型的情况下,您只能使用在至少三个图像中检测到的点。否则,结果是模棱两可的。
推荐阅读
- qt - Qt / QML - 分组和重用元素
- cassandra - 如果 Cassandra 中的一个 DC 用完物理内存会怎样?
- elixir - Elixir将字符串转换为地图代码不起作用
- java - Android-如何从其他类更改按钮的颜色并更改布局的可见性?
- laravel - 如何在 Forge 身份验证期间禁用防护
- firebase - 将匿名帐户转换为电话号码帐户
- r - 在 rstudio 中安装 rpf 包时出现“致命错误:Eigen/Core:没有这样的文件或目录”
- python - 无法在 pyserial 上发送 Enter 命令
- android - Jsoup在网页中找不到视频
- angularjs - Springboot web应用:加载资源失败:服务器响应状态为404()