可能是一个短暂的。刚刚与K-Means Clustering合作。
我查了一下这个python / skimage命令:
image_array = image.reshape([-1,3]).astype(np.float32)
kmeans = KMeans(n_clusters=2, random_state=0).fit(image_array)
labels_array = kmeans.labels_
labels = labels_array.reshape([image.shape[0], image.shape[1]])
当我注意到RGB图像需要转换为一个长阵列时。当我传递一个数组时,k-means聚类如何知道2个空间维度(和第3个单一颜色)?
或者只是我的错误认为需要空间信息?至少目标是最小化聚类内的平方和。因此,x,y和颜色方向的距离很重要,不是吗?
问题是我假设返回了一维数组。相反,重塑会返回三维。在这个K-Means的例子中确实没有使用位置信息。