OpenCV图像处理---彩色图片转HSV图片,HSV色彩空间表和cv2.inRange()的用法

HSV色彩空间表

绿
hmin 0 0 0 0 / 156 11 26 35 78 100 125
hmax 180 180 180 10 / 180 25 34 77 99 124 155
smin 0 0 0 43 43 43 43 43 43 43
smax 255 43 30 255 255 255 255 255 255 255
vmin 0 46 221 46 46 46 46 46 46 46
vmax 46 220 255 255 255 255 255 255 255 255
# rgb颜色空间转换到hsv颜色空间
import cv2
import numpy as np

IMGPath = './test.jpg'
rgb_image = cv2.imread(IMGPath)
hsv = cv2.cvtColor(rgb_image, cv2.COLOR_BGR2HSV)
# 橙色
low_hsv = np.array([11,43,46])
high_hsv = np.array([25,255,255])

# 利用cv2.inRange函数设阈值,提取特征区域
mask = cv2.inRange(hsv,lowerb=low_hsv,upperb=high_hsv)

cv2.imshow('src', rgb_image)
cv2.imshow('mask', mask)
cv2.waitKey(0)

cv2.inRange():

  • 第一个参数:hsv指的是原图

  • 第二个参数:low_hsv指的是图像中低于这个low_hsv的值,图像值变为0

  • 第三个参数:high_hsv指的是图像中高于这个high_hsv的值,图像值变为0

  • 而在low_hsv~high_hsv之间的值变成255
    在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/HHH_LLL/article/details/106981730