【论文阅读】DeepLab:语义图像分割与深度卷积网络,自然卷积,和完全连接的crf

news2025/1/22 21:55:43

【论文阅读】DeepLab:语义图像分割与深度卷积网络,自然卷积,和完全连接的crf

文章目录

  • 【论文阅读】DeepLab:语义图像分割与深度卷积网络,自然卷积,和完全连接的crf
    • 一、介绍
    • 二、联系工作
    • 三、方法
      • 3.1 整体结构
      • 3.2 使用空间金字塔池的多尺度图像表示
      • 3.3 基于完全连通条件随机场(CRF)的结构预测精确边界恢复
    • 四、实验结果

DeepLab: Semantic Image Segmentation with Deep Convolutional Nets, Atrous Convolution, and Fully Connected CRFs

深度学习解决了语义图像分割的任务

做出了三个主要贡献,这些贡献在实验中被证明具有实质性的实际价值

  • 强调卷积与上采样滤波器,或“空洞卷积”,作为一个强大的工具在密集预测任务

    作用:卷积实现不增加参数数量或计算量的情况下有效地扩大过滤器的视野,以纳入更大的上下文**

  • 空间金字塔池(ASPP)的多尺度目标鲁棒分割方法

    作用:在多个尺度上捕获对象和图像上下文

  • 结合DCNNs和概率图模型的方法,改进了目标边界的定位

    作用:条件随机场(CRF)相定性和定量地展示了定位性能

提出的DeepLab系统在PASCAL VOC -2012语义图像分割任务

一、介绍

以端到端方式训练的DCNNs比依赖手工制作特征的系统提供了明显更好的结果

DCNNs对局部图像变换的内置不变性,这使得它们能够学习越来越抽象的数据表示

可能会妨碍语义分割等密集的预测任务,因为在这些任务中不需要对空间信息进行抽象

DCNN应用于语义图像分割的三个挑战:

  • 特征分辨率降低
  • 多个尺度上存在目标
  • 由于DCNN的不变性而降低了定位精度


当DCNN以完全卷积的方式使用时,这将导致显著降低空间分辨率的特征图

DCNNs的最后几个最大池化层中去除下采样算子,并在随后的卷积层中对滤波器进行上采样

采用空洞卷积作为上采样滤波器卷积

空洞卷积允许我们在不增加参数数量或计算量的情况下有效地扩大滤波器的视场

相当于用具有互补有效视场的多个滤波器探测原始图像,从而在多个尺度上捕获物体以及有用的图像上下文

我们的工作探索了一种我们认为非常有效的替代方法。

采用完全连接的条件随机场(CRF)来提高模型捕获精细细节的能力

crf已广泛用于语义分割,将多路分类器计算的类分数与像素和边缘的局部相互作用捕获的低级信息相结合

越来越复杂的工作来模拟层次依赖关系

使用了完全连接的成对CRF,它具有高效的计算能力,并且能够捕捉精细的边缘细节,同时还能满足长距离依赖关系

DeepLab模型的高级说明如图

重新用于语义分割任务:

  • 将所有全连接层转换为卷积层(即全卷积网络[14])
  • 通过亚卷积层增加特征分辨率
  • 双线性插值将分数图上采样8倍,以达到原始图像分辨率
  • 输入输出到一个完全连接的CRF

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

双线性插值阶段将特征映射扩大到原始图像分辨率。然后应用全连接的CRF来细化分割

二、联系工作

大多数成功的语义分割系统依赖于手工制作的特征与平面分类器相结合

但这些系统的性能一直受到特征表达能力有限的影响

  • 第一类基于dcnn的语义分割系统通常采用自下而上的级联图像分割
  • 第二类工作依赖于使用卷积计算的DCNN特征进行密集图像标记
  • 第三类作品使用DCNNs直接提供密集的类别级像素标签


本文工作建立在这些工作的基础上,,通过控制特征分辨率、引入多尺度池化技术和在DCNN之上集成密集连接的CRF[22]来扩展它们

DCNN与CRF的结合当然并不新鲜,但之前的研究都是尝试局部连接的CRF模型


我们采用的全连接CRF模型[22]中的高斯CRF电位可以捕获远程依赖关系

大部分方法成功地对DCNN和CRF进行了联合学习

对整个训练集都可以使用像素级语义注释的假设


空洞卷积还允许我们扩大过滤器的视野,以纳入更大的环境

三、方法

3.1 整体结构

DCNNs进行语义分割或其他密集预测任务

被证明可以通过以全卷积方式部署DCNNs来简单而成功地解决

最近的DCNNs中,每个方向的分辨率通常是32倍。部分补救措施是使用“反卷积”层

在这里插入图片描述

图中的公式表明卷积的速度和扩展的快慢

速率参数r对应于我们对输入信号进行采样的步幅

在这里插入图片描述

在低分辨率输入特征映射上进行标准卷积稀疏特征

在高分辨率的输入特征映射上,使用率为r¼2的亚历斯卷积进行密集特征提取。
在这里插入图片描述

操作:

  • 分辨率降低2倍
  • 使用核进行卷积-这里是垂直高斯导数
  • 特征映射植入到原始图像坐标


