python图片灰度化处理的几种方法


Posted in Python onJune 23, 2021

今天在学习的时候,发现scipy.misc中的imread提取图片的方法被弃用了。太生气了!

只好使用了matplotlib.pyplot中的imread了,可是当我发现他不能直接通过True来提取灰度图片时,我崩溃了

上网查了一下,了解了灰度化处理的几种方法:

首先先解释一下,彩色图片一般是由RGB组成,其实就是3个二维数组叠加而成。我们也就能看到一些彩色图片了。当R=G=B时,彩色图片就会变成一种灰度颜色,就是我们俗称的“黑白照片”。所以灰度颜色的图片其实就是一个二维数组。
灰度化处理总共有三种方法:最大值法、平均值法、加权平均法。
从字面意思我们也能看出,前两种的意思。但第三种中的加权平均中的权值从何而来?
它是一个固定值,分别是R:0.299、G:0.587、B:0.114。因为人眼对绿色的敏感度更高,对红色次之,蓝色最低,因此使用不能的权值可以得到更合理的灰度图像,所以经过多次的实验才推导出该数值。

首先康康原图

original = plt.imread('C:\\Users\\11140\\Pictures\\Saved Pictures\\abc.jpg')
print(original.shape)
# (640, 640, 3)
plt.imshow(original)
plt.show()

python图片灰度化处理的几种方法

最大值法:

original = original.max(axis=2)
print(original.shape)
# (640, 640)
plt.imshow(original,cmap='gray')
plt.show()

python图片灰度化处理的几种方法

平均值法:

original = original.mean(axis=2)
print(original.shape)
# (640, 640)
plt.imshow(original,cmap='gray')
plt.show()

python图片灰度化处理的几种方法

加权平均法

original = np.dot(original,[0.299,0.587,0.114])
print(original.shape)
# (640, 640)
plt.imshow(original,cmap='gray')
plt.show()

python图片灰度化处理的几种方法

这样看起来,第一张和第二张有很大的差别。第三张相比第二张,好像确实第三张看起来更舒服一点

到此这篇关于python图片灰度化处理的几种方法的文章就介绍到这了,更多相关python图片灰度化内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
用Python操作字符串之rindex()方法的使用
May 19 Python
Python实现在线音乐播放器
Mar 03 Python
Python列表list操作符实例分析【标准类型操作符、切片、连接字符、列表解析、重复操作等】
Jul 24 Python
python  Django中的apps.py的目的是什么
Oct 15 Python
PyCharm在新窗口打开项目的方法
Jan 17 Python
一步步教你用python的scrapy编写一个爬虫
Apr 17 Python
TensorFLow 不同大小图片的TFrecords存取实例
Jan 20 Python
Python使用Socket实现简单聊天程序
Feb 28 Python
如何使用pycharm连接Databricks的步骤详解
Sep 23 Python
Django如何继承AbstractUser扩展字段
Nov 27 Python
python基于Kivy写一个图形桌面时钟程序
Jan 28 Python
python 实现的截屏工具
May 08 Python
详解Python中的进程和线程
详解Go语言运用广度优先搜索走迷宫
常用的Python代码调试工具总结
Django+Celery实现定时任务的示例
Python django中如何使用restful框架
Python基础之变量的相关知识总结
Jun 23 #Python
浅谈Python数学建模之固定费用问题
You might like
认识并使用PHP超级全局变量
2010/01/26 PHP
Window下PHP三种运行方式图文详解
2013/06/11 PHP
PDO防注入原理分析以及使用PDO的注意事项总结
2014/10/23 PHP
php中smarty实现多模版网站的方法
2015/06/11 PHP
详解YII关联查询
2016/01/10 PHP
php 使用curl模拟登录人人(校内)网的简单实例
2016/06/06 PHP
PHP从零开始打造自己的MVC框架之入口文件实现方法详解
2019/06/03 PHP
Gambit vs ForZe BO3 第三场 2.13
2021/03/10 DOTA
JQuery CSS样式控制 学习笔记
2009/07/23 Javascript
jQuery实现倒计时按钮功能代码分享
2014/09/03 Javascript
Angularjs中使用layDate日期控件示例
2017/01/11 Javascript
Vue.js路由vue-router使用方法详解
2017/03/20 Javascript
详解vue-router和vue-cli以及组件之间的传值
2017/07/04 Javascript
nodejs操作mongodb的增删改查功能实例
2017/11/09 NodeJs
this.$toast() 了解一下?
2019/04/18 Javascript
从0搭建vue-cli4脚手架
2020/06/17 Javascript
Element Badge标记的使用方法
2020/07/27 Javascript
python使用reportlab画图示例(含中文汉字)
2013/12/03 Python
Django的分页器实例(paginator)
2017/12/01 Python
Python中的十大图像处理工具(小结)
2019/06/10 Python
简单了解Django ContentType内置组件
2019/07/23 Python
python列表切片和嵌套列表取值操作详解
2020/02/27 Python
Python 读取xml数据,cv2裁剪图片实例
2020/03/10 Python
如何使用Cython对python代码进行加密
2020/07/08 Python
如何基于Python pygame实现动画跑马灯
2020/11/18 Python
香港迪士尼乐园酒店预订:Hong Kong Disneyland Hotels
2017/05/02 全球购物
美国最大的家庭鞋类零售商之一:Shoe Carnival
2017/10/06 全球购物
L’AGENCE官网:加州女装品牌
2018/06/03 全球购物
幼儿园数学教学反思
2014/02/02 职场文书
致跳高运动员加油稿
2014/02/12 职场文书
4s店市场专员岗位职责
2014/04/09 职场文书
大学生违纪检讨书300字
2014/10/25 职场文书
盗窃案辩护词
2015/05/21 职场文书
高一英语教学反思
2016/03/03 职场文书
2016年共产党员个人承诺书
2016/03/24 职场文书
CSS font-variation 可变字体的魅力(实例详解)
2022/03/03 HTML / CSS