OpenCV笔记11:利用HSV颜色空间进行目标检测和目标跟踪
HSV(hue saturation value)
色调(hue):对应于颜色成分(基础色素),因此,只需选择一个色调范围,就可以选择任何颜色。(0—360)
饱和度(saturation):颜色的数量(颜料的深度)(主导色调)(0—100%)
值(value):颜色的亮度。(0—100%)
即
H - 色调(主导波长)。
S - 饱和度(颜色的纯度/色调)。
V - 值(强度)。
对于HSV,Hue范围是[0,179],饱和范围是[0,255],值范围是[0,255]
1、学习目标
使用HSV色彩空间进行物体检测和物体跟踪
(1)使用色调饱和度值(HSV)颜色模型实现基于颜色和形状的对象检测和跟踪。
(2)使用cv :: inRange
(OpenCV)为色彩检测选择正确的上下HSV边界
(3)使用轨迹栏。
2、函数方法
cv2.cvtColor()
cv2.inRange()
3、程序
(1)探测物体
原图
处理结果
(2)使用轨道棒探测物体
原图
结果
(3)使用轨道棒探测视频
原视频
处理结果
函数讲解:
(1)将图像从一个颜色空间转换为另一个颜色空间。
cv2.cvtColor(src, code[, dst[, dstCn]]) → dst
参数
src - 输入图像:8位无符号,16位无符号(CV_16UC...)或单精度浮点。
dst - 输出与大小和深度相同的图像src。
code - 颜色空间转换代码(参见下面的描述)。
dstCn- 目标图像中的通道数; 如果参数为0,则自动从src 和code导出通道数
程序中的例子
cv2.cvtColor(frame, cv2.COLOR_BGR2HSV)
在转换为RGB颜色空间的情况下,应明确指定通道的顺序(RGB或BGR)
(2)创建一个数组
numpy.array(object,dtype = None,copy = True,order ='K',subok = False,ndmin = 0 )参数:
object : array_like
数组,公开数组接口的任何对象,__array__方法返回数组的对象,或任何(嵌套)序列。dtype : 数据类型,可选
数组所需的数据类型。如果没有给出,那么类型将被确定为保持序列中的对象所需的最小类型。此参数只能用于“upcast”数组。对于向下转换,请使用.astype(t)方法。copy : bool,可选
如果为true(默认值),则复制对象。否则,只有当__array__返回副本,obj是嵌套序列,或者需要副本来满足任何其他要求(dtype,顺序等)时,才会进行复制。order:{'K','A','C','F'},可选
指定阵列的内存布局。如果object不是数组,则新创建的数组将按C顺序排列(行主要),除非指定了'F',在这种情况下,它将采用Fortran顺序(专业列)。如果object是一个数组,则以下成立。order no copy copy=True‘K’ unchanged F & C order preserved, otherwise most similar order‘A’ unchanged F order if input is F and not C, otherwise C order‘C’ C order C order‘F’ F order F ordersubok : bool,可选
如果为True,则子类将被传递,否则返回的数组将被强制为基类数组(默认)。ndmin : int,可选
指定结果数组应具有的最小维数。为满足此要求,将根据需要预先设置形状。returns:out :ndarray
满足指定要求的数组对象。
(3)
inRange(src,lowerb, upperb[, dst]) -> dst
参数:
src:原数组,可以为单通道,多通道
lowerb: 下界
upperb: 上界
(a)单通道,
假设lower=[0],upper=[128]
对每个数在0-128之间为255,否则为0;
(b)多通道,
假设lower=[0,0,0],upper=[128,128,128,128]
对每一行,对任意一个数,如果在范围内,则255,否则0,最后的几个数相与,因此如果都是255,为255,否则为0
OpenCV笔记11:利用HSV颜色空间进行目标检测和目标跟踪相关推荐
- [初窥目标检测]——《目标检测学习笔记(2):浅析Selective Search论文——“Selective Search for object recognition”》
[初窥目标检测]--<目标检测学习笔记(2):浅析Selective Search论文--Selective Search for object recognition> 本文介绍 前文我 ...
- 利用红外-可见光图像数据集OTCBVS打通图像融合、目标检测和目标跟踪
文章目录 前言 一.任务概述 二.常见红外-可见光图像数据集 2.1 OTCBVS 2.2 TNO image fusion dataset 2.3 INO image fusion dataset ...
- DL之MaskR-CNN:基于类MaskR-CNN算法(RetinaNet+mask head)利用数据集(resnet50_coco_v0.2.0.h5)实现目标检测和目标图像分割(语义分割)
DL之MaskR-CNN:基于类MaskR-CNN算法(RetinaNet+mask head)利用数据集(resnet50_coco_v0.2.0.h5)实现目标检测和目标图像分割(语义分割) 目录 ...
- 计算机视觉六大技术:图像分类、目标检测、目标跟踪、语义分割、实例分割、影像重建..
计算机视觉是使用计算机及相关设备对生物视觉的一种模拟.它的主要任务就是通过对采集的图片或视频进行处理以获得相应场景的三维信息,就像人类和许多其他类生物每天所做的那样. 计算机视觉既是工程领域,也是科学 ...
- 计算机视频追踪方向,移动目标检测和视频跟踪系统
摘要:本文详细地探讨了基于视频的移动目标检测和视频跟踪技术,并给出了一个成功的应用实例.文中详细地论述了视频跟踪系统的系统组成,模块结构和视觉计算流程:给出了实现该系统所涉及的关键技术. 关键词:运动 ...
- 安卓目标检测,目标跟踪,人流量计数
先看效果, 推理时间不到30ms. 大多数目标检测,目标追踪网络模型部署在终端,用的Python,CUDA环境,只能参考流程,案例Python环境下实现的人流量计数,代码跑跑,效果如下 根据这个案例, ...
- Opencv的RGB到HSV颜色空间转换
从 RGB 到 HSL 或 HSV 的转换 设 (r, g, b) 分别是一个颜色的红.绿和蓝坐标,它们的值是在 0 到 1 之间的实数.设 max 等价于 r, g 和 b 中的最大者.设 min ...
- python+OpenCv笔记(十三):边缘检测——Sobel检测算子
Sobel检测算子 概述: Sobel边缘检测算法比较简单,实际应用中效率比canny边缘检测效率要高,但是边缘不如Canny检测的准确,但是很多实际应用的场合,sobel边缘却是首选,Sobel算子 ...
- 目标检测 | 盘点目标检测中的特征融合技巧(根据YOLO v4总结)
点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 特征融合分类 在深度学习的很多工作中(例如目标检测.图像分割),融 ...
最新文章
- python进程数上限_python如何控制进程或者线程的个数
- python使用matplotlib可视化不同年份、不同项目的均值(mean)对比条形图(bar plot comparision of mean with different years)
- “期待已久的UFO报告”公布了
- PHP 1:在Windows上安装和配置PHP,Apache和My SQL
- python搜索路径顺序_Python module之搜索路径
- windows服务器部署jar包
- automatic asynchronous creation if no note exists
- c语言保存文件格式如何改回来,急求如何将下列C语言程序数据存储到文件中?...
- 线性逻辑回归logistic regression
- Tips for vcpkg
- 用python爬取杭电oj的数据
- Python安装完成 运行的时候报错 0xc000007b
- 型材行业ERP-MES应用点滴
- 掌控人生的姑娘,从不活在PS里
- Windows 7 旗舰版 64位 (纯净版)
- Java之驼峰命名法
- 设计图标(logo)
- drf路由组件Routers
- Codeforces--896A--The Artful Expedient
- SSM框架实现数据库存储图片及读取图片
热门文章
- 苹果手机测试网络速度的软件,iPhone6怎么看网速?查看苹果6 Plus网速给不给力的方法...
- Caffe 源码 - BatchNorm 层与 Scale 层
- 太平洋电脑网论坛关闭了
- 想不想恶搞你的朋友?试试关不掉的弹窗(vbs)
- v8漏洞任意地址读写(CVE-2021-21220)
- jquery的淡入,淡出事件 fadeIn fadeOut
- PHP用户登录界面验证码显示为“X”(验证码图片无法显示)解决办法
- 路径名是Linux独有的实现,Linux路径名查找过程分析
- 【docker】基于dockerfile编写LNMP
- 光盘、软盘、硬盘、U盘、磁条卡、芯片卡和复合卡之间的区别与联系