{"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/blended-diffusion-for-text-driven-editing-of","title":"Blended Diffusion for Text-driven Editing of Natural Images","arxiv_id":"2111.14818","date":"2021-11-29","proceeding":"CVPR 2022 1","authors":["Omri Avrahami","Dani Lischinski","Ohad Fried"],"abstract":"Natural language offers a highly intuitive interface for image editing. In this paper, we introduce the first solution for performing local (region-based) edits in generic natural images, based on a natural language description along with an ROI mask. We achieve our goal by leveraging and combining a pretrained language-image model (CLIP), to steer the edit towards a user-provided text prompt, with a denoising diffusion probabilistic model (DDPM) to generate natural-looking results. To seamlessly fuse the edited region with the unchanged parts of the image, we spatially blend noised versions of the input image with the local text-guided diffusion latent at a progression of noise levels. In addition, we show that adding augmentations to the diffusion process mitigates adversarial results. We compare against several baselines and related methods, both qualitatively and quantitatively, and show that our method outperforms these solutions in terms of overall realism, ability to preserve the background and matching the text. Finally, we show several text-driven editing applications, including adding a new object to an image, removing/replacing/altering existing objects, background replacement, and image extrapolation. Code is available at: https://omriavrahami.com/blended-diffusion-page/","url_abs":"https://arxiv.org/abs/2111.14818v2","url_pdf":"https://arxiv.org/pdf/2111.14818v2.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":"blended-diffusion-for-text-driven-editing-of","repo_url":"https://github.com/omriav/blended-diffusion","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"text-to-image-generation","task_name":"Text-to-Image Generation"},{"task_slug":"zero-shot-text-to-image-generation","task_name":"Zero-Shot Text-to-Image Generation"},{"task_slug":"text-guided-image-editing","task_name":"text-guided-image-editing"}],"methods":[{"method_slug":"blended-diffusion","method_name":"Blended Diffusion"},{"method_slug":"clip","method_name":"CLIP"},{"method_slug":"diffusion","method_name":"Diffusion"}],"datasets_introduced":[],"methods_introduced":[{"slug":"blended-diffusion","name":"Blended Diffusion","full_name":"Blended Diffusion"}],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/2111.14818","atlas_url":"https://app.syntology.ai/?focus=2111.14818","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2111.14818"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-25T09:33:49+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/omriav/blended-diffusion","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran_draft_wrong":5,"ran_honours":4,"ran":4,"ran_fixture":1,"unverified":8},"by_repo_kind":{"official":{"samples":21,"ran":13,"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":1,"samples":[{"code_sha256_prefix":"8ab9a97df8161f31","entry":"center_crop_arr","repo":"omriav/blended-diffusion","repo_kind":"official","path":"guided_diffusion/guided_diffusion/image_datasets.py","file_url":"https://github.com/omriav/blended-diffusion/blob/HEAD/guided_diffusion/guided_diffusion/image_datasets.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":2,"contract_check":"MISDECLARED","metamorphic_tier":"well_formed","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"8ab9a97df8161f31"}},{"code_sha256_prefix":"cfd76fd0d89574a4","entry":"approx_standard_normal_cdf","repo":"omriav/blended-diffusion","repo_kind":"official","path":"guided_diffusion/guided_diffusion/losses.py","file_url":"https://github.com/omriav/blended-diffusion/blob/HEAD/guided_diffusion/guided_diffusion/losses.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"cfd76fd0d89574a4"}},{"code_sha256_prefix":"2ab2316ac6fdd869","entry":"betas_for_alpha_bar","repo":"omriav/blended-diffusion","repo_kind":"official","path":"guided_diffusion/guided_diffusion/gaussian_diffusion.py","file_url":"https://github.com/omriav/blended-diffusion/blob/HEAD/guided_diffusion/guided_diffusion/gaussian_diffusion.py","link_basis":"harvester_set","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"well_formed","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"2ab2316ac6fdd869"}},{"code_sha256_prefix":"35572566acf61c78","entry":"create_named_schedule_sampler","repo":"omriav/blended-diffusion","repo_kind":"official","path":"guided_diffusion/guided_diffusion/resample.py","file_url":"https://github.com/omriav/blended-diffusion/blob/HEAD/guided_diffusion/guided_diffusion/resample.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"35572566acf61c78"}},{"code_sha256_prefix":"cd33283d615fb3d7","entry":"discretized_gaussian_log_likelihood","repo":"omriav/blended-diffusion","repo_kind":"official","path":"guided_diffusion/guided_diffusion/losses.py","file_url":"https://github.com/omriav/blended-diffusion/blob/HEAD/guided_diffusion/guided_diffusion/losses.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":"invariant","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"cd33283d615fb3d7"}},{"code_sha256_prefix":"a086d6286a40b889","entry":"get_named_beta_schedule","repo":"omriav/blended-diffusion","repo_kind":"official","path":"guided_diffusion/guided_diffusion/gaussian_diffusion.py","file_url":"https://github.com/omriav/blended-diffusion/blob/HEAD/guided_diffusion/guided_diffusion/gaussian_diffusion.py","link_basis":"harvester_set","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"well_formed","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"a086d6286a40b889"}},{"code_sha256_prefix":"e41367ad14ff58fd","entry":"get_param_groups_and_shapes","repo":"omriav/blended-diffusion","repo_kind":"official","path":"guided_diffusion/guided_diffusion/fp16_util.py","file_url":"https://github.com/omriav/blended-diffusion/blob/HEAD/guided_diffusion/guided_diffusion/fp16_util.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"e41367ad14ff58fd"}},{"code_sha256_prefix":"e20dd5102da3b050","entry":"make_master_params","repo":"omriav/blended-diffusion","repo_kind":"official","path":"guided_diffusion/guided_diffusion/fp16_util.py","file_url":"https://github.com/omriav/blended-diffusion/blob/HEAD/guided_diffusion/guided_diffusion/fp16_util.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"e20dd5102da3b050"}},{"code_sha256_prefix":"bcd8b4acab199405","entry":"make_output_format","repo":"omriav/blended-diffusion","repo_kind":"official","path":"guided_diffusion/guided_diffusion/logger.py","file_url":"https://github.com/omriav/blended-diffusion/blob/HEAD/guided_diffusion/guided_diffusion/logger.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"bcd8b4acab199405"}},{"code_sha256_prefix":"cf2798b666b231ca","entry":"normal_kl","repo":"omriav/blended-diffusion","repo_kind":"official","path":"guided_diffusion/guided_diffusion/losses.py","file_url":"https://github.com/omriav/blended-diffusion/blob/HEAD/guided_diffusion/guided_diffusion/losses.py","link_basis":"harvester_set","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"cf2798b666b231ca"}},{"code_sha256_prefix":"76313eaf1a6e8f2a","entry":"parse_resume_step_from_filename","repo":null,"repo_kind":null,"path":null,"file_url":null,"link_basis":"identical_code_first_harvested_elsewhere","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"well_formed","behaviour_fingerprint":true,"licence":null,"inline_ok":false,"mcp_get_code":{"code_sha256":"76313eaf1a6e8f2a"}},{"code_sha256_prefix":"9b6e4e070473e76f","entry":"space_timesteps","repo":"omriav/blended-diffusion","repo_kind":"official","path":"guided_diffusion/guided_diffusion/respace.py","file_url":"https://github.com/omriav/blended-diffusion/blob/HEAD/guided_diffusion/guided_diffusion/respace.py","link_basis":"harvester_set","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"9b6e4e070473e76f"}},{"code_sha256_prefix":"64fff1e30802b815","entry":"unflatten_master_params","repo":"omriav/blended-diffusion","repo_kind":"official","path":"guided_diffusion/guided_diffusion/fp16_util.py","file_url":"https://github.com/omriav/blended-diffusion/blob/HEAD/guided_diffusion/guided_diffusion/fp16_util.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"64fff1e30802b815"}},{"code_sha256_prefix":"129b804760b3115f","entry":"zero_module","repo":"omriav/blended-diffusion","repo_kind":"official","path":"guided_diffusion/guided_diffusion/nn.py","file_url":"https://github.com/omriav/blended-diffusion/blob/HEAD/guided_diffusion/guided_diffusion/nn.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"129b804760b3115f"}},{"code_sha256_prefix":"ecd0fc28815b65ae","entry":"avg_pool_nd","repo":"omriav/blended-diffusion","repo_kind":"official","path":"guided_diffusion/guided_diffusion/nn.py","file_url":"https://github.com/omriav/blended-diffusion/blob/HEAD/guided_diffusion/guided_diffusion/nn.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"ecd0fc28815b65ae"}},{"code_sha256_prefix":"fe4eb545bbb728e0","entry":"conv_nd","repo":"omriav/blended-diffusion","repo_kind":"official","path":"guided_diffusion/guided_diffusion/nn.py","file_url":"https://github.com/omriav/blended-diffusion/blob/HEAD/guided_diffusion/guided_diffusion/nn.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"fe4eb545bbb728e0"}},{"code_sha256_prefix":"5e5d99a81705a07f","entry":"create_classifier_and_diffusion","repo":"omriav/blended-diffusion","repo_kind":"official","path":"guided_diffusion/guided_diffusion/script_util.py","file_url":"https://github.com/omriav/blended-diffusion/blob/HEAD/guided_diffusion/guided_diffusion/script_util.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"5e5d99a81705a07f"}},{"code_sha256_prefix":"35ea054532112e53","entry":"create_model","repo":"omriav/blended-diffusion","repo_kind":"official","path":"guided_diffusion/guided_diffusion/script_util.py","file_url":"https://github.com/omriav/blended-diffusion/blob/HEAD/guided_diffusion/guided_diffusion/script_util.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"35ea054532112e53"}},{"code_sha256_prefix":"6a3cfc58dafbe392","entry":"create_model_and_diffusion","repo":"omriav/blended-diffusion","repo_kind":"official","path":"guided_diffusion/guided_diffusion/script_util.py","file_url":"https://github.com/omriav/blended-diffusion/blob/HEAD/guided_diffusion/guided_diffusion/script_util.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"6a3cfc58dafbe392"}},{"code_sha256_prefix":"e515a67f7f32e76d","entry":"mpi_weighted_mean","repo":"omriav/blended-diffusion","repo_kind":"official","path":"guided_diffusion/guided_diffusion/logger.py","file_url":"https://github.com/omriav/blended-diffusion/blob/HEAD/guided_diffusion/guided_diffusion/logger.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"e515a67f7f32e76d"}},{"code_sha256_prefix":"0c6607473a4c4c55","entry":"profile","repo":"omriav/blended-diffusion","repo_kind":"official","path":"guided_diffusion/guided_diffusion/logger.py","file_url":"https://github.com/omriav/blended-diffusion/blob/HEAD/guided_diffusion/guided_diffusion/logger.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"0c6607473a4c4c55"}},{"code_sha256_prefix":"53d5be4fdbcfac23","entry":"random_crop_arr","repo":"omriav/blended-diffusion","repo_kind":"official","path":"guided_diffusion/guided_diffusion/image_datasets.py","file_url":"https://github.com/omriav/blended-diffusion/blob/HEAD/guided_diffusion/guided_diffusion/image_datasets.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"53d5be4fdbcfac23"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}