Python利用K-Means算法进行图像聚类分割实战(超详细 附源码)

简介: Python利用K-Means算法进行图像聚类分割实战(超详细 附源码)

需要源码和图片请点赞关注收藏后评论区留言私信~~~

图形分割就是把图像分成若干个特定的、具有独特性质的区域。并提出感兴趣目标的技术和过程,它是由图像处理到图像分析的关键步骤,本案例利用K-Means聚类方法对图像的像素进行聚类实现图像分割

打开图像文件并显示 原图像如下

接着显示图像的信息和图像大小

显示图像的颜色模式

对图像数据进行聚类并显示每个像素的簇标号

最后显示分割后的图像 如下图所示

可以看出图像可以明显的聚为三个簇 也就是三种颜色 大致可以分为三类

部分代码如下

import numpy as np
from sklearn.cluster import KMeans
import matplotlib.pyplot as plt
import PIL.Image as Image
%matplotlib inline
img=Image.open('lena.jpg')
plt.axis('off')
plt.imshow(img)
print(img.info)
row,col=img.size
print('图像的大小:',row,col)
print('数据类型',type(img))
print( '图像的颜色模式:',img.mode)
imgData=np.array(img.getdata())
type(imgData)
pixel_vals = imgData.reshape(-1,3)
pixel_vals
km_cluster = KMeans(n_clusters=3)
label=km_cluster.fi([row,col]).T  
pic_new = Image.new("L", (row, col))  
for i in range(row): 
    for j in range(col):       
        pic_new.putpixel((i,j), int(int(256/(label[i][j]+1))))  
plt.imshow(pic_new)

创作不易 觉得有帮助请点赞关注收藏~~~

相关文章
|
17天前
|
人工智能 编解码 算法
使用 PAI-DSW x Free Prompt Editing图像编辑算法,开发个人AIGC绘图小助理
在本教程中,您将学习在阿里云交互式建模平台PAI-DSW x Free Prompt Editing图像编辑算法,开发个人AIGC绘图小助理,实现文本驱动的图像编辑功能单卡即可完成AIGC图片风格变化、背景变化和主体变化等功能。让我们一同开启这场旅程,为您的图像编辑添上无限可能性的翅膀吧。
使用 PAI-DSW x Free Prompt Editing图像编辑算法,开发个人AIGC绘图小助理
|
2天前
|
算法 计算机视觉 Python
使用分水岭算法分割图像
【6月更文挑战第4天】使用分水岭算法分割图像。
9 4
|
7天前
|
算法 数据安全/隐私保护 C++
基于二维CS-SCHT变换和扩频方法的彩色图像水印嵌入和提取算法matlab仿真
该内容是关于一个图像水印算法的描述。在MATLAB2022a中运行,算法包括水印的嵌入和提取。首先,RGB图像转换为YUV格式,然后水印通过特定规则嵌入到Y分量中,并经过Arnold置乱增强安全性。水印提取时,经过逆过程恢复,使用了二维CS-SCHT变换和噪声对比度(NC)计算来评估水印的鲁棒性。代码中展示了从RGB到YUV的转换、水印嵌入、JPEG压缩攻击模拟以及水印提取的步骤。
|
15天前
|
存储 编解码 算法
图像的压缩算法--尺寸压缩、格式压缩和品质压缩
图像的压缩算法--尺寸压缩、格式压缩和品质压缩
29 0
|
20天前
|
NoSQL 算法 Java
【redis源码学习】持久化机制,java程序员面试算法宝典pdf
【redis源码学习】持久化机制,java程序员面试算法宝典pdf
|
20天前
|
机器学习/深度学习 算法 数据挖掘
【机器学习】K-means算法与PCA算法之间有什么联系?
【5月更文挑战第15天】【机器学习】K-means算法与PCA算法之间有什么联系?
|
20天前
|
机器学习/深度学习 算法 数据挖掘
【机器学习】维度灾难问题会如何影响K-means算法?
【5月更文挑战第15天】【机器学习】维度灾难问题会如何影响K-means算法?
|
21天前
|
机器学习/深度学习 算法 数据挖掘
【机器学习】聚类算法中,如何判断数据是否被“充分”地聚类,以便算法产生有意义的结果?
【5月更文挑战第14天】【机器学习】聚类算法中,如何判断数据是否被“充分”地聚类,以便算法产生有意义的结果?
|
21天前
|
机器学习/深度学习 运维 算法
【机器学习】可以利用K-means算法找到数据中的离群值吗?
【5月更文挑战第14天】【机器学习】可以利用K-means算法找到数据中的离群值吗?
|
机器学习/深度学习 算法 搜索推荐
Python数据挖掘与机器学习,快速掌握聚类算法和关联分析
前文数据挖掘与机器学习技术入门实战与大家分享了分类算法,在本文中将为大家介绍聚类算法和关联分析问题。分类算法与聚类到底有何区别?聚类方法应在怎样的场景下使用?如何使用关联分析算法解决个性化推荐问题?本文就为大家揭晓答案。
16235 0