首页 > 其他分享 >Segmentation Transformer: Object-Contextual Representations for Semantic Segmentation;OCRNet

Segmentation Transformer: Object-Contextual Representations for Semantic Segmentation;OCRNet

时间:2023-12-17 13:56:49浏览次数:309  
标签:表示 Segmentation Semantic Object 区域 representations 上下文

Segmentation Transformer: Object-Contextual Representations for Semantic Segmentation

* Authors: [[Yuhui Yuan]], [[Xiaokang Chen]], [[Xilin Chen]], [[Jingdong Wang]]


初读印象

comment:: (OCRnet)聚焦于语义分割中的上下文聚合问题,利用物体类别的表示来个构造单个像素的表示。code:https://git.io/openseghttps://git.io/HRNet.OCR.

动机

  • 过去的文章:
  1. 多尺度上下文:pspnet、deeplabv3,没有考虑上下文和具体点的位置。
  2. 关系型上下文:DANet、CFNet和OCNet只考虑了所有点和具体点的关系,没有考虑一个区域的上下文和具体点的关系。
  • 这篇文章:
    探究一个点和其上下文(该点周围的点)之间的关系:一个点所属的类别是这个点所属的物体的类别。

方法

Object-contextual representation scheme

Pasted image 20221011194100

  1. 根据网络中间层的特征表示估测一个粗略的语义分割结果作为 OCR 方法的一个输入 ,即软物体区域(Soft Object Regions)
  2. 根据粗略的语义分割结果和网络最深层的特征表示计算出 K 组向量,即物体区域表示(Object Region Representations),其中每一个向量对应一个语义类别的特征表示$f_k$
  3. 聚合K个对象区域表示并考虑其与所有对象区域的关系来增强每个像素的表示
Objection region representations(对象区域表示)

第k个区域的对象区域表示:
Pasted image 20221011191711其中$x_i$是像素i的表示,前面的是权重(由后面提到的decodercross-attention得到)。

Objection contextual representations (对象上下文表示)

每个像素和每个区域之间的相关性
Pasted image 20221011192234

其中
Pasted image 20221011192247$\phi(x)$和$\psi(f)$是分别对$x,f$做1×1卷积+BN+Relu。
像素i的对象上下文表示$y_i$:

Pasted image 20221011193417

$\rho,\delta$是1×1卷积+BN+Relu。

Augmented representations(增强表示)

最终表示
Pasted image 20221011194535其实就是将$x_i$和$y_i$拼接起来并做个1×1卷积+BN+Relu#### OCRmodule
网络中每一个模块代表上述策略的一个子策略。

Pasted image 20221011195335

  • self-attention:普通的注意力模块,加强$x_i$和$f_k$的特征

  • decoder cross-attention:用于获得Objection region representations(对象区域表示)$f_k$,其中$q_k$代表类别k(将某个阶段输出的粗糙feature map做个粗糙的语义分割。分割得到的结果中每个点就是一个区域,每个向量就是$q_k$)
    lALPJxuMSg-afa7NAinNCAk_2057_553 1

  • encoder cross-attention:和后面的FNN一起用于获得Objection contextual representations (对象上下文表示)。
    lALPJwKt045K2vvNAcjNB60_1965_456

输入输出

输入一张图片,得到其语义分割结果。

局限

只是将下采样后得到的feature map中的每一个点都作为一个区域来进行学习,但是图片中每样物体的大小通常是多变的,有没有可能通过改变区域大小或者在大块区域中随机采样来得到更加丰富的区域表示?

启示

学到了中间结果也可以作为模型的输入。

标签:表示,Segmentation,Semantic,Object,区域,representations,上下文
From: https://www.cnblogs.com/tifuhong/p/17908991.html

相关文章

  • 无涯教程-Java - boolean equals(Object anObject)函数
    此方法将此字符串与指定对象进行比较。当且仅当参数不为null并且是一个String对象,表示与此对象相同的字符序列时,输出为true。booleanequals-语法publicbooleanequals(ObjectanObject)这是参数的详细信息-anObject  - 与此字符串进行比较的对象。booleanequals......
  • Object detection in optical remote sensing images: A survey and a new benchmark
    Objectdetectioninopticalremotesensingimages:Asurveyandanewbenchmark光学遥感图像中的目标检测:调查和新基准最近人们投入了大量的精力来提出光学遥感图像中物体检测的各种方法。然而,目前对光学遥感图像中目标检测的数据集和基于深度学习的方法的调查还不够。此外......
  • Java第十一课_内部类,Object类,枚举和异常
    1.内部类一般内部类publicclassPratice{publicstaticvoidmain(String[]args){/*内部类:描述事物内部的事物;就是一个类定义在另一个类的内部当内部类定义在成员变量的位置上时,可以被成员修饰符修饰,修饰后会具备修饰......
  • 【Linux】调试常见的应用程序奔溃“Segmentation fault (core dumped)”
    https://blog.csdn.net/hello_nofail/article/details/129994481?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522170264661316800227454508%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=170264661316800227454508&......
  • Java: OpenWeatherMap json Deserialization of Java Objects
    openweathermap.json{"coord":{"lon":114.0683,"lat":22.5455},"weather":[{"id":803,"main":"Clouds","description":"多云",......
  • 无涯教程-Java - int compareTo(Object o)函数
    此方法将此字符串与另一个对象进行比较。intcompareTo-语法intcompareTo(Objecto)这是参数的详细信息-o  - 要比较的对象。intcompareTo-返回值两个对象比较,如果相等,则返回0,如果大于后面对象,则返回>0,否则返回<0intcompareTo-示例publicclassTest{p......
  • 为什么要使用Object.prototype.hasOwnProperty.call()?
    翻译自:What’sthedealwithObject.prototype.hasOwnProperty.call()?你一定在他人的代码或者某个库中见过下面的代码:Object.prototype.hasOwnProperty.call(objRef,'propName');现在我们来看下这段代码到底什么意思。在弄清楚的过程中,我们会依次理解下面几件事:Object.p......
  • python 定义类的时候的 A(object) 和 A 区别是什么?
    在Python中,A(object)和A的区别涉及到类的继承和类的定义方式。继承的区别:A(object)表示A类继承自object类。这是在Python2中引入新式类的写法,是显式地继承自基类object。在Python3中,所有的类都隐式继承自object,因此这两者在大多数情况下是等效的。A表示......
  • 关于使用appium自动化启动app时报错【问题:AttributeError: ‘NoneType‘ object has n
    报错原因:安装了最新版的appium3.0.0和selenium的最新版本,导致版本冲突从而导致报错:AttributeError:'NoneType'objecthasnoattribute'to_capabilities'解决方案:卸载selenium和appium,下载低版本的appium【下载appium的同时会下载依赖selenium】 pipinstall......
  • Object---clone方法
     概述java.lang.Object#clone Byconvention,thereturnedobjectshouldbeobtainedbycalling{@codesuper.clone}.Ifaclassandallofitssuperclasses(except{@codeObject})obeythisconvention,itwillbethecasethat{@codex.clone().getClass()=......