使用Image.paste在PIL图像库中显示OsError(err)

2024-09-25 02:32:46 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在做一个小脚本,将一个图像粘贴到一个黑色背景中,使数据集具有相同大小的图像。以下是脚本:


for file in glob.glob(imagetteDir):
    r = str(file)
    image = Image.open(file)
    img = np.zeros([100,100,3],dtype=np.uint8) 
    imageio.imwrite('black.tif', img)
    black = Image.open('black.tif')
    position = ((black.width - image.width), (black.height - image.height))
    print(position)

    Image.Image.paste(black,image,position)

    dirr , name = r.split("imagette")
    path1 = name.raplace("Hexagone_resized","Hexagone")
    print(path1)
    black.save(imagetteresizeDir+path1)

因此Image.Image.paste()会出现以下错误,我没有找到解决方法:

Traceback (most recent call last):

  File "C:\Users\user\Documents\Project\segmentation\Imagette creation\resizing.py", line 29, in <module>
    Image.Image.paste(black,image)

  File "C:\Users\user\Anaconda3\envs\tf_gpu\lib\site-packages\PIL\Image.py", line 1455, in paste
    im.load()

  File "C:\Users\user\Anaconda3\envs\tf_gpu\lib\site-packages\PIL\TiffImagePlugin.py", line 1070, in load
    return self._load_libtiff()

  File "C:\Users\user\Anaconda3\envs\tf_gpu\lib\site-packages\PIL\TiffImagePlugin.py", line 1182, in _load_libtiff
    raise OSError(err)

OSError: -2

你知道它可能来自哪里吗

提前谢谢你的帮助


Tags: inpyimagelinepositionloadusersfile