图像预处理
import matplotlib.pyplot as plt
import tensorflow as tf
#tf.gfile.FastGFile读取或保存图像文件
image_raw_data = tf.gfile.FastGFile(".../input_data/cat.jpeg",'r').read()
with tf.Session() as sess:
#图形解码(可以解码jpeg, png,编码为encode_jpeg)
img_data = tf.image.decode_jpeg(image_raw_data)
print(img_data.eval())
plt.imshow(img_data.eval())
plt.show()
import numpy as np
with tf.Session() as sess:
#设定图片大小,method有4中插值,分别为0,1,2,3
resized = tf.image.resize_images(img_data, [300, 300], method=0)
print("Digital dtype: %s" % resized.dtype)
# TensorFlow的函数处理图片后存储的数据是float32格式的,需要转换成uint8才能正确打印图片。
cat = np.asarray(resized.eval(), dtype="uint8")
print(resized.get_shape())
plt.imshow(cat)
plt.show()
#图形剪切或填充
with tf.Session() as sess:
croped = tf