首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过opencv projectPoints()使用Levenberg-Marquardt优化算法估计校准误差

通过opencv projectPoints()使用Levenberg-Marquardt优化算法估计校准误差
EN

Stack Overflow用户
提问于 2016-06-21 15:22:21
回答 1查看 843关注 0票数 3

在相机校准中,我使用calibrateCamera()从校准模式的多个视图中查找相机参数。它准确地做了两件事:

1)闭合估计初始摄像头参数,假设镜头失真为零。

2)运行全局Levenberg-Marquardt优化算法以最小化重投影误差,这是使用projectPoints()完成的

现在,我不想只计算最小化的重投影误差,而是计算导致它的拟合参数。目前还没有返回无错误参数的函数。因此,我想我应该使用projectPoints()来获得重新投影的图像点,然后使用重新投影的图像点和世界点再次校准并获得无误差的参数。问题是,这不是我确定会给我输出的东西。有人能告诉我是不是这样吗?任何帮助都将不胜感激。

EN

回答 1

Stack Overflow用户

发布于 2020-05-30 17:36:03

Levenberg-Marquardt将为您提供对模型和数据能力的最佳估计。除非你的输入数据是无噪声的,并且你的模型复杂性与真实模型的复杂性相匹配,否则你不能获得没有错误的参数。

例如,您的模型是:x*2+y= z,其中x>0,x是整数

输入数据z={3}

根据您的初始值,Levenberg-Marquardt将给出:(x = 1,y= 1)或(x=2,y=-1)或...哪些是无错误的

但是,在输入z相同的情况下,如果您的模型为:x*2= z,其中x>0且x为整数

你不可能得到一个没有错误的参数

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37937966

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档