Gui*_*ier 5 python machine-learning image-processing computer-vision tensorflow
我想在TensorFlow中使用此功能,但它在3D张量而不是4D张量上运行:我有一个外部维度为batch_size.
tf.image.random_flip_left_right(input_image_data)
Run Code Online (Sandbox Code Playgroud)
也就是说,这个函数需要一个形状的张量(图像):
(width, height, channels)
Run Code Online (Sandbox Code Playgroud)
但我有多个图像,如:
(batch_size, width, height, channels)
Run Code Online (Sandbox Code Playgroud)
我怎样才能将随机翻转函数映射到我的批量大小的每个图像中,并获得具有我已经拥有的相同4D形状的张量作为输出?
我的猜测是它需要在函数入口处重新整形并在函数之后重新整形,但我不确定这是否会破坏数据的结构并在应用镜像时将批处理中的图像混合在一起.此外,这种方法可以在整个批次上进行单个随机化,而不是在每个图像的基础上进行.
任何建议表示赞赏!
您必须使用 tf.pack 和 tf.unpack 或 tf.gather 和 tf.concatenate 之类的东西来从 4D 数组转换为 3D 数组。
根据您加载数据的方式,您可以在 numpy 中进行处理。另一种选择是在将每个图像放入批次之前对其进行处理。
如果您需要 tf.pack 或其他程序如何工作的解释,请告诉我。
归档时间: |
|
查看次数: |
4527 次 |
最近记录: |