【问题标题】:How to know what augmentation has been carried out tf.image.stateless_random_flip_up_down or similar API如何知道已经进行了哪些增强 tf.image.stateless_random_flip_up_down 或类似的 API
【发布时间】:2021-05-23 04:54:17
【问题描述】:

在 TF 2.x 中,有一整套图像增强 API,以 tf.image.stateless_random_flip_up_down 为例。其中大多数将随机执行上述操作。我想知道的是,是否有一种方法可以询问特定批次中特定图像的确切执行情况。如果目标预测涉及点、边界框等定位,则此信息至关重要。由于对图像执行仿射变换(如平移),因此应使用相同的操作以一致的方式“增强”目标 (y)。

我认为 TF2.X 中的所有图像转换 API 都不会返回这条信息。我想看看是否有比创建自己的自定义方法更简单的方法。过去,我通过子类为较旧的 Keras 数据增强 API 完成了此操作,并且如果可能的话,我不希望重复这种乏味的工作。

【问题讨论】:

  • 更新:我已经编写了一些自定义函数(全部使用 tf.images.*)来解决这个问题,尽管具有状态随机性。可能会在需要时将其中一些重写为无状态。

标签: tensorflow tf.keras data-augmentation


【解决方案1】:

我猜你的主要目标是编写一个数据增强管道来更改图像及其标签。

那么,我建议您改用 Albumentaitons 库。它是一个非常流行的开源库,可以轻松与 Tensorflow 和 PyTorch 框架集成。

这是它的文档:https://albumentations.ai/

如果有帮助请告诉我!

【讨论】:

  • 这个库看起来很有希望,我会仔细看看。现在,可能有几件事:(1)它可能不太干净地与 tf 图计算一起玩,尤其是。如果你在 TPU 上运行,(2)它是否支持无状态随机性。 (3) 与 TF 的集成可能不如 PyTorch。无论如何,谢谢你提醒我这个库
猜你喜欢
  • 2015-02-10
  • 2016-10-12
  • 1970-01-01
  • 2011-03-14
  • 2018-03-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多