python 给图像添加透明度(alpha通道)


Posted in Python onApril 09, 2020

我们常见的RGB图像通常只有R、G、B三个通道,在图像处理的过程中会遇到往往需要向图像中添加透明度信息,如公司logo的设计,其输出图像文件就需要添加透明度,即需要在RGB三个通道的基础上添加alpha通道信息。这里介绍两种常见的向RGB图像中添加透明度的方法。

1、使用图像合成(blending)的方法

可参考上篇博文(python图像处理(十)——两幅图像的合成一幅图像(blending two images) )

代码如下:

#-*- coding: UTF-8 -*- 
 
from PIL import Image
 
def addTransparency(img, factor = 0.7 ):
  img = img.convert('RGBA')
  img_blender = Image.new('RGBA', img.size, (0,0,0,0))
  img = Image.blend(img_blender, img, factor)
  return img
 
 
img = Image.open( "SMILEY.png ")
img = addTransparency(img, factor =0.7)

这里给原图的所有像素都添加了一个常量(0.7)的透明度。

处理前后的效果如下:

python 给图像添加透明度(alpha通道)

2、使用Image对象的成员函数putalpha()直接添加

代码如下:

#-*- coding: UTF-8 -*- 
 
from PIL import Image
 
img = Image.open("SMILEY.png ")
img = img.convert('RGBA')
r, g, b, alpha = img.split()
alpha = alpha.point(lambda i: i>0 and 178)
img.putalpha(alpha)

处理前后的效果如下:

python 给图像添加透明度(alpha通道) 

到此这篇关于python 给图像添加透明度(alpha通道)的文章就介绍到这了,更多相关python  图像添加透明度内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python多线程编程(八):使用Event实现线程间通信
Apr 05 Python
Python 探针的实现原理
Apr 23 Python
Python代码打开本地.mp4格式文件的方法
Jan 03 Python
PyTorch 普通卷积和空洞卷积实例
Jan 07 Python
Python greenlet和gevent使用代码示例解析
Apr 01 Python
解决python pandas读取excel中多个不同sheet表格存在的问题
Jul 14 Python
python读取xml文件方法解析
Aug 04 Python
vscode配置anaconda3的方法步骤
Aug 08 Python
Python使用正则表达式实现爬虫数据抽取
Aug 17 Python
python3让print输出不换行的方法
Aug 24 Python
Python+Opencv身份证号码区域提取及识别实现
Aug 25 Python
Python通过format函数格式化显示值
Oct 17 Python
Python日志logging模块功能与用法详解
Apr 09 #Python
解决python DataFrame 打印结果不换行问题
Apr 09 #Python
Python的PIL库中getpixel方法的使用
Apr 09 #Python
Python 随机生成测试数据的模块:faker基本使用方法详解
Apr 09 #Python
python图片指定区域替换img.paste函数的使用
Apr 09 #Python
python程序输出无内容的解决方式
Apr 09 #Python
python爬虫学习笔记之Beautifulsoup模块用法详解
Apr 09 #Python
You might like
索尼ICF-SW100收音机评测
2021/03/02 无线电
用PHP实现文件上传二法
2006/10/09 PHP
PHP文件上传主要代码讲解
2013/09/30 PHP
浅析PHP程序设计中的MVC编程思想
2014/07/28 PHP
laravel5.6实现数值转换
2019/10/23 PHP
疯狂Jquery第一天(Jquery学习笔记)
2012/05/11 Javascript
javascript SpiderMonkey中的函数序列化如何进行
2012/12/05 Javascript
Javascript闭包用法实例分析
2015/01/23 Javascript
javascript实现瀑布流自适应遇到的问题及解决方案
2015/01/28 Javascript
jQuery判断多个input file 都不能为空的例子
2015/06/23 Javascript
JS与jQ读取xml文件的方法
2015/12/08 Javascript
Angularjs整合微信UI(weui)
2016/03/15 Javascript
字符串反转_JavaScript
2016/04/28 Javascript
ajax跨域调用webservice的实现代码
2016/05/09 Javascript
浅谈jquery中使用canvas的问题
2016/10/10 Javascript
JS判断键盘是否按的回车键并触发指定按钮点击操作的方法
2017/02/13 Javascript
jQuery实现表格冻结顶栏效果
2017/08/20 jQuery
4个顶级开源JavaScript图表库
2018/09/29 Javascript
微信小程序学习笔记之目录结构、基本配置图文详解
2019/03/28 Javascript
JS表格的动态操作完整示例
2020/01/13 Javascript
JavaScript canvas绘制折线图
2020/02/18 Javascript
wxPython框架类和面板类的使用实例
2014/09/28 Python
Python多线程处理实例详解【单进程/多进程】
2019/01/30 Python
Python3字符串encode与decode的讲解
2019/04/02 Python
将Pytorch模型从CPU转换成GPU的实现方法
2019/08/19 Python
Python for i in range ()用法详解
2020/09/18 Python
python如何使用jt400.jar包代码实例
2019/12/20 Python
浅谈关于html5中图片抛物线运动的一些心得
2018/01/09 HTML / CSS
MYSQL相比于其他数据库有哪些特点
2013/07/19 面试题
旅游文化节策划方案
2014/06/06 职场文书
师德师风的心得体会
2014/09/02 职场文书
党员个人批评与自我批评
2014/10/14 职场文书
2015年初一班主任工作总结
2015/05/13 职场文书
住房公积金贷款工资证明
2015/06/12 职场文书
党风廉政教育心得体会2016
2016/01/22 职场文书
进行数据处理的6个 Python 代码块分享
2022/04/06 Python