将全分辨率图像与“带孔”滤波器进行卷积,我们可以计算所有图像位置的响应

因此过滤器参数的数量和每个位置的操作次数都保持不变


相反,我们采用了一种混合方法,在效率和精度之间取得了良好的平衡,使用空洞卷积将计算特征图的密度增加了4倍,然后使用8倍的快速双线性插值来恢复原始图像分辨率的特征图

3.2 使用空间金字塔池的多尺度图像表示

cnn已经显示出一种非凡的隐式表示规模的能力

第一种方法相当于标准的多尺度处理。我们使用共享相同参数的并行DCNN分支

多尺度处理显著提高了性能,但代价是计算多尺度输入的所有DCNN层的特征响应

该方案使用多个具有不同采样率的并行空洞卷积层。每个采样率提取的特征在单独的分支中进一步处理并融合以产生最终结果。

在这里插入图片描述

3.3 基于完全连通条件随机场(CRF)的结构预测精确边界恢复

在定位精度和分类性能之间的权衡似乎是DCNNs固有的

具有多个最大池化层的更深模型在分类任务中被证明是最成功的

DCNN得分图可以预测物体的存在和大致位置,但不能真正描绘出它们的边界


在这里插入图片描述

工作追求两个方向来解决这个挑战

  • 利用卷积网络中的多层信息,以便更好地估计目标边界
  • 采用超像素表示

基于耦合DCNNs的识别能力和全连接crf的细粒度定位精度来追求另一个方向,并表明它在解决定位挑战方面非常成功

并在远远超出现有方法范围的细节水平上恢复对象边界

作用:

  • CRFs被用于平滑噪声分割映射
  • 模型对相邻节点进行耦合,倾向于对空间近端像素进行相同标签分配
  • 短期crf的主要功能是清除建立在局部手工设计特征之上的弱分类器的虚假预测

为了克服短程CRF的这些局限性,我们将的全连接CRF模型集成到我们的系统中

在这里插入图片描述

表达式在不同的特征空间中使用两个高斯核

  • 第一个内核强制具有相似颜色和位置的像素具有相似的标签
  • 第二个内核在强制平滑时仅考虑空间接近性

四、实验结果

我们对Imagenet-pretrained VGG-16或ResNet-101网络的模型权值进行微调,使其以一种简单的方式适应语义分割任务

SGD过程

解耦了DCNN和CRF的训练阶段

在这里插入图片描述

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

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

相关文章

机器人期刊:Science Robotics and IEEE Transactions

文章目录 1. Science Robotics (出版商 AAAS)2. IEEE Transactions on RoboticsReference1. Science Robotics (出版商 AAAS) https://www.science.org/journal/scirobotics 2. IEEE Transactions on Robotics

动手学深度学习-现代循环神经网络(GRU、LSTM、编码器-解码器等)

现代循环神经网络 上一章节(循环神经网络)介绍了循环神经网络的基础知识,这种网络可以更好的处理序列数据。我们在文本数据上实现了基于循环神经网络的语言模型,但是对于当今各种各样的序列学习问题,这些技术可能不够…

SpringBoot集成JSP和war包部署到Tomcat

SpringBoot集成JSP 加依赖 <dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.springframework.boot…

Spring Security的API Key实现SpringBoot 接口安全

Spring Security的API Key实现SpringBoot 接口安全 Spring Security 提供了各种机制来保护我们的 REST API。其中之一是 API 密钥。API 密钥是客户端在调用 API 调用时提供的令牌。 在本教程中&#xff0c;我们将讨论如何在Spring Security中实现基于API密钥的身份验证。 API…

hyperf 二十五 数据迁移 一

教程&#xff1a;Hyperf 版本说明 一 生成迁移 php bin/hyperf.php gen:migration create_users_table 执行文件&#xff1a;Hyperf\Database\Commands\Migrations\GenMigrateCommand 功能&#xff1a;创建迁移文件 参数&#xff1a; name 文件名称 选项&#xff1a; c…

Docker连接Mysql

Docker连接mysql Docker通过云服务器&#xff0c;与本地连接 引言&#xff1a;这个东西我看狂神秒解决&#xff0c;我就试试了&#xff0c;结果G了&#xff0c;花了我两个小时&#xff0c; 希望内容能帮你解决问题 话不多说&#xff0c;直接上内容&#xff1a; navicat连接…

记一次 .NET某设备监控自动化系统 CPU爆高分析

一&#xff1a;背景 1. 讲故事 先说一下题外话&#xff0c;一个监控别人系统运行状态的程序&#xff0c;结果自己出问题了&#xff0c;有时候想一想还是挺讽刺的&#xff0c;哈哈&#xff0c;开个玩笑&#xff0c;我们回到正题&#xff0c;前些天有位朋友找到我&#xff0c;说…

redis IO多路复用模型详解

一、IO 1.1、IO模型 我们常说的IO&#xff0c;指的是文件的输入和输出 &#xff0c;但是在操作系统层面是如何定义IO的呢&#xff1f;到底什么样的过程可以叫做是一次IO呢&#xff1f; 拿一次磁盘文件读取为例&#xff0c;我们要读取的文件是存储在磁盘上的&#xff0c;我们的…

