Fitting a gauss curve to a certain histogram peak in c++
关于如何将高斯曲线拟合到柱状图峰值,我有两个问题。我的第一个问题是一个非常基本的问题:
下面的例子对吗?:假设(举个例子)我有一个带有5个颜色值的图像直方图。在x轴上有5个颜色值,在y轴上有每个颜色值的频率。即。:
值1:1次
值2:4次
值3:7次
值4:3次
值5:2次
现在平均值(μ)为3(μ=3)。
偏差(?)会是0.9(?=0.9)。公式:
现在我用密度函数公式中的这些值来计算高斯曲线?
对吗?不幸的是,我对数学背景有点不太了解。
我很抱歉这个问题有点数学化,但我找不到更好的地方问它。我也读了一些类似的话题,但不幸的是,他们最终没有回答我的问题。
谢谢你的帮助!
尊敬的马克
对于单个峰值,您的简单方法应该是可以的。[顺便说一句,我认为这是一个与图像相关的编程问题。]
多峰比较困难。解决峰值的过程称为反褶积(http://en.wikipedia.org/wiki/decolution),通常没有唯一的答案。您可能需要决定有多少个峰值,或者一个峰值的最小方差是多少(否则您可以为每个bin创建一个峰值:-)。
我认为你估计单个高斯参数的方法是正确的。
对于多个高斯人,您可能希望查找混合模型或更具体地说是高斯人的混合。只需注意几点: