重磅干货来袭 | 关系网络用于目标检测(文末源码)

   2023-02-10 学习力917
核心提示:目标检测各位关注的同学,在此向向大家表示歉意,没有及时给大家带来好的分享及推送。马上入秋了,相信很多同学都有很多科研成果,祝大家科研顺利,硕果累累。今天我们继续说说目标检测的那些事情。导 读目前大部分的目标检测算法都是独立地检测图像中的目标

目标检测

重磅干货来袭 | 关系网络用于目标检测(文末源码)

各位关注的同学,在此向向大家表示歉意,没有及时给大家带来好的分享及推送。马上入秋了,相信很多同学都有很多科研成果,祝大家科研顺利,硕果累累。今天我们继续说说目标检测的那些事情。

重磅干货来袭 | 关系网络用于目标检测(文末源码)

重磅干货来袭 | 关系网络用于目标检测(文末源码)

导 读

重磅干货来袭 | 关系网络用于目标检测(文末源码)

目前大部分的目标检测算法都是独立地检测图像中的目标,如果模型能学到目标之间的关系显然对于检测效果提升会有很大的帮助,因此作者希望在检测过程中可以通过利用图像中object之间的相互关系或图像上下文来优化检测效果,这种关系既包括相对位置关系也包括图像特征关系。关于object的相对位置关系的利用是一个非常有意思的点,尤其是能够实现相对位置关系的attention非常不错的点子。

具体的做法借鉴了attention机制(Attention is all you need)的启发,作者提出一个模块:object relation module来描述目标之间的关系,从而以attention的形式附加到原来的特征上,最后进行回归和分类,另外一个亮点是同时将这种attention机制引入NMS操作中,不仅实现了真正意义上的end-to-end训练,而且对于原本的检测网络也有提升。

值得注意的是:object relation module和网络结构的耦合度非常低,同时输出的维度和输入的维度相同,因此可以非常方便地插入到其他网络结构中,而且可以叠加插入。

重磅干货来袭 | 关系网络用于目标检测(文末源码)

亮 点

重磅干货来袭 | 关系网络用于目标检测(文末源码)

作者主要放在两个全连接层后面和NMS模块,如下图中的红色虚线框所示。在下图中作者将目前目标检测算法分为4步:

  1. 特征提取主网络
  2. 到ROI及特征
  3. 基于ROI做边界框回归和目标分类
  4. NMS处理,去除重复框

从作者的分步情况和源码可以清晰地看出,这篇文章主要是基于Faster RCNN系列算法引入object relation module。

重磅干货来袭 | 关系网络用于目标检测(文末源码)

重磅干货来袭 | 关系网络用于目标检测(文末源码)

基本框架

重磅干货来袭 | 关系网络用于目标检测(文末源码)

提出的Relation Module是对[“Attention Is All You Need”]中提出的“Scaled Dot-Product Attention”模块的改造,其主要作用是建立目标检测任务中不同目标之间的关系,以提高目标检测任务的准确率。

本文使用的是Faster RCNN框架,如下图所示,假设Faster RCNN的RPN模块筛选出N个候选区,在这里就默认每个候选区为一个目标,对每个目标提出其几何特征和形状特征。其中几何特征通过候选区的边框的坐标进行计算,而形状特征的来源为:Faster RCNN提取出候选框后,需要对每个候选框进行ROI pool 然后经过两个全连接层生成最终的目标类别预测,而在这里形状特征即为中间全连接层的输出,为1维向量。然后通过目标关系模块建立任意两个目标之间的关系。

重磅干货来袭 | 关系网络用于目标检测(文末源码)

在attention is all you need这篇文章中介绍了一个基本的attention模块:scaled dot-product attention,如下所示:

重磅干货来袭 | 关系网络用于目标检测(文末源码)

假设输入中有N个目标,那么N个目标的两种特征集合如下所示,fA是常规的图像特征,fG是位置特征。

重磅干货来袭 | 关系网络用于目标检测(文末源码)

简单的来说公式2中的WV对应上面公式中的V,公式2中的wmn对应上面公式中的softmax()。

