OpenCV 获取指定颜色 inRange函数
最近研究提取图片中指定颜色的物体,用到OpenCV
在网上找到的代码
hue_image = cv2.cvtColor(image, cv2.COLOR_BGR2HSV) low_range = np.array([139, 150, 160], np.uint8) high_range = np.array([153, 200, 200], np.uint8) #low_range = np.array([140, 0, 0]) #high_range = np.array([150, 255, 255]) th = cv2.inRange(hue_image, low_range, high_range)
# hue_image图像是HSV颜色空间
可以看到先用cvtColor将图像转为HSV颜色空间
之后用inRange函数找到色彩在low和high数组内区域
inRange Function:
Parameters
src first input array.
lowerb inclusive lower boundary array or a scalar.
upperb inclusive upper boundary array or a scalar.
比较容易不理解的就是数组的3个参数,这个值与图片的色彩空间有关(cvtColor函数BGR2HSV)BGR2HSV把图片转为HSV,
图片是HSV模式 ,三个参数分别为 [H,S,V],其他的类型同理
HSV的优势是,颜色变化编码更为线性,相对于RGB更容易被抓取
# 色相(H)是色彩的基本属性,就是平常所说的颜色名称,如红色、黄色等
# 饱和度(S)是指色彩的纯度,越高色彩越纯,低则逐渐变灰,取0-100%的数值。
# 明度(V),亮度(L)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术