{"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/video-frame-interpolation-via-adaptive","title":"Video Frame Interpolation via Adaptive Separable Convolution","arxiv_id":"1708.01692","date":"2017-08-05","proceeding":"ICCV 2017 10","authors":["Simon Niklaus","Long Mai","Feng Liu"],"abstract":"Standard video frame interpolation methods first estimate optical flow\nbetween input frames and then synthesize an intermediate frame guided by\nmotion. Recent approaches merge these two steps into a single convolution\nprocess by convolving input frames with spatially adaptive kernels that account\nfor motion and re-sampling simultaneously. These methods require large kernels\nto handle large motion, which limits the number of pixels whose kernels can be\nestimated at once due to the large memory demand. To address this problem, this\npaper formulates frame interpolation as local separable convolution over input\nframes using pairs of 1D kernels. Compared to regular 2D kernels, the 1D\nkernels require significantly fewer parameters to be estimated. Our method\ndevelops a deep fully convolutional neural network that takes two input frames\nand estimates pairs of 1D kernels for all pixels simultaneously. Since our\nmethod is able to estimate kernels and synthesizes the whole video frame at\nonce, it allows for the incorporation of perceptual loss to train the neural\nnetwork to produce visually pleasing frames. This deep neural network is\ntrained end-to-end using widely available video data without any human\nannotation. Both qualitative and quantitative experiments show that our method\nprovides a practical solution to high-quality video frame interpolation.","url_abs":"http://arxiv.org/abs/1708.01692v1","url_pdf":"http://arxiv.org/pdf/1708.01692v1.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":"video-frame-interpolation-via-adaptive","repo_url":"https://github.com/sniklaus/sepconv-slomo","is_official":1,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"unanswered"}},{"paper_slug":"video-frame-interpolation-via-adaptive","repo_url":"https://github.com/HyeongminLEE/pytorch-sepconv","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"unanswered"}},{"paper_slug":"video-frame-interpolation-via-adaptive","repo_url":"https://github.com/carlo-/sepconv-ios","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"unanswered"}},{"paper_slug":"video-frame-interpolation-via-adaptive","repo_url":"https://github.com/ekgibbons/pytorch-sepconv","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"unanswered"}},{"paper_slug":"video-frame-interpolation-via-adaptive","repo_url":"https://github.com/gurpreet-singh135/Image-Interpolation-via-adaptive-separable-convolution","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":{"status":"unanswered"}},{"paper_slug":"video-frame-interpolation-via-adaptive","repo_url":"https://github.com/martkartasev/sepconv","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"unanswered"}}],"tasks":[{"task_slug":"optical-flow-estimation","task_name":"Optical Flow Estimation"},{"task_slug":"video-frame-interpolation","task_name":"Video Frame Interpolation"}],"methods":[{"method_slug":"convolution","method_name":"Convolution"}],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/video-frame-interpolation-on-msu-video-frame","task":"Video Frame Interpolation","dataset":"MSU Video Frame Interpolation","model":"SepConv-L1","rank_in_archive_order":18,"of":24,"metrics":{"PSNR":"26.36"},"uses_additional_data":false},{"leaderboard":"/sota/video-frame-interpolation-on-middlebury","task":"Video Frame Interpolation","dataset":"Middlebury","model":"SepConv-L1","rank_in_archive_order":8,"of":11,"metrics":{"Interpolation Error":"5.61"},"uses_additional_data":false},{"leaderboard":"/sota/video-frame-interpolation-on-vimeo90k","task":"Video Frame Interpolation","dataset":"Vimeo90K","model":"SepConv-L1","rank_in_archive_order":22,"of":23,"metrics":{"PSNR":"33.80"},"uses_additional_data":false}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=1708.01692","mcp":null,"developers":"https://syntology.ai/developers"},"arxiv_metadata":null,"syntology_extracted_results":null}