用於機器學習也好,深度學習也好,都需要讀取圖片的操作。
方法一:利用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怎麼唸圖片的詳細內容。更多資訊請關注PHP中文網其他相關文章!