使用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将mdb数据库文件导入postgresql数据库示例
Feb 17 Python
使用Python的PEAK来适配协议的教程
Apr 14 Python
Python多线程、异步+多进程爬虫实现代码
Feb 17 Python
Python基于Socket实现的简单聊天程序示例
Aug 05 Python
Python实现的选择排序算法示例
Nov 29 Python
详解用Python处理HTML转义字符的5种方式
Dec 27 Python
python基础学习之如何对元组各个元素进行命名详解
Jul 12 Python
Python实例方法、类方法、静态方法的区别与作用详解
Mar 25 Python
python学习--使用QQ邮箱发送邮件代码实例
Apr 16 Python
Django异步任务线程池实现原理
Dec 17 Python
Macbook安装Python最新版本、GUI开发环境、图像处理、视频处理环境详解
Feb 17 Python
python如何使用腾讯云发送短信
Sep 17 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
ThinkPHP CURD方法之page方法详解
2014/06/18 PHP
基于递归实现的php树形菜单代码
2014/11/19 PHP
Linux系统下php获得系统分区信息的方法
2015/03/30 PHP
教你在header中隐藏php的版本信息
2016/08/10 PHP
ECMAScript 基础知识
2007/06/29 Javascript
JQuery 实现的页面滚动时浮动窗口控件
2009/07/10 Javascript
javascript Keycode对照表
2009/10/24 Javascript
jquery each()源代码
2011/02/14 Javascript
写自已的js类库需要的核心代码
2012/07/16 Javascript
node.js中的fs.fchown方法使用说明
2014/12/16 Javascript
深入浅析knockout源码分析之订阅
2016/07/12 Javascript
你不知道的 javascript【推荐】
2017/01/08 Javascript
Bootstrap开发中Tab标签页切换图表显示问题的解决方法
2018/07/13 Javascript
JavaScript折半查找(二分查找)算法原理与实现方法示例
2018/08/06 Javascript
Element MessageBox弹框的具体使用
2020/07/27 Javascript
AJAX XMLHttpRequest对象创建使用详解
2020/08/20 Javascript
原生JavaScript实现弹幕组件的示例代码
2020/10/12 Javascript
[02:32]DOTA2完美大师赛场馆静安体育中心观赛全攻略
2017/11/08 DOTA
[03:04]2018年国际邀请赛典藏宝瓶&莱恩声望物品展示 片尾有彩蛋
2018/06/04 DOTA
Python 爬虫爬取指定博客的所有文章
2016/02/17 Python
Python基于pandas实现json格式转换成dataframe的方法
2018/06/22 Python
Python3.7 读取 mp3 音频文件生成波形图效果
2019/11/05 Python
手动安装python3.6的操作过程详解
2020/01/13 Python
Python处理PDF与CDF实例
2020/02/26 Python
PyCharm配置anaconda环境的步骤详解
2020/07/31 Python
详解基于 Canvas 手撸一个六边形能力图
2019/09/02 HTML / CSS
canvas裁剪clip()函数的具体使用
2018/03/01 HTML / CSS
会计实习生自我鉴定
2013/12/12 职场文书
普通员工辞职信
2014/01/17 职场文书
艺术设计专业求职自荐信
2014/05/19 职场文书
政风行风建设责任书
2014/07/23 职场文书
大学教师师德师风演讲稿
2014/08/22 职场文书
司机工作自我鉴定
2014/09/19 职场文书
2014镇副书记群众路线专题民主生活会思想汇报
2014/09/23 职场文书
酒店人事专员岗位职责
2015/04/07 职场文书
2016年优秀共产党员先进事迹材料
2016/02/29 职场文书