python图片灰度化处理的几种方法
作者:flandre翠花 时间:2023-03-05 01:14:57
今天在学习的时候,发现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()
最大值法:
original = original.max(axis=2)
print(original.shape)
# (640, 640)
plt.imshow(original,cmap='gray')
plt.show()
平均值法:
original = original.mean(axis=2)
print(original.shape)
# (640, 640)
plt.imshow(original,cmap='gray')
plt.show()
加权平均法
original = np.dot(original,[0.299,0.587,0.114])
print(original.shape)
# (640, 640)
plt.imshow(original,cmap='gray')
plt.show()
这样看起来,第一张和第二张有很大的差别。第三张相比第二张,好像确实第三张看起来更舒服一点
来源:https://blog.csdn.net/flandreflor/article/details/118070226
标签:python,图片,灰度化
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
win10下MySQL 8.0登录Access denied for user‘root’@‘localhost’ (using password: YES)问题的解决方法
2024-01-19 05:31:09
![](https://img.aspxhome.com/file/2023/0/119750_0s.png)
SQL Server 2019自定义安装教程
2024-01-12 21:14:22
![](https://img.aspxhome.com/file/2023/4/94434_0s.jpg)
pytorch 实现张量tensor,图片,CPU,GPU,数组等的转换
2023-08-12 07:44:34
分组字符合并SQL语句 按某字段合并字符串之一(简单合并)
2024-01-24 11:30:20
关于设计的六个误会
2008-06-26 18:18:00
Python基于read(size)方法读取超大文件
2022-06-06 12:27:15
对python中Json与object转化的方法详解
2022-11-13 23:42:35
![](https://img.aspxhome.com/file/2023/0/99010_0s.jpg)
py3nvml实现GPU相关信息读取的案例分析
2022-01-11 11:00:52
Golang TCP粘包拆包问题的解决方法
2023-07-18 11:04:43
Python简单获取自身外网IP的方法
2023-12-26 03:44:31
Python脚本实现一键自动整理办公文件
2022-01-02 16:36:03
![](https://img.aspxhome.com/file/2023/5/121505_0s.jpg)
动态加载iframe时get请求传递中文参数乱码解决方法
2024-05-02 17:28:25
Python接口自动化之接口依赖
2021-09-03 15:53:09
![](https://img.aspxhome.com/file/2023/3/91893_0s.png)
javascript延时重复执行函数 lLoopRun.js
2024-04-22 13:22:57
python读取hdfs并返回dataframe教程
2022-03-22 17:15:33
SQL Server数据库对于应用程序的关系
2010-09-08 09:42:00
使用FORFILES命令来删除SQLServer备份的批处理
2012-05-08 06:47:06
python去掉字符串中重复字符的方法
2022-11-23 09:17:35
[CSS+JS]同一页面可以重复使用的选项卡
2009-02-12 12:53:00
![](https://img.aspxhome.com/file/UploadPic/20092/12/tab_p1-67s.jpg)
可以拖动的div 实现代码第1/2页
2024-03-19 17:46:20