手抄报 安全手抄报 手抄报内容 手抄报图片 英语手抄报 清明节手抄报 节约用水手抄报

python进行HSV颜色空间转换

时间:2024-11-03 00:27:35

1、色调(Hue)、饱和度(Saturation)、亮度(Value)三个分量构成,H 表示色调 也有叫色相的 红绿蓝 这些。用度数表示红0度,绿120度,蓝240度。从红--蓝(或者红紫) ,opencv里 范围:0-180S 代表饱和度, 纯色占的比例,表达深浅度(0-100%) 比如深红 品红 0-255V 亮度 (0-100%) 0-255import cv2import numpy as npimage = cv2.imread('c:\\meiping1.png')先展示源图情况。

python进行HSV颜色空间转换

2、转化成HSVHSV = cv2.cvtColor(image, cv2.COLOR_BGR2HSV)cv2.imshow('HSV', HSV)分离HSV通道 并显示H, S, V = cv2.split(HSV)cv2.imshow('H', H)cv2.imshow('S', S)cv2.imshow('V', V)print(H)print(S)print(V)HSV出来是这个效果还是有点没想到,

python进行HSV颜色空间转换

3、H 取值:[[ 80 80 70 ... 93 96 95][ 84 70 80 ... 93 86 90][ 83 84 80 ... 100 90 96]...[ 80 90 84 ... 160 105 113][ 80 95 90 ... 90 80 90][ 80 120 120 ... 60 80 68]]这表示的是H通过到颜色数字,度数。图片把他们当灰度图显示了。其实这用该是表示H色调.

python进行HSV颜色空间转换

4、S: 表达颜色深浅程度[[ 4 4 4 ... 13 7 9][ 7 4 4 ... 13 12 9][ 5 7 8 ... 8 7 7]...[ 5 10 17 ... 5 7 7][10 10 12 ... 7 11 4][ 5 3 7 ... 2 6 7]]

python进行HSV颜色空间转换

5、V: 反应image图像亮度情况[[186 187 191 ... 177 183 178][187 189 192 ... 179 177 177][187 188 190 ... 183 178 182]...[154 155 153 ... 141 145 138][155 153 150 ... 140 137 141][154 154 154 ... 143 136 140]]

python进行HSV颜色空间转换

6、因为要使用cv2.inRange()函数,这个函数挺有意思,以后还要用到后续再说,它类似阈值处理。介于第二和第三参数之间的 置255,其他的置0 这个比较重要!lower_red = np.array([30, 30, 30])upper_red = np.array([225, 225, 225])mask = cv2.inRange(HSV, lower_red, upper_red)cv2.imshow('mask', mask)果然是二值图像!效果还不错

python进行HSV颜色空间转换

7、最后利用以前用过的与 加上掩码图,看一下效果。滤掉了一些颜色,保留了一些 有点特效的意思。maskAnd = cv2.bitwise_and(image, image, mask=mask)cv2.imshow('resource', image)cv2.imshow('maskAnd', maskAnd)cv2.waitKey(0)cv2.destroyAllWindows()对比源图和效果图

python进行HSV颜色空间转换
python进行HSV颜色空间转换
© 手抄报圈