OpenCV实现BGR转RGB
一、问题当使用opencv函数imread()读取图片时,颜色的顺序是BGR(blue、green、blue),因此我们经常需要将BGR转RGB。二、转换可以通过以下几种方法实现BGR转RGB# 方法一im_bgr = cv2.imread('data/src/lena.jpg')im_rgb = im_bgr[:, :, [2, 1, 0]]Image.fromarray(im_rgb).sav
·
一、问题
当使用opencv函数imread()读取图片时,颜色的顺序是BGR(blue、green、red),而Pillow的颜色顺序又是RGB,因此我们可能需要将BGR转RGB。
二、转换
可以通过以下几种方法实现BGR转RGB
import cv2
import numpy as np
from PIL import Image
# 方法一
im_bgr = cv2.imread('data/src/lena.jpg')
im_rgb = im_bgr[:, :, [2, 1, 0]]
Image.fromarray(im_rgb).save('data/dst/lena_swap.jpg')
# 方法二
im_bgr = cv2.imread('data/src/lena.jpg')
im_rgb = im_bgr[:, :, ::-1]
Image.fromarray(im_rgb).save('data/dst/lena_swap_2.jpg')
# 方法三
im_cv = cv2.imread('data/src/lena.jpg')
im_rgb = cv2.cvtColor(im_cv, cv2.COLOR_BGR2RGB)
Image.fromarray(im_rgb).save('data/dst/lena_rgb_pillow.jpg')
更多推荐
已为社区贡献4条内容
所有评论(0)