图像处理:大小调整(tf.image.resize_images)

改变图片尺寸的大小使用的是 tf.image.resize_images

    img_resized = tf.image.resize_images(image_data, [300, 300], method=0)

通过tf.image.resize_images函数调整图像的大小。这个函数第一个参数为原始图像,第二个和第三个分别为调整后图像的大小,method参数给出了调整图像大小的算法
method = 0 双线性插值法
method = 1 最近邻居法
method = 2 双三次插值法
method = 3 面积插值法

"""
图片 处理
by song
stay calm stay peace
"""

# matplotlib.pyplot 是一个python的画图工具。可以可视化tensorflow对图像的处理过程
import matplotlib.pyplot as plt
import tensorflow as tf
import numpy as np

# 读取图像的原始数据
image_raw_data = tf.gfile.FastGFile('/lena.jpg', 'rb').read()

with tf.Session() as sess:
    # 将图像使用JPEG的格式解码从而得到图像对应的三维矩阵。Tensorflow还提供了 tf.image.decode_png函数对png格式的图像进行编码。
    # 解码之后的结果为一个张量, 在使用他的取值之前需要明确调用运行的过程。
    image_data = tf.image.decode_jpeg(image_raw_data)
    # Decode a JPEG-encoded image to a uint8 tensor 所以这里的 image_data 已经是一个tsnsor

    # 通过tf.image.resize_images函数调整图像的大小。这个函数第一个参数为原始图像,第二个和第三个分别为调整后图像的大小,
    # method参数给出了调整图像大小的算法
    img_resized = tf.image.resize_images(image_data, [300, 300], method=0)

    # 输出调整后图像的大小,此处的结果为(300,300,?)。表示图像的大小是300*300,但是图像深度在没有明确设置之前会是问号。
    print(img_resized.get_shape())

    # # 如何显示改变大小以后的照片
    # img_resized = np.asarray(img_resized.eval(), dtype='uint8')  # 变为uint8才能显示
    # # 通过pyplot可视化过程
    # plt.imshow(img_resized)
    # plt.show()
  • 7
    点赞
  • 47
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值