gpt4 book ai didi

opencv - 镜头畸变模型与校正模型

转载 作者:太空宇宙 更新时间:2023-11-03 21:08:13 24 4
gpt4 key购买 nike

lens model in OpenCV是一种扭曲模型,它将理想位置扭曲为相应的真实(扭曲)位置:

  • x_corrected = x_distorted ( 1 + k_1 * r^2 + k_2 * r^4 + ...),
  • y_corrected = y_distorted ( 1 + k_1 * r^2 + k_2 * r^4 + ...),

其中 r^2 = x_distorted^2 + y_distorted^2 在归一化图像坐标中(为简单起见省略了切向失真)。这也可以在 Z. Zhang 中找到:“A Flexible New Technique for Camera Calibration”,TPAMI 2000,以及 Bouguet 的“Camera Calibration Toolbox for Matlab”。

另一方面,Bradski 和 Kaehler:“学习 OpenCV”在第 376 页中介绍了透镜模型作为校正模型,它将扭曲的位置校正到理想位置:

  • x_distorted = x_corrected ( 1 + k'_1 * r'^2 + k'_2 * r'^4 + ...),
  • y_distorted = y_corrected ( 1 + k'_1 * r'^2 + k'_2 * r'^4 + ...),

其中标准化图像坐标中的 r'^2 = x_corrected^2 + y_corrected^2。Hartley 和 Zisserman:“Multiple View Geometry in Computer Vision”也描述了这个模型。

我了解校正模型和失真模型在实践中各有利弊。例如,前者使检测到的特征点位置的校正变得容易,而后者则使整个图像的失真变得简单。

我的问题是,为什么它们共享相同的多项式表达式,而它们应该是彼此的倒数?我可以找到 this document评估可逆性,但我不清楚其理论背景。

感谢您的帮助。

最佳答案

我认为简短的回答是:它们只是不同的模型,所以它们不应该是彼此的倒数。就像您已经写过的那样,每个都有自己的优点和缺点。

至于可逆性,这取决于多项式的阶数。二阶(二次)多项式很容易反转。四阶需要更多的工作,但仍然可以分析倒置。但是一旦添加了 6 阶项,您可能不得不求助于数值方法来求逆,因为 5th-order or higher polynomial在一般情况下是解析不可逆的。

关于opencv - 镜头畸变模型与校正模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39671107/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com