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

在线体验各类最新模型,更有模型 免费Token 额度领取!
立即体验
简介: 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)

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

相关文章
|
9月前
|
SQL 关系型数据库 数据库
Python SQLAlchemy模块:从入门到实战的数据库操作指南
免费提供Python+PyCharm编程环境,结合SQLAlchemy ORM框架详解数据库开发。涵盖连接配置、模型定义、CRUD操作、事务控制及Alembic迁移工具,以电商订单系统为例,深入讲解高并发场景下的性能优化与最佳实践,助你高效构建数据驱动应用。
1015 7
|
9月前
|
数据采集 Web App开发 数据安全/隐私保护
实战:Python爬虫如何模拟登录与维持会话状态
实战:Python爬虫如何模拟登录与维持会话状态
|
9月前
|
Java 调度 数据库
Python threading模块:多线程编程的实战指南
本文深入讲解Python多线程编程,涵盖threading模块的核心用法:线程创建、生命周期、同步机制(锁、信号量、条件变量)、线程通信(队列)、守护线程与线程池应用。结合实战案例,如多线程下载器,帮助开发者提升程序并发性能,适用于I/O密集型任务处理。
792 0
|
9月前
|
机器学习/深度学习 算法 机器人
【水下图像增强融合算法】基于融合的水下图像与视频增强研究(Matlab代码实现)
【水下图像增强融合算法】基于融合的水下图像与视频增强研究(Matlab代码实现)
770 0
|
9月前
|
数据采集 分布式计算 并行计算
mRMR算法实现特征选择-MATLAB
mRMR算法实现特征选择-MATLAB
487 2
|
10月前
|
存储 编解码 算法
【多光谱滤波器阵列设计的最优球体填充】使用MSFA设计方法进行各种重建算法时,图像质量可以提高至多2 dB,并在光谱相似性方面实现了显著提升(Matlab代码实现)
【多光谱滤波器阵列设计的最优球体填充】使用MSFA设计方法进行各种重建算法时,图像质量可以提高至多2 dB,并在光谱相似性方面实现了显著提升(Matlab代码实现)
302 6
|
10月前
|
传感器 机器学习/深度学习 编解码
MATLAB|主动噪声和振动控制算法——对较大的次级路径变化具有鲁棒性
MATLAB|主动噪声和振动控制算法——对较大的次级路径变化具有鲁棒性
392 3
|
9月前
|
机器学习/深度学习 算法 机器人
使用哈里斯角Harris和SIFT算法来实现局部特征匹配(Matlab代码实现)
使用哈里斯角Harris和SIFT算法来实现局部特征匹配(Matlab代码实现)
393 8
|
9月前
|
机器学习/深度学习 算法 自动驾驶
基于导向滤波的暗通道去雾算法在灰度与彩色图像可见度复原中的研究(Matlab代码实现)
基于导向滤波的暗通道去雾算法在灰度与彩色图像可见度复原中的研究(Matlab代码实现)
456 8
|
10月前
|
机器学习/深度学习 传感器 算法
【高创新】基于优化的自适应差分导纳算法的改进最大功率点跟踪研究(Matlab代码实现)
【高创新】基于优化的自适应差分导纳算法的改进最大功率点跟踪研究(Matlab代码实现)
414 14

推荐镜像

更多