当前位置: 首页 > news >正文

w~视觉~合集13

我自己的原文哦~    https://blog.51cto.com/whaosoft/13384038

#xxx w视觉合集13~17没了....
#ViTAR

作者提出了一种新颖的架构:任意分辨率的视觉 Transformer (ViTAR)。ViTAR中的自适应标记合并功能使模型能够自适应地处理可变分辨率图像输入,逐步将标记合并到固定大小,极大地增强了模型的分辨率泛化能力,并且在处理高分辨率输入时减少了计算成本。完美支持任意分辨率输入的ViT!4032×4032等超大分辨率性能完爆DeiT等

本文解决了视觉 Transformer (ViTs)面临的一个重大挑战:它们在不同图像分辨率之间的可扩展性受限。通常,当处理与训练时看到的不同的分辨率时,ViTs的性能会下降。作者的工作引入了两项关键创新来解决这个问题。首先,提出了一种新颖的模块,用于动态调整分辨率,该模块设计了一个单一的 Transformer 块,专门用于实现高效的增量 Token 集成。其次,在视觉 Transformer 中引入了模糊位置编码,以在多个分辨率之间提供一致的位置感知,从而防止对任何单一训练分辨率的过拟合。

ViTAR(具有任意分辨率的视觉 Transformer ),展示了出色的适应性,在1120x1120分辨率下达到83.3%的top-1准确率,在4032x4032分辨率下达到80.4%的准确率,同时降低了计算成本。ViTAR在下游任务中也表现出强大的性能,如实例和语义分割,并且可以轻松与自监督学习技术(如 Mask 自动编码器)结合使用。作者的工作为提高ViTs的分辨率可扩展性提供了一种成本效益高的解决方案,为更灵活和高效的高分辨率图像处理铺平了道路。

1 Introduction

Transformer在自然语言处理(NLP)领域巨大的成功激发了计算机视觉(CV)社区内的相当大探索。特别是,视觉Transformer(ViTs)将图像分割为非重叠的块,将每个块投射成标记,然后应用多头自注意力(MHSA)来捕捉不同标记之间的依赖关系。得益于Transformer卓越的建模能力,ViTs在多样的视觉任务中取得了不错的结果,包括图像分类,目标检测,视觉-语言建模,甚至是视频识别。

图1:与其他模型的比较:当输入分辨率大于1792时,DeiT-B和ResFormer-B均遇到内存不足(OOM)错误。标注表示模型在FLOPS方面的计算负载。结果表明,ViTAR具有较低的计算开销和特别强的分辨率泛化能力。

尽管在各个领域取得了成功,但在需要处理可变输入分辨率的真实世界场景中,ViTs表现得并不尽如人意。很少有研究探索如何将ViTs适应到不同的分辨率上。实际上,没有训练可以涵盖所有的分辨率,一种简单且广泛应用的方法是在将位置编码输入到ViT之前直接进行插值。然而,这种方法在图像分类等任务中会导致性能显著下降。为了解决这个问题,ResFormer在训练过程中融入了多分辨率图像。此外,对ViT使用的位置编码进行了改进,将它们转变为更加灵活的、基于卷积的位置编码。

然而,ResFormer仍面临挑战。首先,它只能在相对较窄的分辨率变化范围内保持高性能,如图1所示。随着分辨率增加,超过892甚至更高时,模型性能明显下降。此外,由于采用了基于卷积的位置编码,将ResFormer整合到广泛采用的自监督框架中,如 Mask 自动编码器(Masked AutoEncoder, MAE)变得具有挑战性。

在这项研究中,作者提出了具有任意分辨率能力的视觉 Transformer (ViTAR),它以较低的运算负担处理高分辨率图像,并展现出强大的分辨率泛化能力。在ViTAR中,作者引入了自适应 Token 合并(ATM)模块,该模块迭代处理经过切块嵌入的 Token 。ATM将所有 Token 散布到网格上。这个过程首先将网格内的 Token 视为一个单一单元。然后逐步合并每个单元内的 Token ,最终将所有 Token 映射到一个固定形状的网格上。这个过程产生了所谓的“网格 Token ”集合。

随后,这组网格 Token 通过一系列多个多头自注意力模块进行特征提取。ATM模块不仅提高了模型卓越的分辨率适应性,同时也使得在处理高分辨率图像时具有较低的计算复杂度。如图1所示,与DeiT和ResFormer相比,ViTAR能更好地泛化到未见过的分辨率。此外,随着输入分辨率的增加,ViTAR相关的计算成本降低至仅相当于传统ViT的十分之一,甚至更低。

为了使模型能够泛化到任意分辨率,作者还设计了一种称为模糊位置编码(FPE)的方法。FPE引入了一定程度的位置扰动,将精确的位置感知转化为带有随机噪声的模糊感知。这一措施防止了模型对特定分辨率的位置过拟合,从而增强了模型的分辨率适应性。同时,FPE可以被理解为一种隐式数据增强,它让模型能够学习到更鲁棒的位置信息,并实现更好的性能。

作者的贡献可以总结如下:

  1. 作者提出了一种简单而有效的多分辨率适配模块——自适应标记合并器,使ViTAR能够适应多分辨率推理的要求。这个模块通过自适应地合并输入标记,显著提高了模型的分辨率泛化能力,并在高分辨率输入下大大减轻了模型的计算负担。
  2. 作者引入了一种模糊位置编码(Fuzzy Positional Encoding),这种编码让模型在训练过程中能够感知到鲁棒的位置信息,而不是过分拟合到特定的分辨率。作者将常用的精确点位置编码转换为模糊范围感知。这显著提高了模型对不同分辨率输入的适应性。
  3. 作者进行了大量实验来验证作者方法在多分辨率推理中的有效性。作者的基础模型在224、896和4032输入分辨率下分别达到了81.9、83.4和80.4的top-1准确度。其鲁棒性显著超越了现有的ViT模型。ViTAR在实例分割和语义分割等下游任务中也展示了稳健的性能。

2 Related Works

视觉 Transformer 。视觉 Transformer (ViT)是一种强大的视觉架构,它在图像分类、视频识别和视觉-语言学习上展示了令人印象深刻的性能。已经从数据和计算效率的角度做出了许多努力来增强ViT。在这些研究中,大多数研究者通过微调将模型适应比训练时更高的分辨率。很少有研究尝试在不进行微调的情况下直接将模型适应未知分辨率,这通常会导致性能下降。在高分辨率上进行微调通常会产生额外的计算成本。因此,设计一个可以直接处理多种分辨率的视觉模型尤为重要。然而,这个方向仍然研究得不够充分。

多分辨率推理。研究单一视觉模型能够在不同分辨率下进行推理仍然是一个很大程度上未被探索的领域。对于大多数视觉模型来说,如果在推理时使用的分辨率与训练时使用的分辨率不同,且在没有微调的情况下直接进行推理,会观察到性能下降。作为这一领域的一项开创性工作,ResFormer采用了一种涉及多分辨率训练的方法,使模型能够适应各种分辨率的输入图像。它还加入了几种独特的位置编码,增强了模型适应不同分辨率的能力。

然而,ResFormer使用的位置编码是基于卷积神经网络,这种配置难以应用于如MAE这样的自监督学习框架中。此外,ResFormer本身基于原始的ViT架构,当输入分辨率增加时,它会带来显著的计算开销。为了使模型能够适应更广泛的分辨率范围,并适用于常用的自监督学习框架,有必要进行进一步的模型优化。

位置编码。位置编码对ViT至关重要,通常为其提供位置感知和性能提升。ViT的早期版本使用了正弦余弦编码来传递位置信息,一些研究展示了这种位置编码方法的有限分辨率鲁棒性。相比之下,基于卷积的位置编码显示出更强的分辨率鲁棒性。当面临未见过的分辨率时,使用卷积位置编码的模型甚至可以实现性能提升。不幸的是,卷积位置编码阻碍了模型在如MAE这样的自监督学习框架中的应用。这使得模型难以应用于大规模 未标注 数据集的训练。

3 Methods

Overall Architecture

ViTAR的总体框架如图2所示,主要包括自适应标记合并器(ATM),模糊位置编码(FPE)以及传统的ViT架构。作者没有采用分层结构;相反,作者使用类似于ResFormer和DeiT的直接贯穿架构。

Adaptive Token Merger (ATM)

图3:网格注意力机制示意图。

类似于标准的多头自注意力机制, GridAttention同样融合了残差连接。为了对齐标记的形状,作者使用了带有平均池化的残差连接。完整的GridAttention如公式1所示。

Fuzzy Positional Encoding

许多研究指出,常用的可学习位置编码和正弦余弦位置编码对于输入分辨率的改变非常敏感,并且它们未能提供有效的分辨率适应性。尽管基于卷积的位置编码展现出更好的分辨率鲁棒性,但其对相邻标记的感知阻止了其在如MAE这样的自监督学习框架中的应用。

