热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

超高分辨率图像内存高效分割的协同全局局部网络论文简读

code:https:paperswithcode.compaper190506368文章目录1摘要2论文的贡献3协作性的全局-局部网络3.1Motivation:WhyNotGl

code: https://paperswithcode.com/paper/190506368

文章目录

  • 1摘要
  • 2论文的贡献
  • 3协作性的全局-局部网络
    • 3.1 Motivation: Why Not Global or Local Alone
    • 3.2 GLNet Architecture
  • 4 Experiments
    • 4.1 Implementation Details
    • 4.2 DeepGlobe


1摘要

超高分辨率图像的分割要求越来越高,但对算法效率带来了重大挑战,特别是考虑到(GPU)内存限制。目前的方法要么对一个超高分辨率的图像进行降采样,要么将其裁剪成小块进行单独处理。无论哪种方式,局部细节或全局上下文信息的丢失都会导致有限的分割精度。我们提出了协作的全局本地网络(GLNet),以一种高内存效率的方式有效地保存全局和本地信息。GLNet由一个全局分支和一个局部分支组成,分别将降采样的整个图像及其裁剪后的局部斑块作为各自的输入。在分割方面,GLNet深度融合了来自两个分支的特征映射,从放大的局部补丁中捕获高分辨率的精细结构,并从降采样的输入中捕获上下文依赖关系。为了进一步解决背景区域和前景区域之间潜在的类不平衡问题,我们提出了GLNet的粗到细变体。内存效率高。在三个真实世界的超高空中和医学图像数据集(分辨率高达3000万像素)上进行了广泛的实验和分析。由于只使用了一个1080TiGPU和不到2GB的内存,我们的GLNet产生了高质量的分割结果,并与最先进的技术相比,实现了更具竞争力的精确内存使用权衡。
在这里插入图片描述

2论文的贡献

本文研究了超高分辨率图像的记忆效率分割问题,并首次对这个新课题进行了专门的分析。性能目标不仅是分割精度,还减少内存使用,并最终,两者之间的权衡。

我们提出的模型,称为协作全局本地网络(GLNet),集成了全局图像和局部补丁,用于训练和推断。GLNet有一个全局分支和一个本地分支,分别处理降采样的全局图像和裁剪的局部补丁。通过深度共享和/或相互规则化的特性映射,它们进一步相互作用和“调制”。这种特殊的设计使我们的GLNet能够很好地平衡其准确性和GPU内存的使用情况(图1中的红点)。为了进一步解决经常发生的类不平衡问题,例如,当一个人主要对分割小的前景区域感兴趣时,我们提供了GLNet的一个从粗到细的变体,其中全局分支提供了一个额外的边界盒定位。GLNet的设计使全局上下文信息和必要的局部细节之间的无缝集成成为可能,并通过学习进行平衡,以确保准确的分割。同时,它大大降低了GPU内存的使用,因为我们只操作降采样的全局图像加上裁剪的本地补丁;原始的超高分辨率图像永远不会加载到GPU内存中。我们总结了我们的主要贡献如下:

  • 针对超高分辨率图像分割的新问题,我们开发了一种内存高效的GLNet。训练只需要一个1080TiGPU,推理需要不到2GB的GPU内存,对于高达30M像素的超高分辨率图像。
  • GLNet可以有效地集成全局上下文和局部高分辨率的精细结构,产生高质量的分割。本地或全球的信息都被证明是不可或缺的。
  • 我们进一步提出了一种从粗到细的GLNet算法来解决超高分辨率图像分割中的类不平衡问题,在降低计算成本的同时进一步提高了性能。

3协作性的全局-局部网络

3.1 Motivation: Why Not Global or Local Alone

