1

我有一组 3-d 点和一些带有这些点投影的图像。我还有相机的焦距和带有投影的图像的主要点(由先前完成的相机校准产生)。

给定这些参数,有什么方法可以找到 3-d 点和图像投影之间的自动对应关系?我浏览了一些 OpenCV 文档,但直到现在我还没有找到合适的东西。我正在寻找一种方法来自动标记投影以及它们与 3-d 点之间的对应关系。

4

1 回答 1

2

这个问题不是很清楚,但我认为你的意思是说你有相机的内在校准,而不是它相对于场景的位置和姿态(校准的“外在”部分)。

如果您只有一张图像,则此问题对于一般 3d 点云没有唯一的解决方案:请注意,如果您将 3d 点沿着将它们投射到相机中的光线移动到任何位置,图像不会改变。

如果有一张或多张图像,您就知道关于 3D 点云的所有信息(例如,这些点属于已知形状和大小的对象,并且位于其上的已知位置),并且您已经将它们与它们的图像进行了匹配,那么它是一个标准的“相机切除”问题:您只需解决使 3D 点投影到其图像上的相机外部参数。

如果您有多个图像并且您知道在相机移动时场景是静态的,并且您可以在每个相机位置将“足够”的 3d 点与它们的图像匹配,您可以按比例求解相机姿势。您可能想从 David Nister 和/或 Henrik Stewenius 的关于校准相机求解器的论文开始,然后研究“捆绑调整”。

如果你真的想了解这个(广泛的)主题,Zisserman 和 Hartley 的和​​任何书一样好。有关代码,请查看libmvvxlceres捆绑调节器。

于 2012-07-10T12:11:54.910 回答