作者的FPE与上述方法不同。在增强模型分辨率鲁棒性的同时, 它并不像卷积那样引入特定的空间结构。因此, 它可以应用于自监督学习框架中。这一特性使得ViTAR能够应用于大规模、未标注 的训练集进行训练, 旨在获得更强大的视觉基础模型。

在推理过程中, 作者不再使用模糊位置编码, 而是选择精确的位置编码。当输入图像分辨率发生改变时, 作者对可学习的位置嵌入进行插值处理。由于在训练阶段使用了模糊位置编码, 对于任何插值的位置编码, 模型可能已经以某种方式看到并使用了它。因此, 模型获得了强大的位置适应性。结果, 在推理过程中, 面对未见过的分辨率输入时, 模型仍然表现出稳健的性能。

Multi-Resolution Training

类似于ResFormer,在训练ViTAR时,作者也采用了多分辨率训练方法。与ResFormer相比,ViTAR在处理高分辨率图像时显著降低了计算需求,这使得作者能够在训练过程中使用更广泛的分辨率。与处理包含各种分辨率的输入批次的ResFormer不同,并使用KL损失进行跨分辨率监督,ViTAR则处理每批具有一致分辨率的输入,仅依赖基本的交叉熵损失进行监督。

基于多分辨率训练策略,ViTAR可以应用于非常广泛的分辨率,并在图像分类任务中取得良好结果。同时,在处理高分辨率输入任务(实例分割、语义分割)时,ViTAR以更小的计算成本达到了现有模型的相似性能。具体来说,在需要高分辨率输入的实例分割和语义分割任务中,ViTAR在使用50%的FLOPs情况下,达到了与ResFormer和DeiT相似的结果

4 Experiments

作者在多个视觉任务上进行了广泛的实验,例如在ImageNet-1K上的图像分类,在COCO上的实例分割,以及在ADE20K上的语义分割。作者还将在自监督框架MAE上训练模型,以验证ViTAR与MAE之间的兼容性。在这些之后,作者进行了消融研究,以验证ViTAR中每个组件的重要性。

Image Classification

表1:大小“S”与大小“B”的比较。与DeiT和ResFormer相比,ViTAR能够以极低的计算成本处理高分辨率输入图像,并展现出强大的分辨率泛化能力。

Object Detection

Semantic Segmentation

设置。遵循ResFormer的做法,作者采用MMSegmentation实现了UperNet,以验证ViTAR的性能。作者使用的数据集是ADE20K。为了训练UperNet,作者遵循Swin中的默认设置。作者选择AdamW作为优化器,用于训练模型,迭代次数为80k/160k。

表4:在ADE20K数据集上不同 Backbone 网络的成果与比较。所有 Backbone 网络均在ImageNet-1k上进行预训练。

Compatibility with Self-Supervised Learning

Settings. ResFormer采用了卷积进行位置编码,这使得它难以与像Mask AutoEncoder(MAE)这样的自监督学习框架兼容,因为MAE会破坏图像的空间结构。由于ViTAR没有引入与卷积相关的空间结构,且作者提出的模糊位置编码(FPE)不需要额外的空间信息,因此它可以更方便地融入到MAE中。与标准的MAE不同,在训练期间作者仍然采用多分辨率输入策略。作者对ViTAR-B进行了300个周期的预训练,并额外进行了100个周期的微调。

结果。作者在表6中报告了实验结果。仅预训练了300个周期的ViTAR,在与预训练了1600个周期的ViT模型对比中显示出明显的优势。当输入分辨率提高时,ViT+MAE的性能显著下降。另一方面,ViTAR+MAE显示出强大的分辨率鲁棒性。即使输入分辨率超过4000,模型仍然保持高性能。这些发现表明,ViTAR在自监督学习框架中具有很大潜力,如MAE所示。ViTAR相对于MAE的性能优势可能源于两个方面。第一个是ATM使模型能够学习更高质量的标记,为模型提供了一部分信息增益。第二个是FPE作为一种隐式数据增强,允许模型学习更鲁棒的位置信息。正如Droppos所示,模型的位置信息对其学习过程至关重要。

表6:使用MAE框架的结果。作者所采用的训练分辨率为(224, 448, 672, 896, 1120)。

Ablation Study

表7:ATM的消融研究。所有实验都是基于ViTAR-S进行的。

表7的结果显示,作者的ATM显著提高了模型的性能和分辨率适应性。特别是在高分辨率场景中,ATM的优势越来越明显。具体来说,在4032分辨率下,作者提出的ATM比 Baseline 提高了7.6%的准确率。在224分辨率下,ATM也比AvgPool表现出0.5%的性能提升。

模糊位置编码。 作者比较了不同的位置编码对模型分辨率泛化能力的影响。这包括在ResFormer中常用的simcos绝对位置编码(APE),条件位置编码(CPE),全局-局部位置编码(GLPE),Swin中的相对位置偏置(RPB),以及作者提出的FPE。值得注意的是,只有APE和FPE与MAE框架兼容。由于卷积固有的空间位置结构,另外两种位置编码难以整合到MAE学习框架中。对于没有采用MAE的模型,作者使用ViTAR-S进行实验,而对于采用MAE的模型,作者使用ViTAR-B。

不同位置编码在各种测试分辨率下的结果如表8所示。可以看出,作者提出的FPE在分辨率泛化能力方面表现出显著优势。此外,在MAE自监督学习框架下,FPE相对于APE也表现出更优越的性能,证明了FPE在更广泛领域的潜在适用性。具体来说,在4032输入分辨率下,FPE的top-1准确率超过了GLPE 4.5%。在MAE框架中,FPE比APE高出4.6%。

训练分辨率。 与ResFormer仅在训练期间使用较低分辨率(128、160、224)不同,由于ViTAR的计算效率,它可以处理具有非常高分辨率的输入。此外,采用更广泛的分辨率范围增强了ViTAR的泛化能力。在之前的实验中,作者使用(224、448、672、896、1120)这些分辨率来训练所有模型。在本节中,作者尝试减少训练期间使用的分辨率,以检验模型的分辨率泛化能力。

表9:训练分辨率的消融研究。在训练过程中使用更多分辨率显著增强了模型的分辨率泛化能力。所有实验都是基于ViTAR-S进行的。

如表9所示的实验结果表明,在实验中使用的分辨率范围内,模型在训练中使用的分辨率越高,其分辨率泛化能力越强。特别是,当ViTAR使用这五个分辨率(224、448、672、896、1120)进行训练时,模型展现出最强的分辨率泛化能力。与仅使用(224、448)进行训练相比,在高分辨率(4032)上的准确率提高了4.9%。这有力地证明了多分辨率训练的有效性。

5 Conclusions

在这项工作中,作者提出了一种新颖的架构:任意分辨率的视觉 Transformer (ViTAR)。ViTAR中的自适应标记合并功能使模型能够自适应地处理可变分辨率图像输入,逐步将标记合并到固定大小,极大地增强了模型的分辨率泛化能力,并且在处理高分辨率输入时减少了计算成本。此外,ViTAR还融入了模糊位置编码,使模型能够学习鲁棒的位置信息,并处理训练期间未遇到的高分辨率输入。

ViTAR还与现有的基于MAE的自监督学习框架兼容,表明其潜在适用于大规模 未标注 数据集。在需要高分辨率输入的任务,如实例分割和语义分割中,ViTAR在几乎不损失性能的情况下显著降低了计算成本。作者希望这项研究能够激发后续对高分辨率或可变分辨率图像处理的研究。

#EMAGE

面部+肢体动画,一个框架搞定从音频生成数字人表情与动作

AI 数字人面部与肢体的驱动算法作为数字人研发的重要环节,可以大幅度降低 VR Chat、虚拟直播和游戏 NPC 等领域中的驱动成本。

近年来,基于语音生成面部、肢体和手部的动作的各类独立基线模型已经逐渐成熟。然而,直接将不同模型的动画结果混合会导致最终全身整体的动画不协调。研究者逐渐考虑使用统一的框架来同时生成面部表情和肢体动作。

然而,尽管研究社区在面部的表情和肢体的动作上分别存在统一的数据标准,已有的基线模型仅在独立的数据格式上进行训练和评估,比如 FLAME (面部) 和 AMASS (肢体)。社区仍然缺少面向全身的,格式统一的训练数据和基线模型。

针对此问题,东京大学,清华大学,德国马普所的研究者联合提出了 EMAGE,一个从音频和动作的掩码中生成人体全身动作的框架,包括面部、局部肢体、手部和全局运动。

  • 论文地址:https://arxiv.org/abs/2401.00374
  • 项目主页:https://pantomatrix.github.io/EMAGE/
  • 视频结果:https://www.youtube.com/watch?v=T0OYPvViFGE
  • hugging face space 链接:https://huggingface.co/spaces/H-Liu1997/EMAGE

