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

在用plt.imshow和cv2.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显示结果

OpenCV显示结果

下面看下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显示颜色内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

时间: 2020-07-15

Opencv+Python cv2.imshow闪退 # 读入原始图像 origineImage = cv2.imread('./pic/6.jpeg') # 图像灰度化 # image = cv2.imread('test.jpg',0) image = cv2.cvtColor(origineImage, cv2.COLOR_BGR2GRAY) #image.save('./pic/gray.jpg') cv2.imshow('gray', image) # 将图片二值化 retval, i

当要处理批量图片,且每张图片都要进行显示时,用plt.imshow() plt.show()会出现内存泄漏, 管理器中看到其中一个python进程的内存不断上涨,目前有找到解决方法 from matplotlib import pyplot as plt ... for...: ... plt.figure(figsize=IMAGE_SIZE) plt.imshow(image_np) plt.show() 补充知识:python在内存中读取base64图片 import base64 imp

对以下数据画图结果图不显示,修改过程如下 df3 = {'chinese':109, 'American':88, 'German': 66, 'Korea':23, 'Japan':5, 'England':118} df4 = pd.DataFrame(df3) df4.plot(kind='barh', rot=0) 运行结果:ValueError: If using all scalar values, you must pass an index 原因:缺少索引 修改后: #方式1:

机器环境: Python 3.6.4 numpy==1.14.0 pandas==0.22.0 解决方法: np.set_printoptions(suppress=True) 默认情况下,ndarray数组采用科学计数法显示: 加入代码后: 以上这篇完美解决python中ndarray 默认用科学计数法显示的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们.

vue在data中定义图片相对路径: data() { return { active: 1, icon: { active: "../assets/images/home-selected.png", inactive: "../assets/images/home.png" } }; } 页面使用vant的标签栏自定义图标:

微信小程序 解决swiper不显示图片的方法 1.我说的swiper不显示图片是只有一个swiper的框,但不显示设置好的图片. 第一个要确定的是图片路径设置的正不正确,确定路径没有设置错,还有一个可能的原因就是,放swiper的这个页面(也就是这个wxml文件)没有在app.json里面的pages进行注册 确决的方法是: 找到项目下的app.json文件 在app.json的配置文件下的pages进行页面注册,像下面图片这样 小程序的文档也写了"小程序中新增/减少页面,都需要对 pages

如题,解决Python中用PyQt时中文乱码问题的解决方法: 在中文字符串前面加上u,如u'你好,世界',其他网上的方法没有多去探究,Python的版本也会影响解决方法,故这里只推荐这种. (有人说用toLocal8bit函数也可以,我试了下,貌似不行)请看例子: #coding=utf-8 from PyQt4 import QtGui, QtCore s = QtCore.QString(u'你好(hello)世界(world)') t = s.toLocal8Bit() u = unico

如下所示: #-*- coding:utf-8 -*- import numpy as np import matplotlib.pyplot as plt from matplotlib.font_manager import FontProperties #k与客户端处理时间的值之间的关系 x=range(2,51,2) y1=[5.393128497232703, 9.57638681757734, 13.828038570286598, 17.88060602988053, 22.943

ViewPager介绍 ViewPager的功能就是可以使视图滑动,就像Lanucher左右滑动那样. ViewPager用于实现多页面的切换效果,该类存在于Google的兼容包android-support-v4.jar里面. ViewPager: 1)ViewPager类直接继承了ViewGroup类,所有它是一个容器类,可以在其中添加其他的view类. 2)ViewPager类需要一个PagerAdapter适配器类给它提供数据. 3)ViewPager经常和Fragment一起使用,并且

python中有的df列比较长head的时候会出现省略号,现在数据分析常用的就是基于anaconda的notebook和sypder,在spyder下head的时候就会比较明显的遇到显示不全.这时候我们就需要用到pandas下的一个函数set_option 我们直接来看代码: 这是正常情况spyder下head()的样子 import numpy as np import pandas as pd df=pd.DataFrame(np.random.rand(2,10)) #创建一个2行10列的

前言 众所周知Python不像JS或者PHP这种弱类型语言里在字符串连接时会自动转换类型,如果直接将字符串和数字拼接会直接报错. 如以下的代码: # coding=utf8 str = '你的分数是:' num = 82 text = str+num+'分 | 琼台博客' print text 执行结果 直接报错:TypeError: cannot concatenate 'str' and 'int' objects 解决这个方法只有提前把num转换为字符串类型,可以使用bytes函数把int

