目标检测入门常见问题(深度学习 / 图像分类)

本文详细介绍了机器视觉中的目标检测任务,包括分类、定位、检测和分割四大类。重点讲解了R-CNN检测器的工作流程,涉及特征提取、分类、非极大抑制和边界框修正。此外,还阐述了关键评估指标IoU、准确率(P)、平均准确率(AP)和平均准确率均值(mAP),以及它们在衡量模型性能中的作用。
摘要由CSDN通过智能技术生成

目录

机器视觉中关于目标检测有4大类任务

回归问题和分类问题

IoU(交并比)

准确率(P)

平均准确率(AP)

平均准确率均值(mAP)

双阶段检测器

R-CNN

步骤

1. 规整:

2. 分类:

3. 非极大抑制(NMS):去除冗余检测框

4. 修正:

目标检测常用指标


参考文献:

目标检测 - 搜索结果 - 知乎

目标检测算法研究_zzb103749的博客-CSDN博客_检测算法研究

机器视觉中关于目标检测有4大类任务

  1. 分类(Classification):给定一张图片或一段视频判断里面包含什么类别的目标。
  2. 定位(Location):定位出这个目标的的位置。
  3. 检测(Detection):即定位出这个目标的位置并且知道目标物是什么。
  4. 分割(Segmentation):分为实例的分割(Instance-level)和场景分割(Scene-level),解决“每一个像素属于哪个目标物或场景”的问题。

回归问题和分类问题

要解决的目标检测任务,是一个分类问题和回归问题的叠加,

分类是区分目标属于哪个类别,回归用来定位目标所在的位置。

IoU(交并比)

判断预测框的正确程度

利用IoU,我们就能判断检测结果是否正确,常用的阈值是0.5。

如果IoU > 0.5,就认为是一个正确的检测,否则就认为是一个错误的检测。

准确率(P)

我们为模型生成的每一个检测边框计算其IoU值,利用该IoU数值和阈值,我们为图片中的每一个类计算其正确检测的数量A。对于每张图片,我们都有标准数据,可以告诉我们在图片中某个特定类别的真实数量B,那么A/B就是该类别的预测精确率.

平均准确率(AP)

让我们对验证集中的每张图片都计算它的精确率。假设我们的验证集中有 100 张图片,并且我们知道每张图片都包含了所有的类别(根据参考标准告诉我们的信息)。这样对于每个类别,我们会有 100 个精度率的值(每张图片一个值)。让我们对这些 100 个值进行平均。这个平均值叫做该类的平均精度(Average Precision)。

平均准确率均值(mAP)

假设我们有20个类别,对每一个类别,我们都进行相同的计算流程:IoU -> 精确率(Precision) -> 平均精度(Average Precision)。这样就有20个类别的平均进度,我们对所有类别的平均精度值计算其均值(average/mean)。这个新的值,就是我们的平均精度均值 mAP(Mean Average Precision)

双阶段检测器

图像的定位和识别在不同阶段进行

R-CNN

步骤

  1. 边框粗提取:使用SS(selective search)算法在一张图片上生成大约2000个候选区域
  2. 规整:对于每个候选区域,使用深度网络提取特征(4096维特征向量)
  3. 分类:特征送入每一类的SVM分类器中,判别是否属于该类(图片中有几个类就有几个分类器),使用非极大值抑制算法去除冗余框
  4. 修正定位:使用回归器精细修整候选框位置(使用bounding box regression来确定最佳的边界框)

1. 规整:

我们使用的是AlexnetCNN网络进行特征提取。在把2000个目标框输入CNN之前,需要把他们reset称为227*227的大小,可获得2000*4096维矩阵。

Alexnet特征提取部分包含了5个卷积层、2个全连接层,在Alexnet中p5层神经元个数为9216、 f6、f7的神经元个数都是4096,通过这个网络训练完毕后,最后提取特征每个输入候选框图片都能得到一个4096维的特征向量。

2. 分类:

R-CNN采用的是SVM二分类器,每个分类器负责分类一个类别,需要分类多少个类别就有多少个分类器。每个候选区域分别送入每个分类器及计算出来不同分类器的概率,选取最大的一个作为最终的类别。

3. 非极大抑制(NMS):去除冗余检测框

目的:筛选候选区域框,目的是一个物体只保留一个最优的框,来抑制那些冗余的候选框。采用的候选框和真实框的占比,重叠越多说明该候选框越好。但是这个方法也是存在问题,当候选框大于真实框很多,并且能够完整框住物体,但是这类框严格意义上是不精确的,需要及进一步优化。

候选区域有 2000 个,所以很多会进行重叠。针对每个类,通过计算 IoU 指标,采取非极大性抑制,以最高分的区域为基础,剔除掉那些重叠位置的区域。

4. 修正:

  •  输入是CNN输出的某一物体的特恒向量+该物体的标准真实框
  • 输出是红色框要达到绿色框所需的位移值

个人理解:rcnn从2000个候选框中提取每个候选框的特征向量,然后 使用SVM分类器对候选框中的物体进行分类,对于符合某一类的多个候选框,再使用非极大值抑制来对冗余的框进行剔除,从而找出能框出该物体的最合适的边框;最后使用回归分析来对rcnn选出来的框和真实的框进行修正,从而进一步精确框的位置和大小。


目标检测常用指标

  • FPS:每秒处理的图像帧数
  • IoU:重叠度,真实边框和预测边框的交集面积与并集面积的比值
  • P
  • R
  • AP:把每一个R的P都求出来,取最大的P作为该R的P,然后
  • mAP:所有类别的AP的均值

目标检测的指标AP与mAP - 知乎

关于AP和mAP(详见知乎)

训练样本分为正例样本和反例样本,其中正例样本是指待检测目标样本,反例样本指不是目标需要检测的样本。

准确率:所有预测为正例的值(TP+FP)为分母

召回率:所有预测出来的值(TP+FN)为分母

对应关系如图所示,Precious表示预测为正确结果中,由多少是对的,即反映预测准确的参数;但是只是预测准确率很高,但是很多没有预测出来那也是不行的(有100个样本,预测了1个正例,99个反例,而且这个1个正例预测是正确的,那么准确率是100%,单纯的这样来衡量是没有道理的,因为还有99个直接给否定了),所以Recall这个指标就是为了衡量这个问题,一共的正例的样本,成功预测出来多少个,当这两个指标都很高的时候,那么说明这个结果才是好的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值