使用PIL对目录进行分块并应用图像混合。无法使用Python正确保存图像

时间:2017-08-03 19:52:26

标签: python image save pillow blend

抱歉标题...因此,此脚本的目标是在特定顺序列出的图像上获取完整文件夹。然后它将图像分成3组。从那里它需要3个图像并使用PIL将它们混合在一起。现在我遇到的问题是,下面的代码可以很好地完成我想要的工作。我可以显示imgbld2它将在临时文件夹中创建4个图像。

现在我的问题是,当我使用imgbld2.save()保存图像时,它只会将第一个创建的图像保存为4个图像文件,而不是将4个创建的图像保存到4个单独的文件中。

我可以通过指向另一个脚本来使用glob.glob()从temp文件夹中检索图像来解决此问题。但这需要我确保在刚刚重新启动的计算机上运行脚本,但这似乎对我来说太麻烦了。

有没有更好的方法来实现我想要做的事情?还是有一种我缺少的保存方法?

任何帮助将不胜感激,这是代码:

from PIL import Image
import os.path
import glob

#Lists Directory
Dir = os.listdir('/path/to/Directory/of/Images')
#Glob all jpgs
im = glob.glob( '/path/to/Directory/of/Images/*.jpg')

#sort jpg according to name
imsort = sorted(im)

def chunker(imsort,size = 3):
    for i in range(0, len(imsort), size):
        yield imsort[i:i + size]

print('what does it look like?')

for j in chunker(imsort):
    print(j)

    img1 = Image.open(j[0])
    img2 = Image.open(j[1])
    img3 = Image.open(j[2])

    imgbld1 = Image.blend(img1, img2, 0.3)
    imgbld2 = Image.blend(imgbld1, img3, 0.3)

    imgbld2.show()
    imgbld2.save('path/to/new/folder/' + 'blended'  , 'JPEG') 

0 个答案:

没有答案