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获取mp3文件信息的方法
Jun 15 Python
判断网页编码的方法python版
Aug 12 Python
简单谈谈Python中的反转字符串问题
Oct 24 Python
python中pandas.DataFrame排除特定行方法示例
Mar 12 Python
Python3 操作符重载方法示例
Nov 23 Python
Python3实现的画图及加载图片动画效果示例
Jan 19 Python
python 获取当天每个准点时间戳的实例
May 22 Python
Python虚拟环境的原理及使用详解
Jul 02 Python
Django model 中设置联合约束和联合索引的方法
Aug 06 Python
python-视频分帧&多帧合成视频实例
Dec 10 Python
Python编程快速上手——正则表达式查找功能案例分析
Feb 28 Python
tensorflow图像裁剪进行数据增强操作
Jun 30 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+dojo 的数据库保存拖动布局的一个方法dojo 这里下载
2007/03/07 PHP
php设计模式 State (状态模式)
2011/06/26 PHP
定义php常量的详解
2013/06/09 PHP
PHP实现返回JSON和XML的类分享
2015/01/28 PHP
支付宝接口开发集成支付环境小结
2015/03/17 PHP
PHP Ajax JavaScript Json获取天气信息实现代码
2016/08/17 PHP
PHP微信API接口类
2016/08/22 PHP
Array.prototype.slice 使用扩展
2010/06/09 Javascript
jquery 关于event.target使用的几点说明介绍
2013/04/26 Javascript
js鼠标滑过图片震动特效的方法
2015/02/17 Javascript
javascript每日必学之基础入门
2016/02/16 Javascript
ES6中如何使用Set和WeakSet
2016/03/10 Javascript
jquery zTree异步加载、模糊搜索简单实例分享
2016/03/24 Javascript
jQuery实现为LI列表前3行设置样式的方法【2种方法】
2016/09/04 Javascript
javascript中setAttribute兼容性用法分析
2016/12/12 Javascript
详解Nodejs的timers模块
2016/12/22 NodeJs
React Native基础入门之调试React Native应用的一小步
2018/07/02 Javascript
浅谈Angular7 项目开发总结
2018/12/19 Javascript
Angular6 发送手机验证码按钮倒计时效果实现方法
2019/01/08 Javascript
微信小程序地图(map)组件点击(tap)获取经纬度的方法
2019/01/10 Javascript
Vue elementui字体图标显示问题解决方案
2020/08/18 Javascript
webstorm建立vue-cli脚手架的傻瓜式教程
2020/09/22 Javascript
python生成tensorflow输入输出的图像格式的方法
2018/02/12 Python
PyTorch上实现卷积神经网络CNN的方法
2018/04/28 Python
Python简单定义与使用二叉树示例
2018/05/11 Python
浅谈pandas.cut与pandas.qcut的使用方法及区别
2020/03/03 Python
详解HTML5之pushstate、popstate操作history,无刷新改变当前url
2017/03/15 HTML / CSS
Kipling意大利官网:世界著名的时尚休闲包袋品牌
2019/06/05 全球购物
Conforama西班牙:您的家具、装饰和电器商店
2020/02/21 全球购物
一份Java笔试题
2012/02/21 面试题
学术会议欢迎词
2014/01/09 职场文书
餐厅执行经理岗位职责范本
2014/02/26 职场文书
工程负责人任命书
2014/06/06 职场文书
介绍信格式
2015/01/30 职场文书
学习焦裕禄先进事迹心得体会
2016/01/23 职场文书
小数乘法教学反思
2016/02/22 职场文书