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中set与frozenset方法和区别详解
May 23 Python
Python使用修饰器执行函数的参数检查功能示例
Sep 26 Python
Python3中类、模块、错误与异常、文件的简易教程
Nov 20 Python
Python OpenCV实现图片上输出中文
Jan 22 Python
Python网络编程之TCP与UDP协议套接字用法示例
Feb 02 Python
python中文编码与json中文输出问题详解
Aug 24 Python
Python对切片命名的实现方法
Oct 16 Python
python实现接口并发测试脚本
Jun 25 Python
python RC4加密操作示例【测试可用】
Sep 26 Python
python 异步async库的使用说明
May 04 Python
python文件读取失败怎么处理
Jun 23 Python
浅谈Keras参数 input_shape、input_dim和input_length用法
Jun 29 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
php MySQL与分页效率
2008/06/04 PHP
php数组索引与键值操作技巧实例分析
2015/06/24 PHP
微信支付开发订单查询实例
2016/07/12 PHP
PHP中str_split()函数的用法讲解
2019/04/11 PHP
详解提高使用Java反射的效率方法
2019/04/29 PHP
jQuery的强大选择器小结
2009/12/27 Javascript
JavaScript QueryString解析类代码
2010/01/17 Javascript
dess中一个简单的多路委托的实现
2010/07/20 Javascript
javascript级联下拉列表实例代码(自写)
2013/05/10 Javascript
jQuery实现图片放大预览实现原理及代码
2013/09/12 Javascript
javascript中负数算术右移、逻辑右移的奥秘探索
2013/10/17 Javascript
BAT及各大互联网公司2014前端笔试面试题--JavaScript篇
2014/10/29 Javascript
JS实现仿新浪微博发布内容为空时提示功能代码
2015/08/19 Javascript
js修改onclick动作的四种方法(推荐)
2016/08/18 Javascript
JavaScript实现汉字转换为拼音的库文件示例
2016/12/22 Javascript
JavaScript严格模式详解
2017/01/16 Javascript
bootstrap输入框组使用方法
2017/02/07 Javascript
javascript图片预览和上传(兼容IE)
2017/03/15 Javascript
实例详解BootStrap的动态模态框及静态模态框
2018/08/13 Javascript
vue watch普通监听和深度监听实例详解(数组和对象)
2018/08/16 Javascript
GOJS+VUE实现流程图效果
2018/12/01 Javascript
JS/HTML5游戏常用算法之碰撞检测 包围盒检测算法详解【圆形情况】
2018/12/13 Javascript
vue实现微信获取用户信息的方法
2019/03/21 Javascript
微信小程序基础教程之worker线程的使用方法
2019/07/15 Javascript
[01:48]完美圣典齐天大圣至宝宣传片
2016/12/17 DOTA
python实现网页链接提取的方法分享
2014/02/25 Python
对python中使用requests模块参数编码的不同处理方法
2018/05/18 Python
Python 创建新文件时避免覆盖已有的同名文件的解决方法
2018/11/16 Python
Pandas时间序列:时期(period)及其算术运算详解
2020/02/25 Python
Anaconda+vscode+pytorch环境搭建过程详解
2020/05/25 Python
Python APScheduler执行使用方法详解
2020/12/10 Python
亚马逊新加坡官方网站:Amazon.sg
2020/03/25 全球购物
大气污染防治方案
2014/05/19 职场文书
收银员岗位职责
2015/02/03 职场文书
幼儿园六一儿童节活动总结
2015/02/10 职场文书
2019年暑期法院实习报告
2019/12/18 职场文书