一、问题
当使用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')
分类:
OpenCV
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全网最简单!3分钟用满血DeepSeek R1开发一款AI智能客服,零代码轻松接入微信、公众号、小程
· .NET 10 首个预览版发布,跨平台开发与性能全面提升
· 《HelloGitHub》第 107 期
· 全程使用 AI 从 0 到 1 写了个小工具
· 从文本到图像:SSE 如何助力 AI 内容实时呈现?(Typescript篇)
2020-11-04 Qt 实现单个EXE文件(绿色运行版) Enigma Virtual Box
2020-11-04 Qt 设置应用程序图标和发布程序
2020-11-04 Qt 用代码实现菜单栏(MenuBar)和工具栏(ToolBar)
2020-11-04 VTK 相机类vtkCamera原理及用法
2020-11-04 VTK 初识vtkRenderer
2020-11-04 VTK 图像处理_显示(vtkImageViewer2 & vtkImageActor)
2020-11-04 VTK vtkSmartPointer 智能指针详解