{"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/real-esrgan-training-real-world-blind-super","title":"Real-ESRGAN: Training Real-World Blind Super-Resolution with Pure Synthetic Data","arxiv_id":"2107.10833","date":"2021-07-22","proceeding":null,"authors":["Xintao Wang","Liangbin Xie","Chao Dong","Ying Shan"],"abstract":"Though many attempts have been made in blind super-resolution to restore low-resolution images with unknown and complex degradations, they are still far from addressing general real-world degraded images. In this work, we extend the powerful ESRGAN to a practical restoration application (namely, Real-ESRGAN), which is trained with pure synthetic data. Specifically, a high-order degradation modeling process is introduced to better simulate complex real-world degradations. We also consider the common ringing and overshoot artifacts in the synthesis process. In addition, we employ a U-Net discriminator with spectral normalization to increase discriminator capability and stabilize the training dynamics. Extensive comparisons have shown its superior visual performance than prior works on various real datasets. We also provide efficient implementations to synthesize training pairs on the fly.","url_abs":"https://arxiv.org/abs/2107.10833v2","url_pdf":"https://arxiv.org/pdf/2107.10833v2.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":"real-esrgan-training-real-world-blind-super","repo_url":"https://github.com/xinntao/Real-ESRGAN","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"BSD-3-Clause"}},{"paper_slug":"real-esrgan-training-real-world-blind-super","repo_url":"https://github.com/bayuudachi/Real-esr-gan","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"BSD-3-Clause"}},{"paper_slug":"real-esrgan-training-real-world-blind-super","repo_url":"https://github.com/final-0/Real-ESRGAN","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}},{"paper_slug":"real-esrgan-training-real-world-blind-super","repo_url":"https://github.com/final-0/Real-ESRGAN-bicubic","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}},{"paper_slug":"real-esrgan-training-real-world-blind-super","repo_url":"https://github.com/sberbank-ai/real-esrgan","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"BSD-3-Clause"}},{"paper_slug":"real-esrgan-training-real-world-blind-super","repo_url":"https://github.com/20151001860/Real_ESRGAN_paddle","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"paddle","reach":{"status":"ok"}},{"paper_slug":"real-esrgan-training-real-world-blind-super","repo_url":"https://github.com/2023-MindSpore-1/ms-code-213/tree/main/ESRGAN","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"mindspore","reach":null},{"paper_slug":"real-esrgan-training-real-world-blind-super","repo_url":"https://github.com/code-implementation1/Code3/tree/main/ESRGAN","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"mindspore","reach":null}],"tasks":[{"task_slug":"blind-super-resolution","task_name":"Blind Super-Resolution"},{"task_slug":"super-resolution","task_name":"Super-Resolution"},{"task_slug":"video-super-resolution","task_name":"Video Super-Resolution"}],"methods":[{"method_slug":"concatenated-skip-connection","method_name":"Concatenated Skip Connection"},{"method_slug":"convolution","method_name":"Convolution"},{"method_slug":"max-pooling","method_name":"Max Pooling"},{"method_slug":"relu","method_name":"ReLU"},{"method_slug":"spectral-normalization","method_name":"Spectral Normalization"},{"method_slug":"u-net","method_name":"U-Net"}],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/video-super-resolution-on-msu-super-1","task":"Video Super-Resolution","dataset":"MSU Super-Resolution for Video Compression","model":"Real-ESRGAN + x264","rank_in_archive_order":4,"of":85,"metrics":{"BSQ-rate over ERQA":"5.58","BSQ-rate over LPIPS":"0.733","BSQ-rate over MS-SSIM":"0.881","BSQ-rate over PSNR":"7.874","BSQ-rate over Subjective Score":"0.335","BSQ-rate over VMAF":"0.698"},"uses_additional_data":false},{"leaderboard":"/sota/video-super-resolution-on-msu-super-1","task":"Video Super-Resolution","dataset":"MSU Super-Resolution for Video Compression","model":"Real-ESRGAN + x265","rank_in_archive_order":10,"of":85,"metrics":{"BSQ-rate over ERQA":"6.328","BSQ-rate over LPIPS":"12.689","BSQ-rate over MS-SSIM":"5.393","BSQ-rate over PSNR":"8.113","BSQ-rate over Subjective Score":"0.64","BSQ-rate over VMAF":"1.464"},"uses_additional_data":false},{"leaderboard":"/sota/video-super-resolution-on-msu-super-1","task":"Video Super-Resolution","dataset":"MSU Super-Resolution for Video Compression","model":"Real-ESRGAN + aomenc","rank_in_archive_order":22,"of":85,"metrics":{"BSQ-rate over ERQA":"11.584","BSQ-rate over LPIPS":"11.957","BSQ-rate over MS-SSIM":"6.857","BSQ-rate over PSNR":"15.144","BSQ-rate over Subjective Score":"1.398","BSQ-rate over VMAF":"2.712"},"uses_additional_data":false},{"leaderboard":"/sota/video-super-resolution-on-msu-super-1","task":"Video Super-Resolution","dataset":"MSU Super-Resolution for Video Compression","model":"Real-ESRGAN + uavs3e","rank_in_archive_order":23,"of":85,"metrics":{"BSQ-rate over ERQA":"7.225","BSQ-rate over LPIPS":"2.633","BSQ-rate over MS-SSIM":"4.612","BSQ-rate over PSNR":"15.144","BSQ-rate over Subjective Score":"1.417","BSQ-rate over VMAF":"2.122"},"uses_additional_data":false},{"leaderboard":"/sota/video-super-resolution-on-msu-super-1","task":"Video Super-Resolution","dataset":"MSU Super-Resolution for Video Compression","model":"Real-ESRGAN + vvenc","rank_in_archive_order":56,"of":85,"metrics":{"BSQ-rate over ERQA":"6.712","BSQ-rate over LPIPS":"12.744","BSQ-rate over MS-SSIM":"5.95","BSQ-rate over PSNR":"14.561","BSQ-rate over VMAF":"3.8"},"uses_additional_data":false},{"leaderboard":"/sota/video-super-resolution-on-msu-vsr-benchmark","task":"Video Super-Resolution","dataset":"MSU Video Super Resolution Benchmark: Detail Restoration","model":"Real-ESRGAN","rank_in_archive_order":13,"of":32,"metrics":{"1 - LPIPS":"0.895","ERQAv1.0":"0.663","FPS":"1.01","PSNR":"24.441","QRCRv1.0":"0","SSIM":"0.774","Subjective score":"5.392"},"uses_additional_data":false},{"leaderboard":"/sota/video-super-resolution-on-msu-vsr-benchmark","task":"Video Super-Resolution","dataset":"MSU Video Super Resolution Benchmark: Detail Restoration","model":"Real-ESRnet","rank_in_archive_order":26,"of":32,"metrics":{"1 - LPIPS":"0.871","ERQAv1.0":"0.598","FPS":"1.019","PSNR":"27.195","QRCRv1.0":"0","SSIM":"0.824","Subjective score":"3.697"},"uses_additional_data":false},{"leaderboard":"/sota/video-super-resolution-on-msu-video-upscalers","task":"Video Super-Resolution","dataset":"MSU Video Upscalers: Quality Enhancement","model":"RealEsrgan","rank_in_archive_order":3,"of":48,"metrics":{"LPIPS":"0.181","PSNR":"29.14","SSIM":"0.855"},"uses_additional_data":false},{"leaderboard":"/sota/video-super-resolution-on-msu-video-upscalers","task":"Video Super-Resolution","dataset":"MSU Video Upscalers: Quality Enhancement","model":"RealEsrgan-F","rank_in_archive_order":5,"of":48,"metrics":{"LPIPS":"0.185","PSNR":"28.82","SSIM":"0.850"},"uses_additional_data":false},{"leaderboard":"/sota/video-super-resolution-on-msu-video-upscalers","task":"Video Super-Resolution","dataset":"MSU Video Upscalers: Quality Enhancement","model":"RealEsrgan-A","rank_in_archive_order":16,"of":48,"metrics":{"LPIPS":"0.244","PSNR":"28.71","SSIM":"0.830"},"uses_additional_data":false},{"leaderboard":"/sota/video-super-resolution-on-msu-video-upscalers","task":"Video Super-Resolution","dataset":"MSU Video Upscalers: Quality Enhancement","model":"RealEsrnet-F","rank_in_archive_order":20,"of":48,"metrics":{"LPIPS":"0.280","PSNR":"30.01","SSIM":"0.868"},"uses_additional_data":false},{"leaderboard":"/sota/video-super-resolution-on-msu-video-upscalers","task":"Video Super-Resolution","dataset":"MSU Video Upscalers: Quality Enhancement","model":"RealEsrnet","rank_in_archive_order":23,"of":48,"metrics":{"LPIPS":"0.296","PSNR":"30.52","SSIM":"0.878"},"uses_additional_data":false},{"leaderboard":"/sota/video-super-resolution-on-msu-video-upscalers","task":"Video Super-Resolution","dataset":"MSU Video Upscalers: Quality Enhancement","model":"RealEsrgan-V","rank_in_archive_order":27,"of":48,"metrics":{"LPIPS":"0.333","PSNR":"25.52","SSIM":"0.795"},"uses_additional_data":false}],"syntology":{"syntology_url":null,"atlas_url":"https://app.syntology.ai/?focus=2107.10833","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2107.10833"}},"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/sberbank-ai/real-esrgan","reach":{"status":"ok","spdx":"BSD-3-Clause"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/2023-MindSpore-1/ms-code-213/tree/main/ESRGAN","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/bayuudachi/Real-esr-gan","reach":{"status":"ok","spdx":"BSD-3-Clause"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/final-0/Real-ESRGAN","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/final-0/Real-ESRGAN-bicubic","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/code-implementation1/Code3/tree/main/ESRGAN","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/20151001860/Real_ESRGAN_paddle","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/xinntao/Real-ESRGAN","reach":{"status":"ok","spdx":"BSD-3-Clause"}}],"summary":{"ran_draft_wrong":2,"ran":1,"unverified":6},"by_repo_kind":{"official":{"samples":2,"ran":0,"repositories":1},"listed":{"samples":7,"ran":3,"repositories":2}},"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":"ef9faf68f492a375","entry":"flow_warp","repo":"sberbank-ai/real-esrgan","repo_kind":"listed","path":"RealESRGAN/arch_utils.py","file_url":"https://github.com/sberbank-ai/real-esrgan/blob/HEAD/RealESRGAN/arch_utils.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"BSD-3-Clause","inline_ok":true,"mcp_get_code":{"code_sha256":"ef9faf68f492a375"}},{"code_sha256_prefix":"96ad5dc9ca239aec","entry":"make_layer","repo":"sberbank-ai/real-esrgan","repo_kind":"listed","path":"RealESRGAN/arch_utils.py","file_url":"https://github.com/sberbank-ai/real-esrgan/blob/HEAD/RealESRGAN/arch_utils.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"BSD-3-Clause","inline_ok":true,"mcp_get_code":{"code_sha256":"96ad5dc9ca239aec"}},{"code_sha256_prefix":"5a1d8458dc7077a6","entry":"resize_flow","repo":"sberbank-ai/real-esrgan","repo_kind":"listed","path":"RealESRGAN/arch_utils.py","file_url":"https://github.com/sberbank-ai/real-esrgan/blob/HEAD/RealESRGAN/arch_utils.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"BSD-3-Clause","inline_ok":true,"mcp_get_code":{"code_sha256":"5a1d8458dc7077a6"}},{"code_sha256_prefix":"e38d8b54bf8e0f8a","entry":"get_sub_video","repo":"xinntao/Real-ESRGAN","repo_kind":"official","path":"inference_realesrgan_video.py","file_url":"https://github.com/xinntao/Real-ESRGAN/blob/HEAD/inference_realesrgan_video.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":"e38d8b54bf8e0f8a"}},{"code_sha256_prefix":"d620fd1d031bdedd","entry":"get_video_meta_info","repo":"xinntao/Real-ESRGAN","repo_kind":"official","path":"inference_realesrgan_video.py","file_url":"https://github.com/xinntao/Real-ESRGAN/blob/HEAD/inference_realesrgan_video.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":"d620fd1d031bdedd"}},{"code_sha256_prefix":"8320f6f582d4637a","entry":"load_file_from_url","repo":"bayuudachi/Real-esr-gan","repo_kind":"listed","path":"realesrgan/utils.py","file_url":"https://github.com/bayuudachi/Real-esr-gan/blob/HEAD/realesrgan/utils.py","link_basis":"harvester_set","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":"8320f6f582d4637a"}},{"code_sha256_prefix":"f58e0d3528adcfe2","entry":"pad_reflect","repo":"sberbank-ai/real-esrgan","repo_kind":"listed","path":"RealESRGAN/utils.py","file_url":"https://github.com/sberbank-ai/real-esrgan/blob/HEAD/RealESRGAN/utils.py","link_basis":"harvester_set","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":"f58e0d3528adcfe2"}},{"code_sha256_prefix":"b38c446239a30984","entry":"process_array","repo":"sberbank-ai/real-esrgan","repo_kind":"listed","path":"RealESRGAN/utils.py","file_url":"https://github.com/sberbank-ai/real-esrgan/blob/HEAD/RealESRGAN/utils.py","link_basis":"harvester_set","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":"b38c446239a30984"}},{"code_sha256_prefix":"ce655e9f8ddda6d8","entry":"unpad_image","repo":"sberbank-ai/real-esrgan","repo_kind":"listed","path":"RealESRGAN/utils.py","file_url":"https://github.com/sberbank-ai/real-esrgan/blob/HEAD/RealESRGAN/utils.py","link_basis":"harvester_set","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":"ce655e9f8ddda6d8"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}