python - tensorflow 通过随机因素调整图像大小

标签 python tensorflow

当图像大小未知时,我试图在图形构建期间按一个因子调整图像大小:

H, W, _ = img.get_shape()
scale = tf.random_uniform([1], minval=1, maxval=1.5, dtype=tf.float32, seed=None, name=None)

在这些中,我需要神奇地计算出一个可以转换为以下内容的大小:

tf.image.resize_images(tf.expand_dims(img, 0), [H*scale, W*scale])

哪个返回:

ValueError: 'size' must be a 1-D int32 Tensor

非常感谢任何帮助。谢谢。

最佳答案

scale 的形状为 (1,),因此 [H*scale, W*scale] 的形状为 (1 , 2)。要修复它,只需生成一个标量随机数而不是一个 1 元素向量:

scale = tf.random_uniform([], minval=1, maxval=1.5, dtype=tf.float32, seed=None, name=None)

请注意形状是一个空列表,这意味着您需要一个标量。

除此之外,您还必须修复 size 参数的数据类型,如下所示:

tf.image.resize_images(tf.expand_dims(img, 0), tf.cast([H*scale, W*scale], tf.int32))

关于python - tensorflow 通过随机因素调整图像大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50277373/

相关文章:

python - 正则表达式内容生成器

python - 如何改进此 python 代码以改进负面测试?

ipython - TensorFlow:IPython 的 GNU Screen 导致导入错误

tensorflow - tf.Dataset.from_tensor_slices性能问题

tensorflow - 如何将类添加到现有模型?

python - 如何在独立显卡 AMD GPU 上运行 Python 脚本?

python - Tensorflow卷积和numpy卷积的区别

python - np.where 用字符串创建缺失值

用于 float 的 Python 中的 JavaScript toString(16)?

python - 无法使用 cx_Freeze 制作独立的二进制 scrapy 蜘蛛