EMAGE 研究论文包含 BEAT2 与 EMAGE 两部分。用户可以自定义动作的输入,在接受预定义的时序与空间的动作输入方面具有灵活性,最终可生成完整的、与音频相同步的结果,EMAGE 输出全身动作的效果属于业界 SOTA。

  • BEAT2: 即 BEAT-SMPLX-FLAME,是语音与基于网格的动作数据的全身数据集,共有 60 小时的数据。BEAT2 将 SMPLX 的肢体与 FLAME 的面部参数相结合,并进一步解决了头部、颈部和手指等运动的模型问题,为研究社区提供了一个标准化且高质量的 3D 动捕数据集。

左:将精调后的 SMPLX 肢体参数结果(Refined Moshed)与 BEAT 的原始骨架数据(BEAT)、使用 AutoRegPro 的重定向数据(Retargeted)以及 Mosh++ 的初始结果(Moshed)进行比较,精调的结果拥有正确的颈部弯曲、适当的头颈形状比例和详细的手指弯曲。

右:将原始 BEAT 中的混合表情权重可视化,与 ARKit 的基础脸部模板(BEAT)、基于线性 Wrapped 的方法(Wrapped Optimum)以及人工 PCA 映射 FACs 的表情优化(Handcraft Optimum)进行比较。最终的人工映射优化基于 FLAME 混合表情,实现了准确的唇动细节和自然对话时的口型。

  • EMAGE:在训练过程中利用了肢体动作掩码的先验知识来提高推理性能。EMAGE 使用了一个音频与动作掩码的转换器,有效提高了音频生成动作和动作掩码下的动作重建的联合训练的效率,从而有效地将音频和肢体动作的提示帧编码进网络。动作掩码的肢体提示帧分别被用于生成面部和肢体动作。此外,EMAGE 自适应地合并了音频的节奏和内容的语音特征,并利用身体各个部位 (共计四种) 的组合式 VQ- VAEs 来增强结果的真实性和多样性。

下图给出了 EMAGE 生成肢体动画的例子:

从上到下依次为:真实数据、不使用肢体提示帧生成的数据、使用肢体提示帧生成的数据、肢体提示帧的可视化:

EMAGE 可以生成多样化、具有语义和与音频同步的肢体动作,例如,对于 “spare time” 这个提示词,可以同时举起双手,而对于 “hike in nature” 则可以采取放松的动作。

此外,如第三行和第四行所示,EMAGE 可以灵活地接受非音频同步的肢体提示帧,基于任意帧或关节,以此明确引导生成的动作。例如,重复类似的动作比如举起双手,或是改变行走方向等。注:此图中,第三列的生成结果的关节提示(灰色网格),与第四行的肢体提示帧的关节(绿色网格)并不一致。

下图是 EMAGE 生成面部动画的结果:

EMAGE 生成的面部运动与基线模型的对比。

分别是脸部单独生成的方法如 faceformer 与 codetalker、全身整体动作生成方法如 Habibie et al. 和 Talkshow。在 BEAT2 数据集中,因为 codetalker 具有离散的面部先验知识,所以即使 codetalker 的 MSE(均方误差)更高,即更偏离真实数据,但主观结果更好。而 EMAGE 则利用离散的面部先验知识和动作掩码的肢体提示帧,实现了更精准的唇动性能。

模型介绍

EMAGE 是一个支持用户自定义输入,带有动作掩码与音频输入的全身动作建模框架,使用新提出的数据集 BEAT2(BEAT-SMPLX-FLAME),生成面部表情、局部身体动作、手部动作和全局平移运动时,是以音频与动作掩码作为基准联合训练。灰色身体部位是用户输入的肢体提示帧,蓝色表示整体的网络输出。   

算法细节

EMAGE 采取了两种训练路线:动作掩码重建(MaskedGesture2Gesture,即 MG2G)和使用音频的动作生成(Audio2Gesture,即 A2G)。

  • MG2G:通过基于 Transformer 的动作的时空编码器与基于交叉注意力的动作解码器,来对肢体提示帧进行编码。
  • A2G:利用输入的肢体提示与独立的的音频编码器,对于经过预训练的面部和肢体潜征进行解码。

可切换的交叉注意力层在上述过程中作为关键组件,对于合并肢体提示帧和音频特征起重要作用。此融合使特征被有效地解耦并可以被用于动作的解码。动作潜征被重建之后,EMAGE 使用预训练的 VQ-Decoder 来对于面部和局部肢体运动进行解码。

此外,预训练的全局运动预测器也被用来估计全身的全局平移,使得模型生成逼真并且连贯动作的能力得到加强。

CRA 和 VQ-VAEs 的与训练模型的细节

左图:内容节奏注意力模块 (CRA) 将音频的节奏(初始语音和振幅)与内容(来自文本的预训练词条嵌入)自适应地相融合。这种架构可以让特定帧更有效地基于音频的内容或节奏,生成更加具有语义的动作。

右图:通过对于面部、肢体上半身、手部和肢体下半身的分别重建,来预训练四个组合式 VQ-VAEs 模型,以更加明示地将与音频无关的动作相解耦。

前向传播网络对比

  • 直接融合模块 (a) : 将音频特征与未精调的肢体特征合并,仅基于位置嵌入重组音频特征。
  • 自注意力解码器模块 (b) : 为 MLM 模型中所采用的模块,只限于自回归推理的任务。
  • EMAGE (c) : 融合 (a) 与 (b) 的长处,同时使音频特征融合更有效,且可以自回归解码。
#DragNoise

文章的工作聚焦于利用扩散模型语义传播实现交互式点控制的图像编辑,只需点几个点,即可对用户输入的真实图片和生成图片精准快速的编辑,再也不用担心甲方 “天马行空” 的要求!拖拽P图又双叒升级了!DragNoise实现更快更准的拖拽编辑

新加坡管理大学何盛烽团队联合华南师范大学在 CVPR 2024 上发表了工作《Drag Your Noise: Interactive Point-based Editing via Diffusion Semantic Propagation》。这一工作聚焦于利用扩散模型语义传播实现交互式点控制的图像编辑,只需点几个点,即可对用户输入的真实图片和生成图片精准快速的编辑,再也不用担心甲方 “天马行空” 的要求!

DragNoise 对内容填充、擦除、转脸、姿势控制等要求都能轻松快速的搞定,想要拖动哪里只需点一个红点,想要拖到哪里只需点一个蓝点,DragNoise 即可将红点的内容拖拽到蓝点。相对于 SOTA 方法 DragDiffusion,我们方法在有效保留图片原有信息的同时实现更精准快速的拖拽。

论文题目:

Drag Your Noise: Interactive Point-based Editing via Diffusion Semantic Propagation

论文地址:

​​https://arxiv.org/abs/2404.01050​​

代码地址:

​​https://github.com/haofengl/DragNoise​​

DragNoise

DragDiffusion

在这一领域,一些近期的工作引起了广泛关注。利用生成对抗网络 (GAN) 的 DragGAN 是一个重要里程碑,DragDiffusion 进一步应用到扩散模型上,下图展示了这两个方法的主要思想。不同于传统的“Outer-inversion”将真实图像反演至 latent 空间,我们将这种将用户编辑反演至 latent 空间的内部优化过程称为“Inner-inversion”。 
1. DragGAN:使用 StyleGAN2 生成器的第 6 层特征作为运动监督,将拖拽编辑反演至 latent code,从而产生相应的拖动结果图。尽管 DragGAN 具有创新性,但基于 GAN 固有的生成效果局限性使其无法获得高质量的编辑结果。此外,该工作和其他基于 GAN 的编辑方法涉及优化新的 latent code,难以保留图片全局内容。

DragGAN

2. DragDiffusion 利用大规模预训练扩散模型的优势,在这一领域取得了显著进步。DragDiffusion 延续了 DragGAN 的“Inner-inversion”方法,利用 U-Net 中间特征来监督优化噪声 latent map,从而控制后续去噪过程生成编辑后的图片。

然而,我们发现 DragDiffusion 出现了两个主要问题:梯度消失导致的拖拽不足或无效,以及较低的反演保真度。DragDiffusion 的反演反向传播链较长,当控制点前后的特征差异很小时,梯度消失的问题就会加剧,导致结果出现“欠拖拽”。

此外,保持图像的保真度仍然是反演技术的长期挑战。虽然 DragDiffusion 相比 DragGAN,通过将“Inner-inversion”扩展到二维 latent map,改善了空间控制,但由于其优化路径为反传到去噪过程中的有噪声 latent map,仍然难以保持较高的保真度。

DragDiffusion

相比于以上的方法,我们提出的方法 DragNoise 改变预测的噪声并传播优化来进行图像编辑。

DragNoise 的核心思想来源于我们对在扩散模型中一种“middle-block replacement”的操作的探索。该操作从某个去噪时间步开始,将不同层的特征复制到所有后续 timestep 的对应层。通过观察 DDIM inversion 重建图像的效果,我们探索了扩散模型在何时以及何处学习到何种层次的语义信息。

如下图所示,我们发现,bottleneck 特征是一种最优扩散语义表示,适合于高效编辑。由于它可以在早期 timestep 中有效地被编辑,因此操纵 bottleneck 特征可以平滑地传播到后面的去噪步骤,从而确保结果图像扩散语义的完整性。此外,由于优化 bottleneck 的路径短,有效地避免了梯度消失问题。 

