L2G: A Simple Local-to-Global Knowledge Transfer Framework for WSSS

news2024/11/28 4:35:20

摘要

挖掘精确的类感知注意图,即类激活图,是弱监督语义分割的关键。在本文中,我们提出了L2G,一个用于高质量对象注意力挖掘的简单的在线局部到全局知识转移框架。我们观察到,当用局部补丁替换输入图像时,分类模型可以发现具有更多细节的目标区域。考虑到这一点,我们首先利用局部分类网络从输入图像中随机裁剪的多个局部补丁中提取注意力。然后,我们利用全局网络在多个本地注意力地图上在线学习互补的注意力知识。我们的框架引导全局网络从全局视图中学习捕获的丰富的对象细节知识,从而产生高质量的注意力图,可以直接用作语义分割网络的伪注释。实验表明,我们的方法在PASCAL VOC 2012和MS COCO 2014的验证集上分别获得了72.1%和44.2%的mIoU分数,创造了新的技术记录。

Code is available at https://github.com/PengtaoJiang/L2G.

1.引言

我们的经验观察到,与整个输入图像相比,以局部图像块作为输入的分类模型可以发现更多的判别区域。这为利用局部图像patches提高注意图质量提供了一种可行的方法。

图一:

提出的方法的概念工作流程。我们利用从局部网络中提取的具有丰富细节的局部视图注意图来教导全局网络。这使得全局网络能够在线地从局部网络中学习到丰富的局部细节知识,从而获得更完整的对象关注。

我们的方法有以下优点。首先,我们从输入图像的多个局部视图而不是全局视图生成注意图。这使我们能够获得未发现的语义区域的更多细节,这些语义区域在不同的局部视图中也是互补的,如图2所示。其次,通过设计知识转移损失,将互补关注知识以在线学习的方式有效地转移到全局网络中。这使得全局网络能够捕获像素级语义对象细节,并在推理中生成高质量的注意图。最后但并非最不重要的是,整个管道简单而灵活。我们可以选择性地向局部网络添加额外的约束[32],以帮助塑造获得的对象注意力。

图二:我们的L2G注意知识转移方法的动机。最上面一行显示了原始图像(全局视图)和随机裁剪后的多个图像补丁(局部视图)。第二行为CAM[65]生成的注意图。我们可以观察到,与全局视图相比,局部视图的注意图捕获了更多的对象细节。

2.相关工作 

2.2知识蒸馏

我们的工作也与知识蒸馏有关[17,21,61],其目的是将知识从训练有素的教师模型提炼为学生模型。对于图像分类任务,这些工作主要是通过模仿教师模型的预测分布来改进学生模型。此外,也有研究者[20,39]对语义分割任务的知识蒸馏进行了研究。不同的是,我们研究了如何通过在线学习的方式将局部视图捕获的注意知识转移到全局网络中,以更好地利用来自多个视图的互补信息。

3.方法

3.1预备知识

生成注意图的方法。给定输入图像I,设y为图像级标签。最后一个卷积层的输出特征F有C个通道,与类的数量相同。最后一个卷积层之后是一个全局平均池化层,其中特征F被池化为大小为C的向量f^{C}。我们采用s型交叉熵损失函数来计算分类损失,其表达式为:

注意图可以从最后一个卷积层的输出中生成。对于某些c类,注意图A^{c}是从F的c通道导出的,可以表示为

3.2 总体框架 

所提出方法的总体框架如图3所示。在功能上,有四个组成部分:全局网络、局部网络、注意力转移模块和形状转移模块。全局网络和局部网络可以是任意的CNN分类器,如流行的VGGNet[46]或ResNet-38[56]。在注意转移模块中,我们优化了两个损失函数:用于识别语义对象的分类损失lcl和鼓励全局网络模仿局部网络以发现更多判别区域的注意转移损失Lat。在形状转移模块中,我们引入了一个形状约束来损失Lat,产生Lst,以塑造捕获的目标注意力。因此,整体优化后的损失函数可表示为:

当不添加形状约束时,Lkt = Lat。否则,Lkt = Lst。 

 图三:提出方法的总体框架。局部网络捕获的互补注意图通过知识转移损失被提取到全局网络中

3.3. Local-to-Global Attention Transfer

