0
我正在使用枕頭從圖像中剪出一個形狀。要做到這一點,我使用了一個alpha遮罩,它包含我需要的形狀的黑白圖像。當我使用枕頭敷貼面具時,我留下了一幅圖像的摳圖,就像我想要的那樣,但它是由來自不同文件夾的完全不相關的圖片勾勒出來的。使用錯誤蒙版的Python枕頭
當我從interwebs(this one to be exact)隨機圖片結合起來,我得到這個結果:
白圖像周圍的邊框位於與工作區域不同的文件夾中,並且永遠不會被我的代碼引用。
我根本不知道枕頭是如何得到白色邊框的。這真的很令人沮喪。有人知道爲什麼發生這種情況?
僅供參考,這裏的代碼,以及:
from PIL import Image
def Blend_Pic():
background = Image.open("bg.png")
mask = Image.open("mask2.png").convert("L")
foreground = Image.open("fg.png")
background.paste(foreground, (0, 0), mask)
background.show()
if __name__ == "__main__":
Blend_Pic()
背景只是一個空1600x900的PNG和前景是從谷歌的隨機圖像。
編輯:改變面具只是一個簡單的矩形給出了相同的結果,所以改變面具沒有幫助。
答案是顯而易見的:你認爲你運行的代碼,你在這裏展示的是*不是你實際運行的代碼。或者,或者'fg.png'已經包含了前一步的邊界。 –
我絕對運行正確的代碼,前景圖片絕對沒有邊界。我已經多次改變了工作目錄,以確保我運行正確的代碼,並重新從谷歌下載了前臺,但仍然是同樣的問題。 – watswat5
將全路徑名放入'open'調用中,以加倍確保您獲得正確的文件。在打開圖像後立即在圖像上放上一個「show」,以確保三重奏。 –