{"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/paint3d-paint-anything-3d-with-lighting-less","title":"Paint3D: Paint Anything 3D with Lighting-Less Texture Diffusion Models","arxiv_id":"2312.13913","date":"2023-12-21","proceeding":"CVPR 2024 1","authors":["Xianfang Zeng","Xin Chen","Zhongqi Qi","Wen Liu","Zibo Zhao","Zhibin Wang","Bin Fu","Yong liu","Gang Yu"],"abstract":"This paper presents Paint3D, a novel coarse-to-fine generative framework that is capable of producing high-resolution, lighting-less, and diverse 2K UV texture maps for untextured 3D meshes conditioned on text or image inputs. The key challenge addressed is generating high-quality textures without embedded illumination information, which allows the textures to be re-lighted or re-edited within modern graphics pipelines. To achieve this, our method first leverages a pre-trained depth-aware 2D diffusion model to generate view-conditional images and perform multi-view texture fusion, producing an initial coarse texture map. However, as 2D models cannot fully represent 3D shapes and disable lighting effects, the coarse texture map exhibits incomplete areas and illumination artifacts. To resolve this, we train separate UV Inpainting and UVHD diffusion models specialized for the shape-aware refinement of incomplete areas and the removal of illumination artifacts. Through this coarse-to-fine process, Paint3D can produce high-quality 2K UV textures that maintain semantic consistency while being lighting-less, significantly advancing the state-of-the-art in texturing 3D objects.","url_abs":"https://arxiv.org/abs/2312.13913v2","url_pdf":"https://arxiv.org/pdf/2312.13913v2.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":"paint3d-paint-anything-3d-with-lighting-less","repo_url":"https://github.com/opentexture/paint3d","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"Apache-2.0"}}],"tasks":[{"task_slug":"2k","task_name":"2k"}],"methods":[{"method_slug":"diffusion","method_name":"Diffusion"},{"method_slug":"pixel-prediction","method_name":"Inpainting"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/2312.13913","atlas_url":"https://app.syntology.ai/?focus=2312.13913","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2312.13913"}},"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/opentexture/paint3d","reach":{"status":"ok","spdx":"Apache-2.0"}}],"summary":{"ran":7},"by_repo_kind":{"official":{"samples":7,"ran":7,"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":"c700e822b8f6b97e","entry":"build_2d_gaussion","repo":"opentexture/paint3d","repo_kind":"official","path":"paint3d/post_process.py","file_url":"https://github.com/opentexture/paint3d/blob/HEAD/paint3d/post_process.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"c700e822b8f6b97e"}},{"code_sha256_prefix":"1ab20a6a8fc70824","entry":"color_with_shade","repo":"opentexture/paint3d","repo_kind":"official","path":"paint3d/utils.py","file_url":"https://github.com/opentexture/paint3d/blob/HEAD/paint3d/utils.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"1ab20a6a8fc70824"}},{"code_sha256_prefix":"d1ebb81b8aa5b3c1","entry":"init_dataloaders","repo":"opentexture/paint3d","repo_kind":"official","path":"paint3d/dataset.py","file_url":"https://github.com/opentexture/paint3d/blob/HEAD/paint3d/dataset.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"d1ebb81b8aa5b3c1"}},{"code_sha256_prefix":"9f9b117451307088","entry":"pil2tensor","repo":"opentexture/paint3d","repo_kind":"official","path":"paint3d/utils.py","file_url":"https://github.com/opentexture/paint3d/blob/HEAD/paint3d/utils.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"9f9b117451307088"}},{"code_sha256_prefix":"c9f64f7ca211e392","entry":"repeat_pixel","repo":"opentexture/paint3d","repo_kind":"official","path":"paint3d/post_process.py","file_url":"https://github.com/opentexture/paint3d/blob/HEAD/paint3d/post_process.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"c9f64f7ca211e392"}},{"code_sha256_prefix":"bb4403cb77b5e341","entry":"repeat_pixel_2d","repo":"opentexture/paint3d","repo_kind":"official","path":"paint3d/post_process.py","file_url":"https://github.com/opentexture/paint3d/blob/HEAD/paint3d/post_process.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"bb4403cb77b5e341"}},{"code_sha256_prefix":"3267964715dd20f9","entry":"tensor2numpy","repo":"opentexture/paint3d","repo_kind":"official","path":"paint3d/utils.py","file_url":"https://github.com/opentexture/paint3d/blob/HEAD/paint3d/utils.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"3267964715dd20f9"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}