{"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/learning-for-video-compression-with-recurrent","title":"Learning for Video Compression with Recurrent Auto-Encoder and Recurrent Probability Model","arxiv_id":"2006.13560","date":"2020-06-24","proceeding":null,"authors":["Ren Yang","Fabian Mentzer","Luc van Gool","Radu Timofte"],"abstract":"The past few years have witnessed increasing interests in applying deep learning to video compression. However, the existing approaches compress a video frame with only a few number of reference frames, which limits their ability to fully exploit the temporal correlation among video frames. To overcome this shortcoming, this paper proposes a Recurrent Learned Video Compression (RLVC) approach with the Recurrent Auto-Encoder (RAE) and Recurrent Probability Model (RPM). Specifically, the RAE employs recurrent cells in both the encoder and decoder. As such, the temporal information in a large range of frames can be used for generating latent representations and reconstructing compressed outputs. Furthermore, the proposed RPM network recurrently estimates the Probability Mass Function (PMF) of the latent representation, conditioned on the distribution of previous latent representations. Due to the correlation among consecutive frames, the conditional cross entropy can be lower than the independent cross entropy, thus reducing the bit-rate. The experiments show that our approach achieves the state-of-the-art learned video compression performance in terms of both PSNR and MS-SSIM. Moreover, our approach outperforms the default Low-Delay P (LDP) setting of x265 on PSNR, and also has better performance on MS-SSIM than the SSIM-tuned x265 and the slowest setting of x265. The codes are available at https://github.com/RenYang-home/RLVC.git.","url_abs":"https://arxiv.org/abs/2006.13560v4","url_pdf":"https://arxiv.org/pdf/2006.13560v4.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":"learning-for-video-compression-with-recurrent","repo_url":"https://github.com/RenYang-home/RLVC","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"tf","reach":{"status":"ok","spdx":"BSD-3-Clause"}},{"paper_slug":"learning-for-video-compression-with-recurrent","repo_url":"https://github.com/RenYang-home/OpenDVC","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":{"status":"ok","spdx":"BSD-3-Clause"}}],"tasks":[{"task_slug":"decoder","task_name":"Decoder"},{"task_slug":"ms-ssim","task_name":"MS-SSIM"},{"task_slug":"ssim","task_name":"SSIM"},{"task_slug":"video-compression","task_name":"Video Compression"}],"methods":[{"method_slug":"rae","method_name":"RAE"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2006.13560","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2006.13560"}},"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/RenYang-home/RLVC","reach":{"status":"ok","spdx":"BSD-3-Clause"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/RenYang-home/OpenDVC","reach":{"status":"ok","spdx":"BSD-3-Clause"}}],"summary":{"unverified":5},"by_repo_kind":{"official":{"samples":5,"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":"473ddad861178c87","entry":"configure","repo":"RenYang-home/RLVC","repo_kind":"official","path":"helper.py","file_url":"https://github.com/RenYang-home/RLVC/blob/HEAD/helper.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"BSD-3-Clause","inline_ok":true,"mcp_get_code":{"code_sha256":"473ddad861178c87"}},{"code_sha256_prefix":"38ace790e8828bae","entry":"configure_decoder","repo":"RenYang-home/RLVC","repo_kind":"official","path":"helper.py","file_url":"https://github.com/RenYang-home/RLVC/blob/HEAD/helper.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"BSD-3-Clause","inline_ok":true,"mcp_get_code":{"code_sha256":"38ace790e8828bae"}},{"code_sha256_prefix":"35bc39682880bf95","entry":"convnet","repo":"RenYang-home/RLVC","repo_kind":"official","path":"motion.py","file_url":"https://github.com/RenYang-home/RLVC/blob/HEAD/motion.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"BSD-3-Clause","inline_ok":true,"mcp_get_code":{"code_sha256":"35bc39682880bf95"}},{"code_sha256_prefix":"fde9eefed7367d3a","entry":"loss","repo":"RenYang-home/RLVC","repo_kind":"official","path":"motion.py","file_url":"https://github.com/RenYang-home/RLVC/blob/HEAD/motion.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"BSD-3-Clause","inline_ok":true,"mcp_get_code":{"code_sha256":"fde9eefed7367d3a"}},{"code_sha256_prefix":"61f9ce5dff0206b3","entry":"optical_flow","repo":"RenYang-home/RLVC","repo_kind":"official","path":"motion.py","file_url":"https://github.com/RenYang-home/RLVC/blob/HEAD/motion.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"BSD-3-Clause","inline_ok":true,"mcp_get_code":{"code_sha256":"61f9ce5dff0206b3"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}