10

我们正在与一家拥有超过 200 万张 jpeg 图像的公司合作。他们想收集更多图像。图像的目的是机器分类和寻找螺栓和小漏水等小物体。图像的数量很多,但训练的样本很少,可能只有 100 个样本或更少。

我们对公司的建议是以未压缩的原始 10 或 12 位 png/tiff 格式存储数据。他们想使用 jpeg 格式,因为他们可以在更短的时间内收集更多的数据(每秒 4 张图像)并且不需要所有的磁盘空间。

有谁知道 jpeg 与 png 格式相比的存储将如何影响样本的训练以及以后的查找/分类?

我用谷歌搜索过。它返回了许多关于如何通过使用深度学习来提高 jpeg 质量的答案。其余的答案是关于如何使用互联网上的图书馆处理猫和狗。有一篇文章说 jpeg 压缩会影响识别,但很少涉及什么样的图像,你要寻找什么类型的对象等。

当您寻找像狗和猫这样的大型物体时,您将拥有许多可以使用的特征、曲线、颜色、直方图和其他特征。寻找具有很少特征的非常小的对象更为复杂。

有谁知道关于这个主题的任何文章?关键问题:我应该将图像存储在 png 或无损 tiff 中,还是可以使用 jpeg 压缩以供以后在深度学习中使用?

4

3 回答 3

7

TL;DR:是的,但不是那么多。除非您考虑 <10 JPEG 质量参数,否则您应该是安全的。

更长的版本:

我强烈推荐一篇名为 Understanding How Image Quality Affects Deep Neural Networks的文章。正如您可能猜到的那样,作者检查了不同的失真(JPEG、JPEG 2000、模糊和噪声)如何影响常用 CNN 架构(VGG、AlexNet、GoogLeNet)的性能。

显然,所有测试的网络都以类似的方式执行,只有严重的 JPEG 压缩(质量 < 10)会伤害它们。

唯一的问题是,没有对 ResNet 系列的任何东西进行测试,但我不明白为什么它会大不相同。

于 2018-05-17T10:27:36.480 回答
2

您可以通过首先训练您的网络来尝试它。由于数据集太少,我建议要么增加数据集,要么尝试使用其他方法,如无监督学习/强化学习等。

关于质量损失,你可以做一个快速的实验。拍摄图像并将其保存为 jpg 和 png。然后,将它们都加载为数组并检查差异并将其可视化。您会注意到它看起来像图像上的噪点。

那么,这意味着什么?

如果你的推理成功率甚至受到这么多噪音的影响,你最好采取一些预防措施来防止过度拟合。我们期望好的 CNN 设计能够学习“有意义的特征”并抑制图像中的“噪声”。

如果有的话,请选择 jpg 并增强网络的过度拟合问题。

于 2017-11-29T05:33:34.420 回答
1

如果数据相同,则存储的格式无关紧要。但是,当然,Jpeg 是有损的,可能会丢失一些信息,这可能会降低准确度(但不会发生重大变化),这也可能是由于随机权重初始化造成的

但这并不重要,因为损失不是太大,图像仍然可以被人眼识别。事实上,如果有这么多的图像,也许 jpeg 是一个更好的存储方式,因为它占用的空间更少。

于 2017-11-26T19:53:01.597 回答