如何对图像进行更好的预处理以获得更好的深度学习效果?

2024-05-28 20:31:35 发布

您现在位置:Python中文网/ 问答频道 /正文

我们正在试验应用卷积神经网络来分类好的表面和有缺陷的表面。你知道吗

好的和坏的图像大致如下:

好的:

enter image description hereenter image description here

不好的:

enter image description hereenter image description here

  1. 图像比较大(高度:800像素,宽度:500像素)
  2. 相对于图像,缺陷非常局部
  3. 背景噪音很大
  4. 深度学习(6 x conv+pooling->;flatten->;dense64->;dense32)的结果非常糟糕 (可能是由于有限的不良样本和非常小的缺陷模式)
  5. 还有其他缺陷模式,如非常细微的划痕、残余和污渍等,这是我们希望使用深度学习而不是特定特征工程的主要原因之一。你知道吗
  6. 我们可以并且愿意积累更多的缺陷图像。你知道吗

所以问题是:

  1. 在实践中,深度学习甚至是一个合适的缺陷检测工具。你知道吗
  2. 如果是,我们如何调整或预处理图像,使其符合深度学习模型真正可以使用的格式。(我们可以应用一些已知的过滤器来降低背景噪音吗?)你知道吗
  3. 如果没有,除了深度模型,还有哪些实用技术可以使用。 像模板匹配之类的事情真的适合这类问题吗?你知道吗

更新: 很好的主意,拿出一个明确的圆形条纹检查器。 它可以直接用于检查模式受到干扰的位置,也可以作为深度学习的预处理步骤。你知道吗


更新: 一个更微妙的模式“划痕”。 有一个划痕从底部开始的风扇区域向上和一点点的权利。你知道吗

enter image description here


Tags: 模型图像gt宽度高度模式分类局部
1条回答
网友
1楼 · 发布于 2024-05-28 20:31:35

Is deep learning even an appropriate tool for defect detection like this in practice.

深度学习当然是一种可能,有望成为普遍的。总的来说,它应该是最后的手段,而不是第一种方法。不利因素包括:

  • 很难包含先前的知识。你知道吗
  • 因此,您需要大量的数据来为一般情况训练分类器。你知道吗
  • 如果你成功了,模型是不透明的。它可能依赖于细微的特性,如果制造过程发生了细微的变化,并且没有简单的方法来修复,那么它就会失败。你知道吗

If yes, how can we adapt or pre-process the images to the formats that the deep learning models can really work with. (Could we apply some known filters to make the background much less noisy?)

与最终决定使用的分类器无关,预处理应该是最佳的。你知道吗

照明:照明不均匀。我建议定义一个感兴趣的区域,在这个区域里光线足够明亮,可以看到一些东西。我建议计算许多图像的平均强度,并用它来标准化亮度。结果将是图像裁剪到感兴趣的区域,在该区域照明是均匀的。你知道吗

圆形条纹:在显示的图像中,由于条纹是圆形的,它们的方向取决于图像中的位置。我建议使用一个变换,它将感兴趣的区域(圆的一部分)变换成一个梯形,其中每个条纹是水平的,并且保留每个条纹的长度。你知道吗

If no, what are other practical techniques that can be used other than deep models. Will things like template matching or anything else actually be a fit for this type of problems?

与其识别缺陷,不如尝试识别完整的结构,因为它具有相对恒定的特性。(这将是我在评论中建议的圆形条纹检查器)。这里,要测试的一个明显的东西是在如上所述预处理的图像中的每个像素处的2D fourier变换。如果条纹是完整的,你应该看到强度变化的频率在水平方向比在垂直方向低得多。我只需要将这两个数量绘制成许多“好”和“坏”像素,然后检查是否已经允许一些分类。你知道吗

如果你能用这种方法预先选择可能的缺陷,你就可以裁剪出一个小的图像,并对它进行深入的学习或其他任何你想使用的方法。你知道吗

相关问题 更多 >

    热门问题