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入门篇之字典
Oct 17 Python
Python实现子类调用父类的方法
Nov 10 Python
python 遍历字符串(含汉字)实例详解
Apr 04 Python
Python学习小技巧之列表项的排序
May 20 Python
基于python指定包的安装路径方法
Oct 27 Python
在ubuntu16.04中将python3设置为默认的命令写法
Oct 31 Python
python ipset管理 增删白名单的方法
Jan 14 Python
WIn10+Anaconda环境下安装PyTorch(避坑指南)
Jan 30 Python
python把转列表为集合的方法
Jun 28 Python
通过 Python 和 OpenCV 实现目标数量监控
Jan 05 Python
Python流程控制语句的深入讲解
Jun 15 Python
python sleep和wait对比总结
Feb 03 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
杏林同学录(六)
2006/10/09 PHP
php桌面中心(二) 数据库写入
2007/03/11 PHP
PHP实现小偷程序实例
2016/10/31 PHP
XHTML下,JS浮动代码失效的问题
2009/11/12 Javascript
firefox和IE系列的相关区别整理 以备后用
2009/12/28 Javascript
Jquery ThickBox插件使用心得(不建议使用)
2010/09/08 Javascript
js生成随机数之random函数随机示例
2013/12/20 Javascript
javascript移动设备Web开发中对touch事件的封装实例
2014/06/05 Javascript
SeaJS 与 RequireJS 的差异对比
2014/12/08 Javascript
使用jQuery仿苹果官网焦点图特效
2014/12/23 Javascript
Javascript中的arguments与重载介绍
2015/03/15 Javascript
JavaScript DOM基础
2015/04/13 Javascript
基于MVC4+EasyUI的Web开发框架形成之旅之界面控件的使用
2015/12/16 Javascript
js 动态添加元素(div、li、img等)及设置属性的方法
2016/07/19 Javascript
JS获取年月日时分秒的方法分析
2016/11/28 Javascript
js移动端事件基础及常用事件库详解
2017/08/15 Javascript
javaScript实现滚动条事件详解
2020/03/24 Javascript
vue-cli + sass 的正确打开方式图文详解
2017/10/27 Javascript
JavaScript设计模式之工厂模式简单实例教程
2018/07/03 Javascript
Angular中sweetalert弹框的基本使用教程
2018/07/22 Javascript
解决layer 动态加载select 失效的问题
2019/09/18 Javascript
JavaScript Array.flat()函数用法解析
2020/09/02 Javascript
11个并不被常用但对开发非常有帮助的Python库
2015/03/31 Python
python线程池threadpool使用篇
2018/04/27 Python
python调用百度语音识别实现大音频文件语音识别功能
2018/08/30 Python
Python利用逻辑回归分类实现模板
2020/02/15 Python
Django model.py表单设置默认值允许为空的操作
2020/05/19 Python
python如何删除列为空的行
2020/07/17 Python
Jo Malone美国官网:祖玛珑香水
2017/03/27 全球购物
Lululemon英国官网:加拿大瑜伽服装品牌
2019/01/14 全球购物
合作协议书
2014/04/23 职场文书
银行反四风对照检查材料
2014/09/29 职场文书
工程竣工验收申请报告
2015/05/15 职场文书
2015年会计人员工作总结
2015/05/22 职场文书
2015年重阳节活动主持词
2015/07/30 职场文书
Nginx流量拷贝ngx_http_mirror_module模块使用方法详解
2022/04/07 Servers