OpenCV

brightness 밝기 조절

728x90
import cv2
import numpy as np

img = cv2.imread('data/images/candle.jpg',1)

beta = 100 #숫자가 높을수록 밝아짐

#컬러스페이스 변경
ycbImage = cv2.cvtColor(img, cv2.COLOR_BGR2YCrCb)

#가공을 위해 uint8을 float으로 변경
ycbImage = np.float32(ycbImage)

#채널 분리
Ychannel, Cr,Cb = cv2.split(ycbImage)

#밝기 조절
Ychannel = np.clip(Ychannel+beta, 0,255)

#합치기
ycbImage = cv2.merge([Ychannel, Cr, Cb])

#정수로 변환
ycbImage = np.uint8(ycbImage)

#BGR로 변환
ycbImage = cv2.cvtColor(ycbImage,cv2.COLOR_YCrCb2BGR)

#이미지를 각각의 윈도우에 표시
cv2.imshow('src',img)
cv2.imshow('dsc',ycbImage) #밝아졌다!

#하나의 윈도우에 표시되도록
all_img = np.hstack([img,ycbImage])
cv2.imshow('combined',all_img)

cv2.waitKey(0)
cv2.destroyAllWindows()

728x90

'OpenCV' 카테고리의 다른 글

contrast HistEq  (0) 2021.04.20
contrast Scaling 대비  (0) 2021.04.20
Color Transfer 필터 입히기  (0) 2021.04.20
desaturation  (0) 2021.04.20
hueHistogram  (0) 2021.04.20