{"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/bevheight-a-robust-framework-for-vision-based","title":"BEVHeight: A Robust Framework for Vision-based Roadside 3D Object Detection","arxiv_id":"2303.08498","date":"2023-03-15","proceeding":"CVPR 2023 1","authors":["Lei Yang","Kaicheng Yu","Tao Tang","Jun Li","Kun Yuan","Li Wang","Xinyu Zhang","Peng Chen"],"abstract":"While most recent autonomous driving system focuses on developing perception methods on ego-vehicle sensors, people tend to overlook an alternative approach to leverage intelligent roadside cameras to extend the perception ability beyond the visual range. We discover that the state-of-the-art vision-centric bird's eye view detection methods have inferior performances on roadside cameras. This is because these methods mainly focus on recovering the depth regarding the camera center, where the depth difference between the car and the ground quickly shrinks while the distance increases. In this paper, we propose a simple yet effective approach, dubbed BEVHeight, to address this issue. In essence, instead of predicting the pixel-wise depth, we regress the height to the ground to achieve a distance-agnostic formulation to ease the optimization process of camera-only perception methods. On popular 3D detection benchmarks of roadside cameras, our method surpasses all previous vision-centric methods by a significant margin. The code is available at {\\url{https://github.com/ADLab-AutoDrive/BEVHeight}}.","url_abs":"https://arxiv.org/abs/2303.08498v2","url_pdf":"https://arxiv.org/pdf/2303.08498v2.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":"bevheight-a-robust-framework-for-vision-based","repo_url":"https://github.com/adlab-autodrive/bevheight","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"3d-object-detection","task_name":"3D Object Detection"},{"task_slug":"autonomous-driving","task_name":"Autonomous Driving"},{"task_slug":"object-detection","task_name":"Object Detection"},{"task_slug":"object-detection-1","task_name":"object-detection"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/3d-object-detection-on-dair-v2x-i","task":"3D Object Detection","dataset":"DAIR-V2X-I","model":"BEVHeight","rank_in_archive_order":3,"of":9,"metrics":{"AP|R40(easy)":"77.8","AP|R40(hard)":"65.9","AP|R40(moderate)":"65.8"},"uses_additional_data":false},{"leaderboard":"/sota/3d-object-detection-on-rope3d","task":"3D Object Detection","dataset":"Rope3D","model":"BEVHeight","rank_in_archive_order":3,"of":8,"metrics":{"AP@0.7":"45.73"},"uses_additional_data":false}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2303.08498","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2303.08498"}},"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/adlab-autodrive/bevheight","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran":12,"unverified":3},"by_repo_kind":{"official":{"samples":15,"ran":12,"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":"07a0962477fe7ed9","entry":"all_gather_object","repo":"adlab-autodrive/bevheight","repo_kind":"official","path":"utils/torch_dist.py","file_url":"https://github.com/adlab-autodrive/bevheight/blob/HEAD/utils/torch_dist.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":"07a0962477fe7ed9"}},{"code_sha256_prefix":"b156b7f755eebeae","entry":"area","repo":"adlab-autodrive/bevheight","repo_kind":"official","path":"evaluators/kitti_utils/kitti_common.py","file_url":"https://github.com/adlab-autodrive/bevheight/blob/HEAD/evaluators/kitti_utils/kitti_common.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":"b156b7f755eebeae"}},{"code_sha256_prefix":"20fbfa2279e1ce4b","entry":"div_up","repo":"adlab-autodrive/bevheight","repo_kind":"official","path":"evaluators/kitti_utils/rotate_iou.py","file_url":"https://github.com/adlab-autodrive/bevheight/blob/HEAD/evaluators/kitti_utils/rotate_iou.py","link_basis":"harvester_set","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":"20fbfa2279e1ce4b"}},{"code_sha256_prefix":"293c4fe29caf73ac","entry":"equation_plane","repo":"adlab-autodrive/bevheight","repo_kind":"official","path":"dataset/nusc_mv_det_dataset.py","file_url":"https://github.com/adlab-autodrive/bevheight/blob/HEAD/dataset/nusc_mv_det_dataset.py","link_basis":"harvester_set","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":"293c4fe29caf73ac"}},{"code_sha256_prefix":"9d13541c64141176","entry":"get_denorm","repo":"adlab-autodrive/bevheight","repo_kind":"official","path":"dataset/nusc_mv_det_dataset.py","file_url":"https://github.com/adlab-autodrive/bevheight/blob/HEAD/dataset/nusc_mv_det_dataset.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":"9d13541c64141176"}},{"code_sha256_prefix":"62f00c1464b7201d","entry":"get_lidar_3d_8points","repo":"adlab-autodrive/bevheight","repo_kind":"official","path":"evaluators/result2kitti.py","file_url":"https://github.com/adlab-autodrive/bevheight/blob/HEAD/evaluators/result2kitti.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":"62f00c1464b7201d"}},{"code_sha256_prefix":"d1c7ebd69b72e9e9","entry":"get_object_corners_in_lidar","repo":"adlab-autodrive/bevheight","repo_kind":"official","path":"evaluators/utils.py","file_url":"https://github.com/adlab-autodrive/bevheight/blob/HEAD/evaluators/utils.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":"d1c7ebd69b72e9e9"}},{"code_sha256_prefix":"a09d8256df7fc20b","entry":"get_sensor2virtual","repo":"adlab-autodrive/bevheight","repo_kind":"official","path":"dataset/nusc_mv_det_dataset.py","file_url":"https://github.com/adlab-autodrive/bevheight/blob/HEAD/dataset/nusc_mv_det_dataset.py","link_basis":"harvester_set","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":"a09d8256df7fc20b"}},{"code_sha256_prefix":"40d369ccb2220f91","entry":"intersection","repo":"adlab-autodrive/bevheight","repo_kind":"official","path":"evaluators/kitti_utils/kitti_common.py","file_url":"https://github.com/adlab-autodrive/bevheight/blob/HEAD/evaluators/kitti_utils/kitti_common.py","link_basis":"harvester_set","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":"40d369ccb2220f91"}},{"code_sha256_prefix":"5cfbfa01de371153","entry":"iou","repo":"adlab-autodrive/bevheight","repo_kind":"official","path":"evaluators/kitti_utils/kitti_common.py","file_url":"https://github.com/adlab-autodrive/bevheight/blob/HEAD/evaluators/kitti_utils/kitti_common.py","link_basis":"harvester_set","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":"5cfbfa01de371153"}},{"code_sha256_prefix":"da26f94e7cbf0cd4","entry":"rotate_bound","repo":"adlab-autodrive/bevheight","repo_kind":"official","path":"evaluators/utils.py","file_url":"https://github.com/adlab-autodrive/bevheight/blob/HEAD/evaluators/utils.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":"da26f94e7cbf0cd4"}},{"code_sha256_prefix":"b06ed59492d49205","entry":"threaded_sync_file","repo":"adlab-autodrive/bevheight","repo_kind":"official","path":"utils/backup_files.py","file_url":"https://github.com/adlab-autodrive/bevheight/blob/HEAD/utils/backup_files.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":"b06ed59492d49205"}},{"code_sha256_prefix":"f5d9f0c2674ddee3","entry":"read_label_bboxes","repo":"adlab-autodrive/bevheight","repo_kind":"official","path":"evaluators/result2kitti.py","file_url":"https://github.com/adlab-autodrive/bevheight/blob/HEAD/evaluators/result2kitti.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":"f5d9f0c2674ddee3"}},{"code_sha256_prefix":"5f6b9de5081606a8","entry":"read_pcd","repo":"adlab-autodrive/bevheight","repo_kind":"official","path":"evaluators/utils.py","file_url":"https://github.com/adlab-autodrive/bevheight/blob/HEAD/evaluators/utils.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":"5f6b9de5081606a8"}},{"code_sha256_prefix":"cb6e63ff592197e4","entry":"size_if_newer","repo":"adlab-autodrive/bevheight","repo_kind":"official","path":"utils/backup_files.py","file_url":"https://github.com/adlab-autodrive/bevheight/blob/HEAD/utils/backup_files.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":"cb6e63ff592197e4"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}