我试图找到一种方法来参数化我的单应性计算的精度。我想获得一个值,该值描述了在某个位置进行的测量的单应性计算的精度。
我目前已经成功计算了单应性(使用cv::findHomography
),我可以使用它将我的相机图像上的一个点映射到 2D 地图上(使用cv::perspectiveTransform
)。现在我想在我的 2D 地图上跟踪这些对象,为此我想考虑到在我的相机图像后面的对象在我的 2D 地图上的位置比一直在里面的对象更不精确前方。
我在这个网站上看过以下提到平面拟合的例子,但我真的不明白如何使用这种方法正确填充矩阵。结果的可视化似乎确实符合我的需求。有没有办法用标准的 OpenCV 函数来做到这一点?
编辑: 感谢 Francesco 的建议。但是,我想我正在寻找与您的答案不同的东西。我不是要测试单应性本身的精度,而是要测试一个真实相机视图中的测量密度与我创建的地图上的实际大小之间的关系。我想知道,当我在相机图像中检测到 1 个像素时,此时这将在我的地图上显示多少米。
我当然可以通过在我的相机图像上的测量周围获取一些像素来计算,然后使用单应性来查看每次我进行单应性时在我的地图上代表多少米,但我不想每次都计算这个。我想要一个公式来告诉我图像中的像素和地图上的像素之间的关系,这样我就可以考虑到我在地图上的跟踪。