Azzera filtri
Azzera filtri

Finding fitgmdist value range from histogram

4 visualizzazioni (ultimi 30 giorni)
banikr
banikr il 13 Apr 2020
Commentato: Image Analyst il 15 Apr 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);

Risposte (1)

Image Analyst
Image Analyst il 13 Apr 2020
See my File Exchange submission where you can fit the data to any number of Gaussians:
  7 Commenti
Image Analyst
Image Analyst il 15 Apr 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 il 15 Apr 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.

Accedi per commentare.

Categorie

Scopri di più su Statistics and Machine Learning Toolbox in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by