Python sklearn中基于Ward聚类的彩色图像分割

Python sklearn中基于Ward聚类的彩色图像分割,python,scikit-learn,Python,Scikit Learn,我正在尝试使用SKM中的Ward方法来学习分割彩色图像。我一直在使用sklearn示例分割灰度图像(),但我似乎无法让它与颜色一起工作 代码如下: from PIL import Image import numpy as np from sklearn.feature_extraction.image import grid_to_graph from sklearn.cluster import Ward img = Image.open("test.jpg") img = np.arra

我正在尝试使用SKM中的Ward方法来学习分割彩色图像。我一直在使用sklearn示例分割灰度图像(),但我似乎无法让它与颜色一起工作

代码如下:

from PIL import Image
import numpy as np
from sklearn.feature_extraction.image import grid_to_graph
from sklearn.cluster import Ward

img = Image.open("test.jpg")
img = np.array(img)

X = img.reshape((-1, 3))
x, y, z = img.shape

connectivity = grid_to_graph(n_x=x, n_y=y, n_z=z)
ward = Ward(n_clusters=5, connectivity=connectivity).fit(X)
我得到的错误是:

Traceback (most recent call last):
  File "<pyshell#421>", line 1, in <module>
    ward = Ward(n_clusters=5, connectivity=connectivity).fit(X)
  File "C:\Python27\lib\site-packages\sklearn\cluster\hierarchical.py", line 370, in fit
    raise ValueError("`connectivity` does not have shape "
ValueError: `connectivity` does not have shape (n_samples, n_samples)

如果有人能证实或否认这仍然在做我试图完成的事情,那就太好了connectivity = grid_to_graph(n_x=x, n_y=y) ward = Ward(n_clusters=5, connectivity=connectivity).fit(X)