我想將兩張圖片(圖片A和圖片B--都是相同的大小)分割爲上下半幀(A-Up,A-Down,B-Up,B-Down) ),然後創建新的圖像:A-up + B-Down,反之亦然(意思是:我想要一個新的圖片,其上半部分實際上是A的上部,下半部分是B)。我用python編寫了下一個函數,使用PIL模塊:圖片的粘貼部分 - python,PIL模塊
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
我不知道如何粘貼新零件。任何幫助將非常appriciated。
謝謝。我理解邏輯(這當然更容易),但由於某種原因,我在粘貼命令中得到一個圖像不匹配的錯誤[原本它們大小相同]。當然我加了im2.open(...)。有任何想法嗎? – user552231 2012-04-02 19:45:53
@ user552231,確保它們是相同的模式。如有必要,使用convert函數轉換爲RGB模式。 – 2012-04-02 19:48:57
謝謝。但這似乎不成問題。我想我是在我自己的這個bug ..我附加了新的功能[但我想這不是真的可讀:導入圖像 def SplitFunction(BMP1,BMP2): im1 = Image.open(BMP1) im2 = Image.open(BMP2) [x,y] = im1.size box_top =(0,0,x,y/2) top_part = im1.crop(box_top) result = im2.copy() result .paste(IM1,box_top) 返回結果 PATH1 = 'C:/movie2frames/BMPs1/stim/1.BMP' PATH2 = 'C:/movie2frames/BMPs1/stim/334.BMP' SplitFunction(PATH1 ,path2) – user552231 2012-04-02 20:07:40