Gaussian mixture curve fitting
Mostra commenti meno recenti
How does one curve fit a 2 dimensional gaussian mixture to data? I know that the function 'gmdistribution.fit' models the data as a multidimensional gaussian mixture, but I want to do curve fitting instead. I tried using the 'nlinfit.m' function by writing my own model function but I run into errors because I cannot constrain the co variance matrix to be positive semi definite.
2 Commenti
the cyclist
il 10 Nov 2014
Modificato: the cyclist
il 10 Nov 2014
Do you mean one-dimensional data ("x") that is fit by the sum of two component gaussians in that dimension, or do you mean two-dimensional data ("x" & "y") fit by one (or more?) gaussian(s) in each dimension?
Risposte (2)
the cyclist
il 10 Mar 2015
0 voti
I don't have any experience doing this in MATLAB, but it sounds to me like the fit function in the Curve Fitting Toolbox is exactly what you need.
That page shows a simple example of fitting a surface. Your case would be a bit more complicated, because you want to fit a custom function, but it seems that this is possible.
Edgar
il 20 Nov 2018
0 voti
Hello there,
I have a curve which I want to fit using a mixture of two gaussians. As in the original question, I have checked fitgmdist but that expects the data, rather than curve fitting.
Is there a way to fit a mixture of gaussians to a curve? I do not have the curve fitting toolbox.
Any ideas?
Thanks!
2 Commenti
Image Analyst
il 20 Nov 2018
See attached demo.

Jaroslav Hook
il 17 Lug 2020
This wors fine as long as the curves do not overlaps
Categorie
Scopri di più su Linear and Nonlinear Regression in Centro assistenza e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!