第十一章:MULTI-SCALE CONTEXT AGGREGATION BY DILATED CONVOLUTIONS——通过膨胀卷积的多尺度上下文聚合

news2024/11/18 15:51:40

0.摘要

        目前用于语义分割的先进模型是基于最初设计用于图像分类的卷积网络的改进。然而,像语义分割这样的密集预测问题在结构上与图像分类不同。在这项工作中,我们开发了一个专门为密集预测设计的新的卷积网络模块。所提出的模块使用膨胀卷积来系统地聚合多尺度的上下文信息,而不会丢失分辨率。该架构基于膨胀卷积支持对感受野的指数级扩展,同时不会丢失分辨率或覆盖范围。我们证明了所提出的上下文模块可以提高最先进的语义分割系统的准确性。此外,我们还研究了将图像分类网络适应到密集预测的方法,并证明简化适应网络可以提高准确性。

1.引言

        计算机视觉中许多自然问题都是密集预测的实例。其目标是为图像中的每个像素计算一个离散或连续的标签。一个著名的例子是语义分割,它需要将每个像素分类到给定的一组类别中(He et al., 2004; Shotton et al., 2009; Kohli et al., 2009; Krahenbühl & Koltun, 2011)。语义分割具有挑战性,因为它要求在像素级准确性和多尺度上下文推理之间进行组合(He et al., 2004; Galleguillos & Belongie, 2010)。最近通过使用卷积网络(LeCun et al., 1989)通过反向传播(Rumelhart et al., 1986)进行训练,在语义分割中取得了显著的准确性提升。具体而言,Long等人(2015)表明,最初为图像分类开发的卷积网络架构可以成功地重新用于密集预测。这些重新用途的网络在具有挑战性的语义分割基准测试中明显优于先前的最先进方法。这引发了一些新的问题,这些问题受到图像分类和密集预测之间结构差异的启发。在重新用途的网络中,哪些方面是真正必要的,哪些在密集操作时会降低准确性?专门为密集预测设计的专用模块能否进一步提高准确性?

        现代图像分类网络通过连续的池化和子采样层集成多尺度的上下文信息,以降低分辨率直到获得全局预测(Krizhevsky et al., 2012; Simonyan & Zisserman, 2015)。相比之下,密集预测需要将多尺度的上下文推理与全分辨率输出相结合。最近的研究工作探讨了两种处理多尺度推理和全分辨率密集预测冲突要求的方法。一种方法涉及重复的上卷积,旨在恢复丢失的分辨率,并将来自下采样层的全局视角保留下来(Noh et al., 2015; Fischer et al., 2015)。这引发了一个问题,即是否真正需要进行严重的中间降采样。另一种方法涉及将图像的多个尺度版本作为网络的输入,并组合这些多个输入获得的预测(Farabet et al., 2013; Lin et al., 2015; Chen et al., 2015b)。同样,目前尚不清楚是否真正需要对调整尺度的输入图像进行单独分析。

        在这项工作中,我们开发了一个卷积网络模块,可以在不失去分辨率或分析调整尺度图像的情况下聚合多尺度的上下文信息。该模块可以插入到任何分辨率的现有架构中。与从图像分类中继承的金字塔形架构不同,所提出的上下文模块专门设计用于密集预测。它是一个由卷积层组成的长方体,没有池化或子采样。该模块基于扩张卷积,可以支持感受野的指数级扩展,而不会丢失分辨率或覆盖范围。作为这项工作的一部分,我们还重新检查了重新用途的图像分类网络在语义分割上的性能。核心预测模块的性能可能会被越来越复杂的系统所混淆,这些系统涉及结构化预测、多列架构、多个训练数据集和其他增强技术。因此,我们在受控环境中研究了深度图像分类网络的主要改进,并移除阻碍密集预测性能的残留组件。结果是一个简化的初始预测模块,比先前的改进方法更简单和更准确。使用简化的预测模块,我们通过对Pascal VOC 2012数据集(Everingham et al.,2010)进行受控实验来评估所提出的上下文网络。实验证明,将上下文模块插入现有的语义分割架构中可可靠地提高其准确性。