Middle-Block Replacement

如下图所示,我们的方法 DragNoise 包括两个过程——扩散语义优化和扩散语义传播:

  1. 扩散语义优化:DragNoise 的编辑过程开始于训练高级语义的 timestep (例如,t=35),在此阶段针对用户的拖拽编辑对 U-Net 的 bottleneck 特征进行扩散语义优化。优化后的 bottleneck 特征学习到预期的拖拽效果,并使 U-Net 输出相应的操纵噪声。
  2. 扩散语义传播:上一个步骤中优化的 bottleneck 特征包含了目标语义,因此与上面讨论的“middle-block replacement”操作相似,我们通过替换相应的 bottleneck 特征将优化后的 bottleneck 特征传播到所有后续时间步,从而避免了冗余的特征优化。这种替换以稳定、高效的方式显著增强了操纵效果。

DragNoise

我们使用拖拽编辑数据集 DragBench 和不同的示例图像进行了广泛的定量和定性实验。如下图,DragDiffusion 在大幅编辑时,会出现破坏周围特征的情况。DragGAN 由于其生成能力的限制, 对用户输入的图片编辑会严重失真,即使对于 GAN 生成的图片(下图中小猫),由于其优化的 latent code 为一维特征,缺少空间控制能力,会出现全局变化。

另外,我们在编辑点周围特征相似的极端情况下进行了实验,我们方法可以实现精准的控制,且控制能力优于 FreeDrag 方法。

与 DragDiffusion 相比,DragNoise 显著减少了 50% 以上的优化步骤。结果表明了 DragNoise 的编辑具有突出的效率和灵活性。

我们在 DragBench 数据集上进行了定量实验,结果达到了 SOTA。

 此外,我们展示更多和 DragDiffusion 的对比效果,以表明我们方法广泛的有效性。

最后,我们展示更多的 DragNoise 的编辑过程,以表明 DragNoise 的连续性和稳定性。

#PSLNet

本文分享论文​​Perceptive self-supervised learning network for noisy image watermark removal​​,由西工大&广西师大&港中文联合提出一种基于感知自监督学习网络的噪声图像去水印方法。

  • 作者:田春伟,郑梦华,李波,张艳宁,张师超,张大鹏
  • 单位:西北工业大学、空天地海一体化大数据应用技术国家工程实验室、广西师范大学、香港中文大学
  • 原文链接:https://arxiv.org/abs/2403.02211
  • 代码链接:https://github.com/hellloxiaotian/PSLNet

01摘要

现有方法通常使用有监督方式来训练图像去水印模型。然而,在现实世界中难以获得参考图像以及相机拍摄图像过程中会受到噪声的影响。

为了克服这些缺点,本文中提出了一种基于感知自监督学习网络的噪声图像去水印方法(Perceptive Self-supervised Learning Network for Noisy Image Watermark Removal,PSLNet)。PSLNet依赖于一个并行网络完成图像去除噪声和水印。

其中,上网络使用任务分解的思想依次去除噪声和水印。下网络利用退化模型的思想同时去除噪声和水印。两个网络能提取互补信息,完成噪声图像的去水印。具体为,配对的水印图像是通过自监督的方式获得的,而配对的噪声图像是通过监督的方式获得的。为了增强获得图像的清晰度,通过交互两个子网络和融合获得的清晰图像进一步提取结构信息和增强像素,提升图像水印去除的效果。

此外,考虑到纹理信息,使用混合损失来增强噪声图像水印去除的鲁棒模型。与现有的卷积神经网络相比,提出的PSLNet在噪声图像水印去除方面非常有效。

PSLNet代码可以在https://github.com/hellloxiaotian/PSLNet获取。

主要贡献:

  1. 使用自监督思路来解决非参考图像的图像水印去除问题。
  2. 利用分解和退化模型的思想,同时处理带有噪声和水印的图像复原任务。
  3. 设计了融合机制增强结构信息和增强像素,进一步提升噪声图像水印去除的视觉效果。
  4. 设计结构和纹理混合损失来提高噪声图像水印去除的性能。

02 方法

PSLNet网络结构如图1所示:

图1 PSLNet网络结构图

03 实验

本文提出的方法在本文提出的数据集上超过了很多流行的方法,如:DRD-Net、EAFNWDD和FastDerainNet等。更多的结果如表1-表8所示:

表1 不同方法复原透明度为0.3,噪声等级分别为0、15、25和50的噪声水印图像的PSNR、SSIM和LPIPS结果

表2 不同方法复原透明度为0.3、0.5、0.7和1.0,噪声等级分别为25的噪声水印图像的PSNR、SSIM和LPIPS结果

表3 不同方法复原透明度为0.3,噪声等级分别为0、15、25和50(盲噪声训练)的噪声水印图像的PSNR、SSIM和LPIPS结果

表4 不同方法复原透明度为0.3(盲水印训练),噪声等级分别为0、15、25和50(盲噪声训练)的噪声水印图像的PSNR、SSIM和LPIPS结果

表5 不同方法复原透明度为0.5、0.7和1.0(盲水印训练),噪声等级为25(盲噪声训练)的噪声水印图像的PSNR、SSIM和LPIPS结果

表6 不同方法复原透明度为0,噪声等级为15、25和50(盲噪声训练)的噪声图像的PSNR、SSIM和LPIPS结果

表7 不同方法复原透明度为0.3、0.5、0.7和1.0(盲水印图像训练),噪声等级为0的水印图像的PSNR、SSIM和LPIPS结果     

表8 不同图像去水印方法的复杂度 

此外,本文也制作了2组可视化结果从定性分析角度来验证本文提出方法的有效性,如图2和图3所示:

图2 不同方法的可视化结果(噪声等级为25,水印透明度为0.3):(a)原图 (b)噪声水印图像(20.02 dB) (c) DnCNN(28.50 dB) (d) DRDNet(27.03 dB) (e) FastDerainNet (26.32 dB) (f) FFDNet(26.98 dB) (g) IRCNN(27.39 dB) (h) PSLNet(29.72 dB)

图3 不同方法的可视化结果(噪声等级为15,水印透明度为0.3):(a)原图 (b)噪声水印图像(24.42 dB) (c) DnCNN (34.15 dB) (d) DRDNet (27.46 dB) (e) FastDerainNet (31.88 dB) (f) FFDNet (32.67 dB) (g) IRCNN (32.96 dB) (h) PSLNet (35.19 dB)

04 结论

本文提出了一种基于感知自监督学习网络的噪声图像去水印方法。该方法依赖于一个并行网络,并根据任务分解的解决方案思路,去除噪声和水印。其中,上网络根据任务分解的思想,逐步去除噪声和水印。下网络根据退化模型的思想,同时去除噪声和水印。

为了解决获取参考图像困难的问题,采用自监督学习方法根据给定的水印图像获取参考图像。为了获得更清晰的图像,两个子网络及其获得的图像分别被融合,以增强结构信息和像素。此外,通过感知思想和像素关系,设计了混合损失,以提取更多的纹理信息。

广泛的实验结果表明,提出的感知自监督学习网络方法对噪声图像水印去除非常有效。

#AFNet

本文首次提出基于在噪声位姿等退化场景下的多视角深度估计的鲁棒性基准测试,分析了这些退化的原因以及如何解决这些退化场景,通过提出的自适应融合方法AFNet,充分结合了单视角和多视角深度估计的优势。实验表明,AFNet在非退化场景(位姿,内参等精准)以及退化场景下同时达到了SOTA。

论文标题:Adaptive Fusion of Single-View and Multi-View Depth for Autonomous Driving

论文链接:https://arxiv.org/pdf/2403.07535.pdf

代码链接:https://github.com/Junda24/AFNet/

文章第一作者是来自华中科技大学的博士生程俊达,其他作者来自大疆科技。

1.引言

随着计算机视觉的发展,基于深度学习的单目多视角深度估计已经在多个公开数据集上展现出了卓越的性能,在理想情况下,它比单视角深度估计拥有更高的精度(metric scale)和鲁棒性。但是多视角深度估计的精度高度依赖于相机内参,相机位姿的精度,以及足够的translation来进行三角化获取metric depth。而在实际的自动驾驶应用场景中,通过SLAM获得的位姿以及相机内参是带有噪声的,并且汽车可能会在交通灯处停车或者因掉头而没有足够的translation,这些不可避免的退化场景是无法满足投影原理的,进而极大的影响多视角深度估计的精度。

为了应对退化场景这一挑战,我们提出了单视角和多视角的自适应融合方法AFNet。相比多视角,单视角深度估计更多的是依赖于从训练数据中获取的对场景的语义理解以及透视投影线索,在无纹理区域,以及动态场景会更加鲁棒,并且不依赖于相机位姿,所以对于上述退化场景下是更有优势的。但是由于尺度模糊问题,单视角深度估计的精度是低于多视角深度估计的。

