4.K均值算法--应用

Posted dyun3

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了4.K均值算法--应用相关的知识,希望对你有一定的参考价值。

1. 应用K-means算法进行图片压缩

读取一张图片

import matplotlib.pyplot as pillow        #导入所需要的包
mortyimage=pillow.imread("./morty.png")     #导入自备的图片Morty!!!!!
pillow.imshow(mortyimage)                 #显示图片

技术图片

 

 

观察图片文件大小,占内存大小,图片数据结构,线性化

print("原图大小:",mortyimage.size)
print("原图占用内存",sys.getsizeof(mortyimage))
print("Morty数据结构",mortyimage)

技术图片


 技术图片

 

 

用kmeans对图片像素颜色进行聚类

n_colors =64                            #将颜色聚成64类
K_model = KMeans(n_colors)

 

获取每个像素的颜色类别,每个类别的颜色

 

labels = K_model.fit_predict(X)
colors = K_model.cluster_centers_
print(labels.shape,colors.shape)

技术图片

 

 

压缩图片生成:以聚类中收替代原像素颜色,还原为二维

技术图片

 

 

观察压缩图片的文件大小,占内存大小

mortyimg=mortyimage[::3,::3]                   #每三个像素取一个像素
print("原图大小:",mortyimage.size)
print("压缩后图片大小:",mortyimg.size)
print("原图占用内存",sys.getsizeof(mortyimage))
print("压缩后图片占用内存",sys.getsizeof(mortyimg))

 

技术图片

 

 

 

2. 观察学习与生活中可以用K均值解决的问题。

从数据-模型训练-测试-预测完整地完成一个应用案例。

这个案例会作为课程成果之一,单独进行评分。

 

以上是关于4.K均值算法--应用的主要内容,如果未能解决你的问题,请参考以下文章

4.K均值算法--应用

4.K均值算法--应用

4.K均值算法--应用

4.K均值算法--应用

4.K均值算法--应用

4.K均值算法--应用