时间:2021-07-01 10:21:17 帮助过:83人阅读
方法一:利用PIL中的Image函数,这个函数读取出来不是array格式(推荐学习:Python视频教程)
这时候需要用 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相关技术文章,请访问Python教程栏目进行学习!
以上就是Python怎么读取图片的详细内容,更多请关注Gxl网其它相关文章!