{"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/disentangling-content-and-style-via","title":"Disentangling Content and Style via Unsupervised Geometry Distillation","arxiv_id":"1905.04538","date":"2019-05-11","proceeding":"ICLR Workshop DeepGenStruct 2019","authors":["Wayne Wu","Kaidi Cao","Cheng Li","Chen Qian","Chen Change Loy"],"abstract":"It is challenging to disentangle an object into two orthogonal spaces of content and style since each can influence the visual observation differently and unpredictably. It is rare for one to have access to a large number of data to help separate the influences. In this paper, we present a novel framework to learn this disentangled representation in a completely unsupervised manner. We address this problem in a two-branch Autoencoder framework. For the structural content branch, we project the latent factor into a soft structured point tensor and constrain it with losses derived from prior knowledge. This constraint encourages the branch to distill geometry information. Another branch learns the complementary style information. The two branches form an effective framework that can disentangle object's content-style representation without any human annotation. We evaluate our approach on four image datasets, on which we demonstrate the superior disentanglement and visual analogy quality both in synthesized and real-world data. We are able to generate photo-realistic images with 256*256 resolution that are clearly disentangled in content and style.","url_abs":"https://arxiv.org/abs/1905.04538v1","url_pdf":"https://arxiv.org/pdf/1905.04538v1.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":"disentangling-content-and-style-via","repo_url":"https://github.com/pb2377/PyTorch-Disentangling-Content-and-Style-Unsupervised","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"disentanglement","task_name":"Disentanglement"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/1905.04538","atlas_url":"https://app.syntology.ai/?focus=1905.04538","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1905.04538"}},"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/pb2377/PyTorch-Disentangling-Content-and-Style-Unsupervised","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran":3,"ran_draft_wrong":1,"unverified":2},"by_repo_kind":{"listed":{"samples":6,"ran":4,"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":"12b2e28574509406","entry":"batch_pairwise_distances","repo":"pb2377/PyTorch-Disentangling-Content-and-Style-Unsupervised","repo_kind":"listed","path":"modules/landmark_projection.py","file_url":"https://github.com/pb2377/PyTorch-Disentangling-Content-and-Style-Unsupervised/blob/HEAD/modules/landmark_projection.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":"12b2e28574509406"}},{"code_sha256_prefix":"e6ebd2b8b75cdc9b","entry":"cat_annos","repo":"pb2377/PyTorch-Disentangling-Content-and-Style-Unsupervised","repo_kind":"listed","path":"preprocess_datasets.py","file_url":"https://github.com/pb2377/PyTorch-Disentangling-Content-and-Style-Unsupervised/blob/HEAD/preprocess_datasets.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":"e6ebd2b8b75cdc9b"}},{"code_sha256_prefix":"50eb881a5441d01a","entry":"get_boxes","repo":"pb2377/PyTorch-Disentangling-Content-and-Style-Unsupervised","repo_kind":"listed","path":"preprocess_datasets.py","file_url":"https://github.com/pb2377/PyTorch-Disentangling-Content-and-Style-Unsupervised/blob/HEAD/preprocess_datasets.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":"50eb881a5441d01a"}},{"code_sha256_prefix":"eba3f5bcc6a06d36","entry":"make_layers","repo":"pb2377/PyTorch-Disentangling-Content-and-Style-Unsupervised","repo_kind":"listed","path":"vgg.py","file_url":"https://github.com/pb2377/PyTorch-Disentangling-Content-and-Style-Unsupervised/blob/HEAD/vgg.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":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"eba3f5bcc6a06d36"}},{"code_sha256_prefix":"85530f3357a2fe00","entry":"load_some_weights","repo":"pb2377/PyTorch-Disentangling-Content-and-Style-Unsupervised","repo_kind":"listed","path":"vgg.py","file_url":"https://github.com/pb2377/PyTorch-Disentangling-Content-and-Style-Unsupervised/blob/HEAD/vgg.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"85530f3357a2fe00"}},{"code_sha256_prefix":"a97e757d44f4dc7f","entry":"vgg11","repo":"pb2377/PyTorch-Disentangling-Content-and-Style-Unsupervised","repo_kind":"listed","path":"vgg.py","file_url":"https://github.com/pb2377/PyTorch-Disentangling-Content-and-Style-Unsupervised/blob/HEAD/vgg.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"a97e757d44f4dc7f"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}