{"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/photorealistic-style-transfer-via-wavelet","title":"Photorealistic Style Transfer via Wavelet Transforms","arxiv_id":"1903.09760","date":"2019-03-23","proceeding":"ICCV 2019 10","authors":["Jaejun Yoo","Youngjung Uh","Sanghyuk Chun","Byeongkyu Kang","Jung-Woo Ha"],"abstract":"Recent style transfer models have provided promising artistic results. However, given a photograph as a reference style, existing methods are limited by spatial distortions or unrealistic artifacts, which should not happen in real photographs. We introduce a theoretically sound correction to the network architecture that remarkably enhances photorealism and faithfully transfers the style. The key ingredient of our method is wavelet transforms that naturally fits in deep networks. We propose a wavelet corrected transfer based on whitening and coloring transforms (WCT$^2$) that allows features to preserve their structural information and statistical properties of VGG feature space during stylization. This is the first and the only end-to-end model that can stylize a $1024\\times1024$ resolution image in 4.7 seconds, giving a pleasing and photorealistic quality without any post-processing. Last but not least, our model provides a stable video stylization without temporal constraints. Our code, generated images, and pre-trained models are all available at https://github.com/ClovaAI/WCT2.","url_abs":"https://arxiv.org/abs/1903.09760v2","url_pdf":"https://arxiv.org/pdf/1903.09760v2.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":"photorealistic-style-transfer-via-wavelet","repo_url":"https://github.com/clovaai/WCT2","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"photorealistic-style-transfer-via-wavelet","repo_url":"https://github.com/leolle/StyleTransfer","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"photorealistic-style-transfer-via-wavelet","repo_url":"https://github.com/lixinghpu/SCCL","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"photorealistic-style-transfer-via-wavelet","repo_url":"https://github.com/ptran1203/photorealistic_style_transfer","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":{"status":"ok"}}],"tasks":[{"task_slug":"style-transfer","task_name":"Style Transfer"}],"methods":[{"method_slug":"convolution","method_name":"Convolution"},{"method_slug":"dense-connections","method_name":"Dense Connections"},{"method_slug":"dropout","method_name":"Dropout"},{"method_slug":"max-pooling","method_name":"Max Pooling"},{"method_slug":"relu","method_name":"ReLU"},{"method_slug":"softmax","method_name":"Softmax"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/1903.09760","atlas_url":"https://app.syntology.ai/?focus=1903.09760","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1903.09760"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-25T09:33:49+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/clovaai/WCT2","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/leolle/StyleTransfer","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/ptran1203/photorealistic_style_transfer","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/lixinghpu/SCCL","reach":null}],"summary":{"ran_honours":3,"ran":3,"ran_draft_wrong":2,"ran_violates":1,"ran_fixture":1},"by_repo_kind":{"listed":{"samples":9,"ran":9,"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":3,"samples":[{"code_sha256_prefix":"d7ba76d42b36ae5b","entry":"adain","repo":"lixinghpu/SCCL","repo_kind":"listed","path":"models/network.py","file_url":"https://github.com/lixinghpu/SCCL/blob/HEAD/models/network.py","link_basis":"first_harvest_node","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"d7ba76d42b36ae5b"}},{"code_sha256_prefix":"df27553f9e6d94d7","entry":"calc_mean_std","repo":"lixinghpu/SCCL","repo_kind":"listed","path":"models/network.py","file_url":"https://github.com/lixinghpu/SCCL/blob/HEAD/models/network.py","link_basis":"first_harvest_node","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"df27553f9e6d94d7"}},{"code_sha256_prefix":"b5f5f4e970bbce9c","entry":"change_seg","repo":"leolle/StyleTransfer","repo_kind":"listed","path":"utils/io.py","file_url":"https://github.com/leolle/StyleTransfer/blob/HEAD/utils/io.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"b5f5f4e970bbce9c"}},{"code_sha256_prefix":"3f416806a9d75fdf","entry":"get_rank","repo":"leolle/StyleTransfer","repo_kind":"listed","path":"utils/core.py","file_url":"https://github.com/leolle/StyleTransfer/blob/HEAD/utils/core.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"3f416806a9d75fdf"}},{"code_sha256_prefix":"ca190ac7aa0a7723","entry":"get_squeeze_feat","repo":"leolle/StyleTransfer","repo_kind":"listed","path":"utils/core.py","file_url":"https://github.com/leolle/StyleTransfer/blob/HEAD/utils/core.py","link_basis":"harvester_set","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"ca190ac7aa0a7723"}},{"code_sha256_prefix":"289a3baab5b57fbb","entry":"get_wav","repo":"leolle/StyleTransfer","repo_kind":"listed","path":"model.py","file_url":"https://github.com/leolle/StyleTransfer/blob/HEAD/model.py","link_basis":"plan_row","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":"289a3baab5b57fbb"}},{"code_sha256_prefix":"59848503040bbdac","entry":"is_image_file","repo":null,"repo_kind":null,"path":null,"file_url":null,"link_basis":"identical_code_first_harvested_elsewhere","language":"python","status":"ran_violates","verification_level":1,"contract_check":"VIOLATES","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":null,"inline_ok":false,"mcp_get_code":{"code_sha256":"59848503040bbdac"}},{"code_sha256_prefix":"dbe84d8aa1cb381a","entry":"load_segment","repo":"leolle/StyleTransfer","repo_kind":"listed","path":"utils/io.py","file_url":"https://github.com/leolle/StyleTransfer/blob/HEAD/utils/io.py","link_basis":"harvester_set","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":"dbe84d8aa1cb381a"}},{"code_sha256_prefix":"e7d7e6e86a4adc2e","entry":"open_image","repo":"leolle/StyleTransfer","repo_kind":"listed","path":"utils/io.py","file_url":"https://github.com/leolle/StyleTransfer/blob/HEAD/utils/io.py","link_basis":"harvester_set","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":"e7d7e6e86a4adc2e"}},{"code_sha256_prefix":"de40dd53e9e39e11","entry":"svd","repo":"leolle/StyleTransfer","repo_kind":"listed","path":"utils/core.py","file_url":"https://github.com/leolle/StyleTransfer/blob/HEAD/utils/core.py","link_basis":"harvester_set","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"deterministic","behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"de40dd53e9e39e11"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}