{"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/dragtext-rethinking-text-embedding-in-point","title":"DragText: Rethinking Text Embedding in Point-based Image Editing","arxiv_id":"2407.17843","date":"2024-07-25","proceeding":null,"authors":["Gayoon Choi","Taejin Jeong","Sujung Hong","Seong Jae Hwang"],"abstract":"Point-based image editing enables accurate and flexible control through content dragging. However, the role of text embedding during the editing process has not been thoroughly investigated. A significant aspect that remains unexplored is the interaction between text and image embeddings. During the progressive editing in a diffusion model, the text embedding remains constant. As the image embedding increasingly diverges from its initial state, the discrepancy between the image and text embeddings presents a significant challenge. In this study, we found that the text prompt significantly influences the dragging process, particularly in maintaining content integrity and achieving the desired manipulation. Upon these insights, we propose DragText, which optimizes text embedding in conjunction with the dragging process to pair with the modified image embedding. Simultaneously, we regularize the text optimization process to preserve the integrity of the original text prompt. Our approach can be seamlessly integrated with existing diffusion-based drag methods, enhancing performance with only a few lines of code.","url_abs":"https://arxiv.org/abs/2407.17843v2","url_pdf":"https://arxiv.org/pdf/2407.17843v2.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":"dragtext-rethinking-text-embedding-in-point","repo_url":"https://github.com/MICV-yonsei/DragText","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"Apache-2.0"}}],"tasks":[],"methods":[{"method_slug":"diffusion","method_name":"Diffusion"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2407.17843","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2407.17843"}},"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/MICV-yonsei/DragText","reach":{"status":"ok","spdx":"Apache-2.0"}}],"summary":{"ran":1,"ran_fixture":1,"unverified":5},"by_repo_kind":{"official":{"samples":7,"ran":2,"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":0,"samples":[{"code_sha256_prefix":"51da74fdf1d1ebbb","entry":"load_data","repo":"MICV-yonsei/DragText","repo_kind":"official","path":"GoodDrag/bench_gooddrag.py","file_url":"https://github.com/MICV-yonsei/DragText/blob/HEAD/GoodDrag/bench_gooddrag.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"51da74fdf1d1ebbb"}},{"code_sha256_prefix":"b6f9c54d3eaa1c8a","entry":"preprocess_image","repo":"MICV-yonsei/DragText","repo_kind":"official","path":"DragDiffusion/drag_bench_evaluation/run_drag_diffusion.py","file_url":"https://github.com/MICV-yonsei/DragText/blob/HEAD/DragDiffusion/drag_bench_evaluation/run_drag_diffusion.py","link_basis":"plan_row","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"invariant","behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"b6f9c54d3eaa1c8a"}},{"code_sha256_prefix":"ce0fe39e4583a703","entry":"mask_image","repo":"MICV-yonsei/DragText","repo_kind":"official","path":"DragDiffusion/drag_bench_evaluation/labeling_tool.py","file_url":"https://github.com/MICV-yonsei/DragText/blob/HEAD/DragDiffusion/drag_bench_evaluation/labeling_tool.py","link_basis":"plan_row","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"ce0fe39e4583a703"}},{"code_sha256_prefix":"1dab5bb87fc4c7bb","entry":"override_forward","repo":"MICV-yonsei/DragText","repo_kind":"official","path":"GoodDrag/pipeline.py","file_url":"https://github.com/MICV-yonsei/DragText/blob/HEAD/GoodDrag/pipeline.py","link_basis":"plan_row","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"1dab5bb87fc4c7bb"}},{"code_sha256_prefix":"347292f773a27470","entry":"override_forward","repo":"MICV-yonsei/DragText","repo_kind":"official","path":"DragDiffusion/drag_pipeline.py","file_url":"https://github.com/MICV-yonsei/DragText/blob/HEAD/DragDiffusion/drag_pipeline.py","link_basis":"plan_row","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"347292f773a27470"}},{"code_sha256_prefix":"957e7cf270e3342a","entry":"override_forward","repo":"MICV-yonsei/DragText","repo_kind":"official","path":"DragNoise/drag_pipeline.py","file_url":"https://github.com/MICV-yonsei/DragText/blob/HEAD/DragNoise/drag_pipeline.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"957e7cf270e3342a"}},{"code_sha256_prefix":"09a03c76f61637c9","entry":"store_img","repo":"MICV-yonsei/DragText","repo_kind":"official","path":"DragDiffusion/drag_bench_evaluation/labeling_tool.py","file_url":"https://github.com/MICV-yonsei/DragText/blob/HEAD/DragDiffusion/drag_bench_evaluation/labeling_tool.py","link_basis":"plan_row","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"09a03c76f61637c9"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}