2.扩张卷积

        设F: Z2 → R是一个离散函数。设Ωr = [−r;r]2 \ Z2,k: Ωr → R是一个大小为(2r + 1)2的离散滤波器。离散卷积运算符∗可以定义为(F ∗k)(p) = Σs+t=p F(s)k(t)。(1) 现在我们推广这个运算符。设l是一个扩张因子,定义∗l为(F ∗l k)(p) = Σs+lt=p F(s)k(t)。(2) 我们将∗l称为扩张卷积或l-扩张卷积。过去,扩张卷积运算符被称为“使用扩张滤波器的卷积”。它在小波分解的algorithme a trous`中扮演着关键的角色(Holschneider et al., 1987; Shensa, 1992)。我们使用术语“扩张卷积”而不是“使用扩张滤波器的卷积”,以澄清没有“构造或表示扩张滤波器”的意思。卷积运算符本身被修改为以不同的方式使用滤波器参数。扩张卷积运算符可以使用不同的扩张因子在不同的范围内应用相同的滤波器。我们的定义反映了扩张卷积运算符的正确实现方式,它不涉及构造扩张滤波器。在最近关于语义分割的卷积网络的研究中,Long等人(2015)分析了滤波器的扩张,但选择不使用它。Chen等人(2015a)使用扩张来简化Long等人(2015)的架构。相比之下,我们开发了一个新的卷积网络架构,系统地使用扩张卷积来进行多尺度上下文聚合。

        我们的架构受到一个事实的启发,即扩张卷积支持指数级扩展的感受野,而不会丢失分辨率或覆盖范围。设F0;F1;:::;Fn−1: Z2 → R是离散函数,k0;k1;:::;kn−2: Ω1 → R是离散的3×3滤波器。考虑以指数级增加的扩张率应用这些滤波器:Fi+1 = Fi ∗2i ki,其中i =0;1;:::;n−2。(3)将Fi+1中元素p的感受野定义为改变Fi+1(p)值的F0中的元素集合。定义Fi+1中元素p的感受野大小为这些元素的数量。很容易看出,Fi+1中每个元素的感受野大小为(2i+2 −1)×(2i+2 −1)。感受野是一个指数级增加大小的正方形。如图1所示。

 

图1:系统化扩张支持感受野的指数级扩展,而不会丢失分辨率或覆盖范围。(a)通过1倍扩张卷积将F0生成F1;F1中的每个元素具有3×3的感受野。(b)通过2倍扩张卷积将F1生成F2;F2中的每个元素具有7×7的感受野。(c)通过4倍扩张卷积将F2生成F3;F3中的每个元素具有15×15的感受野。每个层的参数数量是相同的。感受野呈指数级增长,而参数数量呈线性增长。

3.多尺度上下文聚合

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/756506.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【深度学习 | 计算机视觉】Focal Loss原理及其实践(含源代码)

参考文献: https://www.jianshu.com/p/437ce8ed0413文章目录 一、导读二、Focal Loss 原理三、实验对比3.1 使用交叉熵损失函数3.2 使用Focal Loss 损失函数3.3 总结 一、导读 Focal Loss 是一个在交叉熵(CE)基础上改进的损失函数&#xff…

Java正则表达式MatchResult的接口、Pattern类、Matcher类

Java正则表达式MatchResult的接口 java.util.regex.MatchResult接口表示匹配操作的结果。 此接口包含用于确定与正则表达式匹配的结果的查询方法。可以看到匹配边界,组和组边界,但不能通过MatchResult进行修改。 接口声明 以下是java.util.regex.Matc…

spring复习:(34)配置文件的方式创建ProxyFactoryBean

一、配置文件 <?xml version"1.0" encoding"UTF-8"?> <beans xmlns"http://www.springframework.org/schema/beans"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xmlns:c"http://www.springframework.org/s…

vscode 无法格式化python代码、无法格式化C++代码(vscode格式化失效)另一种解决办法:用外部工具yapf格式化(yapf工具)

文章目录 我真的解决方法&#xff1a;用yapfyapf工具使用方法示例格式化单个文件&#xff08;格式化前先用-d参数预先查看格式化更改内容&#xff0c;以决定是否要更改&#xff09;格式化某个目录递归格式化某个目录 我真的 神马情况&#xff0c;我的vscode死活不能格式化pyth…

路径规划算法:基于减法平均优化的路径规划算法- 附代码

路径规划算法&#xff1a;基于减法平均优化的路径规划算法- 附代码 文章目录 路径规划算法&#xff1a;基于减法平均优化的路径规划算法- 附代码1.算法原理1.1 环境设定1.2 约束条件1.3 适应度函数 2.算法结果3.MATLAB代码4.参考文献 摘要&#xff1a;本文主要介绍利用智能优化…

用Python自动化处理Excel表格详解

Excel表格基础知识 Excel表格可以帮助用户创建、编辑、格式化和计算数据&#xff0c;并生成各种图表和报表。Excel表格通常用于商业、金融、科学、教育等领域。 Excel表格的常用操作 Excel表格的常用操作包括插入、删除、移动、复制、粘贴、排序和筛选、图表等。这些操作可以…

node操作MySQL数据库

本文节选自我的博客&#xff1a;node 操作 MySQL 数据库 &#x1f496; 作者简介&#xff1a;大家好&#xff0c;我是MilesChen&#xff0c;偏前端的全栈开发者。&#x1f4dd; CSDN主页&#xff1a;爱吃糖的猫&#x1f525;&#x1f4e3; 我的博客&#xff1a;爱吃糖的猫&…

集群基础4——haproxy负载均衡mariadb

文章目录 一、环境说明二、安装配置mariadb三、安装配置haproxy四、验证 一、环境说明 使用haproxy对mysql多机单节点进行负载均衡。 主机IP角色安装服务192.168.161.131后端服务器1mariadb&#xff0c;3306端口192.168.161.132后端服务器2mariadb&#xff0c;3306端口192.168.…

【2023 年第二届钉钉杯大学生大数据挑战赛初赛】 初赛 A:智能手机用户监测数据分析 问题一Python代码分析

2023 年第二届钉钉杯大学生大数据挑战赛初赛 初赛 A&#xff1a;智能手机用户监测数据分析 问题一Python代码分析 1 题目 2023 年第二届钉钉杯大学生大数据挑战赛初赛题目 初赛 A&#xff1a;智能手机用户监测数据分析 一、问题背景 近年来&#xff0c;随着智能手机的产生&a…

STM32F10x外部中断/事件控制器(EXTI)应用

往期文章&#xff1a; STM32F1x固件库函数学习笔记&#xff08;一&#xff09; 文章目录 一、EXTI简介二、EXTI初始化结构体详解三、外部中断&#xff08;EXTI&#xff09;编程要点及例程参考文献 一、EXTI简介 外部中断/事件控制器&#xff0c;简称&#xff1a;EXTI&#x…

Jenkins打包、发布、部署

目录 前言 一、安装jdk 二、安装maven 三、安装git 四、安装jenkins 五、访问jenkins 六、创建用户 七、配置jenkins 八、执行 总结 前言 服务器&#xff1a;CentOS 7.9 64位 jdk&#xff1a;1.8 maven&#xff1a;3.9.1 git&#xff1a;git version 1.8.3.1 jenkins&a…

计算机中的数制与编码(二进制转换)

一、进制表示 1. 十进制表示 使用&#xff08;0&#xff0c;1&#xff0c;2&#xff0c;…&#xff0c;9&#xff09;十位数字表示&#xff0c;十进制运算时逢十进一。 2. 二进制表示 使用(0&#xff0c;1)两个数字表示&#xff0c;二进制运算时逢二进一。 3. 十六进制表示…

AIGC文生图:stable-diffusion-webui部署及使用

1 stable-diffusion-webui介绍 Stable Diffusion Web UI 是一个基于 Stable Diffusion 的基础应用&#xff0c;利用 gradio 模块搭建出交互程序&#xff0c;可以在低代码 GUI 中立即访问 Stable Diffusion Stable Diffusion 是一个画像生成 AI&#xff0c;能够模拟和重建几乎…

宝塔面板清理

查看磁盘使用情况时发现/dev/sda1满了&#xff0c;重启服务器也不行&#xff0c;瞎折腾了半天&#xff0c;才发现是宝塔的回收站占了较大的磁盘&#xff0c;于是按以下操作清理了下&#xff0c;就可以了 1、清除系统监控记录。打开宝塔面板后台&#xff0c;找到监控&#xff0c…

模拟面试2

1.说一说ArrayList的实现原理&#xff1f; ArrayList底层基于数组实现&#xff0c;内部封装了Object类型的数组&#xff0c;实现了list接口&#xff0c;通过默认构造器创建容器时&#xff0c;该数组被初始化为一个空数组&#xff0c;首次添加数据时再将其初始化为容量为10的数组…

变量生命符thread_local

thread_local是c11为线程安全引进的变量声明符。 thread_local是一个存储器指定符&#xff1a; 所谓存储器指定符&#xff0c;其作用类似命名空间&#xff0c;指定了变量名的存储期以及链接方式。同类型的关键字还有&#xff1a; static&#xff1a;静态或者线程存储期&…

2.我的第一个 JAVA 程序Helloword

对象&#xff1a;对象是类的一个实例&#xff0c;有状态和行为。例如&#xff0c;一条狗是一个对象&#xff0c;它的状态有&#xff1a;颜色、名字、品种&#xff1b;行为有&#xff1a;摇尾巴、叫、吃等。类&#xff1a;类是一个模板&#xff0c;它描述一类对象的行为和状态。…

前端videojs实现m3u8格式的直播

一、安装 npm install --save-dev video.js 二、引入 import videojs from "video.js"; import "video.js/dist/video-js.css"; 三、template 由于此处客户需要全屏至指定框大小&#xff0c;而不是全屏整个屏幕所以没用插件自带的全屏控件 隐藏自带全屏…

Unity 2DJoint 物理关节功能与总结

本文将以动图方式展示每个2D物理关节的效果&#xff0c;并解析部分重要参数的作用以及常见调配方式。 1.Distance Joint 2D&#xff08;距离关节&#xff09; 顾名思义是距离关节&#xff0c;以下为启用EnableCollision前后 关节使得两物体保持一定的距离&#xff0c;如果旋…

Apache (二十一)

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 目录 前言 一、概述 二、安装 1. yum安装 2. 编译安装 三、 目录结构 1. yum安装 2. 编译安装 四、虚拟主机头配置 1. 基本配置 2. 实现方式 五、配置文件语法检查 六、 …