How to create a multivariate gaussian mixture model??

7 次查看(过去 30 天)
[counts,binLocations] = imhist(X);
stem(binLocations, counts, 'MarkerSize', 1 );
xlim([-1 1]);
% inital kmeans step used to initialize EM
K = 2; % number of mixtures/clusters
rng('default');
cInd = kmeans(X(:), K,'MaxIter', 75536);
% fit a GMM model
options = statset('MaxIter', 75536);
gmm = fitgmdist(X(:), K,'Start',cInd,'CovarianceType','diagonal','Regularize',1e-5,'Options',options);
The piece of code shows how to fit a GMM to a univariate Gaussian distribution. X is and image. But how this can be extended to create a a 2 component 2 dimensional multivariate GMM?

回答(1 个)

Prashant Arora
Prashant Arora 2017-7-19
Hi Akshara,
The gmdistribution function supports multivariate gaussian distributions. Check the required dimensions of mu and sigma to create a multivariate 2 dimensional 2 component distribution.

Community Treasure Hunt

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

Start Hunting!

Translated by