파이썬 Pillow 이미지 처리 (픽셀값 구하기, 누끼 이미지, 이미지 붙이기)

파이썬 Pillow 이미지 처리 (픽셀 색상 구하기, 누끼 이미지 만들기, 로고 이미지 붙이기)

 

파이썬 이미지 처리 라이브러리인 Pillow는 image와 관련된 다양한 처리를 할 수 있습니다.
그 중에서 특정 픽셀의 색상 구하기, 누끼이미지 만들기, 이미지에 이미지를 붙이기(로고 붙이기)를 해보도록 하겠습니다.


python Pillow 설치

pip install pillow

특정 픽셀의 r,g,b 색상 구하기

from PIL import Image

# 이미지 객체로 생성
im = Image.open(file_) 

# RGB 모드로 변경 
rgb_im = im.convert('RGB')

# 지정한 좌표(1, 400)의 색상을 r,g,b 변수에 넣음
r, g, b = rgb_im.getpixel((1, 400)) 

print(r)
print(g)
print(b)

누끼 이미지 만들기

이 방법은 r,g,b 값이 흰색일 경우 투명한 픽셀로 변경하여 누끼 이미지로 만드는 방법입니다.
완전한 흰색이 아닌 경우 255 숫자의 범위를 낮추어서 범위를 조정한 후 사용할 수도 있습니다.
누끼컷의 경우 png 만 가능하므로, 저장은 png로 해주셔야 합니다.

from PIL import Image

# 누끼컷으로 변경할 이미지
img = Image.open('./iwantnuki.png') 
img = img.convert("RGBA")
datas = img.getdata()
newData = []
for item in datas:
    if item[0] == 255 and item[1] == 255 and item[2] == 255:
        newData.append((255, 255, 255, 0))
    else:
        newData.append(item)
img.putdata(newData)

# png 확장자로 저장
img.save("./TransparentImage.png", "PNG") 

이미지 위에 로고 붙이기

pillow로 이미지 위에 이미지를 붙일 수 있습니다.
로고와 같은 이미지를 일괄적으로 붙이고 싶을 때 사용할 수 있습니다.

from PIL import Image, ImageDraw

template = Image.open("/home/template.jpg") 
rgb_im = template.convert('RGB') 

logo = Image.open("/home/logo.jpg")

# template 이미지 객체 0,0 위치에 logo 이미지를 붙여줍니다.
rgb_im.paste(logo, (0, 0)) 

# 붙인 이미지를 새로운 이름으로 저장합니다.
rgb_im.save("/home/pasted_logo.jpg", "JPEG")

pillow 관련글

파이썬 webp 파일 다루기 , webp 란?

 

파이썬 webp 파일 다루기 , webp 란?

webp 란? 구글에서 만든 새로운 이미지 압축 포맷이다. 이미지는 JPG, PNG, GIF 포맷을 일반적으로 사용했지만, 이 모든 것을 대체할 수 있는 것이 webp 형식이다. 확장자가 webp인데 GIF 처럼 애니메이션 이미지..

minimilab.tistory.com

댓글

Designed by JB FACTORY