Python读取图像并显示灰度图的实现


Posted in Python onDecember 01, 2020

python读取图像

原图:

Python读取图像并显示灰度图的实现

import cv2 # 利用opencv读取图像
import numpy as np
# 利用matplotlib显示图像
import matplotlib.pyplot as plt 

img = cv2.imread("./lena.png") #读取图像
# 显示图像
plt.imshow(img)
plt.axis('off')
plt.show()

效果:

Python读取图像并显示灰度图的实现

问:为什么画出的图像和原图有色差呢?
答:opencv的颜色通道顺序为[B,G,R],而matplotlib的颜色通道顺序为[R,G,B]。
解决方案:把R和B的位置调换一下

img = img[:,:,(2,1,0)]

再次显示图像
效果:(自己做了就知道了)

图像灰度化算法
Gray = 0.299R+0.587G+0.114*B

r,g,b = [img[:,:,i] for i in range(3)]
img_gray = r*0.299+g*0.587+b*0.114

再次显示图像

plt.imshow(img_gray)
plt.axis('off')
plt.show()

Python读取图像并显示灰度图的实现

问:为什么她绿了?
答:因为我们还是直接使用plt显示图像,它默认使用三通道显示图像。
解决方案:在plt.imshow()添加参数

plt.imshow(img_gray,cmap="gray")
plt.axis('off')
plt.show()

效果:

Python读取图像并显示灰度图的实现

到此这篇关于Python读取图像并显示灰度图的实现的文章就介绍到这了,更多相关Python 灰度图内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python中__init__和__new__的区别详解
Jul 09 Python
python简单的函数定义和用法实例
May 07 Python
Python3 适合初学者学习的银行账户登录系统实例
Aug 08 Python
Python基于回溯法子集树模板解决旅行商问题(TSP)实例
Sep 05 Python
深入理解Django的中间件middleware
Mar 14 Python
python读取LMDB中图像的方法
Jul 02 Python
numpy 对矩阵中Nan的处理:采用平均值的方法
Oct 30 Python
如何通过雪花算法用Python实现一个简单的发号器
Jul 03 Python
在Python中append以及extend返回None的例子
Jul 20 Python
Python K最近邻从原理到实现的方法
Aug 15 Python
Python获取一个用户名的组ID过程解析
Sep 03 Python
Python极值整数的边界探讨分析
Sep 15 Python
Python性能测试工具Locust安装及使用
Dec 01 #Python
python爬虫中抓取指数的实例讲解
Dec 01 #Python
OpenCV灰度化之后图片为绿色的解决
Dec 01 #Python
python批量合成bilibili的m4s缓存文件为MP4格式 ver2.5
Dec 01 #Python
python连接mongodb数据库操作数据示例
Nov 30 #Python
Python实现树莓派摄像头持续录像并传送到主机的步骤
Nov 30 #Python
Python命令行参数定义及需要注意的地方
Nov 30 #Python
You might like
在线竞拍系统的PHP实现框架(二)
2006/10/09 PHP
PHP+DBM的同学录程序(1)
2006/10/09 PHP
php 批量查询搜狗sogou代码分享
2015/05/17 PHP
Smarty foreach控制循环次数的一些方法
2015/07/01 PHP
PHP读取CSV大文件导入数据库的实例
2017/07/24 PHP
统计PHP目录中的文件数方法
2019/03/05 PHP
Javascript 事件流和事件绑定
2009/07/16 Javascript
jquery入门—编写一个导航条(可伸缩)
2013/01/07 Javascript
js文件Cookie存取值示例代码
2014/02/20 Javascript
jQuery实现为图片添加镜头放大效果的方法
2015/06/25 Javascript
JavaScript数组去重的五种方法
2015/11/05 Javascript
jquery实现百叶窗效果
2017/01/12 Javascript
jQuery简单实现MD5加密的方法
2017/03/03 Javascript
node.js中grunt和gulp的区别详解
2017/07/17 Javascript
Vue学习笔记进阶篇之vue-cli安装及介绍
2017/07/18 Javascript
微信小程序自定义对话框弹出和隐藏动画
2018/07/19 Javascript
node.js中express模块创建服务器和http模块客户端发请求
2019/03/06 Javascript
利用weixin-java-miniapp生成小程序码并直接返回图片文件流的方法
2019/03/29 Javascript
详解vue中使用transition和animation的实例代码
2020/12/12 Vue.js
小结Python用fork来创建子进程注意事项
2014/07/03 Python
python实现将英文单词表示的数字转换成阿拉伯数字的方法
2015/07/02 Python
python getopt详解及简单实例
2016/12/30 Python
pandas数据筛选和csv操作的实现方法
2019/07/02 Python
python selenium循环登陆网站的实现
2019/11/04 Python
40个你可能不知道的Python技巧附代码
2020/01/29 Python
python实现输入三角形边长自动作图求面积案例
2020/04/12 Python
Python dict的常用方法示例代码
2020/06/23 Python
CSS3 圆角效果
2009/07/15 HTML / CSS
澳大利亚最好的厨具店:Kitchen Warehouse
2018/03/13 全球购物
C++面试题:关于链表和指针
2013/06/05 面试题
ASP.NET中的身份验证有那些
2012/07/13 面试题
践行三严三实心得体会
2014/10/13 职场文书
解除同居协议书
2015/01/29 职场文书
2015年公务员工作总结
2015/04/24 职场文书
论文评审意见
2015/06/05 职场文书
Python通过loop.run_in_executor执行同步代码 同步变为异步
2022/04/11 Python