【python图像处理】给图像添加透明度(alpha通道)
2017-05-09 11:00
387 查看
我们常见的RGB图像通常只有R、G、B三个通道,在图像处理的过程中会遇到往往需要向图像中添加透明度信息,如公司logo的设计,其输出图像文件就需要添加透明度,即需要在RGB三个通道的基础上添加alpha通道信息。这里介绍两种常见的向RGB图像中添加透明度的方法。
1、使用图像合成(blending)的方法
可参考上篇博文(python图像处理(十)——两幅图像的合成一幅图像(blending two
images))
代码如下:
这里给原图的所有像素都添加了一个常量(0.7)的透明度。
处理前后的效果如下:
2、使用Image对象的成员函数putalpha()直接添加
代码如下:
处理前后的效果如下:
2017.05.09
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)的透明度。
处理前后的效果如下:
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)
处理前后的效果如下:
2017.05.09
相关文章推荐
- 图像不能包含 alpha 通道或透明度
- java图像处理-(指定区域内)灰度化、透明化(alpha通道)处理
- python图像处理:图像通道、变换及裁剪
- 纯Python综合图像处理小工具(1)分通道直方图
- 6-python图像处理opencv(2.图像像素访问,通道分离与合并)
- 上传AppStore时图像不能包含 alpha通道和透明度两种解决办法
- OpenCV读取图像时Alpha通道的处理
- 用python简单处理图片(2):图像通道\几何变换\裁剪
- 上传AppStore时图像不能包含 alpha通道和透明度
- 图像不能包含alpha通道或透明度
- 图像不能包含 alpha 通道或透明度
- iOS 上架(小问题)去除图像中的alpha通道或透明度
- javacpp-opencv图像处理之2:实时视频添加图片水印,实现不同大小图片叠加,图像透明度控制,文字和图片双水印
- javacpp-opencv图像处理之2:实时视频添加图片水印,实现不同大小图片叠加,图像透明度控制,文字和图片双水印
- 去除图像中的alpha通道或透明度
- 去除图像中的alpha通道或透明度
- 用python简单处理图片(2):图像通道\几何变换\裁剪
- 用python简单处理图片(2):图像通道\几何变换\裁剪
- 用python简单处理图片(2):图像通道\几何变换\裁剪
- 图像不能包含 alpha 通道或透明度