파이썬에서 이미지 대비를 조정하는 방법

학습 메모입니다.

했던 일



이미지의 대비를 조정하는 Python 스크립트를 작성했습니다.

코드


import cv2
import numpy as np
import matplotlib.pyplot as plt

img = cv2.imread('画像.jpg')

#コントラスト
contrast = 128

#コントラスト調整ファクター
factor = (259 *(contrast + 255)) / (255 *(259 - contrast))

#float型に変換
newImage = np.array(img, dtype = 'float64')

#コントラスト調整。(0以下 or 255以上)はクリッピング
newImage = np.clip((newImage[:,:,:] - 128) * factor + 128, 0, 255)

#int型に戻す
newImage = np.array(newImage, dtype = 'uint8')

#出力
cv2.imwrite('out.png', newImage)

결과



레나 님의 이미지로 시도해 보겠습니다.


원본 이미지


대비 +128로 조정 후

 

참고 URL



IMAGE PROCESSING ALGORITHMS PART 5: CONTRAST ADJUSTMENT
Algorithms for Adjusting Brightness and Contrast of an Image

좋은 웹페이지 즐겨찾기