计算机系统应用教程网站

网站首页 > 技术文章 正文

常见目标检测模型

btikc 2024-09-09 01:44:27 技术文章 14 ℃ 0 评论

面试的时候,很多次会问到这些模型的东西,因为你做的项目当中会涉及到这些,但是总是一问三不知。故课下补补课。

想要看看大家的博客和好好看看相关论文,了解一下所以然吧。

传统目标检测的方法一般分为三个阶段:首先在给定的图像上选择一些候选的区域,然后对这些区域提取特征,最后使用训练的分类器进行分类。

又重新看了有三老师的《深度学习之图像识别》-第六章:目标检测,关于fast r-cnn,faster r-cnn,yolo方法,ssd的描述。

完成一个目标检测任务,会进行3个步骤,第1步选择检测窗口,第2步提取图像特征,第3步设计分类器。

选择检测窗口:

最直观最简单的方法是利用图像金字塔+各种尺度比例的框+暴力搜索法:从左到右,从上到下滑动窗口,然后利用分类方法对目标框进行识别

特征提取:

Haar特征是经典的V-J框架使用的基本特征,它表达的是局部的明暗对比关系。

LBP是传统人脸检测算法中广泛使用的纹理特征。

HOG特征是在物体检测领域应用非常广泛的特征

分类器:

Adaboost:迭代的分类方法,在opencv开源库中使用的人脸检测框架的分类器正是这个,它的核心思想是在很多分类器中,自适应地挑选其中分类精度更高的弱分类器,

并将其进行组合从而实现一个更强的分类器。

SVM:通过最大化分类间隔得到分类平面的支持向量。

Decision Tree等

#####################

# 学习目标检测方法: #

#####################

在言有三老师的书中说道,深度学习的目标检测分为one-stage和two-stage检测算法两种。对于two-stage检测方法来说,

它生成了可能包含物体的候选区域Region Proposal,然后对这个候选区域做进一步的分类和校准,得到最终的检测结果,代表方法有r-cnn系列方法。

而单阶段检测算法直接给出了最终的检测结果,没有经过生成候选区域的步骤,典型代表为YOLO和SSD。

R-CNN:

使用Selective search将候选区域控制在了2000个左右,然后将对应的框进行缩放操作,送入CNN中进行训练,通过SVM和回归器确定物体的类别并对其进行定位。

由于CNN具有非常强大的非线性表征能力,可以对每一个区域进行很好的特征学习,因而性能大大提升。

特点:

1.利用Selective search方法,先通过实例分割将图像分割为若干小块,然后选择相似度较高的小块,把这些相似的小块合并将为一个大块,最后整个物体生成一个大的矩形框,

通过该方法大大提高了候选区域的筛选速度

2.用在ImageNet数据集上进行学习的参数对神经网络进行预处理,解决了在目标检测训练过程中标注数据不足的问题

3.通过线性回归模型对边框进行校准,减少了图像中的背景空白,得到更精确的定位

缺点:

1.冗余计算

2.候选区域的尺度缩放问题

====>Spatial pyramid pooling 空间金字塔池化

引入SPP层,它实现了将输入的任意尺度的特征图组合成了特定维度的输出

Fast R-CNN:

与R-CNN的区别之处在于RoI Pooling层,它是一个简化的SPP层

R-CNN和Fast R-CNN不能解决Selective search方法低效率的滑动窗口选择问题。

Faster R-CNN:

提出了Region Proposal Networks(RPN)框架,实现了利用深度学习自己学习生成候选区域的策略,充分利用了feature maps的价值,在目标检测中去除了

Selective search方法。

RPN,就是以一张任意大小的图片作为输入,输出一批矩形区域的提名,每一个区域都会对应目标的分数和位置信息。实际上在最终的卷积特征层上,

在每一点利用滑窗生成k个不同的矩形框来提取区域,k一般取值9

k个不同的矩形框称为anchor,具有不同的尺度和比例。用分类器来判断anchor覆盖的图像是前景还是背景,对于每一个anchor,还需要使用一个回归模型

来判断回归框的精细位置。

YOLO方法:

相比于R-CNN的优点,检测物体速度更快,避免产生背景错误。

检测精度低

对于小物体的检测效果不好

yoloV1 不够精确

yoloV2 提高了检测速度,还提高了精度

改进:

1.添加batch normalization

了模型的收敛速度,减少模型出现过拟合的概率

2.使用更高精度输入图

3.引入anchor boxes,在卷积图上进行滑窗采样

4.回归框聚类,提高了k-means聚类方法将回归框进行聚类,提高精度

5.预测值归一化

6.跨层连接

7.多尺度训练

yoloV3:把原来网络中softmax层换成了逻辑回归层,实现把单标签分类改成多标签分类,另一个特点采用多尺度融合(提高了对小物体的检测性能)

ssd:

ssd融合了yolo的无显式候选框提取和faster r-cnn中的anchor机制,并在特征空间中融合了不同卷积层的特征进行预测

最大特点是考虑到不同层featureMap的感知野不同,同时对lower featureMap和upper featureMap进行检测

ssd的几个重要概念:

featuremap cell:featuremap上的最小格子

default box:越大的default box,就能检测越大的目标

相比于R-CNN系统,yolo和ssd系统的方法没有了region proposal的提取,属于单阶段目标检测,速度更快,同时也会损失信息和精度。

目标检测中的关键技术:

1.多尺度特征

2.定位的改进

3.级联网络的设计

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表