精华内容
下载资源
问答
  • matlab一维高斯函数拟合
    千次阅读
    2021-04-25 11:33:08

    x=[1,1;        2,1;        3,1;        4,1;        5,1;        6,1;        7,1;        8,1;        9,1;        10,1;        11,1;        12,1;        13,1;        14,1;        15,1;        16,1;        17,1;        18,1;        19,1;        20,1;

    1,2;        2,2;        3,2;        4,2;        5,2;        6,2;        7,2;        8,2;        9,2;        10,2;        11,2;        12,2;        13,2;        14,2;        15,2;        16,2;        17,2;        18,2;        19,2;        20,2;

    1,3;        2,3;        3,3;        4,3;        5,3;        6,3;        7,3;        8,3;        9,3;        10,3;        11,3;        12,3;        13,3;        14,3;        15,3;        16,3;        17,3;        18,3;        19,3;        20,3;

    1,4;        2,4;        3,4;        4,4;        5,4;        6,4;        7,4;        8,4;        9,4;        10,4;        11,4;        12,4;        13,4;        14,4;        15,4;        16,4;        17,4;        18,4;        19,4;        20,4;

    1,5;        2,5;        3,5;        4,5;        5,5;        6,5;        7,5;        8,5;        9,5;        10,5;        11,5;        12,5;        13,5;        14,5;        15,5;        16,5;        17,5;        18,5;        19,5;        20,5;

    1,6;        2,6;        3,6;        4,6;        5,6;        6,6;        7,6;        8,6;        9,6;        10,6;        11,6;        12,6;        13,6;        14,6;        15,6;        16,6;        17,6;        18,6;        19,6;        20,6;

    1,7;        2,7;        3,7;        4,7;        5,7;        6,7;        7,7;        8,7;        9,7;        10,7;        11,7;        12,7;        13,7;        14,7;        15,7;        16,7;        17,7;        18,7;        19,7;        20,7;

    1,8;        2,8;        3,8;        4,8;        5,8;        6,8;        7,8;        8,8;        9,8;        10,8;        11,8;        12,8;        13,8;        14,8;        15,8;        16,8;        17,8;        18,8;        19,8;        20,8;

    1,9;        2,9;        3,9;        4,9;        5,9;        6,9;        7,9;        8,9;        9,9;        10,9;        11,9;        12,9;        13,9;        14,9;        15,9;        16,9;        17,9;        18,9;        19,9;        20,9;

    1,10;        2,10;        3,10;        4,10;        5,10;        6,10;        7,10;        8,10;        9,10;        10,10;        11,10;        12,10;        13,10;        14,10;        15,10;        16,10;        17,10;        18,10;        19,10;        20,10;

    1,11;        2,11;        3,11;        4,11;        5,11;        6,11;        7,11;        8,11;        9,11;        10,11;        11,11;        12,11;        13,11;        14,11;        15,11;        16,11;        17,11;        18,11;        19,11;        20,11];

    y=[0    0   0   0   0   0   0   0   28  0   32  43  0   0   0   0   0   0   0   0

    0    0        24        26        45        42        40        37        44        32        42        54        42        55        49        59        44        39  0   0

    0    34        34        44        75        85        73        89        80        47        81        68        69        69        95        75        76        48  0   0

    0        38        42        70        114        164        148        145        136        74        148        131        152        152        157        126        114        66        55  0

    33        50        50        109        166        224        206        220        190        116        184        156        180        188        178        177        148        75        50        43

    35        41        84        160        197        226        249        237        217        199        168        172        187        188        180        182        165        98        50        32

    34        48        77        131        206        214        205        202        185        163        158        147        152        140        137        150        121        93        60        38

    0        36        61        89        129        143        124        123        106        120        78        85        87        74        82        99        99        62        31        0

    0        18        45        56        67        61        68        66        56        53        59        55        44        40        37        40        63        32        0        0

    0        0        31        52        36        53        34        38        46        33        35        29        20        30        25        21        30        28        0   0

    0    0   0   0   0   0   0   0   0   0   22  0   0   0   0   0   0   0   0   0];

    func=inline('(2*pi*a(2)*a(4)*(1-a(5)^2)^0.5)^(-1).*exp(-1./(2.*(1-a(5))).*((x(:,1)-a(1)).^2./a(2).^2)-(2.*a(5).*(x(:,1)-a(1)).*(x(:,2)-a(3)))./(a(2).*a(4))+(x(:,2)-a(3)).^2./a(4).^2)','a','x');%二维高斯表达式

    a0=rand(1,5);

    [a,r] = nlinfit(x,y,func,a0) %函数拟合得到其正态分布参数μ1=a(1),sigma1=a(2),μ2=a(3),sigma2=a(4),ro=a(5)

    更多相关内容
  • 该程序生成个二维高斯。 然后程序尝试使用 MatLab 函数“lsqcurvefit”拟合数据,以找到二维高斯的位置、方向和宽度。... 二维高斯函数由函数“D2GaussFunctionRot.m”和“D2GaussFunction.m”定义
  • 函数对数据分布进行高斯拟合。 它基于 MATLAB 内置函数 lscov。 实际上,它是分布日志空间中 lscov 的接口。 它还实现了种自动计算权重数组的算法,以消除分布尾部噪声引入的偏差。
  • MATLAB用“fitgmdist”函数拟合高斯混合模型(一维数据)在MATLAB中...1. 一维高斯混合数据的产生function data=generate_GMM()%前两列是数据,最后一列是类标签%数据规模N=300;%数据维度% dim=1;%%%混合比例para...

    MATLAB用“fitgmdist”函数拟合高斯混合模型(一维数据)

    在MATLAB中“fitgmdist”的用法及其GMM聚类算法中介绍过"fitgmdist"函数的用法,这次用"fitgmdist"拟合一维数据。

    1. 一维高斯混合数据的产生

    function data=generate_GMM()

    %前两列是数据,最后一列是类标签

    %数据规模

    N=300;

    %数据维度

    % dim=1;

    %%

    %混合比例

    para_pi=[0.3 0.2 0.5];

    %第一类数据

    mul=0; % 均值

    S1=1; % 协方差

    data1=mvnrnd(mul, S1, para_pi(1)*N); % 产生高斯分布数据

    %第二类数据

    mu2=4;

    S2=2;

    data2=mvnrnd(mu2,S2,para_pi(2)*N);

    %第三类数据

    mu3=-4;

    S3=1;

    data3=mvnrnd(mu3,S3,para_pi(3)*N);

    data = [data1, ones(para_pi(1)*N,1); data2, 2*ones(para_pi(2)*N,1); data3, 3*ones(para_pi(3)*N,1)];

    save data_gauss data

    2. 拟合高斯混合模型

    load data_gauss

    data=data(:,1);

    K=3;

    gmm=fitgmdist(data, K);

    % 自定义参数

    % RegularizationValue=0.001; %正则化系数,协方差矩阵求逆

    % MaxIter=1000; %最大迭代次数

    % TolFun=1e-8; %终止条件

    % gmm=fitgmdist(data, K, "RegularizationValue", RegularizationValue, "CovarianceType", "diagonal", "Start", "plus", "Options", statset("Display", "final", "MaxIter", MaxIter, "TolFun", TolFun));

    [N, D]=size(data);

    mu=gmm.mu; %均值

    Sigma=gmm.Sigma; %协方差矩阵

    ComponentProportion=gmm.ComponentProportion; %混合比例

    Y=zeros(N, K);

    for k=1:K

    Y(:,k)=ComponentProportion(k).*normpdf(data, mu(k), Sigma(:,:,k));

    end

    YY=sum(Y, 2);

    plot(data,YY,"r.")

    3. 结果

    f0523625ddb11c060a4f8daaf218ad4c.png

    展开全文
  • MATLAB实现高斯曲线拟合

    万次阅读 2019-11-26 16:21:18
    MATLAB实现高斯曲线拟合 完成某次课程任务,在MATLAB中新建个m文件,将下列代码复制,或者直接复制到命令栏回车即可使用 x=[0:0.1:10];%0—10每次加0.1,共101个点 y=50*exp(-(x-5).^2./2);%x,y为初始函数值表现...

    MATLAB实现高斯曲线拟合

    完成某次课程任务,在MATLAB中新建一个m文件,将下列代码复制,或者直接复制到命令栏回车即可使用

    x=[0:0.1:10];%0—10每次加0.1,共101个点
    y=50*exp(-(x-5).^2./2);%x,y为初始函数值表现为红线
    x=x';%因为拟合曲线时需要列向量
    y=y';
    y0=1*randn(1,101);%添加噪声//形成1行101列随机数
    y0=y0';%y1为添加噪声后的函数,表现为点
    y1=y+y0;%加上噪声后的函数值
    Mytype=fittype('A*exp(-(x-u)^2/(2*d^2))');%需要拟合的函数类型
    [cf ,gof]=fit(x(:),y1(:),Mytype)%fit函数
    xi=0:0.1:10;
    yi=cf.A*exp(-(xi-cf.u).^2/(2*cf.d^2));%xi,yi为拟合后的函数
    plot(x,y1,'g.');%加噪声的函数为绿色的点
    hold on;
    plot(xi,yi,'r');%拟合后的曲线为红色的线
    plot(x,y,'b');%拟合前的标准曲线为蓝色的线
    
    

    在这里插入图片描述

    展开全文
  • 函数显示了如何将噪声数据拟合到超高斯。 首先,估计面积、宽度和中心点。 然后找到可能的超高斯整数扫描的最小值。 解决方案是最合适的。 拟合演示,使用了图像工具箱的 imnoise 功能。 可以将其注释掉以仅...
  • 此函数采用一维略带噪声的测试信号,并使用 fminsearch() 函数拟合 6 个高斯函数。 确定每个高斯的参数(幅度、峰值位置和宽度)。 6 个高斯信号应加在一起以给出原始测试信号的最佳估计值。 您可以指定任意数量的...
  • %% 绘制自定的双峰高斯曲线A1=2;mu1=35;sigma1=10;A2=3;mu2=90;sigma2=10;x=0:0.1:200y=A1*exp(-(x-mu1).^2/(2*sigma1^2))+A2*exp(-(x-mu2).^2/(2*sigma2^2))plot(x,y,'*');hold ony1=fliplr(y)/fliplr(max(y));x1=...

    clc;

    clear;

    %% 绘制自定的双峰高斯曲线

    A1=2;

    mu1=35;

    sigma1=10;

    A2=3;

    mu2=90;

    sigma2=10;

    x=0:0.1:200

    y=A1*exp(-(x-mu1).^2/(2*sigma1^2))+A2*exp(-(x-mu2).^2/(2*sigma2^2))

    plot(x,y,'*');

    hold on

    y1=fliplr(y)/fliplr(max(y));

    x1=fliplr(x)/fliplr(max(x));

    ymax=max(y);

    %%  尝试用高斯拟合自行拟合并绘图

    %fun=fittype('nA1*exp(-(x-nmu1)^2/(2*nsigma1^2))+nA2*exp(-(x-nmu2)^2/(2*nsigma2^2))')

    %[cf,gof]=fit(x1(:),y1(:),fun,'Start',[]);

    %% Interpolate the data

    % k=1:length(x1);

    % ki=linspace(1,length(x1),2000);

    % xi=interp1(k,x1,ki,'linear');%一维线性插值

    % yi=interp1(k,y1,ki,'linear');

    % Yi=cf.nA1*exp(-(xi-cf.nmu1).^2/(2*cf.nsigma1^2))*ymax+cf.nA2*exp(-(xi-cf.nmu2).^2/(2*cf.nsigma2^2))*ymax

    % plot(xi*max(x),Yi,'b');

    %%  用matlab自带高斯拟合进行拟合并绘图

    pop=y';

    cdate=x';

    ftype = fittype('Gauss2');

    [f,gof,output]= fit(cdate,pop,ftype);

    x1=x;

    y1=y;

    y2=f(x1);

    plot(x1,y1,'r.',x1,y2,'k-','LineWidth',2),xlabel('t'),ylabel('f(t)');

    legend('原始数据点','拟合曲线')

    以上是代码,我用双高斯函数拟合时始终不能拟出两个高斯峰,但是用CTOOL里的'Gauss2'就可以拟合的非常好?

    1.PNG

    (32.14 KB, 下载次数: 3)

    2017-4-5 12:36 上传

    442a53943febe9465fc072b4fbe10813.gif

    b2a5a3e0dcc7d508e00275fe42fce1b5.gif

    用GAUSS2拟合

    0b6a82679b4bc78fbdba90c0c7f7ebab.png

    2.PNG

    (28.78 KB, 下载次数: 2)

    2017-4-5 12:36 上传

    442a53943febe9465fc072b4fbe10813.gif

    b2a5a3e0dcc7d508e00275fe42fce1b5.gif

    用自己给的双高斯函数拟合

    d194d1749e38509bebdbcdc1dfa92fc4.png

    展开全文
  • 尽管拟合是由Matlab自己的“拟合函数执行的,但合理拟合的秘诀是正确输入初始参数。这就是“聪明”部分发生的地方。它基于数据的统计分布,而不仅仅是取最大值或最小值等,提供了对振幅、噪声地板、波束中心坐标和...
  • 由于上篇博文提到的多项式拟合模型的拟合系数没有任何物理意义,而化学分析中,有许多具有明确物理意义的二谱图,图光谱、色谱等,其信号峰位置、峰高、峰宽等均具有实际物理意义,因此,提出使用高斯曲线进行...
  • 终端探测器探测到的光斑灰度分布函数可近似看做高斯分布,因此可以通过二维高斯函数进行拟合,模型表示为: 效果图: 为了方便计算,做一步变换,两边取对数,得到: 展开并进一步变形为: 求解...
  • 如何将二维高斯函数拟合Matlab 中的噪声数据? 或者具有其他维度和任意拟合函数的数据? 我花了段时间才弄清楚 Matlab 如何通过 lsqcurvefit、fmincon 或 fminsearch 函数来做到这一点。 该项目演示了如何使用...
  • matlab算法提供了除解线性方程组外另高斯曲面拟合方法(附求解函数说明)
  • matlab插值拟合

    千次阅读 2021-04-18 12:02:32
    Matlab 中插值拟合函数汇总和使用说明命令 1 interp1 功能 一维数...matlab中插值拟合与查表_数学_自然科学_专业资料。MATLAB 中的插值、...MATLAB插值与拟合实验报告材料_其它_工作范文_实用文档。实用标准文档 ...
  • 高斯函数在图像处理中的应用

    千次阅读 2021-04-21 11:32:15
    高斯函数简介谓径向基函数 (Radial Basis Function 简称RBF), 就是某种沿径向对称的标量函数。 通常定义为空间中任一点x到某中心xc之间欧氏距离的单调函数, 可记作 k(||x-xc||), 其作用往往是局部的 , 即当x远离xc...
  • 维高斯混合函数,如(2)式所示。 (2) 可以看出二维高斯混合模型,其中的d为数据的维度,在这里等于2;∑ 代表协方差矩阵,两行两列;这里的x以及μ都是二维的数据,用矩阵表示就是行两列。 协方差矩阵 ...
  • 使用Matlab对散点进行函数拟合

    千次阅读 2020-02-17 22:56:42
    使用Matlab对散点进行函数拟合曲线拟合工具箱介绍1 单一变量的曲线逼近2 启动曲线拟合工具箱3 进入曲线拟合工具箱界面“Curve Fitting tool”4 注意5 参考 曲线拟合工具箱介绍 Matlab个功能强大的曲线拟合工具箱...
  • 我们对其中个酒厂的数据进行了二维高斯拟合,得到了类似的结果。 好的? 这就是二维高斯。 因此,它是整个平面上的分布,分布在每个可能的对x 1 x 2上。 这就是这里显示的密度。 因此,此处的密度由表面上方的高度...
  • 本文解决的用matlab实现数组的概率分布函数拟合一维数组不知道他的分布情况下。对数的频率分布直方图尽可能拟合。 数组我们用matlab自带的函数来生成。频数统计区间默认划 首先生成一个服从(0,0.5^2)的高斯...
  • MATLAB/C)高斯拟合法求光斑中心

    万次阅读 多人点赞 2020-08-21 15:23:41
    光斑图、阵列图、灰度图圆形等目标中心定位方法。分享高斯拟合法和更为简单的中心、重心法MATLAB代码,以及基于Eigen库的高斯拟合法C代码。互助互助
  • 利用matlab实现非线性拟合0 前言1 线性拟合1.1 多项式拟合1.2 线性拟合2 一维非线性拟合2.1 简单的非线性拟合2.2 matlab中Curve Fitting App2.3 matlab中非线性拟合的实现2.3.1 fit()函数2.3.2 nlinfit()函数2.3.3 ...
  • 今天准备弄双高斯拟合,看到个信号峰拟合MATLAB版本的程序,大体看了一下,很不错,先MARK一下,以后再详细研究。  http://terpconnect.umd.edu/~toh/spectrum/CurveFittingC.html ... 下面是其
  • Matlab学习手记——二维高斯曲面拟合法定位光斑中心Matlab学习手记——二维高斯曲面拟合法定位光斑中心终端探测器探测到的光斑灰度分布函数可近似看做高斯分布,因此可以通过二维高斯函数进行拟合,模型表示为:效果...
  • 自动高斯和 Gabor 曲面拟合--- 用于将一维高斯拟合到曲线以及将二维高斯或 Gabor 拟合到曲面的函数。 例程是自动的,因为它们不需要指定模型参数的起始猜测。 这是通过评估许多不同参数选择的拟合质量,然后通过最小...
  • [使用Matlab进行拟合是图像处理中线条变换的个重点内容,本文将详解Matlab中的直线拟合和曲线拟合用法。关键函数:fittypeFit type for curve and surface fittingSyntax在图像处理中经常要用到高斯函数,高斯滤波...
  • 计算质心,二维高斯拟合参数,FFT,PSD和散点统计 先决条件 需要MatlabMatlab曲线拟合工具箱。 对于本机ANDOR文件(.sifx,.sif),需要MATLAB SIF阅读器。 处理数据集 默认的类构造函数方法“ Basler”和“ Andor...
  • .matlab个功能强大的集成软件,其绘图功能十分强大,在绘制三空间网格点图的时候,只需要使用cftool工具箱就能实现三空间绘图。 二.cftool工具箱就是应用程序中的Curve Fitting应用。 三.用页面展现实现...
  • ,越接近1,表明方程的变量对y的解释能力越强,这个模型对数据拟合的也较好 关于MATLAB曲线拟合的几点学习心得: 最小二乘法拟合常用的多项式曲线拟合函数是polyfit和polyval,这两个函数的具体用法如下图所示: ...
  • 最小二乘法高斯曲线拟合学习笔记

    千次阅读 2019-11-25 17:11:43
    最小二乘法(又称最小平方法)是种数学优化技术。它通过最小化误差的平方和寻找数据的最佳函数匹配。利用最小二乘法可以简便地求得未知的数据,并使得这些求得的数据与实际数据之间误差的平方和为最小。最小二乘法...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,562
精华内容 1,024
热门标签
关键字:

matlab一维高斯函数拟合