AttenCraft: Attention-guided Disentanglement of Multiple Concepts for Text-to-Image Customization

Junjie Shentu, Matthew Watson, Noura Al Moubayed
5/28/2024
cs.CV

No official code found. Best implementation: junjie-shentu/AttenCraft (8 stars, last commit 2025-01-07).

Abstract

Text-to-image (T2I) customization empowers users to adapt the T2I diffusion model to new concepts absent in the pre-training dataset. On this basis, capturing multiple new concepts from a single image has emerged as a new task, allowing the model to learn multiple concepts simultaneously or discard unwanted concepts. However, multiple-concept disentanglement remains a key challenge. Existing disentanglement models often exhibit two main issues: feature fusion and asynchronous learning across different concepts. To address these issues, we propose AttenCraft, an attention-based method for multiple-concept disentanglement. Our method uses attention maps to generate accurate masks for each concept in a single initialization step, aiding in concept disentanglement without requiring mask preparation from humans or specialized models. Moreover, we introduce an adaptive algorithm based on attention scores to estimate sampling ratios for different concepts, promoting balanced feature acquisition and synchronized learning. AttenCraft also introduces a feature-retaining training framework that employs various loss functions to enhance feature recognition and prevent fusion. Extensive experiments show that our model effectively mitigates these two issues, achieving state-of-the-art image fidelity and comparable prompt fidelity to baseline models.

View on arXivView PDF

Code Implementations(1)

Implementation of AttenCraft

80Shell, PythonMay 22, 20241 years ago

Similar Papers

Cite this paper

@article{shentu2024attencraft,
  title  = {AttenCraft: Attention-guided Disentanglement of Multiple Concepts for Text-to-Image Customization},
  author = {Junjie Shentu and Matthew Watson and Noura Al Moubayed},
  year   = {2024},
  eprint = {2405.17965},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2405.17965v2}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2405.17965.svg)](https://codeofpaper.com/paper/2405.17965)

Discussion