OpenCV高斯曲线拟合

Posted

技术标签:

【中文标题】OpenCV高斯曲线拟合【英文标题】:OpenCV gaussian curve fitting 【发布时间】:2013-10-16 09:51:34 【问题描述】:

我正在寻找使用 OpenCV 拟合高斯曲线。 我可以有 1D 或 2D Mat,我想计算矩阵上最佳高斯拟合的高斯参数。 但是,我希望能够修复一些参数(例如高斯均值或方差)。 我想拟合的一维模型如下:

y = a + (b - a) * exp( -( x - c )/( 2 * d^2 ) )

在二维Mat的情况下,模型与多元高斯函数相同。

OpenCV 是否有一些适合我的拟合需求的实现? 如果是,你能提供一个例子或一些有用的链接吗? 提前谢谢你。

【问题讨论】:

【参考方案1】:

拟合高斯曲线仅意味着计算其参数,在一维情况下是标量均值和方差。 Mean = sum(Xi)/nvariance = sum(Xi-mean)^2/(n-1),其中^2 表示平方。这对于 2D 案例变得更加有趣。平均值仍然以相同的方式计算,但它变成了一个二维向量。您计算的不是方差,而是像this 这样的协方差矩阵。它是 2x2 矩阵。

【讨论】:

【参考方案2】:

在 OpenCV 中没有什么可做的。但是,如果您导出方程(Hessian 矩阵等),您可以轻松地使用 cv::Mat 矩阵类型实现一些 Levenberg-Marquardt 估计过程。

【讨论】:

真的吗? LM是所有问题的解决方案,包括高斯曲线拟合?

以上是关于OpenCV高斯曲线拟合的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 LMfit 将曲线拟合到双高斯/偏斜高斯

C++ opencv曲线拟合

OpenCV曲线拟合与圆拟合

python 拟合曲线并求参

OpenCV中实现曲线与圆拟合

已知所有点,怎么用OpenCV写正弦的拟合曲线?