目标检测算法-Mask-RCNN 目标检测算法的主要目的是找到图像中用户感兴趣的

   2023-03-08 学习力1039
核心提示:Mask_RCNN是何凯明基于以往的faster-rcnn构架提出的新的卷积网络,该方法再有效的目标的同时完成了高质量的语义分割。主要思路就是把原有的faster-rcnn进行扩展,添加一个分支使用现有的检测对目标进行并行预测,可以很方便的应用其他的应用领域,向目标检测

Mask_RCNN是何凯明基于以往的faster-rcnn构架提出的新的卷积网络,该方法再有效的目标的同时完成了高质量的语义分割。主要思路就是把原有的faster-rcnn进行扩展,添加一个分支使用现有的检测对目标进行并行预测,可以很方便的应用其他的应用领域,向目标检测,分割和人物关键点检测等。其网络结构如下。

目标检测算法-Mask-RCNN

 

目标检测算法-Mask-RCNN

Mask-RCNN是在faster-RCNN的基础上添加了一个预测分割mask分支,将ROIPooling替换成了ROIAlign层添加了并列的FCN层(mask层)。

为什么替换ROIPooling层?

因为ROIPooling操作中两次量化回造成区域不匹配。比如,在在faster-rcnn框架中,输入一张800×800的图片,图片上有一个665×665的包围框,图片经过主干网络提取特征后,特征图缩放步长为32,因此,图像和包围框的边长都是输入时的1/32,800正好被32整除,但是665除以32以后为20.78,于是ROIPooling直接将它量化成20,接下来需要把框内的特征池化为7×7的大小,因此将上述包围框平均分成7×7个矩形,显然每个矩形的边长为2.86,于是ROIPooling再次将它量化到2,候选区域已经出现了明显的偏差,更终要的是,该特征图上0.1像素的偏差缩放到原图就是3.2个像素,那么0.8的偏差,在原图上就是接近30个像素的差别。

在此之前先引入线性插值。

线性插值

已知数据 目标检测算法-Mask-RCNN 与 目标检测算法-Mask-RCNN ,要计算 目标检测算法-Mask-RCNN 区间内某一位置 目标检测算法-Mask-RCNN 在直线上的 目标检测算法-Mask-RCNN 值,如下图所示。

目标检测算法-Mask-RCNN

计算方法很简单,通过斜率相等就可以构建y和x之间的关系,如下:
目标检测算法-Mask-RCNN
仔细看就是用 目标检测算法-Mask-RCNN 和 目标检测算法-Mask-RCNN , 目标检测算法-Mask-RCNN 的距离作为一个权重(除以 目标检测算法-Mask-RCNN 是归一化的作用),用于 目标检测算法-Mask-RCNN 和 目标检测算法-Mask-RCNN 的加权。这个思想很重要,因为知道了这个思想,理解双线性插值就非常简单了。

双线性插值。

双线性插值本质上就是在两个方向上做线性插值。

目标检测算法-Mask-RCNN

 

 

如图,假设我们想得到P点的插值,我们可以先在x方向上,对 目标检测算法-Mask-RCNN 和 目标检测算法-Mask-RCNN 之间做线性插值得到 目标检测算法-Mask-RCNN , 目标检测算法-Mask-RCNN 同理可得。然后在y方向上对 目标检测算法-Mask-RCNN 和 目标检测算法-Mask-RCNN 进行线性插值就可以得到最终的P。其实知道这个就已经理解了双线性插值的意思了,如果用公式表达则如下(注意 目标检测算法-Mask-RCNN 前面的系数看成权重就很好理解了)。

首先在 x 方向进行线性插值,得到

目标检测算法-Mask-RCNN

 

 目标检测算法-Mask-RCNN

然后在 y 方向进行线性插值,得到

目标检测算法-Mask-RCNN


这样就得到所要的结果 目标检测算法-Mask-RCNN

目标检测算法-Mask-RCNN

 

所以ROIAlign中去掉了ROIPooling过程中所有的量化过程,包括从原图proposal到最后一层feature map映射,以及把feature map划分成m×m的bin过程的量化。

目标检测算法-Mask-RCNN

 

 为了得到固定大小的feature map,ROIAlign技术并没有使用量化操作,既不引入量化误差。这里使用双线性插值来解决,利用双线性插值来估计这些蓝色点的像素值,然后在每一个网格内进行max pooling或average pooling操作,得到2×2的输出结果。整个过程中没有用到量化操作,没有引入误差,即原图中的像素和feature map中的像素是完全对齐的,没有偏差。

什么是mask分支

目标检测算法-Mask-RCNN

mask分支本质上是一个FCN网络,FCN采用反卷积层对最后一个卷积层得到的特征图进行上采样,对于每一个ROI,mask分支定义一个k×m×m的矩阵,表示k个不同的分类对于每一个m×m的区域,对于每一个类都有一个,对于每一个像素都使用sigmoid函数进行求相对熵,得到平局相对熵误差Lmask,对于每一个ROI如果检测得到的ROI属于哪一个类,就只使用哪一个分支的相对熵作为误差值进行计算,这样的定义使得我们的网络不需要去区分每一个像素属于哪一个类,只需要去区分在这个类当中的不同分别小类。这里要注意,在完成目标检测后用回归后哦的box取feature map上截取后,在经过ROIAlign后在进行mask。

 
反对 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
  • 手机端 19FPS 的实时目标检测算法:YOLObile
    手机端 19FPS 的实时目标检测算法:YOLObile
    本文转载自机器之心。本文提出了一套模型压缩和编译结合的目标检测加速框架,根据编译器的硬件特性而设计的剪枝策略能够在维持高 mAP 的同时大大提高运行速度,压缩了 14 倍的 YOLOv4 能够在手机上达到 19FPS 的运行速度并且依旧维持 49mAP(COCO dataset)的
    03-08
  • 复旦大学Ph.D沈志强:用于目标检测的DSOD模型
    复旦大学Ph.D沈志强:用于目标检测的DSOD模型
    复旦大学Ph.D沈志强:用于目标检测的DSOD模型 玄学酱 2017-10-24 09:59:00 浏览1318深度学习 性能 HTTPS github 目标检测作为一个基础的计算机视觉任务,在自动驾驶、视频监控等领域拥有非常广泛的应用前景。目前主流的目标检测方法都严重依赖于在大规
    02-10
点击排行