python中plt.imshow与cv2.imshow显示颜色问题


Posted in Python onJuly 16, 2020

在用plt.imshowcv2.imshow显示同一幅图时可能会出现颜色差别很大的现象。
这是因为:opencv的接口使用BGR,而matplotlib.pyplot 则是RGB模式

import cv2 
import numpy as np 
import matplotlib.pyplot as plt 
 
img = cv2.imread('lena_std.tif') 
b,g,r = cv2.split(img) 
img2 = cv2.merge([r,g,b]) 
plt.subplot(121);plt.imshow(img) 
plt.subplot(122);plt.imshow(img2) 
plt.show() 
 
cv2.imshow('bgr image',img) 
cv2.imshow('rgb image',img2) 
cv2.waitKey(0) 
cv2.destroyAllWindows()

程序运行结果如下:
Matplotlib显示结果

python中plt.imshow与cv2.imshow显示颜色问题

OpenCV显示结果

python中plt.imshow与cv2.imshow显示颜色问题

下面看下cv2.imshow()和plt.imshow()的区别

  • 什么时候使用plt.show(),什么时候用cv2.imshow()?
  • 如果需要展示读入的图像,或者展示对读入图像进行一系列操作后的图像时,使用cv2.imshow()
  • 如果不需要展示原始图像,而是绘制一张新的图像,使用plt.imshow()
  • 其实两者都可以,但要注意的是opencv是BGR通道,plt默认RGB通道,若使用cv2.imread()读入图像,用plt.imshow()展示原始图像或者展示对读入图像进行一系列操作后的图像时,需要进行通道转换。
  • 在展示灰度图像时,cv2.imshow(‘gray', gray)
  • plt.imshow(gray,cmap=‘gray'), plt.title(‘gray')

到此这篇关于plt.imshow与cv2.imshow显示颜色问题的文章就介绍到这了,更多相关plt.imshow与cv2.imshow显示颜色内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python过滤字符串中不属于指定集合中字符的类实例
Jun 30 Python
对Python3中的print函数以及与python2的对比分析
May 02 Python
python使用turtle库与random库绘制雪花
Jun 22 Python
django2+uwsgi+nginx上线部署到服务器Ubuntu16.04
Jun 26 Python
Python 多线程不加锁分块读取文件的方法
Dec 11 Python
详解Python3网络爬虫(二):利用urllib.urlopen向有道翻译发送数据获得翻译结果
May 07 Python
Selenium 滚动页面至元素可见的方法
Mar 18 Python
python数据库编程 ODBC方式实现通讯录
Mar 27 Python
PyQt5-QDateEdit的简单使用操作
Jul 12 Python
jupyter notebook 写代码自动补全的实现
Nov 02 Python
Django drf请求模块源码解析
Jun 08 Python
Sentry的安装、配置、使用教程(Sentry日志手机系统)
Jul 23 Python
Python实现GIF图倒放
Jul 16 #Python
浅谈python处理json和redis hash的坑
Jul 16 #Python
Python requests及aiohttp速度对比代码实例
Jul 16 #Python
Python3 搭建Qt5 环境的方法示例
Jul 16 #Python
python3实现将json对象存入Redis以及数据的导入导出
Jul 16 #Python
Python必须了解的35个关键词
Jul 16 #Python
Python子进程subpocess原理及用法解析
Jul 16 #Python
You might like
php环境配置 php5 mysql5 apache2 phpmyadmin安装与配置
2006/11/17 PHP
基于empty函数的输出详解
2013/06/17 PHP
Symfony2实现在doctrine中内置数据的方法
2016/02/05 PHP
php数据访问之增删改查操作
2016/05/09 PHP
如何判断php mysqli扩展类是否开启
2016/12/24 PHP
php实现支付宝当面付(扫码支付)功能
2018/05/30 PHP
PHP+Ajax实现上传文件进度条动态显示进度功能
2018/06/04 PHP
JavaScript中的作用域链和闭包
2012/06/30 Javascript
js控制表单奇偶行样式的简单方法
2013/07/31 Javascript
Bootstrap CSS组件之输入框组
2016/12/17 Javascript
浅谈js-FCC算法Friendly Date Ranges(详解)
2017/04/10 Javascript
微信小程序Redux绑定实例详解
2017/06/07 Javascript
详解利用jsx写vue组件的方法示例
2017/07/17 Javascript
微信小程序实现上传图片裁剪图片过程解析
2019/08/22 Javascript
ES5 模拟 ES6 的 Symbol 实现私有成员功能示例
2020/05/06 Javascript
在vue中使用el-tab-pane v-show/v-if无效的解决
2020/08/03 Javascript
Python多进程并发(multiprocessing)用法实例详解
2015/06/02 Python
python比较两个列表是否相等的方法
2015/07/28 Python
python+pandas+时间、日期以及时间序列处理方法
2018/07/10 Python
linux安装Python3.4.2的操作方法
2018/09/28 Python
Python将一个Excel拆分为多个Excel
2018/11/07 Python
对python当中不在本路径的py文件的引用详解
2018/12/15 Python
python函数与方法的区别总结
2019/06/23 Python
pycharm设置当前工作目录的操作(working directory)
2020/02/14 Python
Python Selenium异常处理的实例分析
2021/02/28 Python
英国高街电视:High Street TV
2018/05/22 全球购物
为您的家、后院、车库等在线购物:Spreetail
2019/06/17 全球购物
Exception类的常用方法
2012/06/16 面试题
职位说明书范文
2014/05/07 职场文书
国际贸易毕业生求职信
2014/07/20 职场文书
入党积极分子批评与自我批评思想汇报
2014/09/14 职场文书
2014年控辍保学工作总结
2014/12/08 职场文书
求职自荐信怎么写
2015/03/04 职场文书
校运会宣传稿大全
2015/07/23 职场文书
Python实现照片卡通化
2021/12/06 Python
MySQL多表查询机制
2022/03/17 MySQL