用python实现目标检测与手势识别的原理简单总结

一丶目标检测

目标检测属于分类和回归的综合问题。

目标检测是借助于计算机和软件系统在图像/场景中,定位目标识别出每个目标的类别的技术。

基于深度学习的目标检测算法主要分为两类:Two stage和One stage。

本次课程实验代码采用了yolo算法,所以应为One Stage

任务流程:特征提取–> 分类/定位回归。

不用RP,直接在网络中提取特征来预测物体分类和位置。

目标检测分为两大系列——RCNN系列和YOLO系列,RCNN系列是基于区域检测的代表性算法,YOLO是基于区域提取的代表性算法,本次实验使用的应为yolo算法。

物体候选框:

物体候选框获取当前主要使用图像分割与区域生长技术。

选择性搜索:图像中物体可能存在的区域应该是有某些相似性或者连续性区域的。因此,选择搜索基于上面这一想法采用子区域合并的方法进行提取外切矩形。首先,对输入图像进行分割算法产生许多小的子区域。其次,根据这些子区域之间相似性(相似性标准主要有颜色、纹理、大小等等)进行区域合并,不断的进行区域迭代合并。每次迭代过程中对这些合并的子区域做外切矩形,这些子区域外切矩形就是通常所说的候选框。

数据表示:

通过预测结果、实际结果,构建损失函数。损失函数包含了分类、回归两部分组成。

效果评估:

使用交并比来判断模型的好坏。所谓交并比,是指预测边框、实际边框交集和并集的比率,一般约定0.5为一个可以接收的值。

非极大值抑制:

预测结果中,可能多个预测结果间存在重叠部分,需要保留交并比最大的、去掉非最大的预测结果,这就是非极大值抑制。经过非极大值抑制后,仅保留概率最大的预测结果。

二丶手势识别

肤色检测:

本次实验使用的是椭圆肤色检测模型

把RGB转为YCrCb空间的话,可以忽略Y(亮度)的影响,因为该空间受亮度影响很小,肤色会产生很好的类聚。这样就把三维的空间将为二维的CrCb,肤色点会形成一定得形状。

轮廓处理:

轮廓处理的话主要用到两个函数,cv2.findContours和cv2.drawContours,本次代码用sorted函数找到最大的轮廓,尽量确保实验中摄像头内只显示手部轮廓

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值