归一化操作:

重磅干货来袭 | 关系网络用于目标检测(文末源码)

上面公式中的两个变量wG和wA分别表示目标的位置特征权重(geometric weight)和图像特征权重(appearance weight),后面通过如下公式分别得到。
重磅干货来袭 | 关系网络用于目标检测(文末源码)
重磅干货来袭 | 关系网络用于目标检测(文末源码)
为了使其适应于平移和尺度变换,使用了一个4维的相对几何特征。
重磅干货来袭 | 关系网络用于目标检测(文末源码)
综上,可以用下面的Algorithm 1来概括前面提到的公式算法,源码中的实现基本上和Algorithm 1相同。
重磅干货来袭 | 关系网络用于目标检测(文末源码)

重磅干货来袭 | 关系网络用于目标检测(文末源码)

左图是整体上的attention模块和图像特征fA的融合;右图是attention模块的详细构建过程。

接下来我们说说怎么应用在目标检测算法中了。

重磅干货来袭 | 关系网络用于目标检测(文末源码)

上图是object relation module插入目标检测算法的示意图,左图是插入两个全连接层的情况,在全连接层之后会基于提取到的特征和roi的坐标构建attention,然后将attention加到特征中传递给下一个全连接层,再重复一次后就开始做框的坐标回归和分类。右图是插入NMS模块的情况,图像特征通过预测框得分的高低顺序和预测框特征的融合得到,然后将该融合特征与预测框坐标作为relation模块的输入得到attention结果,最后将NMS当作是一个二分类过程,并基于relation模块输出特征计算分类概率。

重磅干货来袭 | 关系网络用于目标检测(文末源码)

实 验

重磅干货来袭 | 关系网络用于目标检测(文末源码)

重磅干货来袭 | 关系网络用于目标检测(文末源码)

Table1主要做了3个验证:

  • 验证引入位置特征(geometric feature)的有效性

  • 验证关系特征数量的影响

  • 验证relation module在两个全连接层中的数量的影响

重磅干货来袭 | 关系网络用于目标检测(文末源码)

表2主要是验证RM效果提升是否是因为参数量增加带来的

重磅干货来袭 | 关系网络用于目标检测(文末源码)

重磅干货来袭 | 关系网络用于目标检测(文末源码)

关于在不同算法上引入RM的效果

论文地址:https://arxiv.org/pdf/1711.11575.pdf

源码:https://github.com/msracver/Relation-Networks-for-Object-Detection

通知

计算机视觉战队正在组建深度学习技术群,欢迎大家私信申请加入!

如果想加入我们“计算机视觉战队”,请扫二维码加入学习群。计算机视觉战队主要涉及机器学习、深度学习等领域,由来自于各校的硕博研究生组成的团队,主要致力于人脸检测、人脸识别,多目标检测、目标跟踪、图像分割等研究方向。

重磅干货来袭 | 关系网络用于目标检测(文末源码)

我们开创一段时间的“计算机视觉协会”知识星球,也得到很多同学的认可,我们定时会推送实践型内容与大家分享,在星球里的同学可以随时提问,随时提需求,我们都会及时给予回复及给出对应的答复。

重磅干货来袭 | 关系网络用于目标检测(文末源码)

 
反对 0举报 0
 

