Python PIL库图片灰化处理
作者:rainbird 发布时间:2022-08-18 20:57:30
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
效果
来源:https://blog.cnrainbird.com/index.php/2020/04/05/python_tu_pian_hui_hua_chu_li_pil/
猜你喜欢
- 本文实例讲述了Python实现的三层BP神经网络算法。分享给大家供大家参考,具体如下:这是一个非常漂亮的三层反向传播神经网络的python实
- 本文实例讲述了Python多线程编程之多线程加锁操作。分享给大家供大家参考,具体如下:Python语言本身是支持多线程的,不像PHP语言。下
- 今天,在项目中遇到一个问题,两个js页面要共享一个就js对象。js全局变量和静态变量都不行,其他苦逼的小农们就不要去强求了。而LZ又不想用c
- 在Vue做项目时,做了一个div[contenteditable=true]的组件作为文本输入框在非手动输入值后,光标会丢失,经测试以下这段
- subprocess.run()运行并等待args参数指定的指令完成,返回CompletedProcess实例。参数:(*popenargs
- Float(浮动)概念也许是CSS中最让人迷惑的一个概念吧。Float经常被错误理解,而且因为将上下文元素全部浮动导致的可读性、
- Python 通过pywin32模块调用WindowsAPI接口,实现对特定进程加载模块的枚举输出并检测该PE程序模块所启用的保护方式,此处
- eval前言In [1]: eval("2+3")Out[1]: 5In [2]: eval('[x for x
- 前言最近新来的小老弟问我,按照公司规定,电脑只有十分钟就锁屏,但是他不想让电脑在空闲十分钟后锁屏。于是我问他,是不是想挑战一下公司信息安全?
- 小编在以前给大家介绍过很多其他系统安装PyCharm的过程,有兴趣的朋友可以参阅:pycharm 使用心得(一)安装和首次使用python安
- 用Matplotlib画三维图最基本的三维图是由(x, y, z)三维坐标点构成的线图与散点图,可以用ax.plot3D和ax.scatte
- %matplotlib inline是一个魔法函数(Magic Functions)。官方给出的定义是:IPython有一组预先定义好的所谓
- 最近有一个项目,需要检查某个字符型字段的值是否为数字,由于数据行是海量,所以需要通过SQL语句来筛查,这里拿来做个备忘。用到的函数为IsNu
- 什么是品牌的视觉传达品牌,这个熟悉而又陌生的名词,有时总会让人产生误解。品牌很广,广到一个意会颇深的战略发展理念;品牌很小,小到一个清晰可见
- 一、环境要求windows系统,python3.6+安装模块pip install pyqt5pip install pygame二、游戏介
- 1. Express简介express是一个基于node.js平台的极简,灵活的web应用开发框架,它提供一系列强大的特征,帮助你创建各种w
- 首先呢,我们来看看一般项目路由是怎么划分的。为什么这么划分呢?如果大项目业务非常多,单纯的单页面很难维护,我们只有这样规范化,才能高效率。模
- 发帖或者回帖的时候,系统会提示银两或经验增加的效果,慢慢出现又慢慢消失,用于取代对话框的那种是如何实现的?用google的jquery ap
- 在此之前,我一直都在研究JavaScript相关的反调试技巧。但是当我在网上搜索相关资料时,我发现网上并没有多少关于这方面的文章,而且就算有
- tensorflow中有很多在维度上的操作,本例以常用的tf.reduce_sum进行说明。官方给的apireduce_sum( input