[英]Is it possible to mask an image in Python Imaging Library (PIL)?
我有一些交通攝像頭圖像,我只想提取道路上的像素。 我以前使用過遙感軟件,在那里可以指定一個操作,例如
img1 * img2 = img3
其中 img1 是原始圖像,而 img2 是直的黑白蒙版。 本質上,圖像的白色部分將評估為
img1 * 1 = img3
黑色部分將評估為
圖像 1 * 0 = 圖像 3
因此,人們可以截取圖像的一部分,讓所有不重要的區域變成黑色。
有沒有辦法使用 PIL 做到這一點? 我找不到任何類似於我習慣看到的圖像代數的東西。 我已經嘗試過混合功能,但這只是將它們淡化在一起。 我已經閱讀了一些關於 numpy 的內容,它似乎有能力做到這一點,但我想確定的是,在我深入研究之前,在 PIL 中沒有直接的方法可以做到這一點。
謝謝你。
Image.composite
方法可以做你想做的事。 第一個圖像應該是一個常數值,代表被屏蔽的區域,第二個應該是原始圖像 - 第三個是蒙版。
您可以使用 PIL 庫來屏蔽圖像。 將 alpha 參數添加到 img2,因為您不能將此圖像粘貼到 img1 上。 否則,您將看不到下面的內容,您需要添加一個 alpha 值。
img2.putalpha(128)
#如果你放0它會完全透明,保持圖像不透明
然后你可以屏蔽兩個圖像img1.paste(im=img2, box=(0, 0), mask=img2)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.