如果源jpeg

时间:2017-07-28 14:54:48

标签: python tensorflow

这里的示例是我在尝试学习如何使用Tensorflow时编写的升级程序的精简版本。如果我向它提供一个具有方向exif元数据的图像(我的测试图像具有旋转270 CW),那么输出图像将被旋转,好像是"正确"那个方向。这似乎没有记录在任何地方。

有没有办法通过将标志或值传递给decode_jpeg / encode_jpeg函数,或者事先删除元数据来阻止这种情况发生?

"Use tensorflow to decode then encode an image at a hard-coded location and save the result to a second hard-coded location."

import tensorflow as tf

def main():
    "Use tensorflow to decode then encode an image at a hard-coded location and save the result to a second hard-coded location."

    sess = tf.Session()
    image_decoded = tf.image.decode_jpeg(tf.read_file('D:\\TensorFlow\\Upscaling\\C890FAA477.jpg'), channels=3)
    fname = tf.constant('D:\\TensorFlow\\Upscaling\\C890FAA477_DEC_ENC.jpg')
    enc = tf.image.encode_jpeg(tf.cast(image_decoded, tf.uint8))
    fwrite = tf.write_file(fname, enc)
    sess.run(fwrite)
    return

main()

1 个答案:

答案 0 :(得分:1)

事实证明我把这一切都落后了。 Windows资源管理器和默认照片查看器都自动应用旋转,并且它们正在翻转宽度/高度值以匹配新旋转。与Python或Tensorflow无关。