如何用K均值算法对图像进行聚类分析?

在本文中,我们将探索一种读取图像并对图像的不同区域进行聚类的方法。图像分割是图像处理框架中的一个重要主题。这是将图像分为不同组的过程。有许多不同的方法,k-means是最流行的方法之一。

在这个训练中,我们将利用SciPy库来读取图像,如下面的代码片段所示。

如何用K均值算法对图像进行聚类分析?

导入图像后,我们将其打印在屏幕上以验证它是否成功上传。这上传的是一张桌面上作者的普通图片。

如何用K均值算法对图像进行聚类分析?

接下来,我们检查图像的尺寸。我们可以看到,它是一个三维数组。

如何用K均值算法对图像进行聚类分析?

对于图像聚类,我们需要将其转换为长度为852 * 728和宽度(3)为RGB值的二维数组。

如何用K均值算法对图像进行聚类分析?

接下来,我们使用scikit-learn的集群方法来创建集群。我们将n_clusters作为7传递给7个集群。聚类出现在生成的图像中,将其分成五个部分,并使用不同的颜色。这次演示选择了7号启发式。人们可以改变聚类的数量,用不同的颜色直观地验证图像,并决定是否与所需的集群数量紧密匹配。

如何用K均值算法对图像进行聚类分析?

一旦集群形成,我们可以用集群中心和标签重新创建图像,以分组模式显示图像。

如何用K均值算法对图像进行聚类分析?

如何用K均值算法对图像进行聚类分析?

我们可以从上面的图中看出,根据图像密度将图像分为七个不同的区域。

以上的全部内容可以从https://github.com/sibanjan/image_analytics-image_clustering中提取代码。

相关推荐