给定输入图像I,我们将其转换为不同视图V的集合,包括全局视图VI和N个局部视图{V1, V2,…, VN},它们是从全局视图中随机裁剪出来的。本地视图{V1, V2,…, VN}被发送到本地网络,专注于生成包含丰富对象细节的注意图。将全局视图VI输入到全局网络中,其目的是从局部网络中学习知识,并在推理中产生对象关注。设{F1, F2,…, FN}为局部网络最后一层卷积的输出,每一层都有C个通道,对应于类的数量。设\hat{F}为具有C + 1个通道的全局网络的最后一个卷积层的输出。分类损失和注意转移损失的定义如下:

 分类损失:本地网络中存在分类损失。具体来说,特征映射{F1, F2,…, FN}的局部视图首先发送到全局池化层,在全局池化层中,特征被池化为一组1D特征向量{f1, f2,…, fN}。给定1D特征向量fi,所有类别的预测概率可由qi = σ(fi)计算。回想一下σ是s型函数。

则分类损失lcls可以写成:

 

Attention Transfer Loss: 我们首先从本地网络生成本地视图的注意力图。我们用Eqn(2)生成注意图{A_{1}^{c}, A_{2}^{c},…,如果c在图像级标签中,则c为第c类。如果c不在图像级标签中,则相应注意图中的注意值为零。为了将局部网络获得的注意力转移到全局网络,我们采用均方误差损失

给定全局网络的输出\hat{F},我们沿着每个位置的通道维度对\hat{F}应用Softmax函数,得到

(这里的 Gc表示Softmax函数应用于 F^的第 c 个通道后,在每个位置的输出值。F^c​ 是 F^ 在第 c 个通道上对应位置的原始输出值。公式中的分母是对 F^的所有 C+1 个通道(包括第 c个通道)应用指数函数后的结果求和,这样做是为了进行归一化。Softmax函数在这里的作用是将原始的输出值 F^c转换为一个概率值,表示在该位置处类别 c 的概率。这样,每个位置的 Gc就可以被解释为该位置属于类别 c的概率。在注意力转移损失的上下文中,Gc​ 将用于与局部网络生成的注意力图 Ac 进行比较,以计算损失。) 

"Gc" 中每个位置的值表示该位置属于类别 c 的概率。设 {G1, G2, ..., GN} 分别表示全局视图中与 {A1, A2, ..., AN} 对应的区域,即每对 (G1, A1) 都是从全局视图的同一坐标裁剪而来。注意力转移损失通过测量 {Ai} 和 {Gi} 之间的差异来定义,具体如下:

在训练过程中,我们对上述两个损失进行了联合优化。在推理过程中,注意力图是从全局网络生成的,而局部网络可以被丢弃。

讨论:我们的方法提供了一种有效的方法来利用来自全局视图和局部视图的补充信息。局部到全局的注意力转移方法使全局网络以在线学习的方式吸收局部网络捕获的丰富的对象细节知识。虽然大多数以前的工作也使用数据增强,如随机裁剪,作为输入,他们没有一个组件,从全局视图在线积累对象细节知识,从裁剪的局部补丁。这使得我们从本地到全局的策略与之前的作品大不相同。我们将在实验部分展示所提出的方法相对于其他方法的更多优势。

3.4. Local-to-Global Shape Transfer

提出的局部到全局的注意力转移策略已经可以比原始CAM获得更多的整体对象注意力[65]。然而,由于注意转移过程仅利用图像级标签,因此在物体边界周围捕获的注意不够清晰。为了更好地捕捉注意图中局部目标的形状,我们尝试通过添加形状约束将辅助的显著目标信息引入注意转移损失中。显著性模型[38]可以作为一种与类别无关的显著性对象检测器,它可以分割前景对象并提供形状信息。(这个显著性模型,跟之前的论文IRN中的类边界图很相似,都是边界分割)

形状转移过程很简单,如图3的右侧所示。给定来自局部网络的注意力图{Ai},我们首先用一个小阈值(例如,0.1)对它们进行二值化,得到二值图{Bi}。然后,我们利用显著性模型生成给定图像I的显著性图S,并得到I上相同坐标为{Si}的注意图{Ai}对应的显著性区域。注意转移损失可以重写为

"×" 表示逐元素乘法,"|Si|" 是指显著性图 Si 的基数(即显著区域的像素数)。通过使用 Bi×Si,我们的目标是移除显著对象之外的注意力区域,这些区域很可能属于背景。这使我们的方法能够充分利用显著性图提供的形状信息,从而产生高质量的注意力图。我们将在实验部分更详细地阐述这一点。需要注意的是,并非所有图像都包含显著对象,因此总是使用公式(7)的上半部分是不合适的。因此,对于那些显著性图没有包含任何区域的图像,我们使用原始的注意力图作为监督,正如公式(7)下半部分所公式化的那样。

值得一提的是,EPS[32]也使用显著性图作为监督,为网络提供形状信息。不同的是,我们的方法更侧重于如何利用多个局部视图,以及如何有效地将学习到的知识从局部网络转移到全局网络。在下文中,我们将展示拟议的局部到全局知识转移相对于EPS的优势。

4.实验 

数据集:PASCAL VOC 2012和MS COCO 2014上进行。

评价指标:使用平均相交-超并(mIoU)[41]作为评价指标。

数据增强:对于数据增强,输入图像的短尺寸被调整为512。全局视图的分辨率为448×448,从输入图像裁剪而来。从全局视图裁剪出分辨率为320×320的局部图像补丁

分类网络:在[2,32]之后,我们使用ResNet-38[56]作为我们的分类网络。此外,我们还在分类网络中使用了像素相关模块(PCM)[52]来约束目标物体的形状。注意图是使用多尺度测试策略从全局网络生成的[2]。(SEAM模型里面也用了PCM

表一:不同网络设置下mIoU得分的比较。基线为原始CAM[65]。SW:滑动窗口策略在推理期间应用于基线[65]。Local:使用多个局部图像补丁代替输入图像来训练分类网络。L2G:我们的方法只有局部到全局的注意力转移。mIoUtrainaug表示伪分割标签在增广训练集上的mIoU分数。

表2:消融实验中各组成部分的重要性。L2G: Local-to-global的注意力转移。形状:局部到全局的形状转换。可以看到,与仅使用本地网络的设置相比,我们的本地到全局传输策略可以显著提高性能。当结合形状信息时,L2G仍然可以大大提高性能 

图4:不同方法注意图的定性比较。

 图5:消融对局部视图大小和数目的影响

Local view sampling strategy. 首先,我们研究了抽样策略对注意图的影响。我们比较了两种局部视图采样策略。一种是随机抽样策略,另一种是均匀抽样策略。我们通过在全局视图上均匀滑动窗口来实现统一采样策略。通过这种方式,每个像素都可以被封闭在某个局部视图中。对于分辨率为448×448的全局视图,我们将窗口大小设置为320×320,步幅设置为64,从而获得9个本地视图。为了与均匀采样策略进行公平的比较,我们对随机采样策略随机采样9个图像补丁。使用这两种策略的伪分割标签的质量非常接近(随机68.8% vs均匀68.5%)。为了灵活调整局部视图数N,我们在方法中选择了随机采样策略。

补丁大小和补丁编号n:补丁大小控制局部视图的空间大小。补丁号N表示发送到局部网络的局部视图的数量。为了研究它们对注意力质量的影响,我们选择了5种不同的补丁大小[240×240, 280×280, 320×320, 360×360, 400×400]。在研究补丁数N时,我们从[1,2,4,8,16]的范围中选择局部视图的个数。如图5所示,我们观察到当N增大时,伪分割标签的质量变好。当局部视图数大于4时,性能趋于鲁棒性。对于补丁大小,我们可以看到,当局部视图大小为320×320时,我们的方法达到了最佳性能。当尺寸大于320×320时,伪分割标签的质量大幅下降。

表3:无显著性图的PASCAL VOC训练集上伪分割标签的比较

表4:结合显著性图的PASCAL VOC训练集上伪分割标签的比较

 

如表1所示,local-to-global attention transfer strategy的效果远好于基线CAM[65],验证了我们方法的有效性。然而,滑动窗口策略的结果甚至比原来的凸轮更差。我们认为滑动窗口策略不适合挖掘非判别目标区域,因为训练的模型仍然基于具有全局视图的输入。这使得在处理全局视图时,具有不同外观和独特区域的未发现对象区域难以响应。

全局网络中的分类损失。局部网络具有分类损失来引导注意力产生。有人可能会问:“全局网络也需要分类损失吗?”为了回答这个问题,我们尝试在全局网络中添加一个分类损失。我们观察到,当添加分类损失时,由全局网络生成的注意图定位到非常小的目标区域。伪分割标签的质量从70.3%下降到53.8%。我们认为分类损失和注意转移损失的作用是相反的。分类损失使注意力具有更强的辨别能力。注意力转移损失有助于将非歧视性区域的注意力转移到全局网络。因此,注意力地图变得更糟。

局部和全局骨干网共享。在这里,我们探讨了有/没有局部和全局网络骨干网共享之间的性能差距。当局部网络和全局网络共用同一骨干网时,训练集上伪分割标签的mIoU分数为69.2%。经过分割网络的训练,验证集上的mIoU得分为70.9%。当局部网络和全局网络使用不同的骨干网时,伪分割标签的mIoU分数可以提高1.1%。最终分割结果也获得了1.2%的mIoU增益。

 

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

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

相关文章

汽车的UDS诊断02

UDS的不同服务: 1)物理寻址和功能寻址 can总线上往往有多个ECU,诊断设备可以和某个ECU通信,也可以和多个ECU通信,通过物理寻址和功能寻址来解决这个问题,只针对请求报文: 物理寻址:就是诊断仪与ECU之间点对点通信 功能寻址:就是诊断仪与多个ECU之间一对多信 我们的…

数字货币发行项目开发基本要求及模式创建与海外宣发策略

随着区块链技术的迅速发展和应用普及,数字货币项目(Cryptocurrency Projects)成为了全球金融创新的重要领域。无论是中心化的数字货币(如稳定币)还是去中心化的加密货币,都在重塑金融市场的格局。然而&…

halcon二维码识别

read_image (Image, C:/Users/Administrator/Desktop/二维码测试/1.bmp) rgb1_to_gray (Image, GrayImage) *创建一个二维码数据class模型create_data_code_2d_model (Data Matrix ECC 200,[], [],DataCodeHandle) *-检测和读取图像中的二维数据代码符号或训练二维数据代码模…

【C++笔记】引用和const引用以及inline和nullptr

【C笔记】引用和const引用以及inline和nullptr 🔥个人主页:大白的编程日记 🔥专栏:C笔记 文章目录 【C笔记】引用和const引用以及inline和nullptr前言一.引用1.1引用的概念和定义1.2引用的特性1.3引用的使用 二. const引用三.指…

自动微分autograd实践要点

目录 定义Value手动定义每个 operator 的 _backward() 函数构建反向传播计算链 本文主要参考 反向传播和神经网络训练 大神Andrej Karpathy 的“神经网络从Zero到Hero 系列”之一,提炼一些精要,将反向传播的细节和要点展现出来 定义Value 第一步首先要…

基于BlockQueue的生产消费模型及Linux中的信号量

基于BlockQueue的生产消费模型 Task.hpp #pragma once#include<cstdio> #include<iostream> #include<string> #include<functional>using namespace std; class CalTask {using func_tfunction<int(int,int,char)>;//typedef function<int(…

OW-VISCap——开放世界视频实例分割方法研究

概述 论文地址&#xff1a;https://arxiv.org/pdf/2404.03657 本文提出了一种名为 OW-VISCap&#xff08;开放世界视频实例分割和字幕&#xff09;的方法。其三大贡献是 开放世界对象查询&#xff1a;除了已知对象查询外&#xff0c;还引入了开放世界对象查询&#xff0c;以发…

python爬虫521

爬虫521 记录 记录 最近想学爬虫&#xff0c;尝试爬取自己账号下的文章标题做个词云 csdn有反爬机制 原理我就不说啦 大家都写了 看到大家结果是加cookie 但是我加了还是521报错 尝试再加了referer 就成功了(╹▽╹) import matplotlib import requests from wordcloud impor…

第2章-03-HTTP协议,POST与GET等请求方式

🏆作者简介,黑夜开发者,CSDN领军人物,全栈领域优质创作者✌,CSDN博客专家,阿里云社区专家博主,2023年CSDN全站百大博主。 🏆数年电商行业从业经验,历任核心研发工程师,项目技术负责人。 🏆本文已收录于专栏:Web爬虫入门与实战精讲,后续完整更新内容如下。 文章…

揭秘移动IP:为何定位精度多停留在城市级?

随着电子信息技术的日新月异&#xff0c;移动网络已深度融入我们的日常生活&#xff0c;从2G的初步尝试到5G的飞跃&#xff0c;不仅数据传输速度实现了质的飞跃&#xff0c;更催生了丰富多样的移动应用场景与功能。在这一变革浪潮中&#xff0c;移动IP&#xff08;Mobile IP&am…

再见百度网盘,我有ZFile了!!【送源码】

项目简介 ZFile是一款强大的在线网盘管理系统&#xff0c;专为个人用户设计&#xff0c;能够将不同类型的存储资源统一在一个简洁易用的界面中进行管理和访问。通过ZFile&#xff0c;用户不再需要记住并登录多个云存储平台&#xff0c;所有的文件管理操作都可以在一个地方完成&…

Tomcat:Web 领域的闪耀明珠,魅力何在?

一、Web技术 HTTP 协议&#xff08;HyperText Transfer Protocol&#xff0c;超文本传输协议&#xff09;是互联网上应用最为广泛的一种网络协议。它的主要作用是在客户端和服务器之间传输超文本数据&#xff0c;如网页、图片、视频等。 HTTP 协议的特点 无状态性 HTTP 协议是…

【数学建模】优化模型——两辆平板车装货问题

问题描述 包装箱规格&#xff1a;共有七种规格的包装箱&#xff0c;每种包装箱的厚度&#xff08;t&#xff09;和重量&#xff08;w&#xff09;不同。表中列出了每种包装箱的厚度、重量及数量。 平板车限制&#xff1a; 每辆平板车的可用装载长度为10.2米&#xff08;1020厘…

《QT从基础到进阶·七十三》Qt+C++开发一个python编译器,能够编写,运行python程序

1、概述 源码放在文章末尾 该项目利用QtC实现了一个简易的python编译器&#xff0c;类似pycharm或vsCode这样的编译器&#xff0c;该python编译器支持如下功能&#xff1a; &#xff08;1&#xff09;支持编写python程序 &#xff08;2&#xff09;编写代码时有代码补全提示 &…

写给大数据开发:如何优化临时数据查询流程

你是否曾因为频繁的临时数据查询请求而感到烦恼&#xff1f;这些看似简单的任务是否正在蚕食你的宝贵时间&#xff0c;影响你的主要工作&#xff1f;如果是&#xff0c;那么这篇文章正是为你而写。 目录 引言&#xff1a;数据开发者的困境问题剖析&#xff1a;临时数据查询的…

MKS电源GMW-25RF Plasma Generator手侧

MKS电源GMW-25RF Plasma Generator手侧

C语言基础(八)

1、标准库函数&#xff1a; 测试代码1&#xff1a; #include <stdio.h> // 标准库函数头文件导入 // 自定义函数 int add(int a, int b) { return a b; } // 声明回调函数类型 typedef void (*Callback)(int); // 调用回调函数的函数 void process(Callb…

网络编程第三天

服务器&#xff1a; #include<sys/types.h> // 支持套接字地址结构 #include <sys/socket.h> // 提供套接字API #include <netinet/in.h> // 定义IP地址结构体 #include <string.h> // 提供字符串操作函数 #include <stdio.h> // 提供标准I/O操…

宠物空气净化器哪款能吸毛?希喂、米家宠物空气净化器测评分享

养猫最令人困扰的&#xff0c;就是掉毛与难以彻底消除的异味&#xff0c;这两个问题就成了养猫生活中的一大挑战。每当换季或是猫咪自我梳理时&#xff0c;家中便被一层细腻的绒毛覆盖&#xff0c;从地板到沙发&#xff0c;从床单到衣物&#xff0c;甚至是空气中都漂浮着细小的…

Dockerfile中CMD和ENTRYPOINT区别以及结合使用

1. 简述 在Dockerfile中,CMD和ENTRYPOINT都是用于指定容器启动时要运行的命令,但它们在使用方式和目的上有所不同。 下面将分别解释这两个指令的含义,并通过示例说明它们之间的区别,以及常见的结合使用案例。 Dockerfile制作镜像流程图: 2. CMD CMD指令用于指定容器启…