将数据分解成多个高斯函数之和, 如下图所示:
- 用多个高斯函数对数据进行表示, 公式如下:
式中,
- 采用最小二乘与迭代方式求解高斯函数的参数
知道高斯核个数时, 可以使用如下方法:
gStr = gaussianFit(x,y,gNum); % x,y为数据, gNum为高斯核个数
不知道高斯核个数时, 可以使用如下方法, 自动进行高斯拟合, 寻找最合适的高斯核个数:
gStr = autoGauFit(x,y,gNum); % x,y为数据
详见 test.m
文件.
visualizationProcess(x, y, gStr, 'final'); % 最终结果
% visualizationProcess(x, y, gStr, 'process'); % 处理过程
处理过程可视化如下图所示:
same = 1; % same=1, x 和 y 方向方差相同; same=0, 方差不同
gStr = gaussianFit2D(x, y, z, same);
如下所示:
% visualizationProcess2D(x, y, z, gStr, 'final'); % 最终结果
visualizationProcess2D(x, y, z, gStr, 'process'); % 最终结果