{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# 聚类:kmeans、高斯混合模型" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "王**" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 模块导入" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Populating the interactive namespace from numpy and matplotlib\n" ] } ], "source": [ "%pylab inline\n", "\n", "import numpy as np\n", "import seaborn as sns\n", "import matplotlib.pyplot as plt\n", "import matplotlib.image as mpimg\n", "from sklearn.linear_model import SGDClassifier\n", "from sklearn.model_selection import train_test_split\n", "from sklearn.preprocessing import StandardScaler\n", "from matplotlib.colors import ListedColormap\n", "from sklearn.metrics import accuracy_score\n", "from skimage import io,data\n", "from sklearn.metrics import confusion_matrix\n", "from sklearn.datasets.samples_generator import make_blobs\n", "from sklearn.metrics import pairwise_distances_argmin\n", "%matplotlib inline\n", "import seaborn; seaborn.set() # for plot styling\n", "import numpy as np\n", "from ipywidgets import interact\n", "from sklearn.metrics import pairwise_distances_argmin\n", "from sklearn.datasets.samples_generator import make_blobs\n", "from __future__ import print_function\n", "\n", "from sklearn.datasets import make_blobs\n", "from sklearn.cluster import KMeans\n", "from sklearn.metrics import silhouette_samples, silhouette_score\n", "\n", "import matplotlib.pyplot as plt\n", "import matplotlib.cm as cm\n", "import numpy as np" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 读取数据" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "(392960L, 2L)\n" ] } ], "source": [ "path_to_tiff='E:\\Data\\pro/'\n", "\n", "raster = path_to_tiff + \"dc_pca.tif\"\n", "#samples = path_to_tiff + \"dc_test.tif\"\n", "classification = path_to_tiff + \"Classification\\\\\"\n", "\n", "#img=io.imread(raster,as_grey=False)\n", "# read data as TIF\n", "img = io.imread(raster)#(2, 1280, 307)\n", "img=np.transpose(img,(1,2,0))#(1280, 307,)\n", "img =img.reshape(392960,2)\n", "print(img.shape)\n", "\n", "#img=img[0,:,:]\n", "# read training samples as TIF with same dimensions as the image\n", "#roi = io.imread(samples)#(1280, 307,3)\n", "#roi=np.transpose(roi,(2,0,1))#(3, 1280, 307)" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "(392960L, 2L)\n", "(392960L, 2L)\n" ] } ], "source": [ "from sklearn.preprocessing import StandardScaler\n", "img =img.reshape(392960,2)\n", "print(img.shape)\n", "stdsc=StandardScaler()\n", "X=stdsc.fit_transform(img)\n", "print(img.shape)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## k-means" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Interactive K-Means" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "scrolled": true }, "outputs": [ { "data": { "image/png": "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\nnE5npkPpt6effppLLrmEn//85zz66KN85zvfyXRIffL6668Tj8d56aWXuPvuu3nssccyHVK//epX\nvyInJ4cXXniBn/70p/zzP/9zpkPqN8MweOCBB3C73ZkO5dNPvtOnT+ehhx7qdOy5556joKAAANM0\ncblcn3YYA6Zre8LhMPF4nLKyMhRFYdasWbz99tuZC7Afxo8fT3NzM5Bsl67rGY6of9566y2Ki4v5\n6le/yv3338+8efMyHVK/2bbNt7/9be666y48Hk+mw+m35cuXs2TJEiA5UjGYrgUdbdq0idmzZwMw\ndepUtm7dmuGI+u/qq69mxYoVQPL3TtO0DEfUf48//jhLliyhqKgo06EwYFfX1atX8+yzz3Y6tnLl\nSiorK3n33Xc7HW9t+Guvvca7777LnXfeOVBhDJjeticcDuPz+doee71eqqqq0hZnX6Vq3wMPPMCG\nDRuorKykqamJ559/PkPRnblU7cnNzcXlcvGjH/2I9957j3/8x38c9G0aNmwYlZWVTJw4MUNR9V1P\nf1NTpkyhtraWe+65h/vuuy9D0fVP1+uApmmYpjmov8B6vV4g2bY77rjjrLxOn4lXXnmFvLw8Zs+e\nzY9//ONMhwN2GmzcuNG+8847Ox17+umn7cWLF9v19fXpCGFAdWxPKBSyr7nmmrbnnnnmGfunP/1p\npkLrl9tvv91+8cUXbdu27R07dtgLFizIcET9c+edd9p/+MMf2h7PnDkzg9EMjCuuuMJetmyZvWzZ\nMnvy5Mn20qVLMx1Sv+3cudOurKy0//SnP2U6lD5buXKl/dvf/rbt8ezZszMYzcA5evSovWjRInv1\n6tWZDqXfli5dat9yyy32smXL7BkzZthf+tKX7OPHj2csnox8LVu1ahXbtm3jmWeeOSvG3vvD5/Ph\ncDg4dOgQI0eO5K233uKb3/xmpsPqk0AggN/vByA/P79tCHqwmjFjBuvXr+eqq65i586dlJaWZjqk\nflu7dm3b/8+bN4+nnnoqg9H03969e1mxYgXf+973BmVvvtX06dNZt24dlZWVbNmyhfHjx2c6pH6r\nq6vjy1/+Mg888ACXXnpppsPpt46jXrfeeisPPfQQhYWFGYsn7cm3rq6OH/zgB1RUVPCVr3wFgGuu\nuYalS5emO5QB8/DDD/P3f//3JBIJZs2axfnnn5/pkPpkxYoV3H///bzwwguYpjnoJ1jcdNNNPPjg\ng9x0003Yts3DDz+c6ZBEF0888QTxeJzvfve7QPLL7KpVqzIc1ZmbP38+GzZsYMmSJdi2zcqVKzMd\nUr/953/+J8FgkB/+8If88Ic/BOAnP/nJoO8wnS1kS0EhhBAizaTIhhBCCJFmknyFEEKINJPkK4QQ\nQqSZJF8hhBAizST5CiGEEGkmyVcIIYRIM0m+QgghRJr9f2pwhCvheFOmAAAAAElFTkSuQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from sklearn.preprocessing import StandardScaler\n", "img =img.reshape(392960,2)\n", "\n", "stdsc=StandardScaler()\n", "X=stdsc.fit_transform(img)\n", "\n", "def plot_kmeans_interactive(min_clusters=7, max_clusters=28):\n", " \n", " def plot_points(X, labels, n_clusters):\n", " plt.scatter(X[:, 0], X[:, 1], c=labels, s=50, cmap='viridis',\n", " vmin=0, vmax=n_clusters - 1);\n", " \n", " def plot_centers(centers):\n", " plt.scatter(centers[:, 0], centers[:, 1], marker='o',\n", " c=np.arange(centers.shape[0]),\n", " s=200, cmap='viridis')\n", " plt.scatter(centers[:, 0], centers[:, 1], marker='o',\n", " c='black', s=50)\n", " \n", "\n", " def _kmeans_step(frame=0, n_clusters=4):\n", " rng = np.random.RandomState(2)\n", " labels = np.zeros(X.shape[0])\n", " centers = rng.randn(n_clusters, 2)\n", "\n", " nsteps = frame // 3\n", "\n", " for i in range(nsteps + 1):\n", " old_centers = centers\n", " if i < nsteps or frame % 3 > 0:\n", " labels = pairwise_distances_argmin(X, centers)\n", "\n", " if i < nsteps or frame % 3 > 1:\n", " centers = np.array([X[labels == j].mean(0)\n", " for j in range(n_clusters)])\n", " nans = np.isnan(centers)\n", " centers[nans] = old_centers[nans]\n", "\n", " # plot the data and cluster centers\n", " plot_points(X, labels, n_clusters)\n", " plot_centers(old_centers)\n", "\n", " # plot new centers if third frame\n", " if frame % 3 == 2:\n", " for i in range(n_clusters):\n", " plt.annotate('', centers[i], old_centers[i], \n", " arrowprops=dict(arrowstyle='->', linewidth=1))\n", " plot_centers(centers)\n", "\n", " plt.xlim(-12, 5)\n", " plt.ylim(-5, 10)\n", "\n", " if frame % 3 == 1:\n", " plt.text(3.8, 9.5, \"1. Reassign points to nearest centroid\",\n", " ha='right', va='top', size=14)\n", " elif frame % 3 == 2:\n", " plt.text(3.8, 9.5, \"2. Update centroids to cluster means\",\n", " ha='right', va='top', size=14)\n", " \n", " return interact(_kmeans_step, frame=(0, 50),\n", " n_clusters=(min_clusters, max_clusters))\n", "\n", "plot_kmeans_interactive()" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ "#对图像进行分类\n", "img_class=clf.predict(img)\n", "img_class=img_class.reshape(1280,307)\n", "#绘制 plt.imshow(img_class)\n", "#保存\n", "io.imsave(filename+\".tif\",img_class)\n", "t_model = clf.predict(t)\n", "\n", "d = t_model.reshape(1280,307)\n", "import scipy.misc\n", "scipy.misc.imsave('E:\\clf313.jpg', d)\n", "from sklearn.mixture import GMM\n", "gmm = GMM(n_components=4).fit(X)\n", "labels = gmm.predict(X)\n", "d = labels.reshape(1280, 307)\n", "import scipy.misc\n", "scipy.misc.imsave('E:\\clf313.jpg', d)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Selecting the number of clusters with silhouette analysis on KMeans clustering" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## GMM " ] }, { "cell_type": "code", "execution_count": 13, "metadata": { "scrolled": true }, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:52: DeprecationWarning: Class GMM is deprecated; The class GMM is deprecated in 0.18 and will be removed in 0.20. Use class GaussianMixture instead.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function distribute_covar_matrix_to_match_covariance_type is deprecated; The functon distribute_covar_matrix_to_match_covariance_typeis deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from sklearn.mixture import GMM\n", "gmm = GMM(n_components=28).fit(X)\n", "labels = gmm.predict(X)\n", "plt.scatter(X[:, 0], X[:, 1], c=labels, s=40, cmap='viridis');" ] }, { "cell_type": "code", "execution_count": 24, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:52: DeprecationWarning: Class GMM is deprecated; The class GMM is deprecated in 0.18 and will be removed in 0.20. Use class GaussianMixture instead.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function distribute_covar_matrix_to_match_covariance_type is deprecated; The functon distribute_covar_matrix_to_match_covariance_typeis deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n", "C:\\ProgramData\\Anaconda2\\lib\\site-packages\\sklearn\\utils\\deprecation.py:70: DeprecationWarning: Function log_multivariate_normal_density is deprecated; The function log_multivariate_normal_density is deprecated in 0.18 and will be removed in 0.20.\n", " warnings.warn(msg, category=DeprecationWarning)\n" ] } ], "source": [ "from sklearn.mixture import GMM\n", "gmm = GMM(n_components=14).fit(X)\n", "labels = gmm.predict(X)\n", "d = labels.reshape(1280, 307)\n", "import scipy.misc\n", "scipy.misc.imsave('E:\\gmm14.tiff', d)\n", "\n", "#io.imsave('E:\\gmm4', d)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.6.0" } }, "nbformat": 4, "nbformat_minor": 2 }