PIL合并RGB 通道图与 Alpha 通道图

发布于 2019-10-27  603 次阅读


明日方舟拆包以后发现立绘被分成了两张图,一个储存的是 RGB 通道的信息,另一个储存的是 Alpha 通道的信息(实际还有一圈阴影效果),因此需要把两个通道合并,下面分别是两个通道的原图以及用后面的代码合并出来的立绘,点击图片可以看大图。

逆向出来的立绘素材都上传到这里(提取密码: U9HIc)了,感谢 @momo296859251 帮忙整理文件。

这是合并单张立绘的代码:

from PIL import Image
 
name = 'char_101_sora_2'
 
image = name+'.png'
mask = name+'[alpha].png'
 
img = Image.open(image)
mas = Image.open(mask)
 
pixdata_img = img.load()
pixdata_mas = mas.load()
 
for y in range(mas.size[1]):
    for x in range(mas.size[0]):
        pixdata_img[x, y] = (pixdata_img[x, y][0], pixdata_img[x, y][1], pixdata_img[x, y][2], pixdata_mas[x, y][2])
 
img.show()


我断不思量,你莫思量我;将你从前与我心,付与他人可