opencv讀取圖片轉numpy ndarray變成bgr的問題

opencv讀取圖片轉numpy ndarray變成bgr的問題

問題原因

有時候需要讀取圖片,然後通過numpy對圖片進行一些操作,再使用PIL.Image保存圖片,這時候通常保存的圖片色彩就變了,這是因爲opencv把圖片轉成bgr了

解決方案

# opencv讀入圖片
img = cv2.imread("test.jpg")
# 對img經過一些numpy的操作後...
# 使用Image將bgr轉回rgb
r = Image.fromarray(img[:, :, 2]).convert('L')
g = Image.fromarray(img[:, :, 1]).convert('L')
b = Image.fromarray(img[:, :, 0]).convert('L')
image = Image.merge("RGB", (r, g, b))
image.save("test.jpg")
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章