我想将两张图片(图片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
我不知道如何粘贴新部件。任何帮助都会很有帮助。
答案 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