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")
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章