{"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-2608-06184","title":"EvReflection: Event-Driven Micro-Dynamics for Reflection Removal","arxiv_id":"2608.06184","date":"2026-08-06","proceeding":"ICML","authors":["Jiaxiao Wang","Dachun Kai","Huyue Zhu","Quanquan Hu","Zhenyang Xu","Xiaoyan Sun"],"abstract":"Despite remarkable progress in reflection removal, current methods primarily exploit static image priors from a single frame and still suffer from severe residual artifacts due to the inherent ambiguity between the reflection and transmission layers. In this paper, we propose leveraging event signals to break this ambiguity. By employing event cameras to capture micro-dynamics, we reveal the differential motion between these two layers. We thereby present a novel event-driven reflection removal network, EvReflection, that utilizes these dynamic cues for layer separation. Specifically, we design a Micro-Dynamics Decoupler to disentangle layer-specific motions from event streams as priors, which then guide a Parallax-Attention Rectifier to cleanly remove artifacts from the RGB image. Furthermore, to address data scarcity, we develop a parallax-aware simulation pipeline and construct the EVR$^2$ benchmark dataset, the first real-world dataset for this task. Extensive experiments demonstrate that EvReflection achieves state-of-the-art performance on both synthetic and real-world benchmarks, surpassing the best competing method by more than 1.6 dB and 1.2 dB in PSNR, respectively. The code, dataset, and pre-trained models are available at https://github.com/JiaxiaoWang/EvReflection.","url_abs":"https://arxiv.org/abs/2608.06184","url_pdf":"https://arxiv.org/pdf/2608.06184","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":{"atlas_url":"https://app.syntology.ai/?focus=2608.06184","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2608.06184"}},"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":[{"mentioned_in_github":null,"is_official":null,"provenance":"deterministic:regex_extraction","mentioned_in_paper":null,"url":"https://github.com/JiaxiaoWang/EvReflection","reach":null}],"summary":{"ran_draft_wrong":2,"ran":4,"ran_fixture":2,"unverified":1},"by_repo_kind":{"found_in_text":{"samples":9,"ran":8,"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":9,"samples":[{"code_sha256_prefix":"ef9faf68f492a375","entry":"flow_warp","repo":"JiaxiaoWang/EvReflection","repo_kind":"found_in_text","path":"models/arch/arch_util.py","file_url":"https://github.com/JiaxiaoWang/EvReflection/blob/HEAD/models/arch/arch_util.py","link_basis":"plan_row","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"ef9faf68f492a375"}},{"code_sha256_prefix":"f783b6ca16b40935","entry":"get_norm_layer","repo":"JiaxiaoWang/EvReflection","repo_kind":"found_in_text","path":"models/networks.py","file_url":"https://github.com/JiaxiaoWang/EvReflection/blob/HEAD/models/networks.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":"f783b6ca16b40935"}},{"code_sha256_prefix":"96ad5dc9ca239aec","entry":"make_layer","repo":"JiaxiaoWang/EvReflection","repo_kind":"found_in_text","path":"models/arch/arch_util.py","file_url":"https://github.com/JiaxiaoWang/EvReflection/blob/HEAD/models/arch/arch_util.py","link_basis":"plan_row","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"96ad5dc9ca239aec"}},{"code_sha256_prefix":"805fb9818f986a0d","entry":"receptive_field","repo":"JiaxiaoWang/EvReflection","repo_kind":"found_in_text","path":"models/networks.py","file_url":"https://github.com/JiaxiaoWang/EvReflection/blob/HEAD/models/networks.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":"805fb9818f986a0d"}},{"code_sha256_prefix":"5a1d8458dc7077a6","entry":"resize_flow","repo":"JiaxiaoWang/EvReflection","repo_kind":"found_in_text","path":"models/arch/arch_util.py","file_url":"https://github.com/JiaxiaoWang/EvReflection/blob/HEAD/models/arch/arch_util.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":"5a1d8458dc7077a6"}},{"code_sha256_prefix":"bdce88b0116e1590","entry":"tensor2im","repo":"JiaxiaoWang/EvReflection","repo_kind":"found_in_text","path":"models/EvR2Net.py","file_url":"https://github.com/JiaxiaoWang/EvReflection/blob/HEAD/models/EvR2Net.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":"bdce88b0116e1590"}},{"code_sha256_prefix":"82a15cc1e46f7e4d","entry":"to_3d","repo":"JiaxiaoWang/EvReflection","repo_kind":"found_in_text","path":"models/attn_util.py","file_url":"https://github.com/JiaxiaoWang/EvReflection/blob/HEAD/models/attn_util.py","link_basis":"plan_row","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"82a15cc1e46f7e4d"}},{"code_sha256_prefix":"b20f2a5df739a59e","entry":"to_4d","repo":"JiaxiaoWang/EvReflection","repo_kind":"found_in_text","path":"models/attn_util.py","file_url":"https://github.com/JiaxiaoWang/EvReflection/blob/HEAD/models/attn_util.py","link_basis":"plan_row","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"invariant","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"b20f2a5df739a59e"}},{"code_sha256_prefix":"10a788fe5ff7f920","entry":"define_D","repo":"JiaxiaoWang/EvReflection","repo_kind":"found_in_text","path":"models/networks.py","file_url":"https://github.com/JiaxiaoWang/EvReflection/blob/HEAD/models/networks.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":"10a788fe5ff7f920"}}]},"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_2026.jsonl"},"syntology_extracted_results":null}