批量修改圖像gamma值

import cv2
import os
import numpy as np

def adjust_gamma(image, gamma=1.0):
    invGamma = 1.0/gamma
    table = []
    for i in range(256):
        table.append(((i / 255.0) ** invGamma) * 255)
    table = np.array(table).astype("uint8")
    return cv2.LUT(image, table)

cnt=1
source_path=r"C:\Users\data"
result_path=r"C:\Users\data_gamma"
files = os.listdir(source_path)
files.sort(key=lambda x: int(x.split('.')[0]))
for file in  files:
    img=cv2.imread(os.path.join(source_path,file))
    img_gamma = adjust_gamma(img, 0.5)#gamma=0.5
    cv2.imwrite(result_path+"/"+"%d.png"%cnt,img_gamma)
    cnt = cnt+1

 

發佈了19 篇原創文章 · 獲贊 2 · 訪問量 5551
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章