# =================== K-Means Clustering ====================== data = sio.loadmat('data\\ex7data2.mat') K = 3 num_iters = 10 X = data['X'] initial_centroids = np.matrix([[3,3], [6,2], [8,5]]) kmeans = KMeans(K, num_iters) idx = kmeans.findClosestCentroids(X, initial_centroids) kmeans.train_model(X, initial_centroids, True) # ============= K-Means Clustering on Pixels =============== data = sio.loadmat('data\\bird_small.mat') A = data['A'] A = A / 255 m, n, _ = A.shape X = A.reshape([-1, 3]) K = 16 num_iters = 10 kmeans = KMeans(K, num_iters) initial_centroids = kmeans.initCentroids(X)