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实现ipsec开权限实例
Nov 11 Python
深入讲解Python函数中参数的使用及默认参数的陷阱
Mar 13 Python
python字符串中的单双引
Feb 16 Python
python数据预处理之将类别数据转换为数值的方法
Jul 05 Python
Python Flask基础教程示例代码
Feb 07 Python
Flask框架Jinjia模板常用语法总结
Jul 19 Python
Python实现监控Nginx配置文件的不同并发送邮件报警功能示例
Feb 26 Python
python实现顺时针打印矩阵
Mar 02 Python
python使用Plotly绘图工具绘制散点图、线形图
Apr 02 Python
基于Python的图像数据增强Data Augmentation解析
Aug 13 Python
解决Pycharm的项目目录突然消失的问题
Jan 20 Python
总结Python连接CS2000的详细步骤
Jun 23 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
利用PHP实现短域名互转
2013/07/05 PHP
详解Yii2 定制表单输入字段的标签和样式
2017/01/04 PHP
js特殊字符过滤的示例代码
2014/03/05 Javascript
node.js中的buffer.slice方法使用说明
2014/12/10 Javascript
jQuery判断元素上是否绑定了指定事件的方法
2015/03/17 Javascript
JavaScript实现单击下拉框选择直接跳转页面的方法
2015/07/02 Javascript
js实现随屏幕滚动的带缓冲效果的右下角广告代码
2015/09/04 Javascript
轻松学习Javascript闭包函数
2015/12/15 Javascript
jquery点击展示与隐藏更多内容
2016/12/03 Javascript
jQuery插件jquery.kxbdmarquee.js实现无缝滚动效果
2017/02/15 Javascript
JS原型继承四步曲及原型继承图一览
2017/11/28 Javascript
Vue2.0实现组件数据的双向绑定问题
2018/03/06 Javascript
vue页面切换过渡transition效果
2018/10/08 Javascript
JavaScript数据结构与算法之二叉树遍历算法详解【先序、中序、后序】
2019/02/21 Javascript
Typescript的三种运行方式(小结)
2019/09/18 Javascript
用云开发Cloudbase实现小程序多图片内容安全监测的代码详解
2020/06/07 Javascript
原生js实现弹幕效果
2020/11/29 Javascript
Python时区设置方法与pytz查询时区教程
2013/11/27 Python
Python程序设计入门(5)类的使用简介
2014/06/16 Python
初步认识Python中的列表与位运算符
2015/10/12 Python
Python的requests网络编程包使用教程
2016/07/11 Python
python微信跳一跳系列之棋子定位像素遍历
2018/02/26 Python
Python 字符串操作(string替换、删除、截取、复制、连接、比较、查找、包含、大小写转换、分割等)
2018/03/19 Python
django DRF图片路径问题的解决方法
2018/09/10 Python
浅谈pycharm下找不到sqlalchemy的问题
2018/12/03 Python
python爬虫之自制英汉字典
2019/06/24 Python
python将图片转base64,实现前端显示
2020/01/09 Python
查看jupyter notebook每个单元格运行时间实例
2020/04/22 Python
html5 canvas实现圆形时钟代码分享
2013/12/25 HTML / CSS
美国专业级皮肤病和spa品质护肤品的高级零售网站:SkinCareRx
2017/02/06 全球购物
英国最大的海报商店:GB Posters
2018/03/20 全球购物
JavaScript实现前端网页版倒计时
2021/03/24 Javascript
房屋转让协议书
2014/04/11 职场文书
本科应届生自荐信
2014/06/29 职场文书
员工工作自我评价
2014/09/26 职场文书
TV动画《政宗君的复仇》第二季制作决定PV公布
2022/04/02 日漫