首页 > 其他分享 >OpenCV 实现BGR转RGB

OpenCV 实现BGR转RGB

时间:2022-11-04 10:23:05浏览次数:65  
标签:lena RGB cv2 rgb jpg OpenCV BGR im data

一、问题

当使用opencv函数imread()读取图片时,颜色的顺序是BGR(blue、green、red),而Pillow的颜色顺序又是RGB,因此我们可能需要将BGR转RGB。

二、转换

可以通过以下几种方法实现BGR转RGB

1 import cv2
2 import numpy as np
3 from PIL import Image
4 
5 # 方法一
6 im_bgr = cv2.imread('data/src/lena.jpg')
7 
8 im_rgb = im_bgr[:, :, [2, 1, 0]]
9 Image.fromarray(im_rgb).save('data/dst/lena_swap.jpg')
1 # 方法二
2 im_bgr = cv2.imread('data/src/lena.jpg')
3 
4 im_rgb = im_bgr[:, :, ::-1]
5 Image.fromarray(im_rgb).save('data/dst/lena_swap_2.jpg')
1 # 方法三
2 im_cv = cv2.imread('data/src/lena.jpg')
3 
4 im_rgb = cv2.cvtColor(im_cv, cv2.COLOR_BGR2RGB)
5 Image.fromarray(im_rgb).save('data/dst/lena_rgb_pillow.jpg')

 

标签:lena,RGB,cv2,rgb,jpg,OpenCV,BGR,im,data
From: https://www.cnblogs.com/ybqjymy/p/16856816.html

相关文章

  • mexopencv配置
    配置环境:Win10+VS2015+Opencv3.3+matlab2016a第一步:下载mexopencv链接:对应版本为opencv3.3.1对应下载地址:​​https://github.com/kyamagu/mexopencv/tree/v3.3.1​​......
  • cv-画RGB直方图
    python代码importcv2frommatplotlibimportpyplotaspltimportsysif__name__=="__main__":print("PYfileargvis:",sys.argv[1])path=sys.ar......
  • OpenCV VideoCapture 读取视频并且获取一帧和帧率
    前言这篇文章主要讲述如何读取视频并且获取一帧图像和帧率一、代码1#include<opencv2/opencv.hpp>2#include<iostream>3usingnamespacecv;4intmain()......
  • opencv
     计算机视觉开源库算法:图像处理,机器学习(MachineLearn) OpenCV模块主模块 其他模块参考资料 1.OpenCV官网2.b站视频教程python版3.b站视频教程C++版......
  • 使用Opencv4和YOLOv4(XTDrone)训练模型遇到问题的记录(二)
    使用Opencv4和YOLOv4(XTDrone)训练模型遇到问题的记录(二)WrittenByPiscesAlpaca(双鱼座羊驼) 目录使用Opencv4和YOLOv4(XTDrone)训练模型遇到问题的记录(二)一、Opencv4安装问......
  • 计算机视觉课程第十二讲-OpenCV的整体框架介绍上半部分
     本次将主要讲解一下OpenCV的整体框架,这样会更有利于我们学习和运用该开源工具。OpenCV主要包含下下三部分:1、opencv-主要分支,包含核心类型和函数,稳定的算法,构建的脚本和工......
  • 计算机视觉课程第四讲-OpenCV4钢管检测项目下集:霍夫圆检测理论与实践
     本次将主要给大家讲解如何利用OpenCV4中的霍夫圆检测算法的理论知识和具体实现。如果想听详细讲解,请通过下方B站链接进入B站进行观看:​​https://www.bilibili.com/video/......
  • 双线性差值算法实现RGB图像缩放-C语言
    实现一:存在栈溢出的风险,来自:https://blog.csdn.net/wangjiannuaa/article/details/65980411/**@funcgif_get_scale_rgb2*@brief双线性差值算法......
  • OpenCV img和base64转换
    img->cv::Mat-->Base64std::vector<uchar>buf;cv::Matmat(height,width,CV_8U,image_data.data());cv::imencode(".png",mat,buf);autoenc_ms......
  • Ubuntu18.04LTS环境下创建OpenCV4.x-Android库
    1背景1.1java.lang.UnsatisfiedLinkError:dlopenfailed:library“libc++_shared.so”notfound​​libc++_shared.so​​​之前默认集成在​​opencv_java3.so​​......