Files
2026-07-13 13:30:25 +08:00

28 lines
559 B
Matlab
Executable File

function plotgm(X, model)
% Plot 2d Gaussian mixture model.
% Written by Mo Chen (sth4nth@gmail.com).
level = 64;
n = 256;
spread(X);
x_range = xlim;
y_range = ylim;
x = linspace(x_range(1),x_range(2), n);
y = linspace(y_range(2),y_range(1), n);
[a,b] = meshgrid(x,y);
z = exp(loggmpdf([a(:)';b(:)'],model));
z = z-min(z);
z = floor(z/max(z)*(level-1));
figure;
image(reshape(z,n,n));
colormap(jet(level));
set(gca, 'XTick', [1 256]);
set(gca, 'XTickLabel', [min(x) max(x)]);
set(gca, 'YTick', [1 256]);
set(gca, 'YTickLabel', [min(y) max(y)]);
axis off