OpenMMLab实战营笔记打卡-4

文章介绍了目标检测的发展,从传统的滑窗方法到卷积神经网络的运用,包括边界框回归和锚框的概念。重点讲述了YOLO(YouOnlyLookOnce)算法,它作为一个端到端的模型,提高了检测速度并减少了背景误判。YOLO通过预测网格细胞中的边界框和类别概率来实现目标检测,其训练过程是一个监督学习过程,最终使用非极大值抑制来获取最终预测结果。

目标检测

传统滑窗Sliding Window

  本质还是图像分类,将一张图片分窗口,在每一个窗口上进行图像分类处理,依次遍历完所有的图片。

  对其的改进是在检测不同尺寸的物体任务时,将窗口大小调整为适配物体大小不一的形式。

  但其问题是效率低下,对于一张图片,由于窗口要遍历所有视野,一张图片就需要做很多此图像窗口分类,且若使用不同大小的窗口,分类的次数会成倍增加

  改进

1. 用卷积一次性计算所有特征,再去除对应位置特征进行裁剪送入全连接层分类。避免了传统算法在滑窗重合部分分别进行两次相同卷积提取特征的重复操作。 

  预测边界问题--回归问题:边界框回归:

  对分类损失与偏移回归损失共同梯度下降进行训练。 

  锚框Anchor

 在原图上的一个位置上,生成不同尺寸的提议框,且可在同一位置产生多个预测。解决重叠与尺寸不同的问题。

无锚框

 每层特征图只负责预测特定大小的物体。对于重合方面,由于重合的物体尺度通常不同,统一位置重叠的框会被分配到不同的特征层,从而避免同一个位置重复预测的情况。

Yolo算法原理与介绍

  端到端YOLO单阶段模型提出了一种全新的目标检测方式,相比于重复使用分类器的双阶段算法(如使用滑动窗口或先提取候选框,再对候选框进行识别检测等双阶段检测方法),YOLO将目标检测问定义成回归问题进行解决,在一个神经网络中即可完成对完整输入全图的目标分类与定位如下图所示。

 

  大大提高了检测的速度,并且由于是直接检测整个输入图片,所以将背景误判为目标的现象较双阶段模型要小一半以上。此外,YOLO模型出色的迁移泛化能力,也是被广泛应用的工业界各个领域的重要原因之一。但v1在定位能力与小目标识别能力较差,将图片划分为7*7个网格grid cell(后简称gc)后,仅能够识别49个物体,对于羊群、人群等小目标识别能力较差。

  在模型训练阶段,其本质是一个监督学习过程,即将模型预测结果与人工标注结果进行比对,使损失函数降为最小的过程。整体流程如下图所示:

 

  人工使用标注工具将目标标出ground truth框(后简称gt)后,标注gt中心点所在的gc即负责预测此类目标。每一个gc能够预测出2个预测框bounding box(后简称bbox),选择与gt交并比最大的bbox负责拟合该类物体,另一个bbox则舍去。

  每个bbox包含一个置信度,其是由该bbox对应的gc是否包含目标物体的概率(包含为1,反之为0)与gt和bbox的交并比IoU乘积得出。每个bbox共对应五个参数x,y,w,h,c。(x,y)是bbox中心点相对于gc左上角的坐标,w,h分别为该bbox相对于整个图片的宽度和高度,c表示该bbox与gt的IoU。对于每个gc还预测出所有类别的条件概率,该值是在假设该gc包含某物体的条件下各类别的概率。也就是说对于每个gc,输出两个bbox与c个条件概率,且每个bbox是共享这c个条件概率的(比如在voc数据集中共有20个目标种类,则对应的c是一个20维的向量)。在预测阶段,对于每个bbox将该条件概率与其置信度相乘,则得到该bbox是该目标的概率与IoU值相乘的积,既表明了分类的精度,也能够体现定位的精度。

  当模型已经训练好进入预测阶段时,输入一张图片,首先将图片进行放缩成对应尺寸,划分成S*S个gc,每个gc预测出两个bbox与对应的置信度向量,并且每个gc还能够产生条件类别概率(图中颜色为该gc中条件类别最高的一类物体),将二者整合到一起,并采用NMS(非极大值抑制)将重复识别为同一类的框过取精度最高的,最终得到最终预测结果。由于每个gc仅能预测一个物体,一张图片最多预测S*S个物体,所以bbox一共分为三类,分别为:1.负责预测物体的bbox。2.在负责预测物体的gc中,但不负责预测物体的bbox(被另外一个IoU更大的bbox所替代)。3.在不负责预测物体的gc中的bbox(置信度为0)。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值