【发布时间】:2019-12-16 15:45:01
【问题描述】:
我正在尝试编写一个函数来增加数据集中的图像。我能够成功地增强现有图像并将其返回,但我希望能够对单个图像进行多次增强并单独返回这些增强图像,然后将它们添加到原始数据集中。
增强功能:
def augment_data(image, label):
h_flipped_image = tf.image.flip_left_right(image)
v_flipped_image = tf.image.flip_up_down(image)
return h_flipped_image, label
地图功能:
train_ds = train_ds.map(augment_data)
train_ds 是 tf.data 数据集,形状如下:
<PrefetchDataset shapes: ((None, 224, 224, 3), (None, 238)), types: (tf.float32, tf.bool)>
如何让 map 函数返回多个值,例如,我可以同时返回 h_flipped_image 和 v_flipped_image 并将它们添加到 train_ds 数据集?
【问题讨论】:
-
我不熟悉 Tensorflow,但这就是映射的一般工作原理。
-
感谢您的回复!我做了更多的研究,似乎确实不可能让 map 函数返回多个样本并将它们添加到数据集中。我为我的问题找到了不同的解决方案(见下文)。
标签: python tensorflow data-augmentation