{"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/light-a-video-training-free-video-relighting","title":"Light-A-Video: Training-free Video Relighting via Progressive Light Fusion","arxiv_id":"2502.08590","date":"2025-02-12","proceeding":null,"authors":["Yujie Zhou","Jiazi Bu","Pengyang Ling","Pan Zhang","Tong Wu","Qidong Huang","Jinsong Li","Xiaoyi Dong","Yuhang Zang","Yuhang Cao","Anyi Rao","Jiaqi Wang","Li Niu"],"abstract":"Recent advancements in image relighting models, driven by large-scale datasets and pre-trained diffusion models, have enabled the imposition of consistent lighting. However, video relighting still lags, primarily due to the excessive training costs and the scarcity of diverse, high-quality video relighting datasets. A simple application of image relighting models on a frame-by-frame basis leads to several issues: lighting source inconsistency and relighted appearance inconsistency, resulting in flickers in the generated videos. In this work, we propose Light-A-Video, a training-free approach to achieve temporally smooth video relighting. Adapted from image relighting models, Light-A-Video introduces two key techniques to enhance lighting consistency. First, we design a Consistent Light Attention (CLA) module, which enhances cross-frame interactions within the self-attention layers to stabilize the generation of the background lighting source. Second, leveraging the physical principle of light transport independence, we apply linear blending between the source video's appearance and the relighted appearance, using a Progressive Light Fusion (PLF) strategy to ensure smooth temporal transitions in illumination. Experiments show that Light-A-Video improves the temporal consistency of relighted video while maintaining the image quality, ensuring coherent lighting transitions across frames. Project page: https://bujiazi.github.io/light-a-video.github.io/.","url_abs":"https://arxiv.org/abs/2502.08590v1","url_pdf":"https://arxiv.org/pdf/2502.08590v1.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":"light-a-video-training-free-video-relighting","repo_url":"https://github.com/bcmi/Light-A-Video","is_official":1,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"Apache-2.0"}}],"tasks":[{"task_slug":"image-relighting","task_name":"Image Relighting"}],"methods":[{"method_slug":"attention","method_name":"Attention"},{"method_slug":"diffusion","method_name":"Diffusion"},{"method_slug":"softmax","method_name":"Softmax"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2502.08590","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2502.08590"}},"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/bcmi/Light-A-Video","reach":{"status":"ok","spdx":"Apache-2.0"}}],"summary":{"ran_fixture":1,"ran_draft_wrong":1,"unverified":4},"by_repo_kind":{"official":{"samples":6,"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":"734fd43f6aaef115","entry":"get_resize_crop_region_for_grid","repo":"bcmi/Light-A-Video","repo_kind":"official","path":"src/cogvideo_pipe.py","file_url":"https://github.com/bcmi/Light-A-Video/blob/HEAD/src/cogvideo_pipe.py","link_basis":"harvester_set","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"well_formed","behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"734fd43f6aaef115"}},{"code_sha256_prefix":"3338a5b299ea25ec","entry":"retrieve_timesteps","repo":"bcmi/Light-A-Video","repo_kind":"official","path":"src/ic_light_pipe.py","file_url":"https://github.com/bcmi/Light-A-Video/blob/HEAD/src/ic_light_pipe.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":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"3338a5b299ea25ec"}},{"code_sha256_prefix":"c8b9260e17c4f173","entry":"cog_ddim_step","repo":"bcmi/Light-A-Video","repo_kind":"official","path":"src/cogvideo_ddim.py","file_url":"https://github.com/bcmi/Light-A-Video/blob/HEAD/src/cogvideo_ddim.py","link_basis":"harvester_set","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":"c8b9260e17c4f173"}},{"code_sha256_prefix":"adcf154798605ed2","entry":"eul_step","repo":"bcmi/Light-A-Video","repo_kind":"official","path":"src/animatediff_eul.py","file_url":"https://github.com/bcmi/Light-A-Video/blob/HEAD/src/animatediff_eul.py","link_basis":"harvester_set","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":"adcf154798605ed2"}},{"code_sha256_prefix":"0fdd2ce2467ccd97","entry":"preprocess","repo":"bcmi/Light-A-Video","repo_kind":"official","path":"src/ic_light_pipe.py","file_url":"https://github.com/bcmi/Light-A-Video/blob/HEAD/src/ic_light_pipe.py","link_basis":"harvester_set","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":"0fdd2ce2467ccd97"}},{"code_sha256_prefix":"98bcd15cf273e3b4","entry":"retrieve_latents","repo":"bcmi/Light-A-Video","repo_kind":"official","path":"src/ic_light_pipe.py","file_url":"https://github.com/bcmi/Light-A-Video/blob/HEAD/src/ic_light_pipe.py","link_basis":"harvester_set","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":"98bcd15cf273e3b4"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}