How to create a multivariate gaussian mixture model??

4 views (last 30 days)
[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?

Answers (1)

Prashant Arora
Prashant Arora on 19 Jul 2017
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!