머신러닝 & 딥러닝/컴퓨터 비전

[OpenCV with Python] - 10. 이미지(영상)의 밝기 조절

by seokii 2021. 9. 25.
728x90
반응형

코드 및 이미지 : https://github.com/Seokii/Study_OpenCV

 

GitHub - Seokii/Study_OpenCV: study about OpenCV

study about OpenCV. Contribute to Seokii/Study_OpenCV development by creating an account on GitHub.

github.com

 

지난 포스팅에서는 관심 영역을 지정하고 값을 확인하는 것을 해봤고,

이번에는 행렬의 덧셈, 뺄셈을 통한 이미지(영상)의 밝기 조절을 해보도록 하겠습니다.

 

OpenCV의 saturation연산

OpenCV에서는 행렬의 연산 시 화소 값이 0 미만이거나 255 이상일 경우 saturation 방식을 취합니다.

ex) 100 + 300 = 400 -> 255

ex) 100 - 300 = -200 -> 0

 

 

주피터 노트북으로 구현하기

In [1] : 

import numpy as np
import cv2

In [2] : 

image = cv2.imread("images/cat.jpg", cv2.IMREAD_GRAYSCALE)

- 필요한 라이브러리와 이미지를 불러옵니다.

- 이미지는 그레이스케일(흑백)로 불러왔습니다.

 

In [3] : 

img1 = cv2.add(image, 100)
img2 = cv2.subtract(image, 100)

- img1, img2 변수로 불러온 이미지를 각각 cv2.add(), cv2.subtract() 함수를 사용하여 각 행렬의 화소 값을 덧셈, 뺄셈 계산을 진행합니다.

 

In [4] :

cv2.imshow("original", image)
cv2.imshow("brighter", img1)
cv2.imshow("darker", img2)
cv2.waitKey(0)
cv2.destroyAllWindows()

Out [4] : 

- 코드의 결과 값입니다.

- original은 원본 사진이며, brighter은 cv2.add()의 결과 값, darker은 cv2.subtract()의 결과 값입니다.

 

 

 

 

 

도움이 되셨다면 아래 광고 한 번만 클릭해주세요 감사합니다!

728x90
반응형

댓글