728x90
반응형
코드 및 이미지 : https://github.com/Seokii/Study_OpenCV
지난 포스팅에서는 관심 영역을 지정하고 값을 확인하는 것을 해봤고,
이번에는 행렬의 덧셈, 뺄셈을 통한 이미지(영상)의 밝기 조절을 해보도록 하겠습니다.
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
반응형
'머신러닝 & 딥러닝 > 컴퓨터 비전' 카테고리의 다른 글
[OpenCV with Python] - 12. 행렬 덧셈과 곱셈을 이용한 이미지(영상) 합성/합치기 (0) | 2021.09.26 |
---|---|
[OpenCV with Python] - 11. 이미지(영상)의 크기 변환(확대 및 축소) : cv2.resize() (0) | 2021.09.26 |
[OpenCV with Python] - 09. 관심 영역(ROI) 지정 및 값 확인 (0) | 2021.09.25 |
[OpenCV with Python] - 08. 컬러 채널 분리하기 (0) | 2021.09.21 |
[OpenCV with Python] - 07. 사진 뒤집기, 반복, 전치 반환 (0) | 2021.09.16 |
댓글