我正在寻找使用 GMM(高斯混合模型)对嘈杂的医学图像(灰度)进行分割的功能。
我在 MATLAB 中发现:
gm = gmdistribution(mu,sigma)
idx = cluster(gm,X)
给定X
,我的灰度图像。
你会如何定义mu
和sigma
?它们应该是什么尺寸?你将如何初始化它们?
我尝试了以下方法(给定尺寸(576x720)的图像):
mu = rand(5,size(X,2));
sigma = ones(720,720);
gm = gmdistribution(mu,sigma);
idx = cluster(gm,X);
但我收到一个错误:
wdensity
使用(第 29 行)
创建的病态协方差时出错。
gmdistribution
/中的错误cluster
(第 59 行)
log_lh=wdensity(X,obj.mu, obj.Sigma, obj.PComponents, obj.SharedCov, CovType);
我对 GMM 的工作原理(即软聚类)有一个基本概念,但我希望得到更高级人员的帮助,以了解我在这里所做的事情。