{"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/convolutional-generation-of-textured-3d","title":"Convolutional Generation of Textured 3D Meshes","arxiv_id":"2006.07660","date":"2020-06-13","proceeding":"NeurIPS 2020 12","authors":["Dario Pavllo","Graham Spinks","Thomas Hofmann","Marie-Francine Moens","Aurelien Lucchi"],"abstract":"While recent generative models for 2D images achieve impressive visual results, they clearly lack the ability to perform 3D reasoning. This heavily restricts the degree of control over generated objects as well as the possible applications of such models. In this work, we bridge this gap by leveraging recent advances in differentiable rendering. We design a framework that can generate triangle meshes and associated high-resolution texture maps, using only 2D supervision from single-view natural images. A key contribution of our work is the encoding of the mesh and texture as 2D representations, which are semantically aligned and can be easily modeled by a 2D convolutional GAN. We demonstrate the efficacy of our method on Pascal3D+ Cars and CUB, both in an unconditional setting and in settings where the model is conditioned on class labels, attributes, and text. Finally, we propose an evaluation methodology that assesses the mesh and texture quality separately.","url_abs":"https://arxiv.org/abs/2006.07660v2","url_pdf":"https://arxiv.org/pdf/2006.07660v2.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":"convolutional-generation-of-textured-3d","repo_url":"https://github.com/dariopavllo/convmesh","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":null}],"tasks":[],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/2006.07660","atlas_url":"https://app.syntology.ai/?focus=2006.07660","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2006.07660"}},"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":"deterministic:regex_extraction","url":"https://github.com/dariopavllo/convmesh","reach":null}],"summary":{"ran_honours":1,"ran_draft_wrong":1,"unverified":2},"by_repo_kind":{"official":{"samples":4,"ran":2,"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":"86fe15b439328f16","entry":"divide_pred","repo":"dariopavllo/convmesh","repo_kind":"official","path":"run_generation.py","file_url":"https://github.com/dariopavllo/convmesh/blob/HEAD/run_generation.py","link_basis":"first_harvest_node","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":"86fe15b439328f16"}},{"code_sha256_prefix":"a3ccb1025ca05d3e","entry":"mean_iou","repo":"dariopavllo/convmesh","repo_kind":"official","path":"run_reconstruction.py","file_url":"https://github.com/dariopavllo/convmesh/blob/HEAD/run_reconstruction.py","link_basis":"first_harvest_node","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":"a3ccb1025ca05d3e"}},{"code_sha256_prefix":"bd0faab0cfcf45a0","entry":"to_grid","repo":"dariopavllo/convmesh","repo_kind":"official","path":"run_reconstruction.py","file_url":"https://github.com/dariopavllo/convmesh/blob/HEAD/run_reconstruction.py","link_basis":"first_harvest_node","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":"bd0faab0cfcf45a0"}},{"code_sha256_prefix":"7ab31145bc29a65d","entry":"to_grid_tex","repo":"dariopavllo/convmesh","repo_kind":"official","path":"run_generation.py","file_url":"https://github.com/dariopavllo/convmesh/blob/HEAD/run_generation.py","link_basis":"first_harvest_node","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":"7ab31145bc29a65d"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}