用于机器学习也好,深度学习也好,都需要读取图片的操作。本文就为大家讲解Python如何读取图片文件,有需要的朋友可以参考一下:


方法一:利用PIL中的Image函数,这个函数读取出来不是array格式

这时候需要用 np.asarray(im) 或者np.array()函数

区别是 np.array() 是深拷贝,np.asarray() 是浅拷贝

from PIL import Image

import numpy as np

I = Image.open(‘./cc_1.png’) 

I.show()    

I.save(‘./save.png’)

I_array = np.array(I)

print I_array.shape

方法二:利用matplotlib.pyplot as plt用于显示图片

# matplotlib.image as mpimg 用于读取图片

# 并且读取出来就是array格式

import matplotlib.pyplot as plt

import matplotlib.image as mpimg

import numpy as np

I = mpimg.imread(‘./cc_1.png’)

print I.shape

plt.imshow(I)

方法三:利用opencv-python接口

#cv2.imread()读出来同样是array形式,但是如果是单通道的图,读出来的是三通道的

import cv2

I = cv2.imread(‘./cc_1.png’)

print I.shape

方法四:图像的存取我一般喜欢用scipy这个库里的东西,读出来是矩阵形式,并且按照(H,W,C)形式保存

import matplotlib.pyplot as plt

from scipy import misc

import scipy

I = misc.imread(‘./cc_1.png’)

scipy.misc.imsave(‘./save1.png’, I)

plt.imshow(I)

plt.show()

方法五:用skimage库

from skimage import io,data

img=data.lena()

io.imshow(img)

以上就是Python怎么读取图片文件的详细内容,更多请关注90代码网其它相关文章!