我必须使用足球场上的几幅图像来找到相机的位置。使用这些图像,我可以找到将3D模型中的点(以米为单位)转换为图像中的点(像素)的单应性。每张照片可以具有不同的焦距,因此相机的内在特性可以改变。我在C++中使用OpenCV。
我找到了类似问题的解决方案,但是you already have the camera calibrated, with a fixed focal length(在这种情况下,您只需要一张图片)或you don't have the camera calibrated but you consider that its intrinsic doesn't change(在这种情况下,您至少需要3张图片)。
无论如何,除了同形异义物(具有不同的焦距)之外,什么都找不到相机在3D模型中的位置?
最佳答案
简短答案:不可以。
如果没有有关摄像机的任何其他信息,则无法唯一定位摄像机。相机属性和位置的多个组合将产生相同的图像。
您可能可以沿某个3D线限制摄像机的位置,并将问题减少到1个自由度,如果有帮助的话。