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

深度学习之Mask-R-CNN

1.1 Mask-RCNN 的网络结构示意图

在这里插入图片描述

  
其中黑色部分为原来的Faster-RCNN,红色部分为在Faster网络上的修改:
  
1)将ROI Pooling层替换成了ROIAlign;
  
2)添加并列的FCN层(Mask层);
  
先来概述一下Mask-RCNN的几个特点(来自于PaperMask R-CNN的Abstract):
  
1)在边框识别的基础上添加分支网络,用于语义Mask识别;
  
2)训练简单,相对于Faster仅增加一个小的Overhead,可以跑到5FPS;
  
3)可以方便的扩展到其他任务,比如人的姿态估计等;
  
4)不借助Trick,在每个任务上,效果优于目前所有的 single-model entries;包括 COCO 2016 的Winners。

1.2 RCNN行人检测框架

  
来看下后面两种RCNN方法与Mask结合的示意图:

在这里插入图片描述

  
图中灰色部分是原来的RCNN结合ResNet or FPN的网络,下面黑色部分为新添加的并联Mask层,这个图本身与上面的图也没有什么区别,旨在说明作者所提出的Mask RCNN方法的泛化适应能力:可以和多种RCNN框架结合,表现都不错。

1.3 Mask-RCNN 技术要点

  
1.技术要点1 - 强化的基础网络
  
通过ResNeXt-101+FPN用作特征提取网络,达到state-of-the-art的效果。
  
2.技术要点2 - ROIAlign
  
采用ROIAlign替代RoiPooling(改进池化操作)。引入了一个插值过程,先通过双线性插值到1414,再pooling到77,很大程度上解决了仅通过Pooling直接采样带来的Misalignment对齐问题。
  
PS: 虽然 Misalignment 在分类问题上影响并不大,但在 Pixel 级别的 Mask 上会存在较大误差。
  
后面我们把结果对比贴出来(Table2 c & d),能够看到 ROIAlign 带来较大的改进,可以看到,Stride 越大改进越明显。
  
3.技术要点3 - Loss Function
  
每个ROIAlign对应K * m^2维度的输出。K对应类别个数,即输出K个mask,m对应池化分辨率(7 * 7)。Loss函数定义:
L m a s k ( C l s k ) = S i g m o i d ( C l s k ) Lmask(Cls_k)=Sigmoid(Cls_k) Lmask(Clsk)=Sigmoid(Clsk)
  
L m a s k ( C l s k ) = S i g m o i d ( C l s k ) Lmask(Cls_k) = Sigmoid (Cls_k) Lmask(Clsk)=Sigmoid(Clsk),平均二值交叉熵 (average binary cross-entropy)Loss,通过逐像素的 Sigmoid 计算得到。
  
Why K个mask?通过对每个 Class 对应一个Mask可以有效避免类间竞争(其他Class不贡献Loss)。

在这里插入图片描述

  
通过结果对比来看(Table2 b),也就是作者所说的 Decouple 解耦,要比多分类的Softmax效果好很多。
  
另外,作者给出了很多实验分割效果,就不都列了,只贴一张和FCIS的对比图(FCIS出现了Overlap的问题)

在这里插入图片描述

http://www.lryc.cn/news/494907.html

相关文章:

  • css包含块
  • 混沌工程/混沌测试/云原生测试/云平台测试
  • 研发设计数字化:PLM、PDM、ERP介绍及其区别
  • Python练习51
  • Qt 前置课程 QtNFC
  • 【论文阅读】 Learning to Upsample by Learning to Sample
  • 堆排序(含证明)
  • 蓝桥杯模拟题不知名题目
  • C#中的工厂模式
  • 深度学习与持续学习:人工智能的未来与研究方向
  • OGRE 3D----4. OGRE和QML共享opengl上下文
  • 【Umi】常用配置
  • Windows加固脚本
  • 玩游戏常常出现vc++runtime library error R6025 这是什么意思,该怎么解决?
  • AGX orin下电控制
  • flutter 报错 error: unable to find git in your path.
  • 芯科科技率先支持Matter 1.4,推动智能家居迈向新高度
  • C语言数据相关知识:静态数据、越界与溢出
  • 文本分析之余弦相似度
  • 【VUE3】【Naive UI】<n-button> 标签
  • css使盒子在屏幕的地点固定
  • Transformers快速入门代码解析(六):注意力机制——Transformer Encoder:执行顺序解析
  • 图像小波去噪与总变分去噪详解与Python实现
  • 【深度学习基础】预备知识 | 微积分
  • CTF-PWN glibc源码阅读[1]: 寻找libc中堆结构的定义(2.31-0ubuntu9.16)
  • 宏集eXware物联网网关在水务管理系统上的应用
  • 【大数据学习 | Spark-SQL】定义UDF和DUAF,UDTF函数
  • #Java-JDK7、8的时间相关类,包装类
  • tc 命令
  • 基于Java Springboot 协同过滤算法音乐推荐系统