当前位置:   article > 正文

OpenMMlab AI实战营第四期培训

OpenMMlab AI实战营第四期培训

OpenMMlab AI实战营第四期培训

OpenMMlab实战营

第四次课2023.2.6

此次实战营的积分规则介绍:

在这里插入图片描述

学习参考

笔记建议结合ppt来学习使用,ppt中对应知识可以参照笔记的标题进行查看。

ppt:lesson4_ppt

b站回放:OpenMMLab AI 实战营

往期笔记:笔记回顾

相关学习推荐:

一、什么是目标检测

与分类问题不同,目标检测的目标是在检测图像中物体类别的同时用矩形框框出所有感兴趣的物体。

例如:

  • 相机中的人脸拍照识别,就需要先把人脸识别出来
  • 智慧城市,垃圾检测、违章停车检测、危险行为检测等等
  • 自动驾驶,环境感知、路线规划与控制

1.目标检测下游视觉任务

目标检测的一些具体的下游任务,例如:

  • 两阶段光学字符识别算法
    • 首先检测出文字出现的区域
    • 识别区域中的文子
  • 两阶段人体姿态估计算法
    • 人体检测(把图像中的人框出来)
    • 单人姿态估计(具体分析每个人的姿态是什么样的)

2.图像分类 v.s. 目标检测

我们从下表所示的不同点相同点的角度来比较图像分类与目标检测:

图像分类目标检测
通常只有一个物体物体数量不固定
不同点通常位于图像中央物体位置不固定
通产占据主要面积物体大小不固定
相同点需要算法“理解”图像的内容(即,深度神经网络实现)需要算法“理解”图像的内容(即,深度神经网络实现)

二、目标检测实现

1.滑窗 Sliding Window

  • 首先,设定一个固定大小的窗口
  • 其次,遍历图像所有位置,所到之处使用已经训练好的分类模型,识别窗口的内容
  • 为了检测不同大小、不同形状的物体,可以使用不同大小、长宽比的窗口来扫描图片

也就是下图所示的,我们通过窗口获取图像中一个区域的内容,然后将该区域的图像传入一个例如卷积神经网络去预测里面是什么东西,下图所示的窗口中没有任何物体,所有返回类别**“背景”**。随着窗口的滑动,我们的预测类别会有所不同。

在这里插入图片描述

2.滑窗的效率问题

计算成本过于大,如下图所示:

在这里插入图片描述

这1200个窗口都需要分别放入神经网络中去进行前向预测,所以计算量非常大。

3.改进思路

  • 使用启发式算法替换暴力遍历
    • 例如 R-CNN,Fast R-CNN 中使用 Selective Search 产生提议框
    • 依赖外部算法,系统实现复杂,难以联合优化性能
  • 减少冗余计算,使用卷积网络实现密集预测
    • 目前普遍采用的方式

基于第二种改进的思路我们可以做这样的分析,如果两个窗口之间有重合的部分,能否设计一些算法使其避免计算重复部分。

(1)消除滑窗中的重复计算

思路:用卷积一次性计算所有特征,再取出对应位置的特征完成分类

解释:

  • 首先使用两层的卷积层提取出整张图片的特征图
  • 然后窗口扫到那一部分,就从第二层的卷积层中取出相应区域的特征图后续实现分类任务
  • 效果就是可以避免一些重叠区域重复计算特征(提前一次性全算好,随用随取)
推荐阅读