You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Python叠加两张39200x30288图片出现AttributeError如何解决

问题原因

PIL库的Image.paste()方法是原地修改图像对象的操作,不会返回新的Image实例,默认返回值为None。你执行image_1 = image_1.paste(image_2, (0,0))时,把原本的Image对象覆盖成了None,后续调用.size属性自然会触发AttributeError。

修复方案

直接去掉赋值操作即可,paste操作会直接修改image_1的内容,不需要重新赋值:

from PIL import Image

# 解除大图像像素限制
Image.MAX_IMAGE_PIXELS = None

image_1 = Image.open(r"1.png")
image_2 = Image.open(r"2.png")

# 直接调用paste,不需要赋值给image_1
image_1.paste(image_2, (0,0))

print(image_1.size)

补充注意事项

  • 如果需要保留原始的1.png不被修改,可以先拷贝一份原始图像再执行paste操作:
    image_1 = Image.open(r"1.png").copy()
    
  • 两张超大幅图像叠加时建议确认图像模式一致(比如都是RGBA或者都是RGB),如果存在alpha通道需要特殊叠加效果,可以改用alpha_composite方法替代paste。

内容的提问来源于stack exchange,提问作者bledkharm

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.23 14:54:05