免责声明:本文仅代表作者个人观点,与乐学笔记(本网)无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
    本网站有部分内容均转载自其它媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责,若因作品内容、知识产权、版权和其他问题,请及时提供相关证明等材料并与我们留言联系,本网站将在规定时间内给予删除等相关处理.

  • 目标检测(R-CNN)和实例分割 mask R-CNN
    目标检测(R-CNN)和实例分割 mask R-CNN
    目标检测•   RCNN        RCNN(Regions with CNN features)是将CNN方法应用到目标检测问题上的一个里程碑,由年轻有为的RBG大神提出,借助CNN良好的特征提取和分类性能,通过RegionProposal方法实现目标检测问题的转化。        算法可以分为
    03-08
  • 目标检测综述 目标检测综述2022
    目标检测综述 目标检测综述2022
    目标检测的综述~总体介绍  目标检测是计算机视觉里面十分重要的任务,其主要解决检测在数字图像中某一类别可见的实例。最终的目的是为了开发一种计算模型和技术,来提供计算机视觉应用所需要的一个基础的信息即:目标在哪?  作为计算机视觉中众多基础问
    03-08
  • EfficientDet框架详解 | 目前最高最快最小模型,可扩缩且高效的目标检测(附源码下载)
    EfficientDet框架详解 | 目前最高最快最小模型
    EfficientDet框架详解 | 目前最高最快最小模型,可扩缩且高效的目标检测(附源码下载)昨天收录于话题3 12 51 4 29欢迎关注“计算机视觉研究院”计算机视觉研究院专栏作者:Edison_G疫情以来,已经被研究出很多高效高精度的框架,在深度学习领域,模型效
    03-08
  • YOLOV3目标检测模型训练实例 yolo5目标检测
    YOLOV3目标检测模型训练实例 yolo5目标检测
    从零开始学习使用keras-yolov3进行图片的目标检测,比较详细地记录了准备以及训练过程,提供一个信号灯的目标检测模型训练实例,并提供相关代码与训练集。DEMO测试YOLO提供了模型以及源码,首先使用YOLO训练好的权重文件进行快速测试,首先下载权重文件https:
    03-08
  • 10行Python代码实现目标检测
    10行Python代码实现目标检测
    要知道图像中的目标是什么?或者你想数一幅图里有多少个苹果?在本文中,我将向你展示如何使用Python在不到10行代码中创建自己的目标检测程序。如果尚未安装python库,你需要安装以下python库:opencv-pythoncvlibmatplotlibtensorflow下面的代码导入所需的pytho
    03-08
  • 目标检测中的AP计算 目标检测precision计算
    目标检测中的AP计算 目标检测precision计算
    转载自:https://blog.csdn.net/lppfwl/article/details/108018950目标检测中的AP计算最近在学习目标检测,对模型评价指标AP的计算过程有点疑问,经过查找资料、问师兄,最终算是有了一个相对明确的了解,特此记录一下,方便以后查看,不足之处还请大家批评指
    03-08
  • 目标检测数据集分析 目标检测数据预处理
    目标检测数据集分析 目标检测数据预处理
    目录目标检测数据集分析图片数量、标注框数量、类别信息所有图片宽度和高度的散点图所有标注框宽度和高度的散点图标注框宽度和高度之比每一类的标注框数量每一类图片数量每一张图片上的标注框数量不同尺寸的图片数量每一类标注框的宽度高度散点图使用方法Inst
    03-08
  • 目标检测框回归问题
    本文转自知乎,作者mileistone,已获作者授权转载,请勿二次转载。https://zhuanlan.zhihu.com/p/330613654目标检测模型训练的时候有两个任务,框分类(框里是什么)和框回归(框在哪),本文主要讲第二点。框回归可以分为两大类,基于x,y,w,h的回归(比如
    03-08
  • 目标检测算法-Mask-RCNN 目标检测算法的主要目的是找到图像中用户感兴趣的
    目标检测算法-Mask-RCNN 目标检测算法的主要目
    Mask_RCNN是何凯明基于以往的faster-rcnn构架提出的新的卷积网络,该方法再有效的目标的同时完成了高质量的语义分割。主要思路就是把原有的faster-rcnn进行扩展,添加一个分支使用现有的检测对目标进行并行预测,可以很方便的应用其他的应用领域,向目标检测
    03-08
  • 手机端 19FPS 的实时目标检测算法:YOLObile
    手机端 19FPS 的实时目标检测算法:YOLObile
    本文转载自机器之心。本文提出了一套模型压缩和编译结合的目标检测加速框架,根据编译器的硬件特性而设计的剪枝策略能够在维持高 mAP 的同时大大提高运行速度,压缩了 14 倍的 YOLOv4 能够在手机上达到 19FPS 的运行速度并且依旧维持 49mAP(COCO dataset)的
    03-08
点击排行