计算机视觉之目标检测
1.介绍
目标检测:给定一张图片,用矩形框框出所有感兴趣物体,同时预测物体类别。
目标检测应用:人脸识别,智慧城市,自动驾驶,下游视觉任务。
目标检测和图像分类区别
不同:图像分类通常只有一个物体,通常位于图像中央,通常占据主要面积。而目标检测物体数量不固定,物体位置不固定,物体大小不固定。
相同:二者都需要算法"理解"图像的内容—深度神经网络实现
检测方法:滑窗——设定一个固定大小的窗口,遍历图像所有位置,所到之处用分类模型(假设已经训练好)识别窗口中的内容,为了检测不同大小、不同形状的物体,可以使用不同大小、长宽比的窗口扫描图片。
改进思路:
1.使用启发式算法替换暴力遍历例如 R-CNN,Fast R-CNN 中使用 Selective Search 产生提议框,依赖外部算法,系统实现复杂,难以联合优化性能。
区域提议:基于图像颜色或底层特征,找出可能含有物体的区域,再送给神经网络识别。相比于普通滑窗,减少框的个数且保证召回率
2.改进思路 2:减少冗余计算,使用卷积网络实现密集预测,目前普遍采用的方式。
消除滑窗中的重复计算:用卷积一次性计算所有特征,再取出对应位置的特征完成分类。
目标检测的基本范式两阶段方法
• (基于区域的方法)以某种方式产生窗,再基于窗口内的特征进行预测
• 单阶段方法:在特征图上基于单点特征实现密集预测
2.基础知识
1、框泛指图像上的矩形框,边界横平竖直
描述一个框需要 4 个像素值:
• 方式1:左上右下边界坐标
• 方式2:中心坐标和框的长宽
2、边界框通常指紧密包围感兴趣物体的框
检测任务要求为图中出现的每个物体预测一个边界框
以下这些概念都指某种框,用在不同的上下文中:
- 区域(Region):框的同义词
- 区域提议(Region Proposal,Proposal)
指算法预测的可能包含物体的框,某种识别能力不强的算法的初步预测结果 - 感兴趣区域(Region of Interest,RoI)
当我们谈论需要进一步检测这个框中是否有物体时,通常称框为感兴趣区域 - 锚框(Anchor Box,Anchor)
图中预设的一系列基准框,类似滑窗,一些检测算法会基于锚框预测边界框。
3、交并比(IoU)定义为两矩形框交集面积与并集面积之比,是矩形框重合程度的衡量指标。
4、置信度(Confidence Score):模型认可自身预测结果的程度,通常需要为每个框预测一个置信度。大部分算法取分类模型预测物体属于特定类别的概率,部分算法让模型独立于分类单独预测一个置信度。
应用:非极大值抑制(NMS)算法——滑窗类算法通常会在物体周围给出多个相近的检测框,这些框实际指向同一物体,只需要保留其中置信度最高的。
5、边界框回归:滑窗(或其他方式产生的基准框)与物体精准边界通常有偏差,所以需要让模型在预测物体类别同时预测边界框相对于滑窗的偏移量,但是这些偏移量在数值上通常较大,不利于神经网络训练,通常需要对偏移量进行编码,作为回归模型的预测目标.