首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在一定的图像区域,K-平均比高斯混合模型更精确。

在一定的图像区域,K-平均比高斯混合模型更精确。
EN

Stack Overflow用户
提问于 2016-03-31 11:01:33
回答 1查看 2.8K关注 0票数 3

我知道Gaussian mixture modelK-means的一个推广,因此应该更准确。

但我无法从下面的聚类图像中看出,为什么用K-means获得的结果在某些区域更准确(比如斑点噪声以浅蓝色点显示,在Gaussian Mixture Model结果中持续存在,而在K-means结果中不存在)。

下面是这两种方法的matlab代码:

代码语言:javascript
复制
% kmeans
L1 = kmeans(X, 2, 'Replicates', 5);
kmeansClusters = reshape(L1, [numRows numCols]);
figure('name', 'Kmeans clustering')
imshow(label2rgb(kmeansClusters))

% gaussian mixture model
gmm = fitgmdist(X, 2);
L2 = cluster(gmm, X);
gmmClusters = reshape(L2, [numRows numCols]);
figure('name', 'GMM clustering')
imshow(label2rgb(gmmClusters))

并在下面显示原始图像以及聚类结果:

原始图像:

K-意思是:

高斯混合模型:

P.S:我仅使用强度信息进行聚类,集群的数量是2 (即水和陆地)。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-03-31 22:10:48

我认为这是一个有趣的问题/问题,所以我花了一些时间在周围玩。

首先,高斯混合模型应该比k均值更精确的假设不一定是正确的。他们有不同的假设,虽然GMM更灵活,但没有任何规则说它应该总是更好,特别是在像图像分类这样主观的东西上。

使用k均值聚类,您将试图将像素分配到两个桶中的一个,完全基于从该桶的平均值或质心的距离。如果我看一下河流中的斑点噪声,值就在两个质心之间。绘制图像的直方图并叠加质心位置和斑点噪声,我得到以下结果:

你可以看到斑点噪声更接近于黑暗物质(水)的质心,所以它被分配到水桶里。这基本上和等方差、等权的高斯混合模型是一样的。

GMM的优点之一是能够考虑这两个类别的差异。GMM发现两个最适合你的数据的高斯人,而不是简单地找到两个质心并在它们之间划一条线来分开你的分类。这是一个很好的例子,因为你可以清楚地看到两个占主导地位的形状:一个高而瘦,另一个又矮又宽。GMM算法将数据看作如下:

在这里,你可以看到,斑点噪声显然属于土地的广泛差异pdf。

K均值和GMM的另一个不同之处在于像素是如何聚类的.在GMM中,这两个分布被用来给每个像素分配一个概率值,所以它是模糊的,它没有说“这个像素绝对是陆地”,它说(例如)“这个像素有30%的机会成为水和70%的机会成为土地”,所以它指定它为土地。在这个特殊的例子中,水直方图非常紧,所以它(在这种情况下是不正确的)决定了这种斑点噪声实际上不可能是水。

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36331532

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档