PIL包中Image模块的convert()函数的具体使用


Posted in Python onFebruary 26, 2020

将彩色图片转换成黑白图片是自己拿到的第一个小任务。在全文开始之前给自己科普一个公式:

RGB到灰度图转换公式:Y' = 0.299 R +  0.587 G + 0.114 B

网上有诸多版本的转换公式,但是系数大同小异。

接下来是正文。

由于几乎可以说是零基础= =所以只好赶紧依靠

pip install pillow

把PIL装好。。。

convert()函数,用于不同模式图像之间的转换。PIL中有九种不同模式,分别为1,L,P,RGB,RGBA,CMYK,YCbCr,I,F。我主要尝试了1和L。

convert()的三种定义:

img.convert(mode) ⇒ image

img.convert(“P”, **options) ⇒ image

img.convert(mode, matrix) ⇒ image

代码如下:

from PIL import Image
# import numpy as np
 
img = Image.open('picture.jpg')
img1 = img.convert('1')
img2 = img.convert('L')
 
img1.save('result_1.jpg')
img2.save('result_L.jpg')

由于昨天正好因为微信小程序的事情在看JS。。于是就顺手拿了一张JS的图作为小白鼠了= =

picture.jpg:

PIL包中Image模块的convert()函数的具体使用

result_1.jpg:

PIL包中Image模块的convert()函数的具体使用

模式“1”为二值图像,每个像素用8bit表示,0表示黑,255表示白。

result_L.jpg:

PIL包中Image模块的convert()函数的具体使用

模式L为灰色图像,它的每个像素用8个bit表示,0表示黑,255表示白,其他数字表示不同的灰度。在PIL中,从模式“RGB”转换为“L”模式是按照下面的公式转换的:

L = R * 0.299 + G * 0.587+ B * 0.114

到此这篇关于PIL包中Image模块的convert()函数的具体使用的文章就介绍到这了,更多相关PIL convert()函数内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python模拟鼠标拖动操作的方法
Mar 11 Python
Python常用随机数与随机字符串方法实例
Apr 09 Python
Python中线程编程之threading模块的使用详解
Jun 23 Python
Django的数据模型访问多对多键值的方法
Jul 21 Python
Python编程实现的简单Web服务器示例
Jun 22 Python
在Python中执行系统命令的方法示例详解
Sep 14 Python
Python实现基本数据结构中队列的操作方法示例
Dec 04 Python
python函数的作用域及关键字详解
Aug 20 Python
在PyCharm中遇到pip安装 失败问题及解决方案(pip失效时的解决方案)
Mar 10 Python
Python如何自动获取目标网站最新通知
Jun 18 Python
Django实现文章详情页面跳转代码实例
Sep 16 Python
如何使用python自带IDLE的几种方法
Oct 10 Python
Pandas —— resample()重采样和asfreq()频度转换方式
Feb 26 #Python
python实现银行实战系统
Feb 26 #Python
python GUI库图形界面开发之PyQt5浏览器控件QWebEngineView详细使用方法
Feb 26 #Python
python序列类型种类详解
Feb 26 #Python
python3光学字符识别模块tesserocr与pytesseract的使用详解
Feb 26 #Python
Python中if有多个条件处理方法
Feb 26 #Python
python GUI库图形界面开发之PyQt5线程类QThread详细使用方法
Feb 26 #Python
You might like
转生史莱姆:萌王第一次撸串开心到飞起,哥布塔撸串却神似界王神
2018/11/30 日漫
实例(Smarty+FCKeditor新闻系统)
2007/01/02 PHP
phplock(php进程锁) v1.0 beta1
2009/11/24 PHP
ThinkPHP 表单自动验证运用示例
2014/10/13 PHP
详解PHP执行定时任务的实现思路
2015/12/21 PHP
php进行ip地址掩码运算处理的方法
2016/07/11 PHP
php装饰者模式简单应用案例分析
2019/10/23 PHP
PHP设计模式(八)装饰器模式Decorator实例详解【结构型】
2020/05/02 PHP
用javascript来实现动画导航效果的代码
2007/12/16 Javascript
javascript或asp实现的判断身份证号码是否正确两种验证方法
2009/11/26 Javascript
一个Action如何调用两个不同的方法
2014/05/22 Javascript
Javascript基础知识(二)事件
2014/09/29 Javascript
jQuery中slideUp()方法用法分析
2014/12/24 Javascript
javascript实现简单的省市区三级联动
2015/05/14 Javascript
深入理解JavaScript中的对象
2015/06/04 Javascript
Bootstrap显示与隐藏简单实现代码
2017/03/06 Javascript
JS+html5制作简单音乐播放器
2020/09/13 Javascript
webpack之引入图片的实现及问题
2018/10/08 Javascript
微信小程序缓存过期时间的使用详情
2019/05/12 Javascript
vue3.0自定义指令(drectives)知识点总结
2020/12/27 Vue.js
[01:00:54]TI4正赛第二日开场
2014/07/20 DOTA
Linux系统上Nginx+Python的web.py与Django框架环境
2015/12/25 Python
Win8.1下安装Python3.6提示0x80240017错误的解决方法
2018/07/31 Python
python导入不同目录下的自定义模块过程解析
2019/11/18 Python
YUV转为jpg图像的实现
2019/12/09 Python
django框架中间件原理与用法详解
2019/12/10 Python
Python通过字典映射函数实现switch
2020/11/06 Python
印尼最大的网上书店:Gramedia.com
2018/09/13 全球购物
关于.NET, HTML的五个问题
2012/08/29 面试题
《桂林山水》教学反思
2014/02/08 职场文书
庆祝教师节演讲稿
2014/09/03 职场文书
软件测试专业推荐信
2014/09/18 职场文书
一份没有按时交货失信于客户的检讨书
2014/09/19 职场文书
2014年人力资源部工作总结
2014/11/19 职场文书
雨雪天气温馨提示
2015/07/15 职场文书
社会心理学学习心得体会
2016/01/22 职场文书