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求素数示例分享
Feb 16 Python
python中使用sys模板和logging模块获取行号和函数名的方法
Apr 15 Python
python调用系统ffmpeg实现视频截图、http发送
Mar 06 Python
解决python3爬虫无法显示中文的问题
Apr 12 Python
Python如何爬取微信公众号文章和评论(基于 Fiddler 抓包分析)
Jun 28 Python
Python之修改图片像素值的方法
Jul 03 Python
Python datetime包函数简单介绍
Aug 28 Python
Python 用三行代码提取PDF表格数据
Oct 13 Python
python实现时间序列自相关图(acf)、偏自相关图(pacf)教程
Jun 03 Python
Django实现内容缓存实例方法
Jun 30 Python
基于Python的一个自动录入表格的小程序
Aug 05 Python
python使用re模块爬取豆瓣Top250电影
Oct 20 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汉字转拼音的示例
2014/02/27 PHP
一些mootools的学习资源
2010/02/07 Javascript
jquery获取tr中控件值并操作tr实现思路
2013/03/27 Javascript
jquery点击页面任何区域实现鼠标焦点十字效果
2013/06/21 Javascript
jquery模拟SELECT下拉框取值效果
2013/10/23 Javascript
用jQuery模拟select下拉框的简单示例代码
2014/01/26 Javascript
jQuery实现的一个tab切换效果内部还嵌有切换
2014/08/10 Javascript
浅谈javascript中createElement事件
2014/12/05 Javascript
jQuery+HTML5美女瀑布流布局实现方法
2015/09/21 Javascript
jquery实现简易的移动端验证表单
2015/11/08 Javascript
webpack中引用jquery的简单实现
2016/06/08 Javascript
Angular的自定义指令以及实例
2016/12/26 Javascript
Vue 短信验证码组件开发详解
2017/02/14 Javascript
Vuex 模块化使用详解
2019/07/31 Javascript
layui关闭层级、简单监听的实例
2019/09/06 Javascript
angular共享依赖的解决方案分享
2020/10/15 Javascript
基于Python 装饰器装饰类中的方法实例
2018/04/21 Python
python保存数据到本地文件的方法
2018/06/23 Python
python 自定义异常和异常捕捉的方法
2018/10/18 Python
Python装饰器用法实例分析
2019/01/14 Python
Django后台管理系统的图文使用教学
2020/01/20 Python
python如何处理程序无法打开
2020/06/16 Python
matplotlib阶梯图的实现(step())
2021/03/02 Python
HTML5操作WebSQL数据库的实例代码
2017/08/26 HTML / CSS
世界知名接发和假发品牌:Poze Hair
2017/03/08 全球购物
银河香水:Galaxy Perfume
2019/03/25 全球购物
会计实训总结范文
2015/08/03 职场文书
2016年“七一建党节”广播稿
2015/12/18 职场文书
研究生毕业登记表的自我鉴定范文
2019/07/15 职场文书
文案策划岗位个人自我评价(范文)
2019/08/08 职场文书
mysql批量新增和存储的方法实例
2021/04/07 MySQL
Python初识逻辑与if语句及用法大全
2021/08/07 Python
如何使用 resize 实现图片切换预览功能
2021/08/23 HTML / CSS
Redis 操作多个数据库的配置的方法实现
2022/03/23 Redis
python 实现图片特效处理
2022/04/03 Python
MySQL中EXPLAIN语句及用法
2022/05/20 MySQL