【发布时间】:2023-01-01 11:15:25
【问题描述】:
任务:给定来自 2 个不同相机的 2 张图像,从第一个相机的角度构建深度图。相机未校准,因此外在矩阵和内在矩阵是未知的。我们知道相机的位置略有不同(例如,我拍了一张照片,稍微移动了相机然后又拍了一张)。不得使用花哨的库,主要是自行实现的解决方案。
我的想法:
- 检测两个图像上的一些关键点
- 在关键点上做一些对应匹配,所以我们会有一堆关键点对,它们很可能代表两个图像上的同一个点
- 使用 Bundle Adjustment 找到外部和内部矩阵
- 从外部矩阵和内部矩阵计算基本矩阵
- 对于第一个图像上的每个像素,搜索第二个图像上的对极线(借助基本矩阵)并找到匹配位置
- 对于每个匹配对,计算对应于两个点的两条射线(线)。
- 理想情况下,它们会相交,但如果不相交,则计算第一条线上最靠近第二条线的点。
- 该点与相机本身的距离应该提供深度信息。
- 对每个点执行最后几个步骤,然后我们就有了深度图。
问题:
- 这种方法行得通吗?
- IMO,似乎有点复杂,有没有更简单的方法?
- 我能否以某种方式避免进行捆绑调整?例如。只用 8 位计算基本矩阵比较容易,但我不明白这是否足够。
- (这是问这个问题的正确地点吗?)
【问题讨论】:
标签: computer-vision vision pose-estimation