程序员开发实例大全宝库

网站首页 > 编程文章 正文

OpenCV 实现BGR转RGB(opencv rgb转灰度)

zazugpt 2024-09-04 00:23:58 编程文章 26 ℃ 0 评论

一、问题

当使用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')

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表