对于具有有限GPU内存的超高分辨率图像进行训练和推理,首先可能会提出两个特别的想法:对全局图像进行降采样,或将其裁剪成补丁。然而,它们都经常导致不希望出现的工件和糟糕的性能。图3(1)显示了一幅2448×2448像素的图像,其地面真实分割见图3(2):黄色代表“农业”,蓝色代表“水”,白色代表“贫瘠”。然后我们训练了两个FPN模型:一个是将所有图像降采样到500×500像素,另一个是从原始图像中裁剪出500×500像素的补丁。他们的预测分别如图3(3)和(4)所示。我们可以观察到,由于降采样中缺少细节,前者存在“抖动”伪影和不准确的边界。相比之下,后者有很大的错误分类区域。请注意,“农业”和“贫瘠”地区通常在视觉上很相似(图3(1)中的放大面板(a)和(b))。因此,基于斑块的训练缺乏空间上下文和邻里依赖信息,使得仅使用局部斑块难以区分“农业”和“贫瘠”。最后,我们在图3(5)中提供了GLNet的预测以供参考:它清楚地显示了全局和本地处理的杠杆优势。

在这里插入图片描述

3.2 GLNet Architecture

在分割过程中,每个分支的所有层的特征映射都与其他分支进行了深度共享(第3.2.2节)。然后聚合两组高级特征图,通过分支聚合层fagg生成最终的分割掩模(第3.2.3节)。为了约束两个分支和稳定训练,还将弱耦合正则化应用于局部分支训练。

为了与本地分支协作,首先将来自全局分支的特征映射裁剪在当前局部补丁的相同空间位置,然后上采样以匹配来自本地分支的特征映射的大小。接下来,它们被作为额外的通道连接到同一层中的本地分支特征映射中。我们还以一种对称的方式收集了来自本地分支的特征图。首先对局部特征图进行降采样,以匹配与从大源图像中裁剪出的斑块相同的相对空间比。然后将它们合并在一起(与裁剪局部斑块时的顺序相同),合并成一个与全局分支特征图具有相同大小的完整特征图。这些局部特征图也被连接到全局分支特征图的通道,然后进入下一层。
在这里插入图片描述

图5显示了深度特征图共享的过程,除了最后一层分支外,其余都是分层应用的。共享方向可以是单向的(例如,共享全局分支的特征映射到本地分支,G→L),也可以是双向的(G⇄L)。在每一层中,都要参考当前的全局上下文特征和局部的精细结构特征,并相互融合。
在这里插入图片描述
Branch Aggregation with Regularization

这两个分支将通过一个聚合层fagg进行聚合,并实现为一个包含3个×-3个滤波器的卷积层。它从本地分支的第L层ˆXLocL获取高级特征映射,并从全局分支ˆXGlbL获取相同的特征映射,并沿着通道将它们连接起来。fagg的输出将是最终的分割输出SˆAgg。除了主要分割损失执行SˆAgg,我们还应用两个辅助损失,执行分割输出从本地分支SˆLoc和全球分支SˆGlb接近相应的分割地图(本地补丁/全球降采样),分别,我们发现有助于稳定训练。

在实践中,我们发现局部分支容易过拟合一些强的局部细节,并“覆盖”全局分支的学习。因此,我们通过在两个分支的最后一层的特征映射之间添加一个弱耦合的正则化,试图避免局部分支比全局分支学习得“快得多”。具体地说,我们添加了欧几里得范数惩罚λkˆXLocL−ˆXGlbLk2,以防止ˆXLocL和ˆXGlbL之间的较大的相对变化,在我们的工作中,λ的经验固定为0.15。这种正则化主要是为了使局部分支训练“减慢”,与全局分支学习更加同步,并且只更新局部分支的参数。

Coarse-to-Fine GLNet

为了分割前景和背景(即二值掩模),在超高分辨率图像中,前景往往占用很少的空间。这种类的不平衡可能会严重损害分割的性能。以ISIC数据集为例,∼99%的图像的背景像素多于前景像素,超过60%的图像的前景像素小于20%(见图8(1)中的蓝条)。许多局部补丁将只包含背景像素,这导致了生病的梯度。
在这里插入图片描述

为了缓解类的不平衡,我们提出了一种新的两阶段从粗到细的GLNet变体(图6)。它首先单独应用全局分支来完成对降采样图像的粗分割。然后为分割后的前景区域1创建一个边界框。然后将原始全分辨率图像中的有界前景作为局部分支的输入,进行精细分割。与允许并行局部-全局分支的GLNet不同,这种粗到细的GLNet允许两个分支的顺序组成,在边界框中,在边界框细化期间首先从全局到本地分支深入共享,然后共享回来。在边界框之外的所有区域都将被预测为背景。粗到精细的GLNet通过选择性的精细处理也降低了计算成本。

