Magic Insert: Style-Aware Drag-and-Drop
Nataniel Ruiz, Yuanzhen Li, Neal Wadhwa, Yael Pritch, Michael Rubinstein, David E. Jacobs, Shlomi Fruchter
TL;DR
Magic Insert formalizes style-aware drag-and-drop and presents a diffusion-based pipeline that preserves subject identity while adopting the target image's style. It combines style-aware personalization via LoRA and dual embeddings with style-injection through IP-Adapter, and introduces Bootstrapped Domain Adaptation to adapt a real-image insertion model to stylized domains. The SubjectPlop dataset provides a standardized benchmark spanning diverse styles for evaluation. Empirical results show improved style adherence and insertion realism over inpainting baselines, with flexible subject edits and scene interactions demonstrated via LLM-guided affordances. The work advances practical capabilities for creative image composition in stylized domains and offers a public dataset and evaluation suite to spur further research.
Abstract
We present Magic Insert, a method for dragging-and-dropping subjects from a user-provided image into a target image of a different style in a physically plausible manner while matching the style of the target image. This work formalizes the problem of style-aware drag-and-drop and presents a method for tackling it by addressing two sub-problems: style-aware personalization and realistic object insertion in stylized images. For style-aware personalization, our method first fine-tunes a pretrained text-to-image diffusion model using LoRA and learned text tokens on the subject image, and then infuses it with a CLIP representation of the target style. For object insertion, we use Bootstrapped Domain Adaption to adapt a domain-specific photorealistic object insertion model to the domain of diverse artistic styles. Overall, the method significantly outperforms traditional approaches such as inpainting. Finally, we present a dataset, SubjectPlop, to facilitate evaluation and future progress in this area. Project page: https://magicinsert.github.io/
