跳转至

Multi-party Collaborative Attention Control for Image Customization

一句话总结

提出 MCA-Ctrl,一种无需微调的图像定制方法,通过三路并行扩散过程中的自注意力协同控制(SAGI + SALQ),实现文本/图像条件下的高质量 subject 编辑与生成,并用 Subject Localization Module 解决复杂场景中的主体泄漏和混淆问题。

研究背景与动机

现有图像定制方法存在四大局限: 1. 条件单一:大多数方法只接受图像或文本条件,无法同时兼容两者 2. 主体泄漏/混淆:在复杂视觉场景(遮挡、多物体、前景背景相似)中,模型的高响应区域不准确,导致特征泄漏 3. 背景不一致:图像条件下的输出背景与源图像偏差大 4. 计算成本高:基于反转的方法(如 DreamBooth、Textual Inversion)需要对每个 subject 进行昂贵的微调

已有的 zero-shot 方法(如 IP-Adapter、BLIP-Diffusion)通过训练多模态编码器+对齐投影层来降低成本,但仍需大量存储和训练开销,且在复杂场景中表现不佳。

核心动机:探索一种兼容文本和图像条件、低计算成本、高质量的无训练定制方法。

方法详解

整体框架

MCA-Ctrl 基于 Stable Diffusion v1.5,操控三路并行扩散过程的自注意力层来控制目标图像生成: - Subject 扩散过程 \(\mathcal{B}_{sub}\):对 subject 图像做 DDIM inversion 获得初始特征 - Condition 扩散过程 \(\mathcal{B}_{con}\):接收条件图像(做 DDIM inversion)或文本(随机高斯噪声) - Target 扩散过程 \(\mathcal{B}_{tgt}\):共享 \(\mathcal{B}_{con}\) 的初始特征,生成目标图像

三路并行实际上以 batch size=3 单次推理实现,不增加额外计算开销。支持三种任务:主体生成(文本驱动)、主体替换、主体添加(图像驱动)。

关键设计

1. Self-Attention Local Query (SALQ)

目标图像用自己的 query \(Q_T\) 分别查询 subject 和 condition 的 key/value: - 对 subject 仅查询前景区域(用 mask \(M_S\) 过滤),获取外观特征 - 对 condition 仅查询背景区域(用 mask \(M_C\) 过滤),获取布局和背景内容 - 两类特征用 mask 加权融合:\(\mathcal{F}^*_{T} = M_C \cdot \mathcal{F}^Q_{T,C} + (1-M_C) \cdot \mathcal{F}^Q_{T,S}\)

建议从 UNet decoder 的早期步骤开始执行,此时布局已初步形成。

2. Self-Attention Global Injection (SAGI)

直接将 subject 和 condition 各自的注意力特征注入到目标过程中: - subject 的原始自注意力经 mask 过滤后,提取主体前景特征 \(\mathcal{F}^I_S\) - condition 的原始自注意力经 mask 过滤后,提取背景特征 \(\mathcal{F}^I_C\) - 通过替换目标过程的特征输出实现全局注入:\(\mathcal{F}^*_T = M_C \cdot \mathcal{F}^I_C + (1-M_C) \cdot \mathcal{F}^I_S\)

SAGI 在早期去噪步骤执行(语义信息主导阶段),与 SALQ 交替进行,两者执行区间不交叉。

3. Subject Localization Module (SLM)

由 Grounding DINO(检测)+ SAM(分割)组成,处理多模态指令: - 输入 subject 图像+文本描述,输出 subject 二值 mask \(M^s_C\) - 输入 condition 图像+文本描述,输出可编辑区域 mask \(M_S\) - 对 \(M^s_C\) 用 3×3 膨胀核扩展为 \(M_C\),确保编辑区域有足够的过渡空间

损失函数

MCA-Ctrl 是推理时方法(tuning-free),不涉及训练损失。底层模型使用标准的扩散模型目标:

\[\mathcal{L}(\theta) = \mathbb{E}_{t,\epsilon} \| \epsilon_t - \epsilon_\theta(z_t, t, P) \|^2\]

实验关键数据

主实验表

Subject Swapping(DreamEditBench)

方法 DINOsub↑ DINOback↑ CLIP-Isub↑ CLIP-Iback↑ ImageReward↑
DreamBooth 0.640 0.427 0.811 0.736 -1.171
BLIP-Diffusion 0.616 0.639 0.801 0.825 0.219
PHOTOSWAP 0.631 0.607 0.789 0.798 -0.198
Ours (Specified) 0.643 0.678 0.811 0.868 0.321

Subject Generation(DreamBench)

方法 DINO↑ CLIP-I↑ CLIP-T↑ ImageReward↑
DreamBooth 0.668 0.843 0.306 0.384
BLIP-Diffusion 0.670 0.825 0.302 0.183
Ours (Specified) 0.672 0.844 0.306 0.413

消融表

配置 DINOsub↑ DINOback↑ ImageReward↑
Full(Uniform) 0.633 0.668 0.273
w/o SALQ 0.424↓ 0.749↑ 0.245↓
w/o SAGI 0.590↓ 0.685↑ 0.272↓
w/o SLM 0.491↓ 0.824↑ 0.191↓
reverse 执行顺序 0.459↓ 0.555↓ 0.108↓

关键发现

  • SALQ 是核心:去掉后 DINOsub 下降 21 个百分点,是主体一致性的关键保障
  • SAGI 提升细节真实感:纠正 SALQ 造成的特征混淆(如猫嘴的橙色混淆)
  • SLM 在复杂场景不可或缺:处理物体交互、遮挡、多物体相似等四类复杂视觉场景
  • 执行顺序关键:反转 SAGI/SALQ 顺序导致所有指标大幅下降
  • 人类评估总分 2.73,超过 BLIP-Diffusion(2.60)和 IP-Adapter(2.63)

亮点与洞察

  1. 零训练成本的高质量定制:无需任何微调,通过注意力操控实现,batch size=3 单次推理即可
  2. SAGI+SALQ 互补设计精妙:SALQ 做局部内容查询(提取外观),SAGI 做全局特征注入(增强细节+减少混淆),两者执行区间不重叠
  3. SLM 模块通用且即插即用:利用 DINO+SAM 的开放世界能力,不限于特定数据集
  4. 统一三种定制任务:generation、swapping、addition 在同一框架下完成,仅需调整少量超参(执行步数和层数)

局限性

  1. 受制于基础模型能力:当 subject 包含细粒度特征(如文字)时,SD v1.5 无法准确复现
  2. 颜色变化局限:颜色修改可能只影响 subject 局部区域而非整体
  3. 需要手动提供 mask 或文本描述:SLM 依赖用户输入的文本指令来定位 subject
  4. 超参调整:虽然 uniform 参数已不错,但最佳效果需要按类别微调 \(S_{GI}\)\(E_{GI}\)\(Layer_{LQ}\)\(E_{LQ}\) 四个参数

相关工作与启发

  • MasaCtrl:揭示了自注意力层中 K/V 特征蕴含的丰富语义表示,是 SALQ 的灵感来源
  • Prompt-to-Prompt:展示了通过交叉注意力控制实现图像编辑的可行性
  • PHOTOSWAP / TIGIC:单一任务(替换/添加)的定制方法,本文统一了三种任务
  • 启发:注意力操控是扩散模型可控生成的核心杠杆,多过程协同比单过程控制更高效

评分

⭐⭐⭐⭐ — 方法设计精巧,SAGI+SALQ 互补机制新颖,无训练开销是一大优势;但基于 SD v1.5 的基础模型限制了上限,且需要4个超参的调整。