c++ - OpenCV高斯曲线拟合

标签 c++ algorithm opencv curve-fitting

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

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

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

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

最佳答案

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

关于c++ - OpenCV高斯曲线拟合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19400216/

相关文章:

c++ - dispatch_async 仅在 iOS 设备上崩溃,为什么?

php - 如何使用 PHP 链接静态 C++ 库?

c++ - 如何将具有两个 channel 的 Mat 转换为 vector<vector<int>>?

c++ - C++ 中非常量列表迭代器的奇怪行为

c++ - 了解 gdb 输出

algorithm - 具有大量集合的优化算法(以功能方式)

python - 如何获得我们拍摄外星人的时间?

c++ - matlab 函数 "imfill(BW,' 孔的有效实现')“在 c++ 中不使用 opencv

python - 在 python 中将 tesseract 3.02 的 C API 与 ctypes 和 cv2 结合使用

python - 如何使用opencv在视频中绘制虚线