{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/dreammatcher-appearance-matching-self","title":"DreamMatcher: Appearance Matching Self-Attention for Semantically-Consistent Text-to-Image Personalization","arxiv_id":"2402.09812","date":"2024-02-15","proceeding":"CVPR 2024 1","authors":["Jisu Nam","Heesu Kim","Dongjae Lee","Siyoon Jin","Seungryong Kim","Seunggyu Chang"],"abstract":"The objective of text-to-image (T2I) personalization is to customize a diffusion model to a user-provided reference concept, generating diverse images of the concept aligned with the target prompts. Conventional methods representing the reference concepts using unique text embeddings often fail to accurately mimic the appearance of the reference. To address this, one solution may be explicitly conditioning the reference images into the target denoising process, known as key-value replacement. However, prior works are constrained to local editing since they disrupt the structure path of the pre-trained T2I model. To overcome this, we propose a novel plug-in method, called DreamMatcher, which reformulates T2I personalization as semantic matching. Specifically, DreamMatcher replaces the target values with reference values aligned by semantic matching, while leaving the structure path unchanged to preserve the versatile capability of pre-trained T2I models for generating diverse structures. We also introduce a semantic-consistent masking strategy to isolate the personalized concept from irrelevant regions introduced by the target prompts. Compatible with existing T2I models, DreamMatcher shows significant improvements in complex scenarios. Intensive analyses demonstrate the effectiveness of our approach.","url_abs":"https://arxiv.org/abs/2402.09812v2","url_pdf":"https://arxiv.org/pdf/2402.09812v2.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[{"paper_slug":"dreammatcher-appearance-matching-self","repo_url":"https://github.com/KU-CVLAB/DreamMatcher","is_official":1,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"jax","reach":null}],"tasks":[{"task_slug":"denoising","task_name":"Denoising"}],"methods":[{"method_slug":"diffusion","method_name":"Diffusion"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2402.09812","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2402.09812"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-24T18:15:14+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/KU-CVLAB/DreamMatcher","reach":null}],"summary":{"ran":1,"ran_fixture":2,"ran_draft_wrong":1,"unverified":4},"by_repo_kind":{"official":{"samples":8,"ran":4,"repositories":1}},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":8,"samples":[{"code_sha256_prefix":"5a6a26a914bfb54f","entry":"MutualSelfAttentionControl","repo":"KU-CVLAB/DreamMatcher","repo_kind":"official","path":"dreammatcher/dreammatcher.py","file_url":"https://github.com/KU-CVLAB/DreamMatcher/blob/HEAD/dreammatcher/dreammatcher.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"5a6a26a914bfb54f"}},{"code_sha256_prefix":"4aef0efe71e3ef48","entry":"convert_mapping_to_flow","repo":"KU-CVLAB/DreamMatcher","repo_kind":"official","path":"dreammatcher/dreammatcher.py","file_url":"https://github.com/KU-CVLAB/DreamMatcher/blob/HEAD/dreammatcher/dreammatcher.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"4aef0efe71e3ef48"}},{"code_sha256_prefix":"1d8d799ed235df82","entry":"rearrange_qkv","repo":"KU-CVLAB/DreamMatcher","repo_kind":"official","path":"dreammatcher/dreammatcher.py","file_url":"https://github.com/KU-CVLAB/DreamMatcher/blob/HEAD/dreammatcher/dreammatcher.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"1d8d799ed235df82"}},{"code_sha256_prefix":"90421fdd2cd9fcfa","entry":"warp","repo":"KU-CVLAB/DreamMatcher","repo_kind":"official","path":"dreammatcher/dreammatcher.py","file_url":"https://github.com/KU-CVLAB/DreamMatcher/blob/HEAD/dreammatcher/dreammatcher.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"90421fdd2cd9fcfa"}},{"code_sha256_prefix":"d4a3a1ac585984a5","entry":"AttentionBase","repo":"KU-CVLAB/DreamMatcher","repo_kind":"official","path":"dreammatcher/dreammatcher.py","file_url":"https://github.com/KU-CVLAB/DreamMatcher/blob/HEAD/dreammatcher/dreammatcher.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"d4a3a1ac585984a5"}},{"code_sha256_prefix":"811cc1e7f803acdc","entry":"MutualSelfAttentionControlMaskAuto_Matching","repo":"KU-CVLAB/DreamMatcher","repo_kind":"official","path":"dreammatcher/dreammatcher.py","file_url":"https://github.com/KU-CVLAB/DreamMatcher/blob/HEAD/dreammatcher/dreammatcher.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"811cc1e7f803acdc"}},{"code_sha256_prefix":"92cdfdbf76971a5a","entry":"corr_to_matches","repo":"KU-CVLAB/DreamMatcher","repo_kind":"official","path":"dreammatcher/dreammatcher.py","file_url":"https://github.com/KU-CVLAB/DreamMatcher/blob/HEAD/dreammatcher/dreammatcher.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"92cdfdbf76971a5a"}},{"code_sha256_prefix":"687fc30d901bbe65","entry":"correlation_to_flow_w_argmax","repo":"KU-CVLAB/DreamMatcher","repo_kind":"official","path":"dreammatcher/dreammatcher.py","file_url":"https://github.com/KU-CVLAB/DreamMatcher/blob/HEAD/dreammatcher/dreammatcher.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"687fc30d901bbe65"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}