본문 바로가기
AI/컴퓨터 비전

[DL] cv2.inRange_hsv 색상추출

by 바다의 공간 2024. 9. 30.
5. 색상 추출
- 영상에서 지정된 범위 안에 픽셀을 선택
- cv2.inRange(hsv, (최소값) (최대값))

BGR에서 녹색계열
0 <= B <= 100
128 <= G <= 255
0 <= R <= 100

HSV에서의 녹색계열
#색상
50 <= H <= 80
#채도
150 <= S <= 255
#명도(밝기정보)
0 <= V <= 255

- cv2.inRange(hsv, (최소값) (최대값))으로 쓰고
각 최소값, 최대값에는
최소값= (50, 150, 0),
최대값= (80,255,255)
를 작성할 수 있게 됩니다.

 

import cv2

img = cv2.imread('./candies.png')
hsv = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)

'''
HSV에서의 녹색계열
#색상
50 <= H <= 80
#채도
150 <= S <= 255
#명도(밝기정보)
0 <= V <= 255
'''

dst = cv2.inRange(hsv,(50, 150, 0), (80, 255,255))

cv2.imshow('img', img)
cv2.imshow('dst', dst)
cv2.waitKey()

이렇게 녹색계열만 잘 뽑아오는것을 확인할 수 있습니다. 

물론 노이즈는 조금 있는편입니다.,