4 Experiments

在本节中,我们评估了GLNet在深地球和Inria航空数据集上的性能,并评估了从粗到细的GLNet在ISIC数据集上的精确性能。我们将我们的模型与其他方法进行了彻底的比较。

4.1 Implementation Details

在我们的工作中,我们采用了FPN(特征金字塔网络)[4],以ResNet50[38]作为我们的骨干。深度特征图共享策略应用于自下而上阶段的ResNet50的conv2到conv5块的特征图,也应用于FPN的自上而下阶段和平滑阶段的特征图。对于FPN的最终横向连接阶段,我们采用了特征图正则化,并将该阶段聚合为最终的分割。为简单起见,降采样的全局图像和裁剪的局部补丁共享相同的大小,500×500像素。相邻的补丁有50像素的重叠,以避免所有卷积层的边界消失。我们使用带有γ=6的focal loss[39]作为主要损失和两个辅助损失的优化目标。为主要损失和辅助损失分配同等权重(1.0)。特征图正则化系数λ设置为0.15。

为了测量一个模型的GPU内存使用情况,我们使用命令行工具“gpustat”,小批处理大小为1,并避免计算任何梯度。请注意,我们的训练和推理只用了一个GPU卡。我们使用PyTorch框架[40]进行实验。我们使用Adam优化器[41](β1=0.9,β2=0.999),学习速率为1×10−4来训练全局分支,2×10−5用于本地分支。我们在所有培训中使用6的小批量处理。所有实验都在使用NVIDIA1080TiGPU卡的工作站上进行。

4.2 DeepGlobe

我们首先将我们的框架应用到深地球数据集。该数据集包含803张超高分辨率图像(2448×2448像素)。我们将图像随机分为训练、验证和测试集,分别有455、142和206张图像。密集的注释包含7类景观区域,其中7类中的一类被称为“未知”区域,在挑战中不被考虑。

From shallow to deep feature map sharing

为了评估我们的全球-本地协作策略的性能,我们逐步将我们的模型从浅层升级到深度特征图共享(表2)。使用降采样的全局图像或单独的图像斑块,每个分支只能实现的平均联合交集(mIoU)分别为57.3%和66.4%。通过对两个分支的高级特征图进行聚合和它们之间的正则化,性能可以提高到70.3%。当我们只共享从全局到局部分支的一层特征图(“浅层共享”)时,聚合结果增加了0.2%,当我们升级到“深度共享”,即所有层的特征图都被共享时,mIoU上升到70.9%。最后,两个分支之间的双向深度特征图共享使模型能够产生71.6%的高mIoU。

本消融研究证明,通过深度和多样化的特征图共享/正则化/聚合策略,全局和局部分支可以有效地协同协作。值得注意的是,即使使用双向深度特征图共享方法(表2中的最后一行),推理过程中的内存使用量也仅从1189MB略微增加到1865MB。

图7通过两个放大面板(a)和(b)显示了细节,可视化了所实现的改进。仅在全局结果(图7(3))或局部结果(图7(4))中就存在不期望的网格状伪影和不准确的边界。从聚合、浅层特征图共享,最后到双向深度特征图共享,可以观察到逐步的改进,显著减少了错误分类和不准确的边界。

在这里插入图片描述
Accuracy and memory usage comparison

用全局图像或局部补丁进行训练和推断的模型可能会产生不同的结果。这是因为模型具有不同的接受域、卷积核大小和填充策略,这导致了不同的合适的训练/推理选择。因此,在本消融研究中,我们仔细地比较了使用这两种方法训练的模型。我们对一个模型进行了两次训练和测试(每次都使用全局图像或局部补丁),然后选择它的最佳结果。

在这里插入图片描述


