python中使用不同库读取图像并相互转换
                                                            生活随笔
收集整理的這篇文章主要介紹了
                                python中使用不同库读取图像并相互转换
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.                        
                                最近在訓練目標檢測的網絡,圖片在輸入網絡時,會使用用到 PIL.Image 和 OpenCV 這兩個庫,這兩個庫在圖像處理方面很多類似的地方,但是它們讀取圖片的格式卻是不一樣的,在這里記錄一下兩種格式互轉的方法。
PIL.Image 轉換成 OpenCV 格式
#方式一 #使用Python Imaging Library(PIL)讀取圖像 讀取圖片格式是RBG 這里將RGB->BGR from scipy.misc import imread im = imread(path) im = im[:,:,::-1]#方式二 cv2.COLOR_RGB2BGR 控制顏色模式的轉換。 import cv2 from PIL import Image import np as np im = Image.open(path) im = cv2.cvtColor(np.asarray(im),cv2.COLOR_RGB2BGR) #opencv讀取圖片的格式為RGB 這里RGB->BGR #方式一 import cv2 from PIL import Image im = cv2.imread(path) im = im[...,::-1] #方式二 import cv2 from PIL import Image im = cv2.imread(path) im = Image.fromarray(cv2.cvtColor(im,cv2.COLOR_BGR2RGB))總結python不同庫讀取圖片:
 1.利用PIL中的Image函數讀取出來不是array格式,這時候需要用 np.asarray() 或者np.array()函數,區別是 np.array() 是深拷貝,np.asarray() 是淺拷貝。
 2.調用scipy這個庫讀出來是圖像是矩陣形式,并且按照(H,W,C)形式保存。
 3.cv2.imread()讀出來同樣是array形式,但是如果是單通道的圖,讀出來的是三通道的。
 4.matplotlib這個庫時常被用來顯示圖片,matplotlib.image as mpimg 用于讀取圖片(array格式),格式為RGB。
總結
以上是生活随笔為你收集整理的python中使用不同库读取图像并相互转换的全部內容,希望文章能夠幫你解決所遇到的問題。
                            
                        - 上一篇: 5G标准必要专利最新全球排名
 - 下一篇: 2016版excel_excel中yd是