Borrar filtros
Borrar filtros

Finding fitgmdist value range from histogram

4 visualizaciones (últimos 30 días)
banikr
banikr el 13 de Abr. de 2020
Comentada: Image Analyst el 15 de Abr. de 2020
Hello Altruists,
I have some data in 'rawdata.mat'
I want find the intensity distribution of the rawdata. For example, if we take the histogram of:
H = histogram(J);
Looks like there are 2/3 Gaussian models. I want to take the one with maximum mean. But how do I find the range of values under that Gaussian distribution. For example the max Gaussian mean is at 234.
How do I choose the range of the Gaussian distribution?
GMModel = fitgmdist(double(J),2);

Respuestas (1)

Image Analyst
Image Analyst el 13 de Abr. de 2020
See my File Exchange submission where you can fit the data to any number of Gaussians:
  7 comentarios
Image Analyst
Image Analyst el 15 de Abr. de 2020
You're getting some sort of error. It's not being displayed because it seems some helper functions are not included. I'm including them here.
Image Analyst
Image Analyst el 15 de Abr. de 2020
Your data does not fit 3 or even 4 Gaussians well at all. Anyway, I'm attaching the code, test1.m, that works for 4 Gaussians and you can see that there is not a good fit for just Pure Gaussians.
There seems to be a ramp. You might try using fitnlm() and add in the ramp. I'm attaching a demo for fitnlm.
Adapt it to fit 3 Gaussians.

Iniciar sesión para comentar.

Categorías

Más información sobre Statistics and Machine Learning Toolbox en Help Center y File Exchange.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by