OpenCV实现BGR转RGB
一、问题
当使用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')
OpenCV实现BGR转RGB相关推荐
- OpenCV系列 | BGR图像转换为RGB图像
目录 方法一 方法二 使用OpenCV加载图像时,默认使用BGR的格式,而使用matplotlib显示图像时又采用RGB的格式,因此显示图像时,会显得非常奇怪. 如以一张船的照片为例,原图如下: 使用 ...
- opencv python 把图(cv2下)BGR转RGB,且HWC转CHW
img = cv2.imread("001.jpg") img_ = img[:,:,::-1].transpose((2,0,1)) ① 在opencv里,图格式HWC,其余都是 ...
- 为什么opencv使用BGR 格式,而不是RGB格式?
https://www.learnopencv.com/why-does-opencv-use-bgr-color-format/ 原因其实很简单啊,这个解释非常的风趣,"古罗马的马屁股&q ...
- 【超直白讲解opencv RGB与BGR】RGB模式与BGR模式有什么不同,如何相互转换?
一.为什么会有BGR和RGB两种通道? 首先RGB与BGR本质都没有什么区别,OpenCV和PIL读取图片的格式分别是BGR和RGB. 当我们使用OpenCV读取图像时,你应该也会发现读取的数组其实是 ...
- bgr与rgb相互转换
在opencv中的图像是以bgr形式存放的,但很多场景默认的是rgb形式的图像,这就导致实际应用中的颜色错乱,以下是bgr和rgb相互转换的函数: def rgb_bgr(r_color):r_col ...
- CV2.imread得到的图像显示成蓝色的原因和3种BGR转RGB的方法
新手使用CV2.imread后,直接显示,得到下面这种蓝色的图片,与原图差异很大: CV2的imread默认存储的颜色空间顺序是BGR,与matplot显示用的imshow的颜色顺序RGB正好相反,那 ...
- python BGR 转换为 RGB
将 numpy.ndarray 类型的 BGR 转为 RGB: if __name__ == '__main__':image_path = '1.jpg'image = cv2.imread(ima ...
- BGR转RGB(python)
BGR转RGB(python) 前言 BGR转RGB 总结 前言 使用cv2打开图片默认是BGR模式,而使用PIL显示图片时是RGB模式,如果不做转换,图片会出现色彩上的问题,例如: cv_img = ...
- opencv:图像读取BGR变成RGB
opencv大坑之BGR opencv对于读进来的图片的通道排列是BGR,而不是主流的RGB!谨记! #opencv读入的矩阵是BGR,如果想转为RGB,可以这么转 img = cv2.imread( ...
最新文章
- 探讨ASP.NET AJAX客户端开发技术
- JBoss关闭时报Failed to authenticate principal=null,...
- 深入理解Java:注解
- when is SAP UI5 url hash changed in browser
- [react] React v15中怎么处理错误边界?
- BugkuCTF-Reverse题mobile1(gctf)
- python os库使用
- css固定定位与绝对定位的区别
- Spring mvc 返回json格式 - 龙企阁 - 博客频道 - CSDN.NET
- 《人月神话》阅读笔记3
- Python入门--函数的参数总结
- Easy connect不能访问公网/外网/网页
- Matlab批量读取csv、txt、prn等文件
- 对物理量“角速度”与“波矢”的理解
- java 权限 部分截图
- 图搜索算法(一):图搜索的一般算法
- 第四届橙瓜网络文学奖评选仙侠排行,辰东《遮天》竟然不是排第一?
- TensorBoard一幅图中显示多条曲线
- 【JZOJ 省选模拟】多项式(poly)
- 30佳别具一格的国外创意名片设计欣赏
热门文章
- 专题十二:实现一个简单的FTP服务器
- U-Mail专家分析邮件系统退信原因
- TOAD的导入或导出
- 北邮鲁鹏老师三维重建课程之相机标定
- 前端 解决笔记本屏幕显示缩放比例125% 150%对页面布局的影响
- VUE学习-基础(一)
- 信息系统项目管理师必背核心考点(三十一)挣值管理
- 从零开始构建基于textcnn的文本分类模型(上),word2vec向量训练,预训练词向量模型加载,pytorch Dataset、collete_fn、Dataloader转换数据集并行加载
- 慧都独家揭晓国外十大Mac和iOS应用开发工具
- php全选和反选,纯javascript实现选择框的全选与反选功能