python读取图片的方式,以及将图片以三维数组的形式输出方法

yipeiwu_com5年前Python基础

近期做个小项目需要用到python读取图片,自己整理了一下两种读取图片的方式,其中一种用到了TensorFlow,(TensorFlow是基于python3 的)。代码及运行结果如下所示:

import numpy as np
from PIL import Image
import matplotlib.pyplot as plt

image = Image.open(r'C:\Users\Administrator\Desktop\data\train\forest_001.jpg')  #读取图片文件
plt.imshow(image)
plt.show()      #将图片输出到屏幕

image_arr = np.array(image)   #将图片以数组的形式读入变量
print (image_arr)

另一种读取图片的方式

# coding=utf-8
import tensorflow as tf
import numpy as np
import matplotlib.pyplot as plt

image_contents = tf.read_file(r'C:\Users\Administrator\Desktop\data\train\forest_001.jpg')  #读取文件

image = tf.image.decode_jpeg(image_contents, channels=3)   #解码jpeg

with tf.Session() as sess:
  sess.run(tf.global_variables_initializer())

  img=sess.run((image))     #img为三维数组
  print (img.shape)     #输出数组形状
  print (img)           #打印数组

  plt.imshow(img)    #显示数组
  plt.show()

结果为:

打印图片

输出的数组部分截图

以上这篇python读取图片的方式,以及将图片以三维数组的形式输出方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python网络编程之多线程同时接受和发送

本文实例为大家分享了python多线程同时接受和发的具体代码,供大家参考,具体内容如下 ''' 模仿qq 同时可以发送信息和接受信息多线程 ''' from socket imp...

python groupby 函数 as_index详解

在官方网站中对as_index有以下介绍: as_index : boolean, default True For aggregated output, return object w...

Python基于Matplotlib库简单绘制折线图的方法示例

Python基于Matplotlib库简单绘制折线图的方法示例

本文实例讲述了Python基于Matplotlib库简单绘制折线图的方法。分享给大家供大家参考,具体如下: Matplotlib画折线图,有一些离散点,想看看这些点的变动趋势: im...

Python 正则表达式 re.match/re.search/re.sub的使用解析

From Python正则表达式 re.match(pattern, string, flags=0) 尝试从字符串起始位置匹配一个模式;如果不是起始位置匹配成功,则 re.match(...

PyQt5每天必学之切换按钮

PyQt5每天必学之切换按钮

切换按钮是QPushButton的特殊模式。它是一个具有两种状态的按钮:按压和未按压。我们通过这两种状态之间的切换来修改其它内容。 #!/usr/bin/python3 # -*-...