tensorflow实现对图片的读取的示例代码

yipeiwu_com6年前Python基础

tensorflow里面给出了一个函数用来读取图像,不过得到的结果是最原始的图像,是咩有经过解码的图像,这个函数为tf.gfile.FastGFile(‘path', ‘r').read()。如果要显示读入的图像,那就需要经过解码过程,tensorflow里面提供解码的函数有两个,tf.image.decode_jepg和tf.image.decode_png分别用于解码jpg格式和png格式的图像进行解码,得到图像的像素值,这个像素值可以用于显示图像。如果乜有解码,读取的图像是一个字符串,没法显示。

例如:

import matplotlib.pyplot as plt; 
import tensorflow as tf; 
 
image_raw_data_jpg = tf.gfile.FastGFile('11.jpg', 'r').read() 
image_raw_data_png = tf.gfile.FastGFile('1.png', 'r').read() 
 
with tf.Session() as sess: 
  img_data_jpg = tf.image.decode_jpeg(image_raw_data_jpg) #图像解码 
  img_data_jpg = tf.image.convert_image_dtype(img_data_jpg, dtype=tf.uint8) #改变图像数据的类型 
 
  img_data_png = tf.image.decode_png(image_raw_data_png) 
  img_data_png = tf.image.convert_image_dtype(img_data_png, dtype=tf.uint8) 
 
  plt.figure(1) #图像显示 
  plt.imshow(img_data_jpg.eval()) 
  plt.figure(2) 
  plt.imshow(img_data_png.eval()) 
  plt.show() 

结果:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python发送HTTP请求的方法小结

本文实例讲述了python发送HTTP请求的方法。分享给大家供大家参考。具体如下: 这里包含 Python 使用 GET/HEAD/POST 方法进行 HTTP 请求 1. GET 方法...

Python中的迭代器与生成器高级用法解析

迭代器 迭代器是依附于迭代协议的对象——基本意味它有一个next方法(method),当调用时,返回序列中的下一个项目。当无项目可返回时,引发(raise)StopIteration异常...

Python中查看文件名和文件路径

查看文件名和文件路径 >>> import os >>> url = 'http://images.cnitblog.com/i/311516/2...

探究Python的Tornado框架对子域名和泛域名的支持

其实Tornado对子域名和泛域名(除了特别说明外,以下子域名和泛域名均简称为泛域名)的支持并不是什么新鲜事,两年多前我用Tornado写的开源网站 http://poweredsite...

Python基于opencv实现的简单画板功能示例

Python基于opencv实现的简单画板功能示例

本文实例讲述了Python基于opencv实现的简单画板功能。分享给大家供大家参考,具体如下: import cv2 import numpy as np drawing = Fal...