python中的opencv和PIL(pillow)轉化操作
opencv > pil
import cv2 from PIL import Image img = cv2.imread("test.png") image = Image.fromarray(cv2.cvtColor(img,cv2.COLOR_BGR2RGB))
pil > opencv
import cv2 from PIL import Image image = Image.open("test.png") img = cv2.cvtColor(numpy.asarray(image),cv2.COLOR_RGB2BGR)
補充:skimage與opencv圖片格式的相互轉換
skimage是python的一個圖像庫,常常與matplotlib一起作為視頻、圖像類的基本庫。而opencv作為非常流行的視覺庫,在圖像處理中使用非常常見,本篇介紹兩種庫的圖像格式的相互轉換。
skimage
圖像格式
通道:RGB
像素值:[0,1]
Opencv
圖像格式
通道:BGR
像素值:[0,255]
轉換
轉換過程現封裝如下:
def skimage2opencv(src): src *= 255 src.astype(int) cv2.cvtColor(src,cv2.COLOR_RGB2BGR) return src def opencv2skimage(src): cv2.cvtColor(src,cv2.COLOR_BGR2RGB) src.astype(float32) src /= 255 return src
以上為個人經驗,希望能給大傢一個參考,也希望大傢多多支持WalkonNet。如有錯誤或未考慮完全的地方,望不吝賜教。
推薦閱讀:
- python OpenCV計算圖片相似度的5種算法
- Python中的imread()函數用法說明
- 2021年最新用於圖像處理的Python庫總結
- Python-OpenCV實現圖像缺陷檢測的實例
- Python列表刪除重復元素與圖像相似度判斷及刪除實例代碼