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最长公共子串算法实例
Mar 07 Python
Python捕捉和模拟鼠标事件的方法
Jun 03 Python
python获取程序执行文件路径的方法(推荐)
Apr 26 Python
解决Tensorflow使用pip安装后没有model目录的问题
Jun 13 Python
python logging重复记录日志问题的解决方法
Jul 12 Python
python通过paramiko复制远程文件及文件目录到本地
Apr 30 Python
Python实现TCP通信的示例代码
Sep 09 Python
将python2.7添加进64位系统的注册表方式
Nov 20 Python
python ffmpeg任意提取视频帧的方法
Feb 21 Python
django的403/404/500错误自定义页面的配置方式
May 21 Python
python raise的基本使用
Sep 10 Python
Python图片处理之图片裁剪教程
May 27 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防止注入攻击实例分析
2014/11/03 PHP
PHP实现支付宝即时到账功能
2016/12/21 PHP
php读取本地json文件的实例
2018/03/07 PHP
php实现微信支付之退款功能
2018/05/30 PHP
Laravel获取所有的数据库表及结构的方法
2019/10/10 PHP
jMessageBox 基于jQuery的窗口插件
2009/12/09 Javascript
基于jQuery的可用于选项卡及幻灯的切换插件
2011/03/28 Javascript
使用jQuery避免鼠标双击的解决方案
2013/08/21 Javascript
js数组转json并在后台对其解析具体实现
2013/11/20 Javascript
原生javascript实现图片弹窗交互效果
2015/01/12 Javascript
Node.js编程中客户端Session的使用详解
2015/06/23 Javascript
javascript中setAttribute()函数使用方法及兼容性
2015/07/19 Javascript
jQuery中map函数的两种方式
2017/04/07 jQuery
捕获未处理的Promise错误方法
2017/10/13 Javascript
Nodejs技巧之Exceljs表格操作用法示例
2019/11/06 NodeJs
微信小程序仿通讯录功能
2020/04/09 Javascript
javascript的hashCode函数实现代码小结
2020/08/11 Javascript
python 正则表达式 概述及常用字符
2009/05/04 Python
python删除列表中重复记录的方法
2015/04/28 Python
python创建一个最简单http webserver服务器的方法
2015/05/08 Python
Python socket编程实例详解
2015/05/27 Python
python开发之thread线程基础实例入门
2015/11/11 Python
python中使用zip函数出现错误的原因
2018/09/28 Python
python查看模块安装位置的方法
2018/10/16 Python
Python 使用 Pillow 模块给图片添加文字水印的方法
2019/08/30 Python
详解一种用django_cache实现分布式锁的方式
2019/09/01 Python
用python制作个视频下载器
2021/02/01 Python
Python将QQ聊天记录生成词云的示例代码
2021/02/10 Python
具有防紫外线功能的高性能钓鱼服装:Hook&Tackle
2018/08/16 全球购物
马来西亚领先的在线礼品店:Giftr
2018/08/23 全球购物
德国BA保镖药房中文网:Bodyguard Apotheke
2021/03/09 全球购物
公司培训心得体会
2014/01/03 职场文书
经济职业学院毕业生自荐书
2014/03/17 职场文书
2014年百日安全生产活动总结
2014/05/04 职场文书
课外活动总结范文
2014/07/09 职场文书
如何使用Tkinter进行窗口的管理与设置
2021/06/30 Python