Я решил свою проблему самостоятельно, проблема в том, что значение альфа-канала в изображении RGBA равно 0 или 255, я просто изменяю 255 на 220, чтобы верхнее изображение не покрывало нижнее изображение. Мой код выглядит следующим образом:
def transPNG(srcImageName, dstImageName):
img = Image.open(srcImageName)
img = img.convert("RGBA")
datas = img.getdata()
newData = list()
for item in datas:
if item[0] > 200 and item[1] > 200 and item[2] > 200:
newData.append(( 255, 255, 255, 0))
else:
newData.append((item[0], item[1], item[2], randint(220, 220)))
img.putdata(newData)
img.save(dstImageName,"PNG")