2017-11-05 14 views
0

치수를 변경하지 않고 PIL 이미지의 사각형 영역을 지우고 투명하게 만들 수있는 방법은 무엇입니까?PIL 이미지의 직사각형 영역 지우기

& 이미지를 빈 이미지에 붙여 넣기로 구현했지만 이미지 안의 영역을 지울 수는 없습니다. 구현은 대부분 그냥 산술이므로 좀 더 우아한 방법을 찾으려고합니다.

답변

1

RGBA 모드로 열어야합니다. 파이썬 추상화 레벨의 각 픽셀을 반복

from PIL import Image 

rect_size = (100, 300) 
rect_pos = (200, 400) 

im = Image.open("your-image.jpg").convert("RGBA") 
rect = Image.new("RGBA", rect_size, (255, 255, 255, 0)) 
im.paste(rect, rect_pos) 
im.show() 
+0

는 비용이 많이 드는 :( – nipunasudha

+0

당신은 당신은 아마 원 (1920 × 1080의 야구장에서) 보통 크기의 이미지를 당신이 원하는 경우 배열을 NumPy와로 변환. 그러나 수 @nipunasudha – helper

+0

여기 putpixel 대신에'paste()'를 사용하여 향상 시켰습니다. 이것은 확실히 빠를 것입니다. (1 분 동안 Google 검색을 수행하는 방법을 알아 냈습니다.) – helper