11#-*- coding: utf-8 -*-
2+ from __future__ import print_function
23import numpy as np
34from matplotlib import pyplot as plt
45from matplotlib import colors
1112
1213def KMeans ():
1314 '''二维数据聚类过程演示'''
14- print u'聚类过程展示...\n '
15+ print ( u'聚类过程展示...\n ' )
1516 data = spio .loadmat ("data.mat" )
1617 X = data ['X' ]
1718 K = 3 # 总类数
@@ -21,7 +22,7 @@ def KMeans():
2122 '''
2223 图片压缩
2324 '''
24- print u'K-Means压缩图片\n '
25+ print ( u'K-Means压缩图片\n ' )
2526 img_data = misc .imread ("bird.png" ) # 读取图片像素数据
2627 img_data = img_data / 255.0 # 像素值映射到0-1
2728 img_size = img_data .shape
@@ -31,21 +32,21 @@ def KMeans():
3132 max_iters = 5
3233 initial_centroids = kMeansInitCentroids (X ,K )
3334 centroids ,idx = runKMeans (X , initial_centroids , max_iters , False )
34- print u'\n K-Means运行结束\n '
35- print u'\n 压缩图片...\n '
35+ print ( u'\n K-Means运行结束\n ' )
36+ print ( u'\n 压缩图片...\n ' )
3637 idx = findClosestCentroids (X , centroids )
3738 X_recovered = centroids [idx ,:]
3839 X_recovered = X_recovered .reshape (img_size [0 ],img_size [1 ],3 )
3940
40- print u'绘制图片...\n '
41+ print ( u'绘制图片...\n ' )
4142 plt .subplot (1 ,2 ,1 )
4243 plt .imshow (img_data )
4344 plt .title (u"原先图片" ,fontproperties = font )
4445 plt .subplot (1 ,2 ,2 )
4546 plt .imshow (X_recovered )
4647 plt .title (u"压缩图像" ,fontproperties = font )
4748 plt .show ()
48- print u'运行结束!'
49+ print ( u'运行结束!' )
4950
5051
5152# 找到每条数据距离哪个类中心最近
@@ -86,7 +87,7 @@ def runKMeans(X,initial_centroids,max_iters,plot_process):
8687 idx = np .zeros ((m ,1 )) # 每条数据属于哪个类
8788
8889 for i in range (max_iters ): # 迭代次数
89- print u'迭代计算次数:%d' % (i + 1 )
90+ print ( u'迭代计算次数:%d' % (i + 1 ) )
9091 idx = findClosestCentroids (X , centroids )
9192 if plot_process : # 如果绘制图像
9293 plt = plotProcessKMeans (X ,centroids ,previous_centroids ) # 画聚类中心的移动过程
0 commit comments