{"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/asymmetric-bilateral-motion-estimation-for","title":"Asymmetric Bilateral Motion Estimation for Video Frame Interpolation","arxiv_id":"2108.06815","date":"2021-08-15","proceeding":"ICCV 2021 10","authors":["Junheum Park","Chul Lee","Chang-Su Kim"],"abstract":"We propose a novel video frame interpolation algorithm based on asymmetric bilateral motion estimation (ABME), which synthesizes an intermediate frame between two input frames. First, we predict symmetric bilateral motion fields to interpolate an anchor frame. Second, we estimate asymmetric bilateral motions fields from the anchor frame to the input frames. Third, we use the asymmetric fields to warp the input frames backward and reconstruct the intermediate frame. Last, to refine the intermediate frame, we develop a new synthesis network that generates a set of dynamic filters and a residual frame using local and global information. Experimental results show that the proposed algorithm achieves excellent performance on various datasets. The source codes and pretrained models are available at https://github.com/JunHeum/ABME.","url_abs":"https://arxiv.org/abs/2108.06815v1","url_pdf":"https://arxiv.org/pdf/2108.06815v1.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":"asymmetric-bilateral-motion-estimation-for","repo_url":"https://github.com/junheum/abme","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"motion-estimation","task_name":"Motion Estimation"},{"task_slug":"video-frame-interpolation","task_name":"Video Frame Interpolation"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/video-frame-interpolation-on-msu-video-frame","task":"Video Frame Interpolation","dataset":"MSU Video Frame Interpolation","model":"ABME","rank_in_archive_order":13,"of":24,"metrics":{"LPIPS":"0.039","MS-SSIM":"0.945","PSNR":"27.99","SSIM":"0.919","VMAF":"68.10"},"uses_additional_data":false},{"leaderboard":"/sota/video-frame-interpolation-on-ucf101-1","task":"Video Frame Interpolation","dataset":"UCF101","model":"ABME","rank_in_archive_order":9,"of":19,"metrics":{"PSNR":"35.38","SSIM":"0.9698"},"uses_additional_data":false},{"leaderboard":"/sota/video-frame-interpolation-on-vimeo90k","task":"Video Frame Interpolation","dataset":"Vimeo90K","model":"ABME","rank_in_archive_order":7,"of":23,"metrics":{"PSNR":"36.18","SSIM":"0.9805"},"uses_additional_data":false},{"leaderboard":"/sota/video-frame-interpolation-on-x4k1000fps","task":"Video Frame Interpolation","dataset":"X4K1000FPS","model":"ABME","rank_in_archive_order":11,"of":20,"metrics":{"PSNR":"30.16","SSIM":"0.8793"},"uses_additional_data":false}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2108.06815","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2108.06815"}},"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/junheum/abme","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"deterministic:regex_extraction","url":"https://github.com/JunHeum/ABME","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran":1,"ran_draft_wrong":1,"unverified":11},"by_repo_kind":{"official":{"samples":13,"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":"1cea7934f596790b","entry":"deconv","repo":"JunHeum/ABME","repo_kind":"official","path":"model/SBMNet.py","file_url":"https://github.com/JunHeum/ABME/blob/HEAD/model/SBMNet.py","link_basis":"plan_row","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":"1cea7934f596790b"}},{"code_sha256_prefix":"c3f23a008d953af5","entry":"predict_flow","repo":"JunHeum/ABME","repo_kind":"official","path":"model/ABMNet.py","file_url":"https://github.com/JunHeum/ABME/blob/HEAD/model/ABMNet.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":"c3f23a008d953af5"}},{"code_sha256_prefix":"951199e8c0b55a5d","entry":"Upsample","repo":"JunHeum/ABME","repo_kind":"official","path":"Upsample.py","file_url":"https://github.com/JunHeum/ABME/blob/HEAD/Upsample.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":"951199e8c0b55a5d"}},{"code_sha256_prefix":"2cb2cdba520d0768","entry":"conv","repo":"JunHeum/ABME","repo_kind":"official","path":"model/ABMNet.py","file_url":"https://github.com/JunHeum/ABME/blob/HEAD/model/ABMNet.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":"2cb2cdba520d0768"}},{"code_sha256_prefix":"47f0bc5dcd79c4c4","entry":"conv","repo":"JunHeum/ABME","repo_kind":"official","path":"model/SBMNet.py","file_url":"https://github.com/JunHeum/ABME/blob/HEAD/model/SBMNet.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":"47f0bc5dcd79c4c4"}},{"code_sha256_prefix":"ab45bbce6bf2d062","entry":"get_test_Set","repo":"JunHeum/ABME","repo_kind":"official","path":"dataset.py","file_url":"https://github.com/JunHeum/ABME/blob/HEAD/dataset.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":"ab45bbce6bf2d062"}},{"code_sha256_prefix":"c46e2e07d401eece","entry":"get_train_Set","repo":"JunHeum/ABME","repo_kind":"official","path":"dataset.py","file_url":"https://github.com/JunHeum/ABME/blob/HEAD/dataset.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":"c46e2e07d401eece"}},{"code_sha256_prefix":"d7c50ece40f857e5","entry":"get_validation_Set","repo":"JunHeum/ABME","repo_kind":"official","path":"dataset.py","file_url":"https://github.com/JunHeum/ABME/blob/HEAD/dataset.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":"d7c50ece40f857e5"}},{"code_sha256_prefix":"9a2b5c0125524d5b","entry":"load_flow","repo":"JunHeum/ABME","repo_kind":"official","path":"utils.py","file_url":"https://github.com/JunHeum/ABME/blob/HEAD/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":"9a2b5c0125524d5b"}},{"code_sha256_prefix":"e6b2dcf3f6482a63","entry":"predict_flow","repo":"JunHeum/ABME","repo_kind":"official","path":"model/SBMNet.py","file_url":"https://github.com/JunHeum/ABME/blob/HEAD/model/SBMNet.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":"e6b2dcf3f6482a63"}},{"code_sha256_prefix":"9d1307ccfab6ab58","entry":"predict_mask","repo":"JunHeum/ABME","repo_kind":"official","path":"model/ABMNet.py","file_url":"https://github.com/JunHeum/ABME/blob/HEAD/model/ABMNet.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":"9d1307ccfab6ab58"}},{"code_sha256_prefix":"e536894103499721","entry":"upsample_kernel2d","repo":"JunHeum/ABME","repo_kind":"official","path":"Upsample.py","file_url":"https://github.com/JunHeum/ABME/blob/HEAD/Upsample.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":"e536894103499721"}},{"code_sha256_prefix":"8947db1e2118e6e8","entry":"warp","repo":"JunHeum/ABME","repo_kind":"official","path":"utils.py","file_url":"https://github.com/JunHeum/ABME/blob/HEAD/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":"8947db1e2118e6e8"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}