{"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/apisr-anime-production-inspired-real-world","title":"APISR: Anime Production Inspired Real-World Anime Super-Resolution","arxiv_id":"2403.01598","date":"2024-03-03","proceeding":"CVPR 2024 1","authors":["Boyang Wang","Fengyu Yang","Xihang Yu","Chao Zhang","Hanbin Zhao"],"abstract":"While real-world anime super-resolution (SR) has gained increasing attention in the SR community, existing methods still adopt techniques from the photorealistic domain. In this paper, we analyze the anime production workflow and rethink how to use characteristics of it for the sake of the real-world anime SR. First, we argue that video networks and datasets are not necessary for anime SR due to the repetition use of hand-drawing frames. Instead, we propose an anime image collection pipeline by choosing the least compressed and the most informative frames from the video sources. Based on this pipeline, we introduce the Anime Production-oriented Image (API) dataset. In addition, we identify two anime-specific challenges of distorted and faint hand-drawn lines and unwanted color artifacts. We address the first issue by introducing a prediction-oriented compression module in the image degradation model and a pseudo-ground truth preparation with enhanced hand-drawn lines. In addition, we introduce the balanced twin perceptual loss combining both anime and photorealistic high-level features to mitigate unwanted color artifacts and increase visual clarity. We evaluate our method through extensive experiments on the public benchmark, showing our method outperforms state-of-the-art anime dataset-trained approaches.","url_abs":"https://arxiv.org/abs/2403.01598v2","url_pdf":"https://arxiv.org/pdf/2403.01598v2.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":"apisr-anime-production-inspired-real-world","repo_url":"https://github.com/kiteretsu77/apisr","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"GPL-3.0"}}],"tasks":[{"task_slug":"super-resolution","task_name":"Super-Resolution"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":null,"atlas_url":"https://app.syntology.ai/?focus=2403.01598","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2403.01598"}},"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/kiteretsu77/apisr","reach":{"status":"ok","spdx":"GPL-3.0"}},{"provenance":"deterministic:regex_extraction","url":"https://github.com/Kiteretsu77/APISR","reach":{"status":"ok","spdx":"GPL-3.0"}}],"summary":{"ran":5,"ran_fixture":1,"ran_draft_wrong":2,"unverified":1},"by_repo_kind":{"official":{"samples":9,"ran":8,"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":9,"samples":[{"code_sha256_prefix":"8453248776e583eb","entry":"DAT","repo":"Kiteretsu77/APISR","repo_kind":"official","path":"architecture/dat.py","file_url":"https://github.com/Kiteretsu77/APISR/blob/HEAD/architecture/dat.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"GPL-3.0","inline_ok":false,"mcp_get_code":{"code_sha256":"8453248776e583eb"}},{"code_sha256_prefix":"da5b8f1a75fb9d56","entry":"bn_drop_lin","repo":"kiteretsu77/apisr","repo_kind":"official","path":"loss/anime_perceptual_loss.py","file_url":"https://github.com/kiteretsu77/apisr/blob/HEAD/loss/anime_perceptual_loss.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"GPL-3.0","inline_ok":false,"mcp_get_code":{"code_sha256":"da5b8f1a75fb9d56"}},{"code_sha256_prefix":"b6c259519fa2dd17","entry":"create_head","repo":"kiteretsu77/apisr","repo_kind":"official","path":"loss/anime_perceptual_loss.py","file_url":"https://github.com/kiteretsu77/apisr/blob/HEAD/loss/anime_perceptual_loss.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"GPL-3.0","inline_ok":false,"mcp_get_code":{"code_sha256":"b6c259519fa2dd17"}},{"code_sha256_prefix":"b8ea831a5224d693","entry":"get_conv_layer","repo":"kiteretsu77/apisr","repo_kind":"official","path":"architecture/discriminator.py","file_url":"https://github.com/kiteretsu77/apisr/blob/HEAD/architecture/discriminator.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"GPL-3.0","inline_ok":false,"mcp_get_code":{"code_sha256":"b8ea831a5224d693"}},{"code_sha256_prefix":"15c613ecceb6aa71","entry":"img2windows","repo":"kiteretsu77/apisr","repo_kind":"official","path":"architecture/dat.py","file_url":"https://github.com/kiteretsu77/apisr/blob/HEAD/architecture/dat.py","link_basis":"harvester_set","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"invariant","behaviour_fingerprint":false,"licence":"GPL-3.0","inline_ok":false,"mcp_get_code":{"code_sha256":"15c613ecceb6aa71"}},{"code_sha256_prefix":"5360d45b71ae2bb1","entry":"insert_bn","repo":"kiteretsu77/apisr","repo_kind":"official","path":"loss/perceptual_loss.py","file_url":"https://github.com/kiteretsu77/apisr/blob/HEAD/loss/perceptual_loss.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":"GPL-3.0","inline_ok":false,"mcp_get_code":{"code_sha256":"5360d45b71ae2bb1"}},{"code_sha256_prefix":"354f96b2705d3271","entry":"resnet50","repo":"kiteretsu77/apisr","repo_kind":"official","path":"loss/anime_perceptual_loss.py","file_url":"https://github.com/kiteretsu77/apisr/blob/HEAD/loss/anime_perceptual_loss.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"GPL-3.0","inline_ok":false,"mcp_get_code":{"code_sha256":"354f96b2705d3271"}},{"code_sha256_prefix":"8cb23a62748d3b1c","entry":"windows2img","repo":"kiteretsu77/apisr","repo_kind":"official","path":"architecture/dat.py","file_url":"https://github.com/kiteretsu77/apisr/blob/HEAD/architecture/dat.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":"invariant","behaviour_fingerprint":false,"licence":"GPL-3.0","inline_ok":false,"mcp_get_code":{"code_sha256":"8cb23a62748d3b1c"}},{"code_sha256_prefix":"184f10e8b46a2a90","entry":"ResidualGroup","repo":"Kiteretsu77/APISR","repo_kind":"official","path":"architecture/dat.py","file_url":"https://github.com/Kiteretsu77/APISR/blob/HEAD/architecture/dat.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"GPL-3.0","inline_ok":false,"mcp_get_code":{"code_sha256":"184f10e8b46a2a90"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}