Python SKLearn中用K-均值处理图像矩阵

Python SKLearn中用K-均值处理图像矩阵,python,scikit-learn,cluster-analysis,k-means,dimensions,Python,Scikit Learn,Cluster Analysis,K Means,Dimensions,我想用SKLearn对我的图像进行分类。 使用python,我从磁盘读取图像,并通过自适应阈值“移除”背景。此外,我还计算了对象的平均颜色(无背景)以及所有像素与平均颜色之间的标准偏差。 阈值图像、平均颜色和stdv是我的特征提取的结果,现在我想对我的所有图像及其特征运行一个聚类算法,以对相似的图像进行分类 但是,对于要集群的每个对象,似乎只接受每个特征具有单个值的一维数组,而不是具有单个对象的“我的数据” 矩阵,显示如下图像: (r,g,b)(r,g,b,)(r,g,b,), (r,g,b,

我想用SKLearn对我的图像进行分类。 使用python,我从磁盘读取图像,并通过自适应阈值“移除”背景。此外,我还计算了对象的平均颜色(无背景)以及所有像素与平均颜色之间的标准偏差。 阈值图像、平均颜色和stdv是我的特征提取的结果,现在我想对我的所有图像及其特征运行一个聚类算法,以对相似的图像进行分类

但是,对于要集群的每个对象,似乎只接受每个特征具有单个值的一维数组,而不是具有单个对象的“我的数据”

  • 矩阵,显示如下图像: (r,g,b)(r,g,b,)(r,g,b,), (r,g,b,)(r,g,b,)(r,g,b,))

  • 具有平均颜色的向量: (r、g、b)

  • 每种颜色的stdv矢量: (r、g、b)

如果我只有两个向量,我会把它们分成6个特征,比如 (r,g,b,r2,g2,b2)。但是,矩阵是100x100,这将为我提供10.000个额外功能,这不是答案

我会很高兴听到关于我的问题的解决方案,或者用我提取的特征对图像进行分类的其他方法的指南。
提前谢谢

是的,您需要重塑数据。是的,一个100x100x3的图像可以产生30000个功能

由于维度的诅咒,KMeans往往无法很好地处理此类数据

您需要为合适的低维表示提取特征。几年前,答案是“视觉文字袋”。现在是“深度学习”,使用最后一层作为您的功能,而不是分类输出层