因此我们认为,能不能通过一种融合方式,充分的发挥单视角和多视角深度估计的优势,在保持多视角的高精度的同时,融合获得单视角深度估计在退化场景下的鲁棒性,同时达到精度高鲁棒性好。

因此,我们通过设计基于重投影置信度的自适应融合方法,在不同场景下去自适应选择单视角和多视角深度估计中更可靠的分支,实现了同时在噪声pose以及精准pose下的高精预测,极大的提升了深度估计系统的鲁棒性。

作者的贡献可以总结如下:

  • 我们提出了AFNet来自适应的融合单视角和多视角深度从而获得了更加鲁棒高精的fusion depth,在DDAD和KITTI自动驾驶数据集达到了SOTA。
  • 我们是第一个提出融合单视角和多视角来解决多视角深度估计在噪声pose等退化场景下会fail的,并且提出了一个新的鲁棒性测试benchmark来评估多视角深度估计系统在噪声pose下的性能。我们的方法在鲁棒性测试benchmark上也是达到了SOTA。
  • 我们提出的AF module能够提升多视角深度估计方法在动态物体区域的性能。

2.方法

1.整体结构

2.单视角和多视角分支

3.自适应融合模块

3.实验

1.benchmark performance

当拥有gt pose作为输入时,我们在单目深度估计方法中达到SOTA,并且具有很明显的优势,并且我们实现了精度和效率的优异平衡。

2.动态物体区域表现

我们的AF module能够显著提升多视角深度估计在动态物体区域的表现,如上表所示。

3.Robustness benchmark performance

AFNet在所提出的鲁棒性基准测试中也是显著优于其他sota方法,AFNet随着pose噪声的逐渐增大,仍旧保持较高的精度,拥有最佳的鲁棒性。   

4.可视化结果

随着噪声的增大,可以看出其他方法由于噪声而出现明显的噪点甚至完全fail,而我们的AFNet始终保持精准预测,具有更强的抗噪声干扰能力。

多帧点云融合可视化结果,可以看出我们的depth具有很好的多帧一致性以及精准的边缘细节。

4.结论

作者提出了一个单视角,多视角自适应融合的深度估计系统,有效解决了多视角深度估计无法处理退化场景的难题,同时提升了精度和鲁棒性,大量实验证明了该方法的优越性和有效性。

#img2img-turbo

可玩性极强!

简笔素描一键变身多风格画作,还能添加额外的描述,这在 CMU、Adobe 联合推出的一项研究中实现了。512x512图像推理,A100只用0.11秒

作者之一为 CMU 助理教授朱俊彦,其团队在 ICCV 2021 会议上发表过一项类似的研究:仅仅使用一个或数个手绘草图,即可以自定义一个现成的 GAN 模型,进而输出与草图匹配的图像。

  • 论文地址:https://arxiv.org/pdf/2403.12036.pdf
  • GitHub 地址:https://github.com/GaParmar/img2img-turbo
  • 试玩地址:https://huggingface.co/spaces/gparmar/img2img-turbo-sketch
  • 论文标题:One-Step Image Translation with Text-to-Image Models

效果如何?我们上手试玩了一番,得出的结论是:可玩性非常强。其中输出的图像风格多样化,包括电影风、3D 模型、动画、数字艺术、摄影风、像素艺术、奇幻画派、霓虹朋克和漫画。

prompt 为「鸭子」。

prompt 为「一个草木环绕的小房子」。

prompt 为「打篮球的中国男生」。

 prompt 为「肌肉男兔子」。

在这项工作中,研究者对条件扩散模型在图像合成应用中存在的问题进行了针对性改进。这类模型使用户可以根据空间条件和文本 prompt 生成图像,并对场景布局、用户草图和人体姿势进行精确控制。

但是问题在于,扩散模型的迭代导致推理速度变慢,限制了实时应用,比如交互式 Sketch2Photo。此外模型训练通常需要大规模成对数据集,给很多应用带来了巨大成本,对其他一些应用也不可行。

为了解决条件扩散模型存在的问题,研究者引入了一种利用对抗学习目标来使单步扩散模型适应新任务和新领域的通用方法。具体来讲,他们将 vanilla 潜在扩散模型的各个模块整合到拥有小的可训练权重的单个端到端生成器网络,从而增强模型保留输入图像结构的能力,同时减少过拟合。

研究者推出了 CycleGAN-Turbo 模型,在未成对设置下,该模型可以在各种场景转换任务中优于现有基于 GAN 和扩散的方法, 比如昼夜转换、添加或移除雾雪雨等天气效果。

同时,为了验证自身架构的通用性,研究者对成对设置进行实验。结果显示,他们的模型 pix2pix-Turbo 实现了与 Edge2Image、Sketch2Photo 不相上下的视觉效果,并将推理步骤缩减到了 1 步。

总之,这项工作表明了,一步式预训练文本到图像模型可以作为很多下游图像生成任务的强大、通用主干。

方法介绍

该研究提出了一种通用方法,即通过对抗学习将单步扩散模型(例如 SD-Turbo)适配到新的任务和领域。这样做既能利用预训练扩散模型的内部知识,同时还能实现高效的推理(例如,对于 512x512 图像,在 A6000 上为 0.29 秒,在 A100 上为 0.11 秒)。

此外,单步条件模型 CycleGAN-Turbo 和 pix2pix-Turbo 可以执行各种图像到图像的转换任务,适用于成对和非成对设置。CycleGAN-Turbo 超越了现有的基于 GAN 的方法和基于扩散的方法,而 pix2pix-Turbo 与最近的研究(如 ControlNet 用于 Sketch2Photo 和 Edge2Image)不相上下,但具有单步推理的优势。

添加条件输入

为了将文本到图像模型转换为图像转换模型,首先要做的是找到一种有效的方法将输入图像 x 合并到模型中。

将条件输入合并到 Diffusion 模型中的一种常用策略是引入额外的适配器分支(adapter branch),如图 3 所示。

具体来说,该研究初始化第二个编码器,并标记为条件编码器(Condition Encoder)。控制编码器(Control Encoder)接受输入图像 x,并通过残差连接将多个分辨率的特征映射输出到预训练的 Stable Diffusion 模型。该方法在控制扩散模型方面取得了显著成果。

如图 3 所示,该研究在单步模型中使用两个编码器(U-Net 编码器和条件编码器)来处理噪声图像和输入图像遇到的挑战。与多步扩散模型不同,单步模型中的噪声图直接控制生成图像的布局和姿态,这往往与输入图像的结构相矛盾。因此,解码器接收到两组代表不同结构的残差特征,这使得训练过程更加具有挑战性。

直接条件输入。图 3 还说明了预训练模型生成的图像结构受到噪声图 z 的显着影响。基于这一见解,该研究建议将条件输入直接馈送到网络。为了让主干模型适应新的条件,该研究向 U-Net 的各个层添加了几个 LoRA 权重(见图 2)。

保留输入细节

潜在扩散模型 (LDMs) 的图像编码器通过将输入图像的空间分辨率压缩 8 倍同时将通道数从 3 增加到 4 来加速扩散模型的训练和推理过程。这种设计虽然能加快训练和推理速度,但对于需要保留输入图像细节的图像转换任务来说,可能并不理想。图 4 展示了这一问题,我们拿一个白天驾驶的输入图像(左)并将其转换为对应的夜间驾驶图像,采用的架构不使用跳跃连接(中)。可以观察到,如文本、街道标志和远处的汽车等细粒度的细节没有被保留下来。相比之下,采用了包含跳跃连接的架构(右)所得到的转换图像在保留这些复杂细节方面做得更好。

为了捕捉输入图像的细粒度视觉细节,该研究在编码器和解码器网络之间添加了跳跃连接(见图 2)。具体来说,该研究在编码器内的每个下采样块之后提取四个中间激活,并通过一个 1×1 的零卷积层处理它们,然后将它们输入到解码器中对应的上采样块。这种方法确保了在图像转换过程中复杂细节的保留。

实验

该研究将 CycleGAN-Turbo 与之前的基于 GAN 的非成对图像转换方法进行了比较。从定性分析来看,如图 5 和图 6 显示,无论是基于 GAN 的方法还是基于扩散的方法,都难以在输出图像真实感和保持结构之间达到平衡。

该研究还将 CycleGAN-Turbo 与 CycleGAN 和 CUT 进行了比较。表 1 和表 2 展示了在八个无成对转换任务上的定量比较结果。

CycleGAN 和 CUT 在较简单的、以对象为中心的数据集上,如马→斑马(图 13),展现出有效的性能,实现了低 FID 和 DINO-Structure 分数。本文方法在 FID 和 DINO-Structure 距离指标上略微优于这些方法。

如表 1 和图 14 所示,在以对象为中心的数据集(如马→斑马)上,这些方法可以生成逼真的斑马,但在精确匹配对象姿势上存在困难。 