推荐阅读
  • 【论文】ICLR 2020 九篇满分论文!!!
    点击上方,选择星标或置顶,每天给你送干货!阅读大概需要11分钟跟随小博主,每天进步一丢丢来自:深度学习技术前沿 ... [详细]
  • 阿里Treebased Deep Match(TDM) 学习笔记及技术发展回顾
    本文介绍了阿里Treebased Deep Match(TDM)的学习笔记,同时回顾了工业界技术发展的几代演进。从基于统计的启发式规则方法到基于内积模型的向量检索方法,再到引入复杂深度学习模型的下一代匹配技术。文章详细解释了基于统计的启发式规则方法和基于内积模型的向量检索方法的原理和应用,并介绍了TDM的背景和优势。最后,文章提到了向量距离和基于向量聚类的索引结构对于加速匹配效率的作用。本文对于理解TDM的学习过程和了解匹配技术的发展具有重要意义。 ... [详细]
  • 生成式对抗网络模型综述摘要生成式对抗网络模型(GAN)是基于深度学习的一种强大的生成模型,可以应用于计算机视觉、自然语言处理、半监督学习等重要领域。生成式对抗网络 ... [详细]
  • 在Android开发中,使用Picasso库可以实现对网络图片的等比例缩放。本文介绍了使用Picasso库进行图片缩放的方法,并提供了具体的代码实现。通过获取图片的宽高,计算目标宽度和高度,并创建新图实现等比例缩放。 ... [详细]
  • 浏览器中的异常检测算法及其在深度学习中的应用
    本文介绍了在浏览器中进行异常检测的算法,包括统计学方法和机器学习方法,并探讨了异常检测在深度学习中的应用。异常检测在金融领域的信用卡欺诈、企业安全领域的非法入侵、IT运维中的设备维护时间点预测等方面具有广泛的应用。通过使用TensorFlow.js进行异常检测,可以实现对单变量和多变量异常的检测。统计学方法通过估计数据的分布概率来计算数据点的异常概率,而机器学习方法则通过训练数据来建立异常检测模型。 ... [详细]
  • 深度学习中的Vision Transformer (ViT)详解
    本文详细介绍了深度学习中的Vision Transformer (ViT)方法。首先介绍了相关工作和ViT的基本原理,包括图像块嵌入、可学习的嵌入、位置嵌入和Transformer编码器等。接着讨论了ViT的张量维度变化、归纳偏置与混合架构、微调及更高分辨率等方面。最后给出了实验结果和相关代码的链接。本文的研究表明,对于CV任务,直接应用纯Transformer架构于图像块序列是可行的,无需依赖于卷积网络。 ... [详细]
  • 背景应用安全领域,各类攻击长久以来都危害着互联网上的应用,在web应用安全风险中,各类注入、跨站等攻击仍然占据着较前的位置。WAF(Web应用防火墙)正是为防御和阻断这类攻击而存在 ... [详细]
  • MySQL多表数据库操作方法及子查询详解
    本文详细介绍了MySQL数据库的多表操作方法,包括增删改和单表查询,同时还解释了子查询的概念和用法。文章通过示例和步骤说明了如何进行数据的插入、删除和更新操作,以及如何执行单表查询和使用聚合函数进行统计。对于需要对MySQL数据库进行操作的读者来说,本文是一个非常实用的参考资料。 ... [详细]
  • AstridDAO 专访:波卡稳定币黑马 BAI
    加入Pol ... [详细]
  • S3D算法详解
    S3D论文详解论文地址:RethinkingSpatiotemporalFeatureLearning:Speed-AccuracyTrade-offsinVide ... [详细]
  • 「爆干7天7夜」入门AI人工智能学习路线一条龙,真的不能再透彻了
    前言应广大粉丝要求,今天迪迦来和大家讲解一下如何去入门人工智能,也算是迪迦对自己学习人工智能这么多年的一个总结吧,本条学习路线并不会那么 ... [详细]
  • 本文介绍了Java工具类库Hutool,该工具包封装了对文件、流、加密解密、转码、正则、线程、XML等JDK方法的封装,并提供了各种Util工具类。同时,还介绍了Hutool的组件,包括动态代理、布隆过滤、缓存、定时任务等功能。该工具包可以简化Java代码,提高开发效率。 ... [详细]
  • {moduleinfo:{card_count:[{count_phone:1,count:1}],search_count:[{count_phone:4 ... [详细]
  • 查找给定字符串的所有不同回文子字符串原文:https://www ... [详细]
  • Shodan简单用法Shodan简介Shodan是互联网上最可怕的搜索引擎,与谷歌不同的是,Shodan不是在网上搜索网址,而是直接进入互联网的背后通道。Shodan可以说是一款“ ... [详细]
author-avatar
曾明铭智瑜淑岳
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有