{"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/arxiv-2508-00443","title":"SDMatte: Grafting Diffusion Models for Interactive Matting","arxiv_id":"2508.00443","date":"2025-08-01","proceeding":"ICCV","authors":["Longfei Huang","Yu Liang","Hao Zhang","Jinwei Chen","Wei Dong","Lunde Chen","Wanyu Liu","Bo Li","Peng-Tao Jiang"],"abstract":"Recent interactive matting methods have shown satisfactory performance in capturing the primary regions of objects, but they fall short in extracting fine-grained details in edge regions. Diffusion models trained on billions of image-text pairs, demonstrate exceptional capability in modeling highly complex data distributions and synthesizing realistic texture details, while exhibiting robust text-driven interaction capabilities, making them an attractive solution for interactive matting. To this end, we propose SDMatte, a diffusion-driven interactive matting model, with three key contributions. First, we exploit the powerful priors of diffusion models and transform the text-driven interaction capability into visual prompt-driven interaction capability to enable interactive matting. Second, we integrate coordinate embeddings of visual prompts and opacity embeddings of target objects into U-Net, enhancing SDMatte's sensitivity to spatial position information and opacity information. Third, we propose a masked self-attention mechanism that enables the model to focus on areas specified by visual prompts, leading to better performance. Extensive experiments on multiple datasets demonstrate the superior performance of our method, validating its effectiveness in interactive matting. Our code and model are available at https://github.com/vivoCameraResearch/SDMatte.","url_abs":"https://arxiv.org/abs/2508.00443","url_pdf":"https://arxiv.org/pdf/2508.00443","source":{"archive":null,"snapshot":"2025-07-28","note":"not in the Papers with Code archive (frozen at the snapshot)","row_kind":"graph","title_abstract_authors_date":"arXiv metadata, CC0 1.0 (https://info.arxiv.org/help/license)"},"code_links":[],"tasks":[],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/2508.00443","atlas_url":"https://app.syntology.ai/?focus=2508.00443","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2508.00443"}},"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":[{"mentioned_in_github":null,"is_official":null,"provenance":"deterministic:regex_extraction","mentioned_in_paper":null,"url":"https://github.com/vivoCameraResearch/SDMatte","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"unverified":11},"by_repo_kind":{"found_in_text":{"samples":11,"ran":0,"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":"589373b8cfdd39d7","entry":"add_aux_conv_in","repo":"vivoCameraResearch/SDMatte","repo_kind":"found_in_text","path":"utils/utils.py","file_url":"https://github.com/vivoCameraResearch/SDMatte/blob/HEAD/utils/utils.py","link_basis":"first_harvest_node","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":"589373b8cfdd39d7"}},{"code_sha256_prefix":"44239863af5276ee","entry":"custom_get_attention_scores","repo":"vivoCameraResearch/SDMatte","repo_kind":"found_in_text","path":"utils/replace.py","file_url":"https://github.com/vivoCameraResearch/SDMatte/blob/HEAD/utils/replace.py","link_basis":"first_harvest_node","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":"44239863af5276ee"}},{"code_sha256_prefix":"07f2d45f03a56f84","entry":"custom_prepare_attention_mask","repo":"vivoCameraResearch/SDMatte","repo_kind":"found_in_text","path":"utils/replace.py","file_url":"https://github.com/vivoCameraResearch/SDMatte/blob/HEAD/utils/replace.py","link_basis":"first_harvest_node","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":"07f2d45f03a56f84"}},{"code_sha256_prefix":"c6daa9009470dd68","entry":"dgauss","repo":"vivoCameraResearch/SDMatte","repo_kind":"found_in_text","path":"utils/evaluate.py","file_url":"https://github.com/vivoCameraResearch/SDMatte/blob/HEAD/utils/evaluate.py","link_basis":"first_harvest_node","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":"c6daa9009470dd68"}},{"code_sha256_prefix":"b4085a9b496ef62d","entry":"gauss","repo":"vivoCameraResearch/SDMatte","repo_kind":"found_in_text","path":"utils/evaluate.py","file_url":"https://github.com/vivoCameraResearch/SDMatte/blob/HEAD/utils/evaluate.py","link_basis":"first_harvest_node","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":"b4085a9b496ef62d"}},{"code_sha256_prefix":"b4991ebb886e5289","entry":"gauss_kernel","repo":"vivoCameraResearch/SDMatte","repo_kind":"found_in_text","path":"criterion.py","file_url":"https://github.com/vivoCameraResearch/SDMatte/blob/HEAD/criterion.py","link_basis":"first_harvest_node","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":"b4991ebb886e5289"}},{"code_sha256_prefix":"38441a7c36e020f6","entry":"gaussgradient","repo":"vivoCameraResearch/SDMatte","repo_kind":"found_in_text","path":"utils/evaluate.py","file_url":"https://github.com/vivoCameraResearch/SDMatte/blob/HEAD/utils/evaluate.py","link_basis":"first_harvest_node","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":"38441a7c36e020f6"}},{"code_sha256_prefix":"763a4435e84627a8","entry":"get_unknown_tensor_from_pred","repo":"vivoCameraResearch/SDMatte","repo_kind":"found_in_text","path":"utils/utils.py","file_url":"https://github.com/vivoCameraResearch/SDMatte/blob/HEAD/utils/utils.py","link_basis":"first_harvest_node","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":"763a4435e84627a8"}},{"code_sha256_prefix":"a3fadbcac00e9133","entry":"laplacian_loss","repo":"vivoCameraResearch/SDMatte","repo_kind":"found_in_text","path":"criterion.py","file_url":"https://github.com/vivoCameraResearch/SDMatte/blob/HEAD/criterion.py","link_basis":"first_harvest_node","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":"a3fadbcac00e9133"}},{"code_sha256_prefix":"8a0b6d481e748e9d","entry":"laplacian_pyramid","repo":"vivoCameraResearch/SDMatte","repo_kind":"found_in_text","path":"criterion.py","file_url":"https://github.com/vivoCameraResearch/SDMatte/blob/HEAD/criterion.py","link_basis":"first_harvest_node","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":"8a0b6d481e748e9d"}},{"code_sha256_prefix":"91e5d642193c6016","entry":"replace_unet_conv_in","repo":"vivoCameraResearch/SDMatte","repo_kind":"found_in_text","path":"utils/utils.py","file_url":"https://github.com/vivoCameraResearch/SDMatte/blob/HEAD/utils/utils.py","link_basis":"first_harvest_node","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":"91e5d642193c6016"}}]},"arxiv_metadata":{"licence":"arXiv metadata, CC0 1.0 (https://info.arxiv.org/help/license)","fields":["title","abstract","authors","date"],"primary_category":"cs.CV","source":"arxiv_api"},"syntology_extracted_results":null}