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中将字典转换成其json字符串
Jul 16 Python
python3简单实现微信爬虫
Apr 09 Python
Python的Flask框架中实现登录用户的个人资料和头像的教程
Apr 20 Python
python导入csv文件出现SyntaxError问题分析
Dec 15 Python
python操作oracle的完整教程分享
Jan 30 Python
解决Pycharm无法import自己安装的第三方module问题
May 18 Python
解决Python plt.savefig 保存图片时一片空白的问题
Jan 10 Python
Python爬虫:将headers请求头字符串转为字典的方法
Aug 21 Python
python3注册全局热键的实现
Mar 22 Python
如何快速理解python的垃圾回收机制
Sep 01 Python
python实现图片九宫格分割的示例
Apr 25 Python
pytorch中F.avg_pool1d()和F.avg_pool2d()的使用操作
May 22 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漏洞小结
2012/02/05 PHP
显示youtube视频缩略图和Vimeo视频缩略图代码分享
2014/02/13 PHP
PHP函数checkdnsrr用法详解(Windows平台用法)
2016/03/21 PHP
PHP 匿名函数与注意事项详细介绍
2016/11/26 PHP
php模仿qq空间或朋友圈发布动态、评论动态、回复评论、删除动态或评论的功能(中)
2017/06/11 PHP
Laravel模糊查询区分大小写的实例
2019/09/29 PHP
jQuery中$.fn的用法示例介绍
2013/11/05 Javascript
javascript中不提供sleep功能如何实现这个功能
2014/05/27 Javascript
jquery常用函数与方法汇总
2015/09/01 Javascript
javascript jquery对form元素的常见操作详解
2016/06/12 Javascript
如何使用Bootstrap 按钮实例详解
2017/03/29 Javascript
AngularJs实现聊天列表实时刷新功能
2017/06/15 Javascript
基于js中this和event 的区别(详解)
2017/10/24 Javascript
详解从零搭建 vue2 vue-router2 webpack3 工程
2017/11/22 Javascript
JavaScript面向对象的程序设计(犯迷糊的小羊)
2018/05/27 Javascript
详解webpack打包nodejs项目(前端代码)
2018/09/19 NodeJs
vuejs2.0运用原生js实现简单拖拽元素功能
2020/08/21 Javascript
layer.open提交子页面的form和layedit文本编辑内容的方法
2019/09/27 Javascript
使用Vue实现简单计算器
2020/02/25 Javascript
JavaScript 俄罗斯方块游戏实现方法与代码解释
2020/04/08 Javascript
Postman动态获取返回值过程详解
2020/06/30 Javascript
浅析我对JS延迟异步脚本的思考
2020/10/12 Javascript
JavaScript对象访问器Getter及Setter原理解析
2020/12/08 Javascript
js 执行上下文和作用域的相关总结
2021/02/08 Javascript
[56:56]VG vs LGD 2019国际邀请赛淘汰赛 胜者组 BO3 第一场 8.22
2019/09/05 DOTA
使用 Python 获取 Linux 系统信息的代码
2014/07/13 Python
Python语言实现百度语音识别API的使用实例
2017/12/13 Python
python3利用Dlib19.7实现人脸68个特征点标定
2018/02/26 Python
Python连接Redis的基本配置方法
2018/09/13 Python
Python安装及Pycharm安装使用教程图解
2019/09/20 Python
Python requests模块session代码实例
2020/04/14 Python
英国最大的百货公司:Harrods
2016/08/18 全球购物
鞋类设计与工艺专业销售求职信
2013/11/01 职场文书
消防安全管理制度
2014/02/01 职场文书
2015年检验科工作总结
2015/04/27 职场文书
Android RecyclerView实现九宫格效果
2022/06/28 Java/Android