具有偏移的高斯曲线拟合

时间:2015-02-26 15:55:38

标签: java apache-commons curve-fitting gaussian

我必须将高斯曲线拟合到预期有1个峰值的数据点。数据点可以在y方向上具有任意偏移。

我正在使用org.apache.commons.math3包。但是,在创建GaussianCurveFitter实例时,只能传递以下初始猜测值:

  • 正常化
  • 平均数
  • 西格玛

现在我走到这一步:

import org.apache.commons.math3.fitting.GaussianCurveFitter;
import org.apache.commons.math3.fitting.WeightedObservedPoints;

public void fitGaussian(double[] data) {
WeightedObservedPoints obs = new WeightedObservedPoints();
//add data points
for (int j = 0; j < data.length; j++) {
    obs.add(j, data[j]);
}

//fit gaussian curve
double[] parameters = GaussianCurveFitter.create().fit(obs.toList());
}

此处parameters包含上述值(Normalization,Mean,Sigma)。

有没有人知道如何将y方向的偏移量作为自由优化参数包含在内?或者也许如何转换原始数据点以适应优化器?

感谢您的帮助!

0 个答案:

没有答案