Python Pillow v2.6.0 paletted PNG(256)如何添加Alpha通道?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Python Pillow v2.6.0 paletted PNG(256)如何添加Alpha通道?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含999字,纯文字阅读大概需要2分钟。
内容图文
![Python Pillow v2.6.0 paletted PNG(256)如何添加Alpha通道?](/upload/InfoBanner/zyjiaocheng/808/3af72e33431249d5a72470ffde660ec8.jpg)
我有一个写入图像的numpy数组,一个RGB色图作为一个调色板添加,剩下的只是一个透明通道(256个值)在顶部.我已经尝试过转换为RGBA,LA和其他方法但是,我无法弄清楚如何将这个多值通道添加到顶部作为调色板.
以下是我添加单值透明通道的示例:
# data = numpy array 1624x3856
im = Image.fromarray(data)
im = im.convert('P')
# cmap is a 768-valued RGB array
im.putpalette(my_cmap)
im.save('filename.png', transparency=0)
我要保存的频道如下:
# len(alpha) = 256
alpha = [0,255,255,255...255,255,255]
任何帮助将不胜感激.
解决方法:
准备正确的RGBA格式以使用Alpha通道
准备RGB部分后(从上面的data.shape看到的问题)
您的光栅图像必须获得相应的Alpha图层.
为此,请添加对实例方法的调用
Image.putalpha(anAlphaLAYER)
这会添加/替换图像中的alpha图层.如果图像没有alpha图层,则会将其转换为LA或RGBA,因此在调用此方法之前,请准备好RGB部件.新图层(anAlphaLAYER)必须为L或1.
所以一定要有一个与你的im.size(X,Y)匹配的AlphaLAYER.shape.另一种可能性是从整数值创建alpha层并且ad-hoc修改它的单元格值.
早在numpy.array中完成了完整的RGBA格式,整个问题不会给你带来任何麻烦.
内容总结
以上是互联网集市为您收集整理的Python Pillow v2.6.0 paletted PNG(256)如何添加Alpha通道?全部内容,希望文章能够帮你解决Python Pillow v2.6.0 paletted PNG(256)如何添加Alpha通道?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。