GMMSAMP |
Generates sample from Gaussian mixture model.
Synopsis:
data = gmmsamp(model,num_data)
Description:
This function generates num_data samples from a Gaussian
mixture given by structure model. It returnes samples X
and a vector y of Gaussian component responsible for
generating corresponding sample.
Input:
model
.Mean [dim x ncomp] Mean vectors.
.Cov [dim x dim x ncomp] Covariance matrices. In the case of
univariate mixture (dim=0) the variances can enter
as a vector Cov=[var1 var2 ... var_ncomp].
.Prior [ncomp x 1] Weighting coefficients of Gaussians.
num_data [int] Number of samples.
Output:
data.X [dim x num_data] Generated sample data.
data.y [1 x num_data] Identifier of Gaussian which generated
given vector.
Example:
model = struct('Mean',[-2 3],'Cov',[1 0.5],'Prior',[0.4 0.6]);
figure; hold on;
plot([-4:0.1:5], pdfgmm([-4:0.1:5],model),'r');
sample = gmmsamp(model,500);
[Y,X] = hist(sample.X,10);
bar(X,Y/500);
See also
PDFGMM, GSAMP.
About: Statistical Pattern Recognition Toolbox
(C) 1999-2003, Written by Vojtech Franc and Vaclav Hlavac
Czech Technical University Prague
Faculty of Electrical Engineering
Center for Machine Perception
Modifications:
28-apr-2004, VF