{"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/dual-perspective-knowledge-enrichment-for","title":"Dual-Perspective Knowledge Enrichment for Semi-Supervised 3D Object Detection","arxiv_id":"2401.05011","date":"2024-01-10","proceeding":null,"authors":["Yucheng Han","Na Zhao","Weiling Chen","Keng Teck Ma","Hanwang Zhang"],"abstract":"Semi-supervised 3D object detection is a promising yet under-explored direction to reduce data annotation costs, especially for cluttered indoor scenes. A few prior works, such as SESS and 3DIoUMatch, attempt to solve this task by utilizing a teacher model to generate pseudo-labels for unlabeled samples. However, the availability of unlabeled samples in the 3D domain is relatively limited compared to its 2D counterpart due to the greater effort required to collect 3D data. Moreover, the loose consistency regularization in SESS and restricted pseudo-label selection strategy in 3DIoUMatch lead to either low-quality supervision or a limited amount of pseudo labels. To address these issues, we present a novel Dual-Perspective Knowledge Enrichment approach named DPKE for semi-supervised 3D object detection. Our DPKE enriches the knowledge of limited training data, particularly unlabeled data, from two perspectives: data-perspective and feature-perspective. Specifically, from the data-perspective, we propose a class-probabilistic data augmentation method that augments the input data with additional instances based on the varying distribution of class probabilities. Our DPKE achieves feature-perspective knowledge enrichment by designing a geometry-aware feature matching method that regularizes feature-level similarity between object proposals from the student and teacher models. Extensive experiments on the two benchmark datasets demonstrate that our DPKE achieves superior performance over existing state-of-the-art approaches under various label ratio conditions. The source code will be made available to the public.","url_abs":"https://arxiv.org/abs/2401.05011v1","url_pdf":"https://arxiv.org/pdf/2401.05011v1.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":"dual-perspective-knowledge-enrichment-for","repo_url":"https://github.com/tingxueronghua/dpke","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"3d-object-detection","task_name":"3D Object Detection"},{"task_slug":"data-augmentation","task_name":"Data Augmentation"},{"task_slug":"object-detection","task_name":"Object Detection"},{"task_slug":"pseudo-label","task_name":"Pseudo Label"},{"task_slug":"object-detection-1","task_name":"object-detection"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":null,"atlas_url":"https://app.syntology.ai/?focus=2401.05011","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2401.05011"}},"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/tingxueronghua/dpke","reach":null}],"summary":{"ran_honours":2,"ran_fixture":2,"ran_draft_wrong":5,"unverified":9},"by_repo_kind":{"official":{"samples":18,"ran":9,"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":18,"samples":[{"code_sha256_prefix":"eddd23cbbb297813","entry":"flip_axis_to_camera","repo":"tingxueronghua/dpke","repo_kind":"official","path":"models/loss_helper_unlabeled.py","file_url":"https://github.com/tingxueronghua/dpke/blob/HEAD/models/loss_helper_unlabeled.py","link_basis":"first_harvest_node","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"eddd23cbbb297813"}},{"code_sha256_prefix":"2d07150ed0255867","entry":"get_3d_box","repo":"tingxueronghua/dpke","repo_kind":"official","path":"models/loss_helper_unlabeled.py","file_url":"https://github.com/tingxueronghua/dpke/blob/HEAD/models/loss_helper_unlabeled.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"2d07150ed0255867"}},{"code_sha256_prefix":"bd237d8a9c8b33f6","entry":"huber_loss","repo":"tingxueronghua/dpke","repo_kind":"official","path":"models/loss_helper_unlabeled.py","file_url":"https://github.com/tingxueronghua/dpke/blob/HEAD/models/loss_helper_unlabeled.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"bd237d8a9c8b33f6"}},{"code_sha256_prefix":"8524fa3afc82724b","entry":"lhs_3d_faster_samecls","repo":"tingxueronghua/dpke","repo_kind":"official","path":"models/loss_helper_unlabeled.py","file_url":"https://github.com/tingxueronghua/dpke/blob/HEAD/models/loss_helper_unlabeled.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"8524fa3afc82724b"}},{"code_sha256_prefix":"debfd9f8a49596b7","entry":"nn_distance","repo":"tingxueronghua/dpke","repo_kind":"official","path":"models/loss_helper_unlabeled.py","file_url":"https://github.com/tingxueronghua/dpke/blob/HEAD/models/loss_helper_unlabeled.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"debfd9f8a49596b7"}},{"code_sha256_prefix":"3c3fa3ae7dd47d03","entry":"nn_distance_withcls","repo":"tingxueronghua/dpke","repo_kind":"official","path":"models/loss_helper_unlabeled.py","file_url":"https://github.com/tingxueronghua/dpke/blob/HEAD/models/loss_helper_unlabeled.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"3c3fa3ae7dd47d03"}},{"code_sha256_prefix":"e1f78f900f99690f","entry":"roty","repo":"tingxueronghua/dpke","repo_kind":"official","path":"models/loss_helper_unlabeled.py","file_url":"https://github.com/tingxueronghua/dpke/blob/HEAD/models/loss_helper_unlabeled.py","link_basis":"first_harvest_node","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"e1f78f900f99690f"}},{"code_sha256_prefix":"5fcf347710b4be86","entry":"trans_angle","repo":"tingxueronghua/dpke","repo_kind":"official","path":"models/loss_helper_unlabeled.py","file_url":"https://github.com/tingxueronghua/dpke/blob/HEAD/models/loss_helper_unlabeled.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"5fcf347710b4be86"}},{"code_sha256_prefix":"1411dfea7f7ed8cd","entry":"trans_size","repo":"tingxueronghua/dpke","repo_kind":"official","path":"models/loss_helper_unlabeled.py","file_url":"https://github.com/tingxueronghua/dpke/blob/HEAD/models/loss_helper_unlabeled.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"1411dfea7f7ed8cd"}},{"code_sha256_prefix":"4e7246c36ad9782e","entry":"box3d_iou_batch_gpu","repo":"tingxueronghua/dpke","repo_kind":"official","path":"models/loss_helper_unlabeled.py","file_url":"https://github.com/tingxueronghua/dpke/blob/HEAD/models/loss_helper_unlabeled.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"4e7246c36ad9782e"}},{"code_sha256_prefix":"09393aa9e8d8ad6b","entry":"compute_box_and_sem_cls_loss","repo":"tingxueronghua/dpke","repo_kind":"official","path":"models/loss_helper_unlabeled.py","file_url":"https://github.com/tingxueronghua/dpke/blob/HEAD/models/loss_helper_unlabeled.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"09393aa9e8d8ad6b"}},{"code_sha256_prefix":"75ff5a97f8ffda97","entry":"compute_iou_labels","repo":"tingxueronghua/dpke","repo_kind":"official","path":"models/loss_helper_unlabeled.py","file_url":"https://github.com/tingxueronghua/dpke/blob/HEAD/models/loss_helper_unlabeled.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"75ff5a97f8ffda97"}},{"code_sha256_prefix":"619751b3a15daea6","entry":"compute_objectness_gt","repo":"tingxueronghua/dpke","repo_kind":"official","path":"models/loss_helper_unlabeled.py","file_url":"https://github.com/tingxueronghua/dpke/blob/HEAD/models/loss_helper_unlabeled.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"619751b3a15daea6"}},{"code_sha256_prefix":"cd1cc668b7388a0c","entry":"compute_objectness_loss","repo":"tingxueronghua/dpke","repo_kind":"official","path":"models/loss_helper_unlabeled.py","file_url":"https://github.com/tingxueronghua/dpke/blob/HEAD/models/loss_helper_unlabeled.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"cd1cc668b7388a0c"}},{"code_sha256_prefix":"55394dc469527afa","entry":"get_pseudo_detection_loss","repo":"tingxueronghua/dpke","repo_kind":"official","path":"models/loss_helper_unlabeled.py","file_url":"https://github.com/tingxueronghua/dpke/blob/HEAD/models/loss_helper_unlabeled.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"55394dc469527afa"}},{"code_sha256_prefix":"493ce76f06838497","entry":"get_pseudo_labels","repo":"tingxueronghua/dpke","repo_kind":"official","path":"models/loss_helper_unlabeled.py","file_url":"https://github.com/tingxueronghua/dpke/blob/HEAD/models/loss_helper_unlabeled.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"493ce76f06838497"}},{"code_sha256_prefix":"18ba621d8879d6c7","entry":"get_unlabeled_loss","repo":"tingxueronghua/dpke","repo_kind":"official","path":"models/loss_helper_unlabeled.py","file_url":"https://github.com/tingxueronghua/dpke/blob/HEAD/models/loss_helper_unlabeled.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"18ba621d8879d6c7"}},{"code_sha256_prefix":"a3178bc8fc8015c2","entry":"trans_center","repo":"tingxueronghua/dpke","repo_kind":"official","path":"models/loss_helper_unlabeled.py","file_url":"https://github.com/tingxueronghua/dpke/blob/HEAD/models/loss_helper_unlabeled.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"a3178bc8fc8015c2"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}