在驾驶数据集上,这些编辑方法的表现明显更差,原因有三:(1)模型难以生成包含多个对象的复杂场景,(2)这些方法(除了 Instruct-pix2pix)需要先将图像反转为噪声图,引入潜在的人为误差,(3)预训练模型无法合成类似于驾驶数据集捕获的街景图像。表 2 和图 16 显示,在所有四个驾驶转换任务上,这些方法输出的图像质量较差,并且不遵循输入图像的结构。

#ViT-CoMer

本文分享 CVPR 2024 论文​​ViT-CoMer: Vision Transformer with Convolutional Multi-scale Feature Interaction for Dense Predictions​​,由百度提出视觉新骨干 ViT-CoMer,刷新密集预测任务 SOTA。

  • 论文链接:https://arxiv.org/pdf/2403.07392.pdf
  • 开源地址:https://github.com/Traffic-X/ViT-CoMer,(欢迎大家试用和star)

1.算法效果

1.1.炸裂结果

检测效果SOTA

在未增加额外训练数据的情况下,ViT-CoMer-L在目标检测benchmark COCO val2017上达到了64.3% AP。此前检测的SOTA算法为Co-DETR,在未增加额外数据时Co-DETR的效果为60.7% AP,使用ViT-CoMer替换原backbone(Swin-L)的同时采用了ViT-Adapter提供的BEiTv2*作为预训练,其检测效果可达64.3% AP,相比较其他同体量算法ViT-CoMer效果更优。

分割效果SOTA

ViT-CoMer-L在语义分割 benchmark ADE20K val上获得了62.1% mIoU,10亿参数量以下效果SOTA。基于Mask2Former分割算法,对比了ViT-CoMer和其他先进的骨干网络(如RevCol-H,ViT-Adapter-L等),从表7可以看出,在相似体量下,ViT-CoMer算法达到了SOTA的效果,甚至可媲美其他更大体量的模型(ViT-Adapter-G,1B参数)

小体积大能量

Small也可以当Large用,ViT-CoMer-S (1/6 ViT-L参数量 )取得与ViT-L相当的检测效果。基于经典的Mask R-CNN检测框架,我们跨体量跨骨干网络对比了在COCO数据集上的效果,惊喜的发现ViT-CoMer-Small(仅ViT-Large参数量的1/6)可以达ViT-Large相同效果,而当采用更先进的预训练时效果又出现了代差级的提升。

不同规模效果样样强

ViT-CoMer 在不同的参数规模下都可以获得SOTA效果。同样基于Mask-RCNN检测框架,我们对比了不同骨干网络在COCO数据集上的效果,不难发现,ViT-CoMer在不同参数规模、不同训练配置下效果均领先于其他先进的骨干网络。

1.2.性能

训推性能均强悍(Rebuttle内容,后续补充至github)

相同的效果下,ViT-CoMer在训练、推理性能(耗时更短)上都更优。基于Mask-RCNN检测框架,对比分析了ViT-Large、ViT-Adapter-Large和ViT-CoMer-Base-light三种方案的性能,可以看出ViT-CoMer-Base-light(使用少量的CTI模块)用更短的训练和推理时间,即可取得更好的效果。

1.3.可拓展性

零成本使用先进预训练

ViT-CoMer可以直接加载不同的预训练(如ImagNet-1K,ImageNet-22K,MM等)。基于Mask-RCNN检测和UperNet分割框架,依次使用Imagenet-1K,Imagenet-22K和多模态等预训练初始化ViT分支。从表3和表6中我们可以看出预训练越强,算法效果越好。

高效兼容不同算法框架

ViT-CoMer可以直接嵌入到不同的检测框架中。将ViT-CoMer迁移到Cascade Mask-RCNN,ATSS和GFL等检测框架中,从表2可以看出,ViT-CoMer效果较其他骨干网络更优。

轻松适配不同Transformer

CoMer不仅仅可以适配ViT框架,其他基准骨干网络(如Swin)也可以轻松适配。我们尝试将CoMer迁移到ViT之外的其他Transformer框架中,我们惊喜的发现,CoMer同样可以在其中发挥作用,从表11中可以看到,适配后X-CoMer效果相比较基准模型更优。

有效的PEFT策略(Rebuttle内容,后续补充至github)

CoMer也可以作为一种有效的PEFT策略使用。当我们freeze住ViT部分,只训练CoMer部分参数,可以看出CoMer效果要优于LoRA(ViT-CoMer-L(freeze ViT) > ViT-L(full-tune) > ViT-L(freeze ViT + LoRA))。

密集预测任务不是极限

除了密集预测任务之外,我们也尝试了ViT-CoMer在分类任务上的效果。我们在Imagenet数据集上对比了ViT和ViT-CoMer的结果,实验显示我们的算法依旧有很强的竞争力。

2.动机

当前Tranformer骨干网络处理密集预测任务存在以下问题:

  1. ViT骨干网络处理密集预测任务(检测、分割等)效果不佳;
  2. 特制骨干网络需要重新预训练,增加训练成本;
  3. 适配骨干网络仅对ViT和卷积特征进行信息交互,缺少不同尺度特征之间的信息交互。

针对以上三个问题,Vit-CoMer做了如下优化:

  • 针对问题1和2, 设计了一种新颖的密集预测骨干网络,它集成了ViT和CNN特征。由于网络保留了完整的ViT结构,所以可以有效地利用各种ViT开源预训练权重,同时网络融入多感受野空间多尺度卷积特征,解决了ViT特征之间缺乏交互以及表征尺度单一的问题。
  • 针对问题3, 设计了一种CNN-Transformer双向交互模块,不仅能够丰富与增强彼此之间的特征,还能同时进行层级之间多尺度特征的融合,从而得到更加丰富的语义信息,有利于处理密集预测任务。

3.方案

3.1.整体框架

ViT-CoMer网络架构十分简洁(如图3所示),其中ViT占主体(如红色框内1所示),适配一个轻量的CNN结构(如绿色框内所示)。整个结构包含2个关键模块:MRFP(如绿2)和CTI(如绿3)。其中MRFP主要作用是补充多尺度和局部特征信息。CTI的作用则是对不同架构特征信息进行增强。 

3.2.多感受野特征金字塔模块(MRFP)

MRFP是由特征金字塔和多感受野卷积层组成。特征金字塔能提供丰富的多尺度信息,而后者通过不同的卷积核扩展感受野,增强了CNN特征的长距离建模能力。该模块如图4所示。

3.3.CNN-Transformer双向交互融合模块(CTI)

CTI是一种跨架构的特征融合方法,如图5所示。在不改变ViT的结构的情况下,引入了CNN的多尺度特征,由于ViT是单尺度特征,CNN为多尺度特征,在实现的时候直接将CNN中与ViT同尺度的特征进行相加(优势,简单高效)。同时对相加后的特征进行了多尺度自注意力操作,这样不同尺度的特征之间也进行了借鉴和增强。通过双向交互模块,CTI缓解了ViT中缺乏局部信息交互和非层次特征的问题,同时进一步增强了CNN的长距离建模和语义表征能力。

4.可视化效果

目标检测和实例分割可视化对比分析

与ViT相比:从图6可以看出,ViT-CoMer产生了更具层次感的多尺度特征,具备丰富的局部边缘和纹理,提升了目标检测和实例分割的效果。

与ViT-Adapter相比(Rebuttle内容,后续补充至github):从图1可以看出,ViT-Adapter和ViT-CoMer同时具备丰富的多尺度纹理信息,但是相比ViT-Adapter, ViT-CoMer的信息颗粒度更胜一筹。更细节的内容请阅读原文和代码。 

#xxx

#xxx
#xxx
#xxx
#xxx

相关文章:

w~视觉~合集13

我自己的原文哦~ https://blog.51cto.com/whaosoft/13384038 #xxx w视觉合集13~17没了.... #ViTAR 作者提出了一种新颖的架构:任意分辨率的视觉 Transformer (ViTAR)。ViTAR中的自适应标记合并功能使模型能够自适应地处理可变分辨率图像…...

DeepSeek+Kimi 一键生成100种PPT

一 简介 PPT在工作中经常用到,无论是给老板汇报,还是同事、朋友之间的分享,或是去见投资人:) ,都离不开它,然而写PPT经常让人感觉不胜其烦,无论是逻辑的展开、还是页面的布局、字体、配图,都像个…...

【Qt之QQuickWidget】QML嵌入QWidget中

由于我项目开始使用Widgets,换公司后直接使用QML开发,没有了解过如何实现widget到qml过渡,恰逢面试时遇到一家公司希望从widget迁移到qml开发,询问相关实现,一时语塞,很尴尬,粗略研究并总结下。 对qwidget嵌…...

Apache Flink CDC (Change Data Capture) mysql Kafka

比如使用 Flink CDC , 监听mysql bin-log日志实现数据的实时同步, 发送到kafka springboot整合flink cdc监听数据库数据 阿里开源的神仙工具,完美实现数据同步!#程序员阿里开源的这个神器很好很强大。阿里开源的这个神器全面超越Canal,果然在…...

Week1_250217~250223_OI日志(待完善)

