{"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/glass-geometric-latent-augmentation-for-shape","title":"GLASS: Geometric Latent Augmentation for Shape Spaces","arxiv_id":"2108.03225","date":"2021-08-06","proceeding":"CVPR 2022 1","authors":["Sanjeev Muralikrishnan","Siddhartha Chaudhuri","Noam Aigerman","Vladimir Kim","Matthew Fisher","Niloy Mitra"],"abstract":"We investigate the problem of training generative models on a very sparse collection of 3D models. We use geometrically motivated energies to augment and thus boost a sparse collection of example (training) models. We analyze the Hessian of the as-rigid-as-possible (ARAP) energy to sample from and project to the underlying (local) shape space, and use the augmented dataset to train a variational autoencoder (VAE). We iterate the process of building latent spaces of VAE and augmenting the associated dataset, to progressively reveal a richer and more expressive generative space for creating geometrically and semantically valid samples. Our framework allows us to train generative 3D models even with a small set of good quality 3D models, which are typically hard to curate. We extensively evaluate our method against a set of strong baselines, provide ablation studies and demonstrate application towards establishing shape correspondences. We present multiple examples of interesting and meaningful shape variations even when starting from as few as 3-10 training shapes.","url_abs":"https://arxiv.org/abs/2108.03225v3","url_pdf":"https://arxiv.org/pdf/2108.03225v3.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":"glass-geometric-latent-augmentation-for-shape","repo_url":"https://github.com/sanjeevmk/glass","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":null,"task_name":"valid"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2108.03225","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2108.03225"}},"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/sanjeevmk/glass","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"unverified":5},"by_repo_kind":{"listed":{"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":"cd56d2b59e5b89fc","entry":"check_symmetric","repo":"sanjeevmk/glass","repo_kind":"listed","path":"Src/Hessian_bottomk.py","file_url":"https://github.com/sanjeevmk/glass/blob/HEAD/Src/Hessian_bottomk.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":"cd56d2b59e5b89fc"}},{"code_sha256_prefix":"d8d71d606f224bc9","entry":"get_jacobian_rand","repo":"sanjeevmk/glass","repo_kind":"listed","path":"Src/Energies.py","file_url":"https://github.com/sanjeevmk/glass/blob/HEAD/Src/Energies.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":"d8d71d606f224bc9"}},{"code_sha256_prefix":"5818ed260316d201","entry":"jacobian","repo":"sanjeevmk/glass","repo_kind":"listed","path":"Src/Energies.py","file_url":"https://github.com/sanjeevmk/glass/blob/HEAD/Src/Energies.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":"5818ed260316d201"}},{"code_sha256_prefix":"215aeefbaad673e1","entry":"jacobian_hessian","repo":"sanjeevmk/glass","repo_kind":"listed","path":"Src/Energies.py","file_url":"https://github.com/sanjeevmk/glass/blob/HEAD/Src/Energies.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":"215aeefbaad673e1"}},{"code_sha256_prefix":"78bb52ae71e528a9","entry":"sigmoid","repo":"sanjeevmk/glass","repo_kind":"listed","path":"Src/Hessian.py","file_url":"https://github.com/sanjeevmk/glass/blob/HEAD/Src/Hessian.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":"78bb52ae71e528a9"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}