点击下方卡片,关注「AI视界引擎」公众号
( 添加时备注:方向+学校/公司+昵称/姓名 )
在场景中无缝移动物体是图像编辑的常见需求,但现有编辑方法仍面临挑战。特别是对于真实世界图像,遮挡情况进一步增加了难度。主要难点在于,在移动前需要完成被遮挡部分的修复。
为利用预训练扩散模型中嵌入的真实世界知识,作者提出了一种专门针对遮挡物体移动的扩散框架,命名为DiffOOM。
所提出的DiffOOM包含两个并行分支,可同时执行物体去遮挡和移动操作。去遮挡分支采用背景颜色填充策略和持续更新的物体 Mask ,将扩散过程集中于完成目标物体的被遮挡部分。
与此同时,移动分支采用潜在优化将修复后的物体放置于目标位置,并采用局部文本条件引导将物体适当融入新环境。
大量评估表明,yinqing-DiffOOM_2504性能优越,并通过全面的用户研究得到进一步验证。
unsetunset引言unsetunset
在场景中无缝移动物体(Avrahami等人2024)是图像编辑的常见需求。为了移动被遮挡的物体,涉及三个子任务:完成被遮挡的物体、将物体移动到目标位置、以及修复被移动物体的原始区域。为解决物体去遮挡问题,先前工作(Zhan等人2020)采用两个独立的网络:第一个预测物体的完整 Mask ,第二个用合理的内容填充恢复的 Mask 。然而,采用判别性网络显著限制了生成新内容的能力,如图1(b)所示。大规模扩散模型的最新进展以其强大的生成能力,为生成被遮挡部分提供了新机遇。
一种直观的解决方案是利用SD修复模型完成缺失区域,如图1(c)所示。由于生成内容不受约束,修复模型可能生成不期望的元素,而非重建目标物体的被遮挡部分。近期,基于扩散的拖拽式(Pan等人2023)编辑方法,如DragDiffusion(Shi等人2024)和DiffEditor(Mou等人2024),被提出以有效利用预训练扩散模型将物体拖拽到目标位置。如图1(d)所示,DragDiffusion主要关注内容拖拽,因此难以移动整个物体。尽管DiffEditor成功地将图1(e)中的小男孩移动到目标位置,但被遮挡部分仍不完整,因为未考虑去遮挡问题。
尽管现有的基于扩散的编辑方法不能直接用于这项任务,但大规模扩散模型中嵌入的综合现实世界知识可能对这项任务有用。为此,作者提出了一种专门为遮挡物体移动设计的基于扩散的框架,称为DiffoOM。yinqing-DiffOOM_2504具有两个并行的基于Stable Diffusion的分支,用于处理物体去遮挡和移动。
对于去遮挡任务,作者的动机主要来源于两个方面。
1)扩散模型包含丰富的关于各种物体形状的先验知识,这对于识别需要填充的区域至关重要。
2)扩散模型具备强大的生成能力,能够用合理的內容完成遮挡部分。基于这些动机,所提出的去遮挡分支利用交叉注意力以及自注意力图来估计物体的完整 Mask ,该 Mask 用于在扩散过程中指导物体遮挡区域的生成。为了最小化图像中无关元素的影响,去遮挡分支的输入采用颜色填充策略,将目标物体的背景区域初始化为单一颜色。
为了保持物体可见区域的不变性,在扩散步骤中,通过用反转过程中的潜在表示替换扩散更新的潜在表示,在可见区域采用潜在保持策略。此外,采用LoRA(Hu等人,2021)来确保新内容与目标物体的特征相匹配。
利用遮挡消除分支提供的目标 Mask 和完成的目标,运动分支旨在将目标目标和谐地放置在目标位置。具体而言,潜在优化最小化完成目标与目标区域的潜在之间的距离,引导扩散过程在目标区域生成无遮挡目标。为确保重新定位的目标能够与其新环境无缝融合,对目标区域应用局部文本条件引导。另一个问题是避免像图1(e)中DiffEditor结果那样,在目标目标原始位置填充不足的内容。为解决这个问题,作者将原始区域填充噪声,并利用类似的 Mask 引导策略来引导扩散过程,确保其使用周围背景信息对区域进行修复。
作者的贡献可以总结如下:
作者利用预训练扩散模型中嵌入的丰富现实世界知识来识别物体的遮挡部分,并生成内容。
作者引入了一个双分支框架,其中基于扩散的除遮挡和运动分支并行处理。
大量实验和用户研究证明了yinqing-DiffOOM_2504在除遮挡各种物体和实现令人满意的编辑结果方面的有效性。
unsetunset方法论unsetunset
在存在遮挡物体的实际场景中,作者的目标是使用户能够将这些物体重新定位到指定的目标位置,同时完成被遮挡的部分。此过程所需的输入包括源图像,记作
,以及一个 Mask ,记作
,该 Mask 突出显示了物体的可见部分。该 Mask 可以由用户提供,也可以通过自动分割方法生成。此外,用户通过指示目标点g来指定目标位置。在以下小节中,作者首先介绍扩散模型的基础知识,然后详细概述作者的整体框架。
前提
扩散模型
yinqing-DiffOOM_2504基于Stable Diffusion V1.5(Rombach等人,2022年),该模型通过在潜在空间而非像素空间中应用扩散过程,提升了DDPM(Ho、Jain和Abbeel,2020年)的训练和采样效率。通过预训练的编码器
和解码器
,Stable Diffusion能够高效地通过
获取
的潜在空间表示
,并通过
将潜在空间样本转换为像素空间。为了通过文本条件c控制合成过程,Stable Diffusion采用了条件去噪模型
,其中
是t时刻的噪声潜在表示。
注意力机制
去噪模型
的基础是一个时间条件U-Net,该网络由一系列基本模块组成。每个基本模块依次包含一个残差模块、一个自注意力模块和一个交叉注意力模块(Dosovitskiy等人,2020年;Vaswani,2017年)。此外,还有一个文本编码器
,用于将长度为
的文本 Prompt c投影到中间表示
。在t时刻,残差模块首先以
-th基本模块的特征作为输入,生成中间特征
。然后,自注意力模块挖掘特征之间的关系,而交叉注意力模块捕捉视觉和文本信息之间的联系(Hertz等人,2022年;Tumanyan等人,2023年;Chefer等人,2023年)。具体而言,第
层和
-th时刻的交叉注意力图
和自注意力图
可以通过
其中
是特征的维度。
和
是
的扁平化表示的不同投影,而
是文本嵌入
的投影。Refined Cross-attention Map 如公式 (1) 所详细描述,交叉注意力图
展示了每个文本 Token 对每个像素的激活程度,而自注意力图
捕获了每个像素与其他像素之间的相关性。与代表目标目标的 Token 相关的交叉注意力图提供了目标目标位置和大致的形状指示,并且可以通过利用自注意力图将激活的像素传播到高度相似的位置(Nguyen 等人 2024a)。具体来说,作者首先提取与目标目标对应的交叉注意力图,记为
。接下来,作者在所有层上对分辨率为
的交叉注意力图和自注意力图进行平均,这可以表示为
作者随后通过以下方式细化交叉注意力图:
其中
用于调整自注意力图对交叉注意力图的影响。在常规实践中,作者提取与目标目标对应的精细交叉注意力图,记为
。
框架概述
作者提出了一种基于扩散的框架,专门针对遮挡物体运动进行设计。yinqing-DiffOOM_2504有效地将这一任务分解为两个子任务:去遮挡和运动,这两个子任务由并行分支处理,如图2所示。在接下来的两个小节中,作者将详细阐述两个分支的关键设计。
遮挡分支
输入准备 为了消除图像中无关元素的影响,去遮挡分支以仅包含目标目标的图像块作为输入。具体来说,用可见 Mask
表示目标的可见部分,作者计算一个紧密包围目标的正方形边界框。作者将该正方形的中心点记为 b,边长记为
。为确保正方形框完全覆盖目标,作者通过松弛率
调整边长
,即
。利用中心点
和边长
,作者可以将源图像
和可见 Mask
裁剪成正方形块,作者将其定义为
。由于 Stable Diffusion
是在 512 分辨率上训练的,作者进一步调整这些正方形块的大小,记为
,其中
表示期望的边长。因此,去遮挡分支的输入图像
和输入 Mask
可以通过
通过预训练编码器可以获得清洁的潜在表示,记作
。为了为扩散过程建立起点,采用DDIM逆变换(Song, Meng, and Ermon 2020),该变换保持了编辑结果的连贯性。受DragonDiffusion的启发,作者存储中间的含噪潜在变量{Zinv }T=o,为去噪过程提供精确的指导。
关键设计 剔除遮挡分支旨在利用预训练基础模型中嵌入的丰富现实世界知识来补全遮挡物体。作者的解决方案融合了两个关键动机:1)扩散模型包含关于各种物体形状的丰富先验知识(Zhan等人 2024年);2)扩散模型具有强大的生成能力,能够生成遮挡内容。
为初步验证作者的动机,作者利用含噪声的潜在变量
作为扩散过程的起点,该变量是通过填充
中可见部分外的区域以引入噪声而得到的。为在扩散过程中保留可见部分,作者引入了潜在保持策略,通过用同一时间步中
的对应区域替换中间采样潜在变量
的可见区域
。该过程可表示为
其中
是第
步噪声图,
表示Hadamard积。如图3(c)所示,稳定的扩散过程成功生成了一个完整的逼真甜甜圈。然而,生成的甜甜圈远大于原始的遮挡甜甜圈,导致过度生成问题。
过度生成背后的潜在原因在于,在扩散的早期阶段,噪声水平过高,导致模型无法准确捕捉可见部分。因此,模型会根据输入 Prompt 自由生成内容,但完全忽略可见部分。为解决这一问题,作者采用两种策略:1)跳过早期阶段,从第
步开始进行扩散过程。2)用均匀颜色填充
中可见区域外的区域。该过程可表述为
是在
第一步噪声中添加的随机着色图像。颜色填充策略不仅降低了捕捉可见部分难度,还通过最小化背景生成的干扰,促使模型专注于目标物体。
然而,仅依赖这些策略并不能保证模型在遮挡区域避免再生不希望的元素,如图3(d)所示。这需要获取目标的完整 Mask 来指导扩散过程。为了明确利用扩散模型的形状先验,作者在每一步扩散过程中提取与目标目标对应的精细交叉注意力图
。
在扩散过程中的进展如图3(g)所示。它表明精细交叉注意力图能够在某种程度上表示目标的完整形状,并且它从先前的时间步逐渐变得更加精确。作者将
发送到自注意力模块,该模块将注意力模块限制为仅从目标目标 Query 信息。
另一个挑战在于生成部分与可见部分之间目标风格的差异,如图3(e)所示。受先前研究(Shi等人2024;Gu等人2024;Avrahami等人2023)的启发,作者对扩散U-Net进行风格保持的微调。微调过程采用低秩适配(LoRA)实现,监督信息仅应用于可见部分。借助LoRA,扩散模型被专门调优以确保生成风格与目标的可见部分保持一致。
运动分支
输入准备 运动分支的输入是源图像
和可见 Mask
。在源图像
上实施DDIM反演后,作者可以获得输出噪声潜空间
,这为运动分支提供了一个合适的起点,以保持源图像和编辑图像之间的一致性。此外,中间键
和值
被存储起来,为后续的扩散过程提供指导。
关键设计 移动分支旨在将完全未遮挡的目标精确放置到目标位置,保留背景信息,并修复移动目标的原始区域。移动分支的输入初始化为
,而目标原始位置留下的区域
被填充噪声(噪声填充),可以表示为
在运动分支中,
表示第
步的含噪声潜在变量。在去噪过程中的自注意力模块正向传播时,作者将由
生成的键
和值
替换为存储的
和
。在
的指导下,由
生成的 Query
被引导从
和
中检索背景内容。上述操作有助于使背景内容与输入保持一致,同时不生成不期望的元素,并适当修复移动目标的原始区域。
为了将去遮挡目标放置在目标位置,作者引入了潜在优化(Latent Optimization),其目标是最小化去遮挡目标与目标区域之间的距离。通过潜在优化,扩散过程被引导在目标区域生成去遮挡目标。具体而言,在每一步去噪过程中,将含噪潜在变量
通过U-Net处理后,可以得到
。然后,作者使用完整目标与目标区域之间的L2距离作为优化目标,该目标表示为
其中
是用户指定的目标位置。
是潜在空间中的裁剪大小,等于
,因为潜在空间是通过像素空间以8倍的因子下采样得到的。然后作者可以通过梯度下降优化
来获得潜在
,表示为
。然而,直接使用双线性插值进行缩放并不适用于潜在空间。如图4 (b) 所示,当在潜在空间中缩放潜在时,会观察到明显的退化(Hwang, Park, and Jo 2024)。作者找到了一个简单的解决方案:1) 将潜在解码到像素空间。2) 使用双线性插值在像素 Level 进行缩放。3) 将缩放后的像素数据编码回潜在空间。因此,潜在缩放操作可以定义为
然后,作者将公式(8)中的调整大小操作替换为公式(9)。结果如图4(c)所示,该结果表明这种方法缓解了退化问题。
如图4(e)所示,仅依赖潜在优化不足以保证和谐集成。因此,作者通过在目标位置应用无分类器引导,利用扩散模型的先验知识。作者生成一个 Token 以g为中心、边长为r的正方形区域的 Mask
。将含噪潜在
输入去噪U-Net后,作者仅在目标区域(如图2所示局部文本引导)应用文本引导(Ho and Salimans 2022),该区域表示为
其中
表示引导尺度。在文本 Prompt 的引导下,扩散模型调整目标区域中的移动物体,使其更好地与自然图像的分布相一致。这种适应性确保了物体能够无缝地融入新的环境,如图4(f)所示。
unsetunset实验unsetunset
评估数据集
为了比较yinqing-DiffOOM_2504与其他现有方法的性能,作者从COCOA(Zhu等人,2017)的训练和验证集中开发了一个专门的评估数据集。鉴于作者的工作主要集中于具有遮挡的物体级运动,作者筛选数据集以包含具有较大遮挡物体的图像。最终的评估数据集包含120张图像,总共150个样本物体。对于每个样本,可见 Mask
由COCO数据集(Lin等人,2014)提供。由于基于扩散的方法需要输入文本 Prompt c,作者设计了一个 Prompt 模板“一张<类别名称>的照片”,其中类别名称也由COCO数据集提供。对于每个样本,作者随机设置8个不同的目标位置,总共产生1200个测试用例。
基于遮挡的对比分析
用于定量评估去遮挡目标的逼真度,作者采用KID分数(Binkowski等人2018年),将去遮挡目标与COCOA数据集中的真实完整目标进行比较。请注意,所有目标图像均设置为白色背景以确保公平比较。遵循DreamBooth(Ruiz等人2023年)的方法,作者也使用CLIP-T指标来评估 Prompt 保真度,该指标通过 Prompt 与图像CLIP(Radford等人2021年)嵌入之间的平均余弦相似度来衡量。
与其他方法的比较 为了验证作者去遮挡分支的有效性,作者将其与目标去遮挡方法PCNet(Zhan等人,2020)进行了比较。表1报告了定量比较结果,表明yinqing-DiffOOM_2504在图像真实感和 Prompt 保真度方面优于PCNet。此外,图5中展示的定性比较突显了yinqing-DiffOOM_2504能够产生比PCNet更令人满意的结果。尽管PCNet对于简单案例能够取得相对较好的结果,但在处理大规模遮挡和复杂主体的完成方面存在困难。利用预训练扩散模型中嵌入的广泛现实世界知识,yinqing-DiffOOM_2504在去遮挡复杂物体和生成高质量内容方面表现出色。
遮挡物体运动对比
遮挡物体运动评估指标
在遮挡物体运动的评估中,作者主要关注移动物体的原始位置(OP)和目标位置(TP)。作者采用三种评估指标:DINO-OP、DINOTP和CLIP-TP。DINO-OP用于衡量目标物体是否在原始位置留有残留。为此,作者对源图像
和编辑结果
中原始位置周围的框区域进行裁剪,并使用DINOv2(Oquab等,2023)来测量框区域之间的相似度。较高的DINO-OP分数表明目标物体仍然留在原始位置,这是不期望的。为了测量目标物体是否确实移动到了目标位置,作者在
中裁剪原始位置周围的框区域,并在
中裁剪目标位置周围的框区域。同样,作者利用DINOv2来测量裁剪区域的余弦相似度。较高的DINO-TP分数表示目标物体已成功移动到目标位置。此外,作者还比较了这两个区域的图像CLIP嵌入的相似度,这反映了物体的保真度和与周围环境的和谐性。
与其他方法的比较 在本节中,作者将yinqing-DiffOOM_2504与用于遮挡物体运动的可行编辑方法进行比较。作者将这些方法分为四类。 1) 例子绘制(PBE)(Yang等人2023)和AnyDoor(Chen等人2024)旨在向图像中添加物体。为了将它们应用于物体运动,作者在物体的原始位置应用图像修复,然后将物体粘贴到目标位置。 2) SD修复(Rombach等人2022)是最先进的修复方法,作者也可以将其转换为遮挡物体运动。通过可见 Mask
,作者可以提取物体并将其粘贴到目标位置。通过遮盖原始位置和目标位置周围的区域,模型被迫用合理的内容填充这些区域。 3) DragDiffusion(Shi等人2024)是一种点拖动编辑方法,作者通过在目标物体上选择多个点来将其应用于物体运动。 4) DragonDiffusion(Mou等人2023)和DiffEditor(Mou等人2024)可以直接应用,因为它可以处理物体运动。
定量比较结果如表2所示。PBE和AnyDoor在DINO-TP指标上得分较低,原因是它们无法保持编辑后目标的原始姿态和外观。SD Inpainting在DINO-TP上表现优异,因为它通过直接粘贴的方式有效将目标移至目标位置。然而,这导致目标与其新环境之间缺乏协调性,体现在CLIP-TP得分较低。此外,它还可能在原始位置生成不期望的目标,导致DINO-OP得分较差。DragDiffusion在三个指标上表现均不佳,因为它主要关注内容拖拽而非目标移动。DragonDiffusion和DiffEditor存在显著的残差伪影问题,这对其DINO-OP得分产生了负面影响。yinqing-DiffOOM_2504优于 Baseline 方法,这一点也通过图6中的定性比较得到支持。
用户研究 为了进一步评估视觉效果,作者邀请60名志愿者进行用户研究。作者选择了四种方法(AnyDoor、SD Inpainting、DragDiffusion和DiffEditor)进行比较,每种方法生成了40个编辑结果。对于每次比较,志愿者需要选择作者的结果是否优于其中一种方法。
ods。如表3所示,yinqing-DiffOOM_2504在这些方法中具有更高的获胜百分比。
消融研究
作者对以下组件进行了消融研究,结果报告在表4中。1) 颜色填充策略(CF):移除CF会损害DINO-TP分数,因为它可能导致过度生成问题,从而降低与原始目标的相似度。2) 注意力引导(AG):对于去遮挡分支,如果没有渐进式更新 Mask 来限制注意力模块仅从目标目标 Query 信息,它可能会生成不希望的元素,导致DINO-TP分数降低。对于运动分支,移除指示背景区域的 Mask 后,扩散模型可能会在原始位置重新生成原始目标,导致DINO-OP分数升高。3) LoRA:移除LoRA会导致生成的部分与原始部分不一致,从而降低DINO-TP分数。4) 潜在重缩放(LR):当移除LR并直接采用像素重缩放时,目标目标会遭受严重退化,显著降低DINO-TP分数。5) 局部文本引导(LTG):LTG旨在将目标目标无缝集成到新环境中。因此,移除LTG会损害目标区域的和谐性,这在CLIP-TP分数的降低中得以体现。
与其他方法的集成
作者的双分支框架允许从背景中分解目标,从而能够直接在目标上进行聚焦编辑。去遮挡分支与大多数现有编辑方法兼容,增强了它们在复杂场景中进行精确编辑的能力。图7展示了两个示例,其中作者的去遮挡分支与两种典型编辑方法相结合,分别是文本条件方法(MasaCtrl (Cao等人,2023))和拖拽风格方法(DragDiffusion)。
yinqing-DiffOOM_2504在增强这些方法方面的主要优势是:
- 在包含多个相似目标的情况下,yinqing-DiffOOM_2504允许编辑特定目标而不影响其他目标。
- 通过将目标从复杂背景中分离出来,yinqing-DiffOOM_2504允许对目标进行更精确的控制。
unsetunset参考unsetunset
[1]. A Diffusion-Based Framework for Occluded Object Movement
点击上方卡片,关注「AI视界引擎」公众号