Python PIL库图片灰化处理


Posted in Python onApril 07, 2020

2020年4月4日,是个特殊的日子,我们看到朋友圈很多灰化的图片.今天我们就聊聊图片灰度处理这事儿.

PIL的基本概念:

PIL中所涉及的基本概念有如下几个:通道(bands)、模式(mode)、尺寸(size)、坐标系统(coordinate system)、调色板(palette)、信息(info)和滤波器(filters)。

 PIL(Python Image Library)是python的第三方图像处理库,但是由于其强大的功能与众多的使用人数,几乎已经被认为是python官方图像处理库了。其官方主页为:[PIL](http://pythonware.com/products/pil/)。 PIL历史悠久,原来是只支持python2.x的版本的,后来出现了移植到python3的库[pillow](http://python-pillow.org/),pillow号称是`friendly fork for PIL`,其功能和PIL差不多,但是支持python3。

Python可以处理图片的库很多:Matplotlib,OpenCV,TensorFlow,PIL等.我们今天的主角是:PIL(Python Imaging Library).我们的环境是Python3.8.2

安装

pip install Pillow

编码

import os
try:
 from PIL import Image
except ImportError as e:
 print(e)
 print('pip install Pillow')
 os._exit(0)
img_url = '/Users/rainbird/Desktop/a.jpg'
img_out = img_url.replace('.jpg','_gray.jpg')
if not os.path.exists(img_url):
 print(f'file not found: {img_url}')
 os._exit(0)
print(f'''
image in:{img_url}
image out:{img_out}
'''.strip())
img_org = Image.open(img_url)
img_gray= img_org.convert('L') 
img_gray.save(img_out)
print('done')

代码不长,主要是:

导入库并判断了异常;

指定处理的文件,个人运行的时候要修改一下;

转换完会产生同名_gray的文件

目前只处理了.jpg

运行

image in:/Users/rainbird/Desktop/a.jpg
image out:/Users/rainbird/Desktop/a_gray.jpg
done

效果

Python PIL库图片灰化处理 

总结

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

Python 相关文章推荐
Django 导出 Excel 代码的实例详解
Aug 11 Python
Numpy掩码式数组详解
Apr 17 Python
Python使用re模块实现信息筛选的方法
Apr 29 Python
python使用openpyxl库修改excel表格数据方法
May 03 Python
python re模块的高级用法详解
Jun 06 Python
Django 中使用流响应处理视频的方法
Jul 20 Python
python3实现名片管理系统
Nov 29 Python
Python测试Kafka集群(pykafka)实例
Dec 23 Python
python字符串常用方法及文件简单读写的操作方法
Mar 04 Python
python 实现分组求和与分组累加求和代码
May 18 Python
Python Dataframe常见索引方式详解
May 27 Python
python批量生成条形码的示例
Oct 10 Python
Python3.7 读取音频根据文件名生成脚本的代码
Apr 07 #Python
Django中从mysql数据库中获取数据传到echarts方式
Apr 07 #Python
PyCharm 在Windows的有用快捷键详解
Apr 07 #Python
python实现控制台输出彩色字体
Apr 05 #Python
python学生管理系统的实现
Apr 05 #Python
python实现一个猜拳游戏
Apr 05 #Python
python实现对变位词的判断方法
Apr 05 #Python
You might like
默默小谈PHP&MYSQL分页原理及实现
2007/01/02 PHP
PHP 和 MySQL 开发的 8 个技巧
2007/01/02 PHP
php的正则处理函数总结分析
2008/06/20 PHP
php生成与读取excel文件
2016/10/14 PHP
php安装扩展mysqli的实现步骤及报错解决办法
2017/09/23 PHP
在 Laravel 中动态隐藏 API 字段的方法
2019/10/25 PHP
TNC vs BOOM BO3 第一场2.13
2021/03/10 DOTA
javascript json2 使用方法
2010/03/16 Javascript
javascript拖拽上传类库DropzoneJS使用方法
2013/12/05 Javascript
JavaScript DOM基础
2015/04/13 Javascript
javascript中eval解析JSON字符串
2016/02/27 Javascript
JS脚本实现动态给标签控件添加事件的方法
2016/06/02 Javascript
JavaScript 链式结构序列化详解
2016/09/30 Javascript
H5移动端适配 Flexible方案
2016/10/24 Javascript
Bootstrap常用组件学习(整理)
2017/03/24 Javascript
jQuery使用zTree插件实现可拖拽的树示例
2017/09/23 jQuery
基于nodejs实现微信支付功能
2017/12/20 NodeJs
微信小程序实现顶部导航特效
2019/01/28 Javascript
vue配置文件实现代理v2版本的方法
2019/06/21 Javascript
[58:37]Serenity vs Fnatic 2018国际邀请赛淘汰赛BO1 8.21
2018/08/22 DOTA
python和C语言混合编程实例
2014/06/04 Python
Python中的连接符(+、+=)示例详解
2017/01/13 Python
Python中使用threading.Event协调线程的运行详解
2020/05/02 Python
Python pymysql模块安装并操作过程解析
2020/10/13 Python
欧洲领先的技术商店:eibmarkt.com
2019/05/10 全球购物
高中生自我评价个人范文
2013/11/09 职场文书
计算机应用职专应届生求职信
2013/11/12 职场文书
就业自荐书
2013/12/05 职场文书
学雷锋演讲稿
2014/03/04 职场文书
走群众路线学习心得体会
2014/10/31 职场文书
辩护词格式
2015/05/22 职场文书
简单总结SpringMVC拦截器的使用方法
2021/06/28 Java/Android
RestTemplate如何通过HTTP Basic Auth认证示例说明
2022/03/17 Java/Android
MySQL实现配置主从复制项目实践
2022/03/31 MySQL
Kubernetes控制节点的部署
2022/04/01 Servers
Python中生成随机数据安全性、多功能性、用途和速度方面进行比较
2022/04/14 Python