粘贴图片部分 - python,PIL模块

时间:2012-04-02 14:33:15

标签: python python-imaging-library paste

我想将两张图片(图片A和图片B - 相同尺寸)分割为上下半部分(A-Up,A-Down,B-Up,B-Down),然后创建新图像:A -up + B-Down,反之亦然(意思是:我希望有一个新的图片,它的上半部分实际上是A的上部而下半部分是B)。我使用PIL模块在python中编写了下一个函数:

import Image  
def SplitFunction(BMP):  
      im = Image.open(BMP)  
      [x,y]=im.size  
      box1=(0,0,x,y/2)  
      box2=(0,y/2+1,x,y)  
      region1 = im.crop(box1)    
      region2 = im.crop(box2)  
      region1.show()  
      region2.show()  
      return [region1,region2]  

path1='c:/movie2frames/BMPs1/stim/1.BMP'  
path2='c:/movie2frames/BMPs1/stim/334.BMP'  

[r1a,r2a]=SplitFunction(path1)  
[r1b,r2b]=SplitFunction(path2)  
#end program 

我不知道如何粘贴新部件。任何帮助都会很有帮助。

2 个答案:

答案 0 :(得分:1)

如果您保留原始的全尺寸图片并将新的上半部分粘贴到其中,这实际上要容易得多。

box_top = (0, 0, x, y / 2)
top_part = im1.crop(box_top)
result = im2.copy()
result.paste(top_part, box_top)

答案 1 :(得分:1)

您必须创建两个部分大小的新图像:

im = Image.new(mode, size)

然后粘贴分离的图像:

im.paste(image, box)

有关详细信息,请参阅文档:http://effbot.org/imagingbook/image.htm