python灰度图cv2到plt变颜色_python中plt.imshow与cv2.imshow显示颜色问题相关推荐

  1. python中线条颜色_python中plot用法——线条、点、颜色

    plot画图时可以设定线条参数.包括:颜色.线型.标记风格. 1)控制颜色 颜色之间的对应关系为 b---blue   c---cyan  g---green    k----black m---ma ...

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

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

  3. python饼图添加颜色_Python中的五颜六色的饼状图!(二)

    [5x00]突出显示扇形块 explode 参数可以实现突出显示某一块扇区,接收数组形式的参数,这个数组中的元素个数应该是 len(x),即和扇区块的数量相同.import matplotlib.py ...

  4. python 灰度图转矩阵_图像转换矩阵

    一.Python pillow模块 pip install pillow 二.使用 from PIL import Image import numpy as np def loadImage(): ...

  5. python画图matplotlib直方图条怎么变宽_python – matplotlib和numpy – 直方图条颜色和规范化...

    所以我有两个问题: 1-我有一个2D直方图w / 1D直方图沿着x& y轴.这些直方图总计了它们各自的x和y值,而主直方图总计了对数x-y区间的值.代码如下.我用pcolormesh来生成2D ...

  6. opencv python 灰度图转三通道彩色图

    灰度图转RGB IMG_OUT = cv2.cvtColor(IMG_IN, cv2.COLOR_GRAY2RGB)

  7. python灰度图生成g代码_Artcam2009利用灰度图生成雕刻机所需的G代码

    双击桌面的artcam快捷方式图标打开软件首先看到如下 的界面.点击"通过图像产生模型" 利用ART CAM 软件制作浮雕刀路的方法 Artcam2009利用灰度图生成雕刻机所需的 ...

  8. python灰度图生成g代码_artcam pro 通过灰度图生成G代码详细图文教程

    本文是使用artcam pro 把灰度图转成G代码,看到喜欢的雕刻,可以自己先做成灰度图,然后转换成G代码,今天特地做了一个教程,仅供刚刚接触者使用! 新手可以看看,老手请高抬贵手,不要嘲笑.自己技术 ...

  9. python代码风格程序越复杂越高级_Python中代码风格的改变和相应的性能优化

    使用现代风格改善你的代码 一旦你开始使用 Python 3,你就有机会接触新的特性来改善你的代码.这篇文章中提到的很多东西实际上在 Python 3 之前就已经被支持了.但我还是要提一下它们,因为知道 ...

最新文章

  1. MATLAB从入门到精通-新增返回数组高、宽数字特征的全新方式
  2. Spring事务嵌套引发的问题--Transaction rolled back because it has been marked as rollback-only...
  3. 【数据结构与算法】之深入解析KMP算法的核心原理和实战演练
  4. 大数据WEB阶段Mybatis(一)
  5. PHP框架和springboot区别,Spring和SpringBoot的区别
  6. CreateDesktop 创建虚拟桌面
  7. java label覆盖_java – 将JLabel置于JLabel之上,其中包含图像
  8. 老李谈JVM内存模型
  9. Oracle 11g R2 ADG 运维
  10. USACO习题:Your Ride Is Here
  11. mvn package时,报错A required class is missing: com/thoughtworks/xstream/io/HierarchicalStreamDriver...
  12. HG255D刷flash记录
  13. c语言逻辑运算符的作用,C语言逻辑运算符知识整理
  14. android 显示网速,随着掌握联网状态 Android手机如何显示实时网速
  15. 一个网络下,手机如何访问本地网址
  16. android 视频剪辑工具,视频剪辑工具手机版
  17. 小萌新开始做题啦!----------相交链表
  18. SpringBoot-使用分页插件(PageHelper)
  19. 财务管理基础 第十二章 现金流量估算与风险分析
  20. 机器学习 | 一个基于机器学习的简单小实践:波斯顿房价预测分析

热门文章

  1. 云计算机是什么样子,云电脑的配置怎么样?高配与标配的区别是什么?
  2. mysql滴的一声就关了_关于mysql数据库在输入密码后,滴的一声直接退出界面的解决办法(详细办法)...
  3. 数组转集合集合转数组 split方法
  4. mac 连接百度云服务器地址,教你怎么在 Mac 下把百度网盘映射到另一个文件夹
  5. 完整的连接器设计手册_如何设计符合整车厂要求的CAN物理层接口电路?
  6. python提高运行效率_提高CPU密集型任务执行效率——Python多进程介绍,内附实例代码...
  7. 【VMware vSAN 6.6】5.4.vSAN 配置提示:vSAN硬件服务器解决方案
  8. HttpClient4.3.x的连接管理
  9. MySQL for Java的SQL注入测试
  10. Sublime Text 全程指南