非常相似图像的分类

数据挖掘 Python 神经网络 分类 计算机视觉
2021-09-18 09:12:41

我有两组图像,每组有 1000 个样本。

在这种情况下,散斑图案与随机图案或“白噪声”图像相同。所以这些图像是根本不同的。

在第一组中,每个图形都是通过考虑一个随机函数生成的,该函数返回类似于散斑图案的东西(见图 1)。在第 2 组中,我们遵循与第 1 组相同的程序,但我们在其上方绘制了一个小点,可以将其放置在任何位置并使用任何颜色(见图 2)。

我想对这两个组进行分类,并且我已经尝试使用简单的神经网络来做到这一点,但我没有成功。

解决此类问题的最佳技术是什么?

图。1:

在此处输入图像描述

图 2:

在此处输入图像描述

4个回答

您是否尝试过基于规则的方法?

根据您的示例,我可以想到两种方法:

  • 对于每张图片,获取它包含的所有 RGB 值的列表。第一个仅包含灰色(具有 RGB 值(x, x, x)),第二个包含颜色(因此某些具有 RGB 值的像素(x, y, z),其中X是的 或者 是的z)。或者 - 如果这样更快 - 将所有图片转换为灰度并检查转换后的图片是否与原始图片相同。
  • 扫描图像以查找具有相同颜色的区域(大于 1 个像素)。如果您的点足够大并且背景噪声与相邻像素不相关,那么这些区域很可能是您正在寻找的点。

你将不得不做一些实验来找出什么是“最好的”,但我建议从卷积神经网络开始。

但是,由于您只检测到非常小的差异,因此像素值本身应该可以很好地指示颜色在哪里,以及是否有颜色。我有点惊讶,一个更简单的架构并没有给你带来任何运气。

基于给定的示例

如果它们在除小区域之外的所有地方实际上都是相同的,只需从图像 2 中减去图像 1 即可找到差异......

然后我们可以检查它们相差很大的正负值来对它们进行分类

这将(可能)工作......

我在上面链接的论文中找到了答案。作者使用 CNN 来解决这个问题。我将发布代码。

https://link.springer.com/article/10.1007/s00170-017-0882-0