W1_250217~250223_OI日志 250217大致安排题目 250218大致安排题目 250219大致安排 250217 大致安排 上午讲了树上启发式合并,中午和下午补了上午的题,额外做了一道。 题目 U41492 树上数颜色 (老师自己出的,实在是太典中点了&…...

线性模型 - 学习总结

本文对前面博文中所学的机器学习的知识进行总结,以便整体上加深对机器学习的理解。 一、机器学习三要素:模型、学习准则、优化算法 机器学习是从有限的观测数据中学习(或“猜测”)出具有一般性的规律,并 可以将总结出来的规律推广应用到未观…...

IP----访问服务器流程

1.访问服务器流程 1.分层 1.更利于标准化 2.降低层次之间的关联性---每一层都只完成自身层次所执行的功能--每一层都在下层的基础上提供增值服务 1.应用层 抽象语言---编码---提供人机交互的接口 2.表示层 编码--二进制,压缩解压缩、格式转换 3.会话层 建立…...

Visual Studio 中 C/C++ 函数不安全警告(C4996)终极解决方案:分场景实战指南

问题描述 在 Visual Studio 中编写 C/C 代码时,使用 scanf、strcpy、fopen 等传统函数会触发以下警告: C4996: xxx: This function or variable may be unsafe. Consider using xxx_s instead. 根本原因: 这些函数缺乏缓冲区溢出检查&#…...

DeepSeek写俄罗斯方块手机小游戏

DeepSeek写俄罗斯方块手机小游戏 提问 根据提的要求,让DeepSeek整理的需求,进行提问,内容如下: 请生成一个包含以下功能的可运行移动端俄罗斯方块H5文件: 核心功能要求 原生JavaScript实现,适配手机屏幕 …...

小程序高度问题背景scss

不同的机型&#xff0c;他的比例啥的都会不一样&#xff0c;同样的rpx也会有不同的效果。所以这里选择了取消高度。 <view class"box-border" :style"{padding-top: ${navHeight}px,}"><!-- 已登录 --><view v-if"userStore.userInfo&…...

浅析 DeepSeek 开源的 FlashMLA 项目

浅析 DeepSeek 开源的 FlashMLA 项目 DeepSeek 开源周 Day 1&#xff08;2025 年 2 月 24 日&#xff09;放出的开源项目——FlashMLA&#xff0c;是一款针对 Hopper 架构 GPU 高效多层级注意力 (Multi-Level Attention, MLA) 解码内核&#xff0c;专门为处理变长序列问题而设…...

【Blender】二、建模篇--08,小狐狸角色建模

这堂课呢 我们来完成本套课程建模片的最后一个模型 小狐狸 这堂课呢 主要想让大家一起走一遍角色建模的一个基本流程 让你以后遇到类似的模型时候有一个基本的建模思路 那我们现在就开始吧 2 00:00:16,830 --> 00:00:24,390 我们还是在我们之前建模马拉松的那个文件里面继…...

【Gin-Web】Bluebell社区项目梳理6:限流策略-漏桶与令牌桶

本文目录 一、限流二、漏桶三、令牌桶算法四、Gin框架中实现令牌桶限流 一、限流 限流又称为流量控制&#xff0c;也就是流控&#xff0c;通常是指限制到达系统的并发请求数。 限流虽然会影响部分用户的使用体验&#xff0c;但是能一定程度上保证系统的稳定性&#xff0c;不至…...

MySQL 数据库基础

1. MySQL 数据库基础 在这一部分&#xff0c;我们将学习 MySQL 的基本概念和常见的数据库操作&#xff0c;帮助你掌握如何创建数据库、表&#xff0c;并进行数据的增、删、改操作。同时&#xff0c;我们还会探讨一些常见的错误示例及其原因&#xff0c;帮助你避免常见的陷阱。…...

如何查看java的字节码文件?javap?能用IDEA吗?

编译指令&#xff1a; javac YourProject.java 查看字节码文件的指令&#xff1a; javap -c -l YourProject.class 不添加-c指令就不会显示字节码文件&#xff1a; 不添加 -l 就不会显示源代码和字节码文件的对应关系&#xff1a; 添加-l之后多出来这些&#xff1a; IDEA不太…...

实战技巧:如何快速提高网站收录的权威性?

快速提高网站收录的权威性是一个系统性的工作&#xff0c;涉及内容质量、网站结构、外部链接、用户体验等多个方面。以下是一些实战技巧&#xff0c;可以帮助你快速提升网站收录的权威性&#xff1a; 一、提升内容质量 原创性&#xff1a; 确保网站内容具备高质量与原创性&a…...

详解传输层协议TCP/UDP

传输层 传输层是OSI模型的第四层&#xff0c;主要负责端到端的数据传输&#xff0c;确保数据可靠、有> 序地从源设备传送到目标设备。其主要功能包括&#xff1a; 端到端通信&#xff1a;在源和目标设备之间建立连接&#xff0c;确保数据准确传输。数据分段与重组&#xff1…...

案例|某开关站室外轮式巡检机器人解决方案

随着电网规模的扩大和复杂性的增加&#xff0c;传统的GIS开关设备巡视工作面临着巨大的挑战。人工巡视不仅劳动强度大、效率低&#xff0c;而且难以保证巡视的准确性和全面性。此外&#xff0c;GIS设备通常位于复杂的环境中&#xff0c;如高海拔、高湿度、强电磁干扰等&#xf…...

穿越虚拟与现实:解密Linux进程的地址空间

在 Linux 操作系统中&#xff0c;每个进程都有独立的虚拟地址空间。虚拟地址空间是操作系统为每个进程提供的抽象内存模型&#xff0c;它使得每个进程都觉得自己拥有独立的内存&#xff0c;而不需要关心物理内存的具体布局。本文将深入探讨 Linux 进程的虚拟地址空间及其管理机…...

什么是MySql的主从复制(主从同步)?

主页还有其他面试题总结&#xff0c;有需要的可以去看一下&#xff0c;喜欢的就留个三连再走吧~ 1.什么是MySql的主从复制原理&#xff1f; 主从复制的核心就是二进制binlog&#xff08;DDL&#xff08;数据定义语言&#xff09;语句和DML&#xff08;数据操纵语言&#xff09…...

C++面向对象编程技术研究

一、引言 面向对象编程&#xff08;OOP&#xff09;是一种程序设计方法&#xff0c;它将现实世界中的实体抽象为“对象”&#xff0c;并通过类和对象来实现程序的设计。OOP的核心思想包括封装、继承和多态&#xff0c;这些特性使得程序更加模块化、易于扩展和维护。C作为一种支…...

MySQL 连表查询:原理、语法与优化

目录 引言 什么是连表查询&#xff1f; 连表查询的类型 1. 内连接&#xff08;INNER JOIN&#xff09; 2. 左连接&#xff08;LEFT JOIN&#xff09; 3. 右连接&#xff08;RIGHT JOIN&#xff09; 4. 全连接&#xff08;FULL JOIN&#xff09; 5. 交叉连接&#xff08;…...

力扣2382. 删除操作后的最大子段和

力扣2382. 删除操作后的最大子段和 题目 题目解析及思路 题目要求找到每次删除一个元素的最大字段和 因为删除不好做&#xff0c;可以转删除为添加&#xff0c;用并查集维护当前子段和 两部分合并(两个并查集)&#xff0c;三部分求和(两个并查集和一个元素) 代码 class S…...

PMP--题库--一模--纯问题

文章目录 单选题 &#xff08;每题1分&#xff0c;共170道题&#xff09;1、 [单选] 根据项目的特点&#xff0c;项目经理建议选择一种敏捷方法&#xff0c;该方法限制团队成员在任何给定时间执行的任务数。此方法还允许团队提高工作过程中问题和瓶颈的可见性。项目经理建议采用…...

C++核心指导原则: 错误处理

C Core Guidelines 整理目录 哲学部分接口(Interface)部分函数部分类和类层次结构部分枚举部分资源管理部分性能部分错误处理 E: Error handling E.1: Develop an error-handling strategy early in a design 翻译: 在设计早期制定一个错误处理策略。原因: 为确保代码的健壮…...

豆包、扣子等产品如何与CSDN合作?

要实现CSDN开发者社区与豆包、扣子等产品的深度合作&#xff0c;构建创作者Agent生态体系&#xff0c;可通过以下结构化方案实现技术、生态与商业价值的闭环&#xff08;含具体实施路径与数据指标&#xff09;&#xff1a; 一、战略合作框架搭建 开放平台互通 建立三方API网关&…...

C#开发——ConcurrentDictionary集合

ConcurrentDictionary<TKey, TValue> 是 C# 中一个专为多线程场景设计的线程安全字典集合&#xff0c;位于 System.Collections.Concurrent 命名空间中。它允许多个线程同时对字典进行读写操作&#xff0c;而无需额外的同步措施。 一、集合特征 此集合有如下特征…...

CSS `transform` 属性详解:打造视觉效果与动画的利器

CSS transform 属性详解&#xff1a;打造视觉效果与动画的利器 引言一、transform 属性简介二、平移&#xff08;Translation&#xff09;三、旋转&#xff08;Rotation&#xff09;四、缩放&#xff08;Scale&#xff09;五、倾斜&#xff08;Skew&#xff09;六、组合变换&am…...

Python 进阶特性深度解析:从语法糖到内存管理的统一视角

生成式(推导式)的用法与内存效率分析 Python 的推导式不仅仅是语法糖,它们在内存管理和性能方面有着深刻的影响。理解推导式的工作原理,有助于我们写出更高效的代码。 推导式的内存模型分析 列表推导式在 CPython 解释器中的实现实际上比等价的 for 循环更为高效: # 列…...

eclipse配置Spring

1、从eclipse下载Spring工具 进入 help – install new software… &#xff0c;如下图&#xff1a; 点击 add &#xff0c;按以下方式输入&#xff1a; Name : Spring Location : http://dist.springsource.com/release/TOOLS/update/e4.10/ 之后点击 add &#xff0c;等待…...

属性绑定

双大括号不能在html属性中使用&#xff0c;想要响应式地绑定一个属性&#xff0c;应用v-bind指令 <script > export default{data(){return{dynamicId:"appid",dynamicClass:"appclass"}} } </script><template><div v-bind:id"…...

深入讲解微信小程序 <canvas> 标签的 type=“2d“属性

在微信小程序开发中&#xff0c;<canvas> 组件是一个非常强大的工具&#xff0c;允许开发者创建动态图形和动画。然而&#xff0c;正确设置 <canvas> 的 type 属性是确保其正常工作的关键之一。本文将深入探讨 type"2d" 属性的重要性、使用场景及其在实际…...

基于PSO-LSTM长短期记忆神经网络的多分类预测【MATLAB】

一、研究背景与意义 在时间序列分类、信号识别、故障诊断等领域&#xff0c;多分类预测任务对模型的时序特征捕捉能力提出了极高要求。传统LSTM网络虽能有效建模长程依赖关系&#xff0c;但其性能高度依赖超参数的选择&#xff0c;例如隐含层神经元数量、学习率、迭代次数等。…...

Linux----线程

一、基础概念对比 特性进程 (Process)线程 (Thread)资源分配资源分配的基本单位&#xff08;独立地址空间&#xff09;共享进程资源调度单位操作系统调度单位CPU调度的最小单位创建开销高&#xff08;需复制父进程资源&#xff09;低&#xff08;共享进程资源&#xff09;通信…...

自注意力机制和CNN的区别

CNN&#xff1a;一种只能在固定感受野范围内进行关注的自注意力机制。​CNN是自注意力的简化版本。自注意力&#xff1a;具有可学习感受野的CNN。自注意力是CNN的复杂形态&#xff0c;是更灵活的CNN&#xff0c;经过某些设计就可以变为CNN。 越灵活、越大的模型&#xff0c;需要…...

【qt链接mysql】

首先根据自己qtcreater 下载mysql安装包 将mysql安装目录下的如下目录中的xxx\MySQL\MySQL Server 5.7\lib\libmysql.dll 拷贝到QT目录C:\Qt\5.7\mingw53_32\bin 下&#xff08;当前这个也是我电脑上的Qt路径&#xff0c;请找到你Qt对应的bin路径&#xff09; 直接在文win11上…...

Parameter 与 Param 有什么区别

Parameter 与 Param Parameter 与 Param 意思相同&#xff0c;在大多数情况下可以互换使用&#xff0c;它们在用法和语境有一些细微的区别 1、Parameter Parameter 是一个完整的单词&#xff0c;是正式术语&#xff0c;广泛用于数学、统计学、计算机科学、工程等领域 在数学…...

【前端】【功能函数】treeMapEach,对每个节点进行自定义转换的实用函数

一、功能说明 这是一个递归遍历树形结构数据&#xff0c;并对每个节点进行自定义转换的实用函数。它会对原始树中的每个节点执行 conversion 函数&#xff0c;最终生成一个包含转换后结果的新树结构。 二、核心作用 树形结构遍历&#xff1a;深度优先递归遍历所有子节点数据…...

C#初级教程(5)——解锁 C# 变量的更多奥秘:从基础到进阶的深度指南

一、变量类型转换&#xff1a;隐式与显式的门道 &#xff08;一&#xff09;隐式转换&#xff1a;编译器的 “贴心小助手” 隐式转换是编译器自动进行的类型转换&#xff0c;无需开发者手动干预。这种转换通常发生在将取值范围小的数据类型赋值给取值范围大的数据类型时&#…...

初步学习java 动态代理

前言 在学习 动态代理知识之前&#xff0c;可以先了解 反射 反射的复习-CSDN博客 场景 我们知道&#xff0c;一些大明星开演出会&#xff0c;要收门票&#xff0c;准备场景啥的。但很显然 明星&#xff0c;他们主要还是 唱歌&#xff0c;跳舞&#xff0c;和粉丝互动。那么 其…...

QT 基础知识点

1.基础窗口类QMainWindow qDialog Qwidget 随项目一起创建的窗口基类有三个可选QMainWindow qDialog Qwidget 1.1 Qwidget 是所有窗口的基类&#xff0c;只要是他的子类&#xff0c;或子类的子类&#xff0c;都具有他的属性。 右键项目 Add New -> Qt qt设计师界面类&am…...

unity学习53:UI的子容器:面板panel

目录 1 UI的最底层容器&#xff1a;canvas 1.1 UI的最底层容器&#xff1a;canvas 1.2 UI的合理结构 2 UI的子容器&#xff1a;面板panel 2.1 创建panel 2.2 面板的本质&#xff1a; image &#xff0c;就是一个透明的图片&#xff0c;1个空容器 3 面板的属性 4 面板的…...

Qt如何将数据传入labview,Qt又如何从labview中读取数据?

Qt如何将数据传入labview,Qt又如何从labview中读取数据? Qt如何将数据传入labviewQt如何从labview中读取数据 Qt如何将数据传入labview Qt如何从labview中读取数据...

JWT使用教程

目录 JWT (JSON Web Token)1. JWT简介(1) 什么是JWT(2) JWT有什么用(3) JWT认证方式 2. JWT的组成部分3. 签名的目的4. JWT与Token的区别5 JWT的优势6 JJWT签发与验证token(1) 引入依赖(2) 创建 Token(3) 解析Token(4) 设置过期时间(5) 自定义claims 7. JWT自定义工具类 JWT (J…...

数据结构——静态顺序表,动态顺序表

线性表&#xff08;linear list&#xff09;是n个具有相同特性的数据元素的有限序列。 线性表是⼀种在实际中⼴泛使 ⽤的 数据结构&#xff0c;常⻅的线性表&#xff1a;顺序表、链表、栈、队列、字符串... 线性表在逻辑上是线性结构&#xff0c;也就说是连续的⼀条直线。但是在…...

前端Sass面试题及参考答案

目录 什么是 Sass? Sass 和 CSS 的主要区别是什么? Sass 中如何处理列表? Sass 中如何处理映射(map)? Sass 中如何使用函数? Sass 中如何使用内置函数? Sass 中如何设置默认值? Sass 中的 @function 和 @mixin 有什么区别? Sass 中如何实现模块化? Sass 中…...

ubuntu20.04音频aplay调试

1、使用指定声卡&#xff0c;aplay 播放命令 aplay -D plughw:1,0 test2.wav2、 录音 arecord -Dhw:1,0 -d 10 -f cd -r 44100 -c 2 -t wav test.wav3、各个参数含义 -D 指定声卡编号 plughw:0,0 //0,0代表card0,device0&#xff0c;可以通过arecord -l获取 -f 录音格式 S16_LE…...

比特信噪比与信噪比SNR的换算公式

在无线通信系统中&#xff0c;比特信噪比与信噪比&#xff08;SNR&#xff0c;通常指符号信噪比Es/N0&#xff09;的换算&#xff1a; 核心公式 E b N 0 SNR R ⋅ log ⁡ 2 M \boxed{ \frac{E_b}{N_0} \frac{\text{SNR}}{R \cdot \log_2 M} } N0​Eb​​R⋅log2​MSNR​​ 或…...

RTSP场景下RTP协议详解及音视频打包全流程

RTSP场景下RTP协议详解及音视频打包全流程 一、RTSP与RTP的关系 RTSP&#xff1a;负责媒体会话控制&#xff08;DESCRIBE、SETUP、PLAY、PAUSE&#xff09;&#xff0c;通过SDP协商传输参数&#xff08;端口、编码格式、封装模式&#xff09;。RTP&#xff1a;实际传输音视频数…...

java练习(39)

ps:题目来自力扣 三数之和 给你一个整数数组 nums &#xff0c;判断是否存在三元组 [nums[i], nums[j], nums[k]] 满足 i ! j、i ! k 且 j ! k &#xff0c;同时还满足 nums[i] nums[j] nums[k] 0 。请你返回所有和为 0 且不重复的三元组。 注意&#xff1a;答案中不可以…...