728x90
import cv2
import numpy as np
img = cv2.imread("data/images/capsicum.jpg", 1)
cv2.imshow('Original', img)
#채도
saturationScale = 0.01
hsvImage = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)
hsvImage = np.float32(hsvImage)
#채널로 분리하는 함수
H,S,V = cv2.split(hsvImage)
#유용한 함수. cv2.clip함수를 이용하여 0보다 작으면 0으로,
#255보다 크면 255로 맞추도록 할 수 있다.
S = np.clip(S*saturationScale, 0,255)
#나눈 채널을 하나로 합치는 함수
hsvImage = cv2.merge( [H,S,V] )
#float으로 작업했기에 uint8로 변환
hsvImage = np.uint8(hsvImage)
#BGR로 변환하여 확인
imgBGR = cv2.cvtColor(hsvImage, cv2.COLOR_HSV2BGR)
cv2.imshow('cvt bgr', imgBGR)
cv2.waitKey(0)
cv2.destroyAllWindows()
728x90
'OpenCV' 카테고리의 다른 글
brightness 밝기 조절 (0) | 2021.04.20 |
---|---|
Color Transfer 필터 입히기 (0) | 2021.04.20 |
hueHistogram (0) | 2021.04.20 |
virtual Bilbord(빌보드 전광판 사진 바꾸기) (0) | 2021.04.20 |
perspective Correction(클릭해서 이미지 추출) (0) | 2021.04.20 |