图像分割论文 “RANet : Region Attention Network for Semantic Segmentation”
语义分割问题比起像素级的关系,更依赖于目标级的关系,因此,本文提出利用目标区域来建立区域性的上下文,从而建立目标级的关系。RANet通过训练目标区域的构建、代表性区域内容的选取、信息通路的配置以及像素间的上下文交换,共同提高分割精度。
在本文中,作者提出了用对象区域来构建区域上下文的思想,它对对象层次的关系进行了建模。这里,区域指的是一个对象或一个部分。每个物体都可以看作是一个区域,由一组相邻的属于同一类别的像素组成。直观地说,对象区域的边界提供了对象之间的空间关系。在同一对象区域中,像素包含一致的类别信息。
如上图所示,RANet的RCB模块(Region Construction Block)可以联合分析boundary score map和semantic score map。通过计算图像中每对像素的region attention score,基于注意力得分,RCB计算每个像素(红点)的区域决策图(region decision map)。它使用区域决策图将图像划分为不同的目标区域。
之后,region decision map被传递到区域交互模块(Region Decision Map)。RIB选择每个区域内代表性像素,在同一区域内,每个代表像素从其他像素接收上下文。代表像素可以有效地表示对象区域的局部内容。另外,在不同的空间范畴中,不同的区域和代表性对象之间的关系是综合的。RIB产生全局上下文表示来增强像素,最终形成上下文特征图进行分割。
Region Construction Block
对于输入的特征图A∈RH×W×MA\in\mathbb{R}^{H\times W\times M}A∈RH×W×M,通过两层卷积获得边缘图B∈RH×WB\in\mathbb{R}^{H\times W}B∈RH×W和语义得分图C∈RH×W×NC\in\mathbb{R}^{H\times W\times N}C∈RH×W×N,NNN为类别数量。在同一个区域内,两个像素之间有较低的可能存在in-between boundary,并且有更高的可能属于同一个种类。
Di,j=max(Bi↔j)D_{i,j}=\text{max}(B_{i\leftrightarrow j})Di,j=max(Bi↔j),Bi↔jB_{i\leftrightarrow j}Bi↔j指的是像素i和像素j之间的线段上的点的boundary map的值,值越高说明越有可能是boundary。
之后,使用JS散度来计算两个像素i和j之间的相似度,Ei,jE_{i,j}Ei,j的值越低代表着像素i和像素j有可能是同一个种类。计算公式如下:
Ei,j=∑n=1NCi,nlogCi,n+Cj,nlogCj,n2Ui,j,n,Ui,j,n=Ci,n+Cj,n2E_{i,j}=\sum_{n=1}^N\frac{C_{i,n}\text{log}{C_{i,n}}+C_{j,n}\text{log}{C_{j,n}}}{2U_{i,j,n}}, U_{i,j,n}=\frac{C_{i,n}+C_{j,n}}{2}Ei,j=n=1∑N2Ui,j,nCi,nlogCi,n+Cj,nlogCj,n,Ui,j,n=2Ci,n+Cj,n
其中Ci,nC_{i,n}Ci,n和Cj,nC_{j,n}Cj,n代表着像素i和像素j每个种类的置信度。从而生成区域注意力图F∈R(H×W)×(H×W)F\in\mathbb{R}^{(H\times W)\times(H\times W)}F∈R(H×W)×(H×W)。
Fi,j=(1−Di,j)(1−Ei,j)F_{i,j}=(1-D_{i,j})(1-E_{i,j})Fi,j=(1−Di,j)(1−Ei,j)
从而获得对称的region decision map G∈R(H×W)×(H×W)G\in\mathbb{R}^{(H\times W)\times (H\times W)}G∈R(H×W)×(H×W)
Gi,j=12sgn(Fi,jg+Fj,ig2)+12,Fg=Wg⊗FG_{i,j}=\frac{1}{2}\text{sgn}(\frac{F_{i,j}^g+F_{j,i}^g}{2})+\frac{1}{2},F^g=W^g\otimes FGi,j=21sgn(2Fi,jg+Fj,ig)+21,Fg=Wg⊗F
其中sgn函数返回值为-1或+1。若Gi,j=1G_{i,j}=1Gi,j=1,说明像素i和j属于同一个区域;否则像素i和j不属于同一个区域。从而这种grouping process将图像分为一系列区域{Rq∣q=1,...QR_q|q=1,...QRq∣q=1,...Q}。
具体pipeline如下图所示:
Region Interaction Block
对于q区域的像素i而言,计算代表性分数Ji=1∣Rq∣∑j∈RqFi,jgJ_i=\frac{1}{|R_q|\sum_{j\in R_q}F_{i,j}^g}Ji=∣Rq∣∑j∈RqFi,jg1,从而Ji∈[0,1]J_i\in\ [0,1]Ji∈ [0,1]代表着像素i和其他像素在q区域的关联度。在每个区域中,选择K个最具有代表性的像素{pq,k∣pq,k∈ϕ(Rq),k=1,...,K}\{p_{q,k}|p_{q,k}\in \phi(R_q), k=1,...,K \}{pq,k∣pq,k∈ϕ(Rq),k=1,...,K}。
通过intra-region collection计算local contextual representation Aq,kl∈RMA_{q,k}^l\in\mathbb{R}^MAq,kl∈RM
Aq,kl=J(pq,k)A(pq,k)+∑i∈Rq\ϕ(Rq)Wq,k,il(JiAi),Wq,k,il=exp(A(pq,k)(JiAi)T)∑j∈Rq\ϕ(Rq)exp(A(pq,k)(JiAi)T)A_{q,k}^l=J(p_{q,k})A(p_{q,k})+\sum_{i\in R_q\verb|\| \phi(R_q) }W_{q,k,i}^l(J_iA_i), W_{q,k,i}^l=\frac{\text{exp}(A(p_{q,k})(J_iA_i)^T)}{\sum_{j\in R_q\verb|\| \phi(R_q)}\text{exp}(A(p_{q,k})(J_iA_i)^T)}Aq,kl=J(pq,k)A(pq,k)+i∈Rq\ϕ(Rq)∑Wq,k,il(JiAi),Wq,k,il=∑j∈Rq\ϕ(Rq)exp(A(pq,k)(JiAi)T)exp(A(pq,k)(JiAi)T)
通过inter-region interaction,计算global contextual representation Aq,kg∈RMA_{q,k}^g\in\mathbb{R}^MAq,kg∈RM:
Aq,kg=J(pq,k)Aq,kl+∑s=1,s≠q,i∈ϕ(Rs)QWq,s,k,ig(J(ps,i)As,il),A_{q,k}^g=J(p_{q,k})A_{q,k}^l+\sum^Q_{s=1,s\neq q, i\in \phi(R_s) }W_{q,s,k,i}^g(J(p_{s,i})A_{s,i}^l), Aq,kg=J(pq,k)Aq,kl+s=1,s=q,i∈ϕ(Rs)∑QWq,s,k,ig(J(ps,i)As,il),Wq,s,k,ig=exp(Aq,kl(J(ps,i)As,il)T)∑ps,j∈ϕ(Rs)exp(Aq,kl(J(ps,j)As,jl)T)W_{q,s,k,i}^g=\frac{\text{exp}(A_{q,k}^l(J(p_{s,i})A_{s,i}^l)^T)}{\sum_{p_{s,j}\in \phi(R_s)}\text{exp}(A_{q,k}^l(J(p_{s,j})A_{s,j}^l)^T)}Wq,s,k,ig=∑ps,j∈ϕ(Rs)exp(Aq,kl(J(ps,j)As,jl)T)exp(Aq,kl(J(ps,i)As,il)T)
具体pipeline如下图所示:
最后需要计算intra-region distribution从而将global context传播并增强图像中的所有像素。
Oi=JiAi+∑pq,k∈ϕ(Rq)Wq,k,id(J(pq,k)Aq,kg),Wq,k,id=exp(Ai(J(pq,k)Aq,kg)T)∑pq,j∈ϕ(Rq)exp(Ai(J(pq,j)Aq,jg)T)O_i=J_iA_i+\sum_{p_{q,k}\in \phi(R_q)}W_{q,k,i}^d(J(p_{q,k})A_{q,k}^g), W_{q,k,i}^d=\frac{\text{exp}(A_i(J(p_{q,k})A_{q,k}^g)^T)}{\sum_{p_{q,j}\in\phi(R_q)}\text{exp}(A_i(J(p_{q,j})A_{q,j}^g)^T)}Oi=JiAi+pq,k∈ϕ(Rq)∑Wq,k,id(J(pq,k)Aq,kg),Wq,k,id=∑pq,j∈ϕ(Rq)exp(Ai(J(pq,j)Aq,jg)T)exp(Ai(J(pq,k)Aq,kg)T)
图像分割论文 “RANet : Region Attention Network for Semantic Segmentation”相关推荐
- Hybrid Multiple Attention Network for Semantic Segmentation in Aerial Images
论文阅读: Hybrid Multiple Attention Network for Semantic Segmentation in Aerial Images 作者声明 版权声明:本文为博主原创 ...
- Pyramid Attention Network for Semantic Segmentation
翻译 | 林椿眄 出品 | 人工智能头条(公众号ID:AI_Thinker) 近日,北京理工大学.旷视科技.北京大学联手,发表了一篇名为 Pyramid Attention Network for S ...
- 论文Pyramid Attention Network for Semantic Segmentation笔记
该论文发表于2017CVPR,由北理工+旷视科技+北大共同完成 论文传送门 本人主要借鉴其中的思想在目标检测中的可行性,故不考虑语义分割相关的内容 初次实现,如有不足之处,还请指出,谢谢! 名词解释 ...
- [论文阅读] Shallow Attention Network for Polyp Segmentation
论文地址:https://arxiv.org/abs/2108.00882 代码:https://github.com/weijun88/SANet 发表于:MICCAI'21 Abstract 准确 ...
- SegNeXt: Rethinking Convolutional Attention Design for Semantic Segmentation 论文解读
SegNeXt: Rethinking Convolutional Attention Design for Semantic Segmentation code:Visual-Attention-N ...
- 论文阅读 | Residual Conv-Deconv Grid Network for Semantic Segmentation
GridNet发表在BMVC2017,用于语义分割,一篇很早期的文章 论文地址:[here] (文章没有给代码地址,但是里面的网络设计讲的很详细,可以自己复现出来,github上也有很多别人复现的代码 ...
- 论文笔记-SSF-DAN: Separated Semantic Feature based Domain Adaptation Network for Semantic Segmentation
论文信息 论文标题:SSF-DAN: Separated Semantic Feature based Domain Adaptation Network for Semantic Segmentat ...
- 论文学习:Fully Attentional Network for Semantic Segmentation
Fully Attentional Network for Semantic Segmentation 1. 摘要+引言 问题 通过压缩空间维度或通过压缩通道的相似图来描述沿通道或空间维度的特征关系, ...
- 语义分割--(DFN)Learning a Discriminative Feature Network for Semantic Segmentation
Learning a Discriminative Feature Network for Semantic Segmentation Learning a Discriminative Featur ...
- [分割]Learning a Discriminative Feature Network for Semantic Segmentation(DFN)
本文转自3篇文章当作自己的笔记. 文章1:链接 Learning a Discriminative Feature Network for Semantic Segmentation Learning ...
最新文章
- [转载]Matlab之静态文本多行输出
- np.array_split 方法也可以分割列表list,如下
- 直观获取redis cluster 主从关系
- python在线运行-Python在线练习运行平台
- 坐火车一定要带身份证
- css 可编辑,如何设置DIV可编辑
- NVIDIA Jetson Nano B01 安装Ubuntu 18.04.3 LTS
- jvm 安装位置_简单了解JVM
- android 约束 布局_Android约束布局动画
- php删除下拉框记录,删除一条数据_php删除一条记录(删除确认提示)
- 前端实战|React18项目启动——pc端极客园项目前置准备
- 【学习笔记】python实现excel数据处理
- 关于java构造函数 的错误 there is no default constructor available in ...
- 任正非:向谷歌军团学习,扑上去,杀出一条血路
- 移动安全-移动App漏洞检测平台
- Field userDao ....service.impl...'com.lzj.springcloud.dao.UserDao' that could not be found
- 织梦会员中心注册登录
- Mybatis学习小结
- echarts上加横线标线_Echarts地图添加引导线效果(labelLine)
- 架构道术-关于底层逻辑的一些思考
热门文章
- python 隐藏excel的列和行
- 小福利,杨格(Young)不等式验证之用python里面的matplotlib和numpy模块画图
- 到底什么是SPA、SEO、SSR?
- 无线桥接怎么设置网关和dns服务器,斐讯K2路由器怎么设置桥接_斐讯K2无线中继设置教程-192路由网...
- #今日说码栏目#第四集 各类选择器
- 如何不靠运气变得富有 (十四) —— 特殊技能(specific knowledge)极富创造性或技术性
- 【Pycharm】解决Debug模式下出现collecting data问题
- 超简单!一部手机就能提取视频中的语音转换成文字
- Binutils - c++filt工具
- 一般纳税人税额计算_一般纳税人税率公式是什么样的,税额是怎么计算的-企业纳税|华律办事直通车...