matplotlib的imshow显示图片颜色正常,用cv2保存颜色不对

OpenCV默认使用BGR颜色通道顺序来读取和显示图片,而matplotlib使用的是RGB颜色通道顺序。当你直接使用cv2.imwrite保存由matplotlib处理的图片数组时,如果直接保存,OpenCV可能会按照BGR顺序解释数据,导致颜色不正确。

解决方法:

在保存图片之前,将图片从RGB转换为BGR。可以使用numpy的ndarray.transpose方法或者cv2.cvtColor方法进行转换。

python 复制代码
import cv2
import numpy as np
from matplotlib import pyplot as plt

# 假设img是从matplotlib获取的图像数据
img = plt.imread('your_image.png')  # 读取图片,这里已经是RGB格式

# 转换为BGR格式
img_bgr = cv2.cvtColor(img, cv2.COLOR_RGB2BGR)

# 现在保存图片
cv2.imwrite('output_image.png', img_bgr)
相关推荐
STLearner5 分钟前
SIGIR 2026 | LLM × Graph论文总结(图增强LLM,GraphRAG,Agent,多模态,知识图谱,搜索,推
人工智能·python·深度学习·神经网络·机器学习·数据挖掘·知识图谱
FreakStudio8 分钟前
MicroPython 内核开发者直接狂喜!这个 Claude 插件市场,把开发全流程做成了「对话式外挂」
python·单片机·嵌入式·面向对象·并行计算·电子diy
老陈说编程25 分钟前
12. LangChain 6大核心调用方法:invoke/stream/batch同步异步全解析,新手也能轻松学会
开发语言·人工智能·python·深度学习·机器学习·ai·langchain
给自己做减法31 分钟前
rag混合检索
人工智能·python·rag
2301_812539671 小时前
Golang怎么实现网页爬虫抓取数据_Golang如何用colly框架快速构建爬虫采集程序【教程】
jvm·数据库·python
xcbrand1 小时前
政府事业机构品牌策划公司哪家可靠
大数据·人工智能·python
爱滑雪的码农3 小时前
Java基础十一 流(Stream)、文件(File)和IO
java·开发语言·python
knight_9___3 小时前
LLM工具调用面试篇5
人工智能·python·深度学习·面试·职场和发展·llm·agent
小学生-山海3 小时前
YOLO火焰/烟雾检测系统
python·yolo
浔川python社3 小时前
浔川社团第一次福利数据公布
人工智能·python·deepseek