IT_World

[PYTHON] 감마를 이용하여 grayscale 이미지 밝기 조정 본문

Artificial intelligence, AI/TensorFlow

[PYTHON] 감마를 이용하여 grayscale 이미지 밝기 조정

engine 2021. 4. 26. 17:04

폴더 내 전체 사진의 이미지를 흑백으로 바꾸고, 밝기를 조절해야 할 일이 생겼다.

이럴 경우에는 감마값을 조정하여 이미지 밝기를 조절할 수 있다.

 

흑백 이미지 변경을 원하지 않을 경우. convert("LA")를"LA" 지우고 사용하면 된다. 

gamma = 1.80 값을 변경하여 이미지 밝기를 조절한다.

숫자가 높아질수록 밝기가 강해진다.

텐서 플로우로 폴더 내 전체를 변경할 수 있다.

from PIL import Image
import os
import glob
import matplotlib.pyplot as plt

path = f"/home/"
files = glob.glob(path + '/*')

save_path = f"/home/bright/"
imagePaths = [os.path.join(path, file_name) for file_name in os.listdir(path)]

print(imagePaths[0])

for i in range(len(imagePaths)):
    gray_img = Image.open(f'{imagePaths[i]}').convert("LA") 
	row = gray_img.size[0]
    col = gray_img.size[1]
    gamma = 1.80
    result_img = Image.new("L", (row, col))  # 새 흑백이미지를 생성.
    for x in range(1, row):
        for y in range(1, col):
            value = pow(gray_img.getpixel((x, y))[0] / 255, (1 / gamma)) * 255
            if value >= 255:
                value = 255
            result_img.putpixel((x, y), int(value))
    img_name= imagePaths[i].split('32/')[-1]
    result_img.save(f"/home/bright/{img_name}")  # 감마 1.80 이미지 저장
Comments