{"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/nvs-adapter-plug-and-play-novel-view","title":"NVS-Adapter: Plug-and-Play Novel View Synthesis from a Single Image","arxiv_id":"2312.07315","date":"2023-12-12","proceeding":null,"authors":["Yoonwoo Jeong","Jinwoo Lee","Chiheon Kim","Minsu Cho","Doyup Lee"],"abstract":"Transfer learning of large-scale Text-to-Image (T2I) models has recently shown impressive potential for Novel View Synthesis (NVS) of diverse objects from a single image. While previous methods typically train large models on multi-view datasets for NVS, fine-tuning the whole parameters of T2I models not only demands a high cost but also reduces the generalization capacity of T2I models in generating diverse images in a new domain. In this study, we propose an effective method, dubbed NVS-Adapter, which is a plug-and-play module for a T2I model, to synthesize novel multi-views of visual objects while fully exploiting the generalization capacity of T2I models. NVS-Adapter consists of two main components; view-consistency cross-attention learns the visual correspondences to align the local details of view features, and global semantic conditioning aligns the semantic structure of generated views with the reference view. Experimental results demonstrate that the NVS-Adapter can effectively synthesize geometrically consistent multi-views and also achieve high performance on benchmarks without full fine-tuning of T2I models. The code and data are publicly available in ~\\href{https://postech-cvlab.github.io/nvsadapter/}{https://postech-cvlab.github.io/nvsadapter/}.","url_abs":"https://arxiv.org/abs/2312.07315v2","url_pdf":"https://arxiv.org/pdf/2312.07315v2.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":"nvs-adapter-plug-and-play-novel-view","repo_url":"https://github.com/POSTECH-CVLab/nvsadapter","is_official":1,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"jax","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"novel-view-synthesis","task_name":"Novel View Synthesis"},{"task_slug":"transfer-learning","task_name":"Transfer Learning"}],"methods":[{"method_slug":"align","method_name":"ALIGN"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/2312.07315","atlas_url":"https://app.syntology.ai/?focus=2312.07315","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2312.07315"}},"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/POSTECH-CVLab/nvsadapter","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran":4,"ran_violates":1,"ran_draft_wrong":1,"ran_honours":1,"unverified":4},"by_repo_kind":{"official":{"samples":11,"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":"71b406321e2072eb","entry":"HWC3","repo":"POSTECH-CVLab/nvsadapter","repo_kind":"official","path":"sgm/modules/nvsadapter/conditioner.py","file_url":"https://github.com/POSTECH-CVLab/nvsadapter/blob/HEAD/sgm/modules/nvsadapter/conditioner.py","link_basis":"first_harvest_node","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":"71b406321e2072eb"}},{"code_sha256_prefix":"4cb732f513d69dfd","entry":"disabled_train","repo":"POSTECH-CVLab/nvsadapter","repo_kind":"official","path":"sgm/modules/nvsadapter/midas/api.py","file_url":"https://github.com/POSTECH-CVLab/nvsadapter/blob/HEAD/sgm/modules/nvsadapter/midas/api.py","link_basis":"harvester_set","language":"python","status":"ran_violates","verification_level":1,"contract_check":"VIOLATES","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"4cb732f513d69dfd"}},{"code_sha256_prefix":"221b2d116fdf1032","entry":"get_obj_from_str","repo":"POSTECH-CVLab/nvsadapter","repo_kind":"official","path":"3drec/threestudio/models/guidance/nvsadapter_guidance.py","file_url":"https://github.com/POSTECH-CVLab/nvsadapter/blob/HEAD/3drec/threestudio/models/guidance/nvsadapter_guidance.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":"221b2d116fdf1032"}},{"code_sha256_prefix":"3aec51ff694c19af","entry":"inject_trainable_lora_extended","repo":"POSTECH-CVLab/nvsadapter","repo_kind":"official","path":"sgm/modules/nvsadapter/lora/lora.py","file_url":"https://github.com/POSTECH-CVLab/nvsadapter/blob/HEAD/sgm/modules/nvsadapter/lora/lora.py","link_basis":"harvester_set","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"well_formed","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"3aec51ff694c19af"}},{"code_sha256_prefix":"a3c255c9c008ba70","entry":"minus_one_to_one","repo":"POSTECH-CVLab/nvsadapter","repo_kind":"official","path":"sgm/modules/nvsadapter/conditioner.py","file_url":"https://github.com/POSTECH-CVLab/nvsadapter/blob/HEAD/sgm/modules/nvsadapter/conditioner.py","link_basis":"first_harvest_node","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":"a3c255c9c008ba70"}},{"code_sha256_prefix":"f999bed53b70c3ab","entry":"safe_open","repo":"POSTECH-CVLab/nvsadapter","repo_kind":"official","path":"sgm/modules/nvsadapter/lora/safe_open.py","file_url":"https://github.com/POSTECH-CVLab/nvsadapter/blob/HEAD/sgm/modules/nvsadapter/lora/safe_open.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":"f999bed53b70c3ab"}},{"code_sha256_prefix":"e4f7e3491a3b642b","entry":"zero_to_one","repo":"POSTECH-CVLab/nvsadapter","repo_kind":"official","path":"sgm/modules/nvsadapter/conditioner.py","file_url":"https://github.com/POSTECH-CVLab/nvsadapter/blob/HEAD/sgm/modules/nvsadapter/conditioner.py","link_basis":"first_harvest_node","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":"e4f7e3491a3b642b"}},{"code_sha256_prefix":"effb6d8bd6b936e2","entry":"create_tensor","repo":"POSTECH-CVLab/nvsadapter","repo_kind":"official","path":"sgm/modules/nvsadapter/lora/safe_open.py","file_url":"https://github.com/POSTECH-CVLab/nvsadapter/blob/HEAD/sgm/modules/nvsadapter/lora/safe_open.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":"effb6d8bd6b936e2"}},{"code_sha256_prefix":"bcd3958dacd3b2b0","entry":"extract_lora_as_tensor","repo":"POSTECH-CVLab/nvsadapter","repo_kind":"official","path":"sgm/modules/nvsadapter/lora/lora.py","file_url":"https://github.com/POSTECH-CVLab/nvsadapter/blob/HEAD/sgm/modules/nvsadapter/lora/lora.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":"bcd3958dacd3b2b0"}},{"code_sha256_prefix":"2f9880b526ff277e","entry":"extract_lora_ups_down","repo":"POSTECH-CVLab/nvsadapter","repo_kind":"official","path":"sgm/modules/nvsadapter/lora/lora.py","file_url":"https://github.com/POSTECH-CVLab/nvsadapter/blob/HEAD/sgm/modules/nvsadapter/lora/lora.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":"2f9880b526ff277e"}},{"code_sha256_prefix":"6cce57d1077b8c49","entry":"nms","repo":"POSTECH-CVLab/nvsadapter","repo_kind":"official","path":"sgm/modules/nvsadapter/hed/api.py","file_url":"https://github.com/POSTECH-CVLab/nvsadapter/blob/HEAD/sgm/modules/nvsadapter/hed/api.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":"6cce57d1077b8c49"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}