首页 > 解决方案 > 使用无监督机器学习对图像进行聚类

问题描述

我有一个包含身份证、账单和护照的图像数据库。
我想将这些图像分为不同的组(即身份证、账单和护照)。
正如我所读到的那样,完成此任务的一种方法是聚类(因为它将是无监督的)。
我的想法是这样的:聚类将基于图像之间的相似性(即具有相似特征的图像将被分组在一起)。
我也知道这个过程可以通过使用 k-means 来完成。
所以对我来说,问题在于特征和使用带有 K-means 的图像。
如果有人以前这样做过,或者对此有所了解,请您推荐一些链接以开始或建议任何可能有用的功能。

标签: pythoncomputer-visioncluster-analysisk-meansunsupervised-learning

解决方案


获得良好结果的最简单方法是将问题分解为两部分:

  1. 从图像中获取特征:使用原始像素作为特征会给你带来糟糕的结果。通过预先训练的 CNN 传递图像(您可以在线获得其中的几个)。然后使用最后一个 CNN 层(就在完全连接之前)作为图像特征。
  2. 特征聚类:获得了每个图像的丰富特征后,您可以对这些特征进行聚类(如 K-means)。

我建议分别在 Keras 和 Sklearn 中实施(使用已经实施的)1、2。


推荐阅读