Redis的BitMap的使用

简介 Redis的Bitmap不是一个独立的数据结构类型&#xff0c;而是基于字符串&#xff08;String&#xff09;类型实现的一种功能 &#xff0c;存储的是二进制的文件&#xff0c;布隆过滤器就是基于BitMap实现的。 语句的使用 新增操作 setbit key offset value offset的首位…

车充芯片方案 H4112 异步整流芯片 12V转5V 24V转5V 24V转9V 24V转12V

车充芯片方案的工作原理&#xff1a; 利用PWM&#xff08;脉冲宽度调制&#xff09;技术来调节开关管的开关时间&#xff0c;从而实现稳定的输出电压&#xff0c;就是通过微处理器的数字输出来对模拟电路进行控制&#xff0c;根据面积等效原理&#xff0c;通过对一系列脉冲的宽…

支持向量机 SVM | 非线性可分:核函数

目录 一. 情景引入二. 核函数1. 核函数的分类1.1 线性核函数(Linear Kernel)1.2 多项式核函数(Polynomial Kernel)1.3 高斯核函数(Radial Basis Function Kernel)1.4 Sigmoid核函数(Sigmoid Kernel) 2. 核函数小节 前面我们讲述了SVM算法的线性可分问题&#xff0c;即对应硬间隔…

集简云新增通义千问qwen 72b chat、qwen1.5 等多种大语言模型,提升多语言支持能力

通义千问再开源&#xff01;继发布多模态模型后&#xff0c;通义千问 1.5 版本也在春节前上线。 此次大模型包括六个型号&#xff1a;0.5B、1.8B、4B、7B、14B 和 72B&#xff0c;性能评测基础能力在在语言理解、代码生成、推理能力等多项基准测试中均展现出优异的性能&#x…

个人商城系统开源(登录)

原文地址&#xff1a;个人商城系统开源&#xff08;登录&#xff09; - Pleasure的博客 下面是正文内容&#xff1a; 前言 由于近期实在没有什么话题可写和一些有趣的项目教程可以分享。所以我只能决定将我自己亲手编写的一个迷你迷你商城系统进行开源。 也就是放在我博客右边…

【unity实战】事件(Event)的基本实战使用

文章目录 最终效果前言一、素材二、角色金币交互1. 拾取金币2. 显示金币数UI 完结 最终效果 前言 之前我们介绍过委托的用法&#xff0c;具体可以跳转&#xff1a;【unity小技巧】委托&#xff08;Delegate&#xff09;的基础使用和介绍 这期来讲讲事件&#xff0c;使用你会发…

IDEA稀奇古怪问题的解决方案

idea在电脑死机重启后&#xff0c;启动项目报错 尝试了各种办法&#xff0c;重新导入项目&#xff0c;删除.idea文件重新导入&#xff0c;把本地代码删除重新pull下来再次导入&#xff0c;均无法解决。而且代码在eclipse中可以正常启动&#xff0c;遂排除代码和网络环境原因。…

【VTKExamples::PolyData】第四十九期 Silhouette

很高兴在雪易的CSDN遇见你 VTK技术爱好者 QQ:870202403 前言 本文分享VTK样例Silhouette,并解析接口vtkPolyDataSilhouette,希望对各位小伙伴有所帮助! 感谢各位小伙伴的点赞+关注,小易会继续努力分享,一起进步! 你的点赞就是我的动力(^U^)ノ~YO 1. Silhouett…

消息队列实现AB进程对话

进程A代码&#xff1a; #include <stdio.h>#include <sys/types.h>#include <sys/ipc.h>#include <sys/msg.h>#include <stdlib.h>#include <string.h>#define MSG_EXCEPT 020000struct msgbuf{long mtype;char mtext[100];};int main(in…

Redis6 搭建主从集群架构

文章目录 搭建Redis主从集群架构1.集群结构2.准备实例和配置3.启动4.开启主从关系5.测试 搭建Redis主从集群架构 安装部署单机版Redis6可参考&#xff1a; 安装部署单机版Redis6 1.集群结构 我们搭建的主从集群结构如图&#xff1a; 我们计划是在一台虚拟机里去部署三个R…

Docker数据卷篇

1. 数据卷&#xff08;容器数据管理&#xff09; 引言&#xff1a;在之前的nginx案例中&#xff0c;修改nginx的html页面时&#xff0c;需要进入nginx内部。并且因为没有编辑器&#xff0c;修改文件也很麻烦。 这就是因为容器与数据&#xff08;容器内文件&#xff09;耦合带…

重新下载各种编辑器、软件

全是资源编辑器&#xff0c;书写&#xff0c;有需要书写资料或者是代码编程的可以找我呀&#xff0c;闲暇时间接一下副业。 git任务也重启了&#xff0c;原家厨房项目也重启了&#xff0c;浓心项目也在重启。如下图 后续再慢慢联系吧&#xff0c;先书写到这里&#xff0c;晚安…