当前位置: 首页 > news >正文

跟李沐学AI:目标检测的常用算法

区域神经网络R-CNN

使用启发式搜索算法来选择锚框 -> 使用预训练模型来对每个锚框抽取特征 -> 训练一个SVM对类别进行分类 -> 训练一个线性回归模型来预测边缘框偏移

 锚框大小不一,如何将不同的锚框统一为一个batch? -> 兴趣区域池化层

兴趣区域(RoI)池化层

给定一个锚框,将锚框均匀分割为n x m块,输出每块中的最大值。因此不管锚框多大,总是输出nm个值。

让每个锚框都可以变为一个形状相同的mini-batch。

Fast RCNN

与原本的RCNN相比,Fast R-CNN用来提取特征的卷积神经网络的输入是整个图像,而不是各个提议区域。Fast RCNN首先使用CNN对整个图片抽取特征得到feature map。

再将使用启发式搜索算法在原图片画出的锚框映射到feature map中。

随后使用Rol池化层对每个锚框生成固定长度的特征。

最后使用全连接层进行分类预测和偏移预测。

Faster R-CNN

使用一个区域提议网络来替代启发式搜索以得到更好的锚框。区域提议网络先粗糙地画出锚框,再将结果输入主网络。

二元类别预测用于预测当前锚框是否是一个高质量地锚框。边界框预测用于计算锚框和边缘框地偏差。

Mask R-CNN

如果有像素级别的标号,使用FCN来利用这些信息。

R-CNN总结

R-CNN是最早也是最有名一类地基于锚框和CNN地目标检测算法。

Fast/Faster R-CNN持续提升性能。

Fasster R-CNN和Mask R-CNN是在追求高精度场景下地常用算法。 

单发多框检测SSD(Single Shot Detection)

对每个像素,生成以它为中心的多个锚框。具体方法与上一节相同。

SSD模型

基本网络用于从输入图像中提取特征,因此它可以使用深度卷积神经网络。 单发多框检测论文中选用了在分类层之前截断的VGG现在也常用ResNet替代。我们可以设计基础网络,使它输出的高和宽较大。 这样一来,基于该特征图生成的锚框数量较多,可以用来检测尺寸较小的目标。

接下来的每个多尺度特征块将上一层提供的特征图的高和宽缩小(如减半),并使特征图中每个单元在输入图像上的感受野变得更广阔。

由于接近顶部的多尺度特征图较小,但具有较大的感受野,它们适合检测较少但较大的物体。底部则可以拟合小物体。

简而言之,通过多尺度特征块,单发多框检测生成不同大小的锚框,并通过预测边界框的类别和偏移量来检测大小不同的目标,因此这是一个多尺度目标检测模型。

SSD总结

SSD通过单神经网络检测模型

以每个像素为中心产生多个锚框

在多个段的输出上进行多尺度的检测

YOLO

SSD中的锚框大量重叠,因此浪费了很多计算。YOLO将图片平均分成SxS个锚框,如果一个标注的边界框的中心点落在某个锚框内,则该锚框负责预测这个边界框。每个锚框预测B个边缘框。边界框的预测包括中心点相对于网格左上角的偏移量(x, y),以及边界框的宽(w)和高(h)相对于整个图像的比例。边界框的预测包括中心点相对于网格左上角的偏移量(x, y),以及边界框的宽(w)和高(h)相对于整个图像的比例。每个网格还预测C个类别概率,C是所有可能类别的数量。


http://www.mrgr.cn/news/2933.html

相关文章:

  • 怎么在网络攻击中屹立不倒
  • 自闭症学校一年学费多少?
  • 网络协议(概念版)
  • 独家揭秘丨GreatSQL 的MDL锁策略升级对执行的影响
  • 深度学习(9)---ResNet详解
  • ant design 的 tree 如何作为角色中的权限选择之一
  • 【大模型】triton inference server
  • 仿Muduo库实现高并发服务器——任务定时器模块
  • 如何在Sui上进行质押
  • PXE-Kickstart高效批量装机
  • axios的使用
  • 玩机进阶教程-----回读 备份 导出分区来制作线刷包 回读分区的写入与否 修改xml脚本
  • Ubuntu无法解析域名DNS指向127.0.0.53问题处理
  • ctfshow之web29~web51
  • 【数据结构】七、查找:3.散列查找(哈希表)
  • 部署YUM仓库及NFS共享服务
  • 华为鲲鹏技术认证是什么?为什么要通过认证?
  • 45.5【C语言】typedef
  • 代码随想录:动态规划6-10
  • 虚幻5|AI视力系统,听力系统,预测系统(1)视力系统