论文阅读:Instance-aware Semantic Segmentation via Multi-task Network Cascades
论文框架:
作者提出一种基于多任务的网络串联方法(Multi-task Network Cascade),解决问题实例分割(Instance-aware Semantic Segmentation)。该模型分成三个子网络,differentiate instance,estimate mask,category object。分别针对三个问题,获取region-level的检测框,得到pixel-level的mask,对每个mask获得category-level的label。
流程图如下:
其中conv feature map使用VGG-16获得。
并且,该模型不同于一般的多任务网络,他的后一任务的loss依赖于前一任务的输出,所以他的三个loss都是不独立的。
I. Regressing Box-level Instance
第一个子网络获得每个目标的bounding box,和objectness score(class-agnostic,即不知道该目标属于哪一类)。
这个子网络使用Region-Proposal-Networks(RPN)的网络框架,输入是shared feature map(即特征图),连接一个3X3的卷积层用来降维,再接一个1X1的卷积层来回归box location和classifying object/non-object。
作者采用RPN的loss function :
L_1=L_1(B(\Theta))
其中 Θ\Theta表示所有待优化的网络参数。 BB 表示该网络,输出是一系列的boxes:B={Bi}B=\{B_i\} , Bi={xi,yi,wi,hi,pi}B_i=\{x_i,y_i,w_i,h_i,p_i\} , ii 表示每个box的索引,(xi,yi)(x_i,y_i) 表示中心位置坐标, (wi,hi)(w_i,h_i) 表示长宽, pip_i 表示objectness probability。
II. Regressing Mask-level Instance
在stage-2,输入:shared features 和 stage-1 box,输出:基于每个box的pixel-level segmentation mask。在这部分,mask-level instance 依旧是class-agnostic。
对于输入的stage-1 box,使用Region-of-interest(RoI) pooling 提取box特征(目的是从feature map上获取对应的任意尺寸的box的特征)。再接两个全连接层(fc layer),前一个负责降维至256,后一个fc layer负责回归pixel-level mask。
LossLoss 函数:
L_2=L_2(M(\Theta)|B(|\Theta))
其中 MM 表示第二个子网络,输出一系列mask:M={Mi}M=\{M_i\} ,其中 MiM_i 是一个 m2m^2 维的逻辑回归输出(属于[0,1]二值化, m2m^2 是每个mask的分辨率)。
可以看出, L2L_2 同时受限于 MM 和BB 。
III. Category Instance
stage-3,输入:shared features,stage-1 box和stage-2 mask。输出:每个Instance的category score。
在stage-2中,我们提取了每个box的feature,现在我们继续提取每个mask的feature:
F_i^{Mask}(\Theta)=F_i^{RoI}(\Theta)*M_i(\Theta)
其中 FRoIi(Θ)F_i^{RoI}(\Theta) 表示经过RoI pooling 提取的box的feature。
然后作者考虑同时使用masked feature 和 box-based feature。通过连接softmax classifier 预测N+1种类。
Loss函数如下:
L_3=L_3(C(\Theta)|M(\Theta),B(\Theta))
技术挑战:
End-to-end Training
本文定义了一个整体的Loss function:
L(\Theta)=L_1(B(\Theta))+L_2(M(\Theta)|B(|\Theta))+L_3(C(\Theta)|M(\Theta),B(\Theta))
但不同于普通的多任务学习,该论文的后一级任务都是基于前一级的输出。
在end-to-end训练任务中,最主要的技术挑战就是在使用RoI pooling的过程中,预测框Bi(Θ)B_i(\Theta) 的空间位置不断变化。因为在fast R-CNN论文中使用的RoI pooling 的预测框是经过预训练的,它的反向传播只考虑F(Θ)F(\Theta) ,但我们现在必须同时考虑Bi(Θ)B_i(\Theta) 。
Differentiable RoI Warping Layers
原始的RoI pooling layer 是在一个box内的离散网格执行max pooling。所以本文要在RoI pooling layer中,增加Bi(Θ)B_i(\Theta) 信息,以达到本文的需求。
大体的计算公式如下:
F_i^{RoI}(\Theta)=G(B(\Theta))F(\Theta)
F(Θ)F(\Theta) 就是feature map。G表示裁剪和变形操作的矩阵,就是任意输入一个 Bi(Θ)B_i(\Theta), 都将它裁剪变形到固定大小,然后变形成一个行列式矩阵,目的就是将 nn 维的F(Θ)F(\Theta) 转换成 n′n' 维的 FRoIi(Θ)F_i^{RoI}(\Theta)。
具体实现略(之后补充)。
Masking layers
在L3L_3 公式中,L3L_3 的计算也依赖于M(Θ)M(\Theta) , B(Θ)B(\Theta) 。我们经过了Differentiable RoI Warping Module,就可以将L3L_3 公式简单通过一个element-wise product module进行计算。
剩余略(之后补充)。
论文阅读:Instance-aware Semantic Segmentation via Multi-task Network Cascades相关推荐
- 论文阅读:Weakly-Supervised Semantic Segmentation via Sub-Category Exploration
论文:Weakly-Supervised Semantic Segmentation via Sub-Category Exploration 论文下载:[Weakly-Supervised Sema ...
- 论文阅读笔记--Rethinking Semantic Segmentation from a Sequence-to-Sequence Perspective with Transformers
最近在阅读一些关于transformer的论文,在此记录是为了看看到底天天学了些什么.目前阅读这些论文感觉还是似懂非懂的阶段,还需要时间细细斟酌,共勉! Rethinking Semantic Seg ...
- 论文阅读:3D Semantic Segmentation with Submanifold Sparse Convolutional Networks
题目:基于子流形稀疏卷积网络的三维语义分割 也是spconv,稀疏卷积提出者 来源:CVPR, 2018 下载连接:https://ieeexplore.ieee.org/document/85790 ...
- 论文翻译 | RandLA-Net: Efficient Semantic Segmentation of Large-Scale Point Clouds
论文:RandLA-Net: Efficient Semantic Segmentation of Large-Scale Point Clouds 代码:code 前言:最近很犹豫要不要继续翻译点云 ...
- JSNet: Joint Instance and Semantic Segmentation of 3D Point Clouds
Abstract 在本文中,我们提出了一种新的联合实例和语义分割方法,称为JSNet,以同时解决3D点云的实例和语义分割.首先,我们建立了一个有效的骨干网络来从原始点云中提取鲁棒的特征.其次,为了获得 ...
- ECCV2020语义分割——Self-Prediction for Joint Instance and Semantic Segmentation of Point Clouds
Self-Prediction for Joint Instance and Semantic Segmentation of Point Clouds Abstract (一) Introducti ...
- 【论文阅读】3D Topology-Preserving Segmentation with Compound Multi-Slice Representation
[论文阅读]3D Topology-Preserving Segmentation with Compound Multi-Slice Representation 2022年3月6日 (本文仅作为本 ...
- 【论文笔记】Rethinking Semantic Segmentation from a Sequence-to-Sequence Perspectivewith Transformers
声明 不定期更新自己精度论文,通俗易懂,初级小白也可以理解 涉及范围:深度学习方向,包括 CV.NLP.Data Fusion.Digital Twin 论文题目: Rethinking Semant ...
- 语义分割--Large Kernel Matters--Improve Semantic Segmentation by Global Convolutional Network
Large Kernel Matters–Improve Semantic Segmentation by Global Convolutional Network https://arxiv.org ...
最新文章
- 2020年度最佳的23个的机器学习项目(附源代码)
- 去分库分表的亿级数据NewSQL实践之旅
- 在自己的网页添加谷歌地图
- 数据库设计的核心原则 外键的设计 提高插入数据速度
- 为什么技术人一定要懂点“可信计算”?
- Spring mvc介绍
- mysql中文占两位_mysql 保留两位小数
- 【转载】C# WinForm程序中使用Unity3D控件
- MT6762/MT6763处理器参数比较,MT6762参考设计资料介绍
- 洛伦兹吸引子 matlab,使用Matplotlib画洛伦兹吸引子 | 学步园
- 2003服务器密码怎么修改密码,2003服务器设置密码
- 全球与中国单模连续光纤激光器市场现状及未来发展趋势
- 搭建AdGuard Home广告拦截DNS解析服务器
- Python学习-通过斗鱼api获取弹幕
- loopback address 回送地址
- 机器学习笔记 十五:随机森林(Random Forest)评估机器学习模型的特征重要性
- Python实现验证码的获取
- python画猪猪侠_猪猪侠的简笔画法
- Win10DB210.1企业版的安装卸载DB2建库建表空间执行sql脚本SQL5005C、SQL8027N license许可证等报错详解
- 【LSS: Lift, Splat, Shoot】代码的复现与详细解读
热门文章
- 一个量化交易策略师的成长史
- linux编译bzip2,ARM-LINUX常用库移植------bzip2
- MYSQL(二):update语句执行的秘密
- win 10 pip 安装都超时_清华Anaconda 镜像恢复及一键安装气象常用的Python库
- 两个曲柄滑块机构组成简单机械系统
- 如何练就数据分析的思维_思维导图
- javaweb开发数码产品推荐平台系统设计与实现计算机毕业设计MyBatis+系统+LW文档+源码+调试部署
- oracle表数据如何导出成dbf,怎么将EXCEL导成DBF?《dbf导出excel数据》
- 基础向:「财务对账」的秘密都在这篇 3000 字的文章里
- [转贴]主板报警声详解