文章内容来自CCF-CV走进高校报告会中MSRA王井东老师的报告“Learning high-resolution and object-contextual representations for semantic representation”

报告中主要介绍了 HRNet 和 OCR 两个方法。下面图中展示的是 timeline for deep semantic segmentation,可以看到 OCR 和 HRNet 是 2019 年提出比较有影响力的方法。而且在 Cityscapes segmentation leaderboard 上排名第一。

首先介绍第一个工作:HRNet: Deep High-Resolution Representation Learning for Visual Recognition, CVPR 2019

当前的语义分割方法需要高分辨率特征,主流方法是通过一个网络得到 低分辨 feature map,然后通过上采样或反卷积 恢复 到高分辨率

下面列举了一些经典方法,看起来不同,但本质核心思路是差不多的。这些方法存在一个缺点,分辨率由高到低会损失信息!

为了解决这个问题,团队提出了一个方法,核心思路是 “不恢复 到高分辨率,而是保持分辨率” 。具体图示如下,把不同分辨率的 feature map 并联,各个分辨率分别一路,“保持”信息。但是,这样仍有一个问题,就是 feature map 彼此之间没有交互。

为此,团队又给网络添加了一些内容,如下图红线所示,各路之间不断进行 repeated fusions。

交互的方式如下:上采样时,先双线性插值,然后用1x1的卷积处理;下采样时,采用步长为2,尺寸为3x3的卷积处理

这就是HRNet 的全部内容,下图是方法的总结:1)以往网络是串联,改为并联;2)以前是降分辨率,改为保持高分辨率;3)通过加强交互,进一步提高性能

现在介绍第二个工作:Object-Contextual Representations for Semantic Segmentation

当前的FCN没有解决好物体上下文信息。因为单独看一个象素,很难知道这个象素是属于某一个物体的,因为象素给我们的信息是RGB的信息,如果不给予足够多的上下文信息是很难判断的。下图列举了商汤的PSPNet和谷歌的ASPP。PSPNet通过给每个象素周围建立多尺度的表征获取上下文信息,当时这个方法取得了非常大的突破。同时谷歌的ASPP也用了类似于空洞卷积的方式来实现上下文信息获取。

当前方法分析上下文信息如下图所示,比如说红色点是我们关注的点,周围绿色几个点是采样出来的,可以看到,绿色点分为两部分,一部分是属于车的,还有一部分是属于背景的。当前方法并没有进行区分。

那我们该怎么办?我们找这个物体,要通过周围物体的象素表征来帮助。因此,我们需要把红色像素周围属于 object 的pixel取出来做为上下文,如下图所示:

具体如何做呢?首先用一个 baseline network 得到一个粗略的分割结果(黄色框中左半部分),同时,还会输出全图的 feature map。分割结果包括K类,我们把每个类别的特征提出来(黄色框中上半部分的特征),如下图所示:

然后, 把红色小方块的的特征经过变换,右边K个区域的特征也经过一个变换,然后计划一下相似度,如下图所示。相似度计算以后,就可以得到红色小方块属于各个类别的可能性。我们根据这个可能性把每个区域的表征进行加权,会得到当前像素增强的特征表示(object-contextual representation)。

这个方法非常容易解释,看上去也比较有道理,最终在cityscapes上可以达到 82.5%,这是目前的SOTA。

HRNet + Object Contextual Representation的更多相关文章

  1. 论文学习-深度学习目标检测2014至201901综述-Deep Learning for Generic Object Detection A Survey

    目录 写在前面 目标检测任务与挑战 目标检测方法汇总 基础子问题 基于DCNN的特征表示 主干网络(network backbone) Methods For Improving Object Rep ...

  2. Object/Relational Mapping 数学关系 反面向对象

    [hibernate ORM 是对象关系映射框架 事实上的持久化存储引擎] http://docs.jboss.org/hibernate/orm/5.2/userguide/html_single/ ...

  3. ECCV 2014 Results (16 Jun, 2014) 结果已出

    Accepted Papers     Title Primary Subject Area ID 3D computer vision 93 UPnP: An optimal O(n) soluti ...

  4. zz深度学习目标检测2014至201901综述

    论文学习-深度学习目标检测2014至201901综述-Deep Learning for Generic Object Detection A Survey  发表于 2019-02-14 |  更新 ...

  5. 重新梳理HTML基础知识

    缘起 HTML(HyperText Markup Language超文本标记语言)是用于构建web页面的标记语言和通用标准.它并不是一项新的发明,因为超文本(具有超链接的文本)和标记语言(用于电子文档 ...

  6. apache开源项目-- Turbine

    1.缘起 Jetspeed是Apache Jakarta小组的开放源码门户系统.它使得最终用户可以通过WAP手机.浏览器.PDA等各种设备来使用各种各样的网络资源(比如应用程序.数据以及这之外的任何网 ...

  7. Python Challenge

    0. 2的38次方 print 2**38 ##apply the result to the url 1. 看图是要right shift两位, 切片即可. import string intab ...

  8. Python2.7笔记——常用技术点汇总

    目录 · 概况 · 安装 · 基础 · 基础语法 · 数据类型 · 变量 · 常量 · 字符编码 · 字符串格式化 · list · tuple · dict · set · if语句 · for语句 ...

  9. Python模块之pickle(列表,字典等复杂数据类型与二进制文件的转化)

    1.pickle模块简介 The pickle module implements binary protocols for serializing and de-serializing a Pyth ...

随机推荐

  1. docker创建tomcat容器

    配置阿里云镜像地址:先在阿里云搜索:容器镜像服务  --> 最下面找到 容器加速服务  docker配置  etc目录下 创建docker文件夹 mkdir --->docker  --- ...

  2. vue基础入门(2.2)

    2.2.基础指令 2.2.1.什么是指令 指令 (Directives) 是带有 v- 前缀的特殊特性,指令特性的值预期是单个 JavaScript 表达式,指令的职责是,当表达式的值改变时,将其产生 ...

  3. SerializableClob转String

    ORACLE数据库读取CLOB字段,JAVA中获取到类型为SerializableClob,如何转换成String类型那? 以下是代码示例:         SerializableClob sc = ...

  4. 一张PDF了解JDK9 GC调优秘籍-附PDF下载

    目录 简介 Oracle中的文档 JDK9中JVM参数的变化 废弃的JVM选项 不推荐(Deprecated)的JVM选项 被删除的JVM参数 JDK9的新特性Application Class Da ...

  5. 通俗易懂的阿里Sentinel源码分析:如何向控制台发送心跳包?

    源码分析 public class Env { public static final Sph sph = new CtSph(); static { // 在Env类的静态代码块中, // 触发了一 ...

  6. Python 3.10 版本采纳了首个 PEP,中文翻译即将推出

    现在距离 Python 3.9.0 的最终版本还有 3 个月,官方公布的时间线是: 3.9.0 beta 4: Monday, 2020-06-29 3.9.0 beta 5: Monday, 202 ...

  7. 半导体质量管理_eCAP LineWorks SPACE eCAP(电子OCAP)

    用于设计和实施纠正措施的自动化工作流程 以电子方式管理纠正措施的工作流程 LineWorks SPACE的此附加程序提供了设计和自动实施纠正措施(电子纠正措施计划,eCAP)的工作流程.这样可以确保您 ...

  8. .netcore项目codefirst时使用的配置文件是appsettings.json

    .netcore项目创建完毕后,会发现项目中有好几个配置文件: appsettings.json appsettings.Development.json appsettings.Production ...

  9. html2canvas截图问题,图片跨域导致截图空白

    年前的一个项目,要做一个H5截屏分享的功能,使用的是html2canvas插件,截图功能是实现了,但是跨域的图片死活不出来, 经过几天谷歌百度和不断的尝试,终于找到解决办法了,一共经历了让人心力憔悴的 ...

  10. day22 常用模块(上)

    一.时间模块 1 time模块 获取时间的三种格式: 第一种:time.time() 时间戳(timestamp):从1970年到现在的秒数 #应用场景:计算时间差 可以对时间加减,返回值为浮点型 p ...