使用PIL(Python-Imaging)反转图像的颜色方法


Posted in Python onJanuary 24, 2019

利用PIL将图片转换为黑色与白色反转的图片,下面笔者小白介绍如何实现。

解决方案一:

from PIL import Image
import PIL.ImageOps  
#读入图片
image = Image.open('your_image.png')
#反转
inverted_image = PIL.ImageOps.invert(image)
#保存图片
inverted_image.save('new_name.png')

注意:“ImageOps模块包含多个'ready-made'图像处理操作,该模块有些实验性,大多数操作符只适用于L和RGB图像。”

解决方案二:

如果图像是RGBA透明的,参考如下代码。

from PIL import Image
import PIL.ImageOps  

image = Image.open('your_image.png')
if image.mode == 'RGBA':
  r,g,b,a = image.split()
  rgb_image = Image.merge('RGB', (r,g,b))

  inverted_image = PIL.ImageOps.invert(rgb_image)

  r2,g2,b2 = inverted_image.split()

  final_transparent_image = Image.merge('RGBA', (r2,g2,b2,a))

  final_transparent_image.save('new_file.png')

else:
  inverted_image = PIL.ImageOps.invert(image)
  inverted_image.save('new_name.png')

解决方案三:

注:对于使用”1″模式的图像(即,1位像素,黑白色,以每个字节为单位存储的see docs),您需要在调用PIL.ImageOps.invert之前将其转换为”L”模式。

im = im.convert('L')
im = ImageOps.invert(im)
im = im.convert('1')

以上这篇使用PIL(Python-Imaging)反转图像的颜色方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python Pandas 读取txt表格的实例
Apr 29 Python
在Python中分别打印列表中的每一个元素方法
Nov 07 Python
对python for 文件指定行读写操作详解
Dec 29 Python
对Python3使运行暂停的方法详解
Feb 18 Python
Python操作配置文件ini的三种方法讲解
Feb 22 Python
python整合ffmpeg实现视频文件的批量转换
May 31 Python
Django 静态文件配置过程详解
Jul 23 Python
pytorch torch.nn.AdaptiveAvgPool2d()自适应平均池化函数详解
Jan 03 Python
使用Keras预训练模型ResNet50进行图像分类方式
May 23 Python
Python实现将元组中的元素作为参数传入函数的操作
Jun 05 Python
Flask中sqlalchemy模块的实例用法
Aug 02 Python
python中os.remove()用法及注意事项
Jan 31 Python
Python3实现取图片中特定的像素替换指定的颜色示例
Jan 24 #Python
python 实现图片旋转 上下左右 180度旋转的示例
Jan 24 #Python
Python对象与引用的介绍
Jan 24 #Python
selenium+python自动化测试之多窗口切换
Jan 23 #Python
python 去除二维数组/二维列表中的重复行方法
Jan 23 #Python
selenium+python自动化测试之鼠标和键盘事件
Jan 23 #Python
selenium+python自动化测试之页面元素定位
Jan 23 #Python
You might like
PHP函数spl_autoload_register()用法和__autoload()介绍
2012/02/04 PHP
PHP数据库操作四:mongodb用法分析
2017/08/16 PHP
用方法封装javascript的new操作符(一)
2010/12/25 Javascript
jquery中的查找parents与closest方法之间的区别
2013/12/02 Javascript
php显示当前文件所在的文件以及文件夹所有文件以树形展开
2013/12/13 Javascript
原生javaScript做得动态表格(注释写的很清楚)
2013/12/29 Javascript
JavaScript Math.floor方法(对数值向下取整)
2015/01/09 Javascript
readonly和disabled属性的区别
2015/07/26 Javascript
JS+CSS实现的简单折叠展开多级菜单效果
2015/09/12 Javascript
AngularJS 实现按需异步加载实例代码
2015/10/18 Javascript
vue.js绑定class和style样式(6)
2016/12/09 Javascript
详解从零搭建 vue2 vue-router2 webpack3 工程
2017/11/22 Javascript
BootStrap自定义popover,点击区域隐藏功能的实现
2018/01/23 Javascript
详解微信小程序缓存--缓存时效性
2019/05/02 Javascript
JavaScript实现随机点名程序
2020/03/25 Javascript
JavaScript实现表单验证功能
2020/12/09 Javascript
Python的Tornado框架异步编程入门实例
2015/04/24 Python
理解Python中函数的参数
2015/04/27 Python
Python实现控制台输入密码的方法
2015/05/29 Python
Python零基础入门学习之输入与输出
2019/04/03 Python
python批量修改ssh密码的实现
2019/08/08 Python
Python tcp传输代码实例解析
2020/03/18 Python
eDreams巴西:廉价机票,酒店优惠和度假套餐
2017/04/14 全球购物
波兰在线香水店:Perfumy.pl
2019/08/12 全球购物
美国家居用品和厨具购物网站:DealsDot
2019/10/07 全球购物
五一服装活动方案
2014/01/11 职场文书
小学生期末自我鉴定
2014/01/19 职场文书
村党支部换届选举方案
2014/05/02 职场文书
给校长的建议书200字
2014/05/16 职场文书
考试保密承诺书
2014/08/30 职场文书
四风问题个人剖析材料
2014/10/07 职场文书
学生穿着不得体检讨书
2014/10/12 职场文书
2015年七夕情人节感言
2015/08/03 职场文书
安全生产奖惩制度
2015/08/06 职场文书
docker-compose部署Yapi的方法
2022/04/08 Servers
SQL解决未能删除约束问题drop constraint
2022/05/30 SQL Server