我对相机校准过程中的重投影误差有点困惑。我的理解是,重投影误差描述了检测点和世界点之间的差异。我甚至发现一个值<1是“好”。
但它能说明什么呢?我的意思是,例如,重投影误差是2:这意味着距离是2px,到目前为止还不错。但就校准而言,这意味着什么?需要校准吗?或者这个值会被校准过程调整为0吗?
更笼统地说:价值导致了什么?告诉我们什么?
发布于 2017-05-09 20:58:32
重投影误差提供了一种定性的精确性度量。重投影误差是校准图像中检测到的模式关键点与投射到同一图像中的对应世界点之间的距离。showReprojectionErrors函数为每幅校准图像的平均重投影误差提供了一个有用的可视化显示。如果总体平均重投影误差过高,请考虑排除误差最大的图像并进行校正。
就像这样想。假设你在校准一张脸。你的模型假设你脸上的每个关键点是一定比例的。当然,每一张照片都会与你的模型略有不同的比例差异。你的模型取了大约100个,用平均值来确定脸部的“平均”比例。但是,如果其中10幅图片是以奇怪的角度,或以某种方式被扭曲的,又会怎样呢?他们是离群分子,他们可能会抛弃你的模型。也许最好将它们排除在模型计算之外,这样您就可以得到一个更规范化的正常面孔的模型。您可以通过查看重投影错误来判断出什么是错误的。
发布于 2022-08-05 08:40:50
“重投影误差”是一个术语,用于表示因源不同而略有不同的数量。包括:
OpenCV的cv::calibrateCamera()返回所有长度的均方根。在不同的设置下得到的两个RPE值是不可直接比较的。像素大小、图像噪声、镜头畸变和摄像机模型起着一定的作用。
由于图像噪声和镜头模糊,RPE永远不会精确到0 0px,这就限制了检测精度,而相机模型(如Brown-Conrady)无法100%准确地建模复杂的镜头/传感器组合。
校准后的2.0px值对于具有中长焦距的标准质量照相机来说有点高。一些消息来源指出,RPE < 1.0px通常是可以接受的,但这在很大程度上取决于相机的类型、校准过程的质量以及您对应用程序的精度要求。
你必须仔细地解释这个数值(过拟合),而一个低值并不等于一个精确的校准。您可以使用它来识别校准中的问题,并比较同一相机系统的两种校准。
关于这个主题的一篇深入的文章可以在这里找到:https://calib.io/blogs/knowledge-base/understanding-reprojection-errors
https://stackoverflow.com/questions/43878684
复制相似问题