{"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/frustum-convnet-sliding-frustums-to-aggregate","title":"Frustum ConvNet: Sliding Frustums to Aggregate Local Point-Wise Features for Amodal 3D Object Detection","arxiv_id":"1903.01864","date":"2019-03-05","proceeding":null,"authors":["Zhixin Wang","Kui Jia"],"abstract":"In this work, we propose a novel method termed \\emph{Frustum ConvNet (F-ConvNet)} for amodal 3D object detection from point clouds. Given 2D region proposals in an RGB image, our method first generates a sequence of frustums for each region proposal, and uses the obtained frustums to group local points. F-ConvNet aggregates point-wise features as frustum-level feature vectors, and arrays these feature vectors as a feature map for use of its subsequent component of fully convolutional network (FCN), which spatially fuses frustum-level features and supports an end-to-end and continuous estimation of oriented boxes in the 3D space. We also propose component variants of F-ConvNet, including an FCN variant that extracts multi-resolution frustum features, and a refined use of F-ConvNet over a reduced 3D space. Careful ablation studies verify the efficacy of these component variants. F-ConvNet assumes no prior knowledge of the working 3D environment and is thus dataset-agnostic. We present experiments on both the indoor SUN-RGBD and outdoor KITTI datasets. F-ConvNet outperforms all existing methods on SUN-RGBD, and at the time of submission it outperforms all published works on the KITTI benchmark. Code has been made available at: {\\url{https://github.com/zhixinwang/frustum-convnet}.}","url_abs":"https://arxiv.org/abs/1903.01864v2","url_pdf":"https://arxiv.org/pdf/1903.01864v2.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":"frustum-convnet-sliding-frustums-to-aggregate","repo_url":"https://github.com/zhixinwang/frustum-convnet","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"frustum-convnet-sliding-frustums-to-aggregate","repo_url":"https://github.com/carterprice2/Deep_Learning_project","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"none","reach":{"status":"ok"}}],"tasks":[{"task_slug":"3d-object-detection","task_name":"3D Object Detection"},{"task_slug":"object-detection","task_name":"Object Detection"},{"task_slug":"region-proposal","task_name":"Region Proposal"},{"task_slug":"object-detection-1","task_name":"object-detection"}],"methods":[{"method_slug":"convolution","method_name":"Convolution"},{"method_slug":"fcn","method_name":"FCN"},{"method_slug":"max-pooling","method_name":"Max Pooling"}],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/3d-object-detection-on-kitti-cars-easy","task":"3D Object Detection","dataset":"KITTI Cars Easy","model":"F-ConvNet","rank_in_archive_order":17,"of":26,"metrics":{"AP":"85.88%"},"uses_additional_data":false},{"leaderboard":"/sota/3d-object-detection-on-kitti-cars-hard","task":"3D Object Detection","dataset":"KITTI Cars Hard","model":"F-ConvNet","rank_in_archive_order":17,"of":25,"metrics":{"AP":"68.08%"},"uses_additional_data":false},{"leaderboard":"/sota/3d-object-detection-on-kitti-cyclists-easy","task":"3D Object Detection","dataset":"KITTI Cyclists Easy","model":"F-ConvNet","rank_in_archive_order":3,"of":12,"metrics":{"AP":"79.58%"},"uses_additional_data":false},{"leaderboard":"/sota/3d-object-detection-on-kitti-cyclists-hard","task":"3D Object Detection","dataset":"KITTI Cyclists Hard","model":"F-ConvNets","rank_in_archive_order":5,"of":12,"metrics":{"AP":"57.03%"},"uses_additional_data":false},{"leaderboard":"/sota/3d-object-detection-on-kitti-cyclists","task":"3D Object Detection","dataset":"KITTI Cyclists Moderate","model":"F-ConvNet","rank_in_archive_order":4,"of":13,"metrics":{"AP":"64.68%"},"uses_additional_data":false},{"leaderboard":"/sota/3d-object-detection-on-kitti-pedestrians-easy","task":"3D Object Detection","dataset":"KITTI Pedestrians Easy","model":"F-ConvNet","rank_in_archive_order":4,"of":9,"metrics":{"AP":"52.37%"},"uses_additional_data":false},{"leaderboard":"/sota/3d-object-detection-on-kitti-pedestrians-hard","task":"3D Object Detection","dataset":"KITTI Pedestrians Hard","model":"F-ConvNet","rank_in_archive_order":4,"of":9,"metrics":{"AP":"41.49%"},"uses_additional_data":false},{"leaderboard":"/sota/3d-object-detection-on-kitti-pedestrians","task":"3D Object Detection","dataset":"KITTI Pedestrians Moderate","model":"F-ConvNet","rank_in_archive_order":6,"of":12,"metrics":{"AP":"43.38%"},"uses_additional_data":false}],"syntology":{"syntology_url":"https://syntology.ai/paper/1903.01864","atlas_url":"https://app.syntology.ai/?focus=1903.01864","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1903.01864"}},"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/carterprice2/Deep_Learning_project","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/zhixinwang/frustum-convnet","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran_fixture":1,"unverified":15},"by_repo_kind":{"official":{"samples":16,"ran":1,"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":"aab935d4b7b55c2c","entry":"in_hull","repo":"zhixinwang/frustum-convnet","repo_kind":"official","path":"datasets/data_utils.py","file_url":"https://github.com/zhixinwang/frustum-convnet/blob/HEAD/datasets/data_utils.py","link_basis":"harvester_set","language":"python","status":"ran_fixture","verification_level":2,"contract_check":"RAISES","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"aab935d4b7b55c2c"}},{"code_sha256_prefix":"df9e498714c411f2","entry":"Conv1d","repo":"zhixinwang/frustum-convnet","repo_kind":"official","path":"models/common.py","file_url":"https://github.com/zhixinwang/frustum-convnet/blob/HEAD/models/common.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":"df9e498714c411f2"}},{"code_sha256_prefix":"ce58b42def83bfb4","entry":"Conv2d","repo":"zhixinwang/frustum-convnet","repo_kind":"official","path":"models/common.py","file_url":"https://github.com/zhixinwang/frustum-convnet/blob/HEAD/models/common.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":"ce58b42def83bfb4"}},{"code_sha256_prefix":"e0f1f2d3ccac5f2e","entry":"Conv3d","repo":"zhixinwang/frustum-convnet","repo_kind":"official","path":"models/common.py","file_url":"https://github.com/zhixinwang/frustum-convnet/blob/HEAD/models/common.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":"e0f1f2d3ccac5f2e"}},{"code_sha256_prefix":"3b86dc1730e8d1c1","entry":"adjust_coord_for_view","repo":"zhixinwang/frustum-convnet","repo_kind":"official","path":"datasets/check_utils.py","file_url":"https://github.com/zhixinwang/frustum-convnet/blob/HEAD/datasets/check_utils.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":"3b86dc1730e8d1c1"}},{"code_sha256_prefix":"f47e771020b20fef","entry":"center_decode","repo":"zhixinwang/frustum-convnet","repo_kind":"official","path":"models/box_transform.py","file_url":"https://github.com/zhixinwang/frustum-convnet/blob/HEAD/models/box_transform.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":"f47e771020b20fef"}},{"code_sha256_prefix":"0c5c08f1db6108da","entry":"collate_fn","repo":"zhixinwang/frustum-convnet","repo_kind":"official","path":"datasets/provider_sample.py","file_url":"https://github.com/zhixinwang/frustum-convnet/blob/HEAD/datasets/provider_sample.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":"0c5c08f1db6108da"}},{"code_sha256_prefix":"8d0c2b6ba5dcbf2d","entry":"compute_alpha","repo":"zhixinwang/frustum-convnet","repo_kind":"official","path":"datasets/provider_sample.py","file_url":"https://github.com/zhixinwang/frustum-convnet/blob/HEAD/datasets/provider_sample.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":"8d0c2b6ba5dcbf2d"}},{"code_sha256_prefix":"4b69faf22a81a1e4","entry":"extract_pc_in_box3d","repo":"zhixinwang/frustum-convnet","repo_kind":"official","path":"datasets/data_utils.py","file_url":"https://github.com/zhixinwang/frustum-convnet/blob/HEAD/datasets/data_utils.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":"4b69faf22a81a1e4"}},{"code_sha256_prefix":"281f3748f309afc2","entry":"get_box3d_corners_helper","repo":"zhixinwang/frustum-convnet","repo_kind":"official","path":"models/model_util.py","file_url":"https://github.com/zhixinwang/frustum-convnet/blob/HEAD/models/model_util.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":"281f3748f309afc2"}},{"code_sha256_prefix":"f6eae958a22ae877","entry":"huber_loss","repo":"zhixinwang/frustum-convnet","repo_kind":"official","path":"models/model_util.py","file_url":"https://github.com/zhixinwang/frustum-convnet/blob/HEAD/models/model_util.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":"f6eae958a22ae877"}},{"code_sha256_prefix":"a124059a5c42fe93","entry":"load_cfg","repo":"zhixinwang/frustum-convnet","repo_kind":"official","path":"configs/config.py","file_url":"https://github.com/zhixinwang/frustum-convnet/blob/HEAD/configs/config.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":"a124059a5c42fe93"}},{"code_sha256_prefix":"fda77318c74af228","entry":"rotate_pc_along_y","repo":"zhixinwang/frustum-convnet","repo_kind":"official","path":"datasets/data_utils.py","file_url":"https://github.com/zhixinwang/frustum-convnet/blob/HEAD/datasets/data_utils.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":"fda77318c74af228"}},{"code_sha256_prefix":"9989d7e45fda73c4","entry":"size_decode","repo":"zhixinwang/frustum-convnet","repo_kind":"official","path":"models/box_transform.py","file_url":"https://github.com/zhixinwang/frustum-convnet/blob/HEAD/models/box_transform.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":"9989d7e45fda73c4"}},{"code_sha256_prefix":"53a9950814898b9c","entry":"size_encode","repo":"zhixinwang/frustum-convnet","repo_kind":"official","path":"models/box_transform.py","file_url":"https://github.com/zhixinwang/frustum-convnet/blob/HEAD/models/box_transform.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":"53a9950814898b9c"}},{"code_sha256_prefix":"ce156beb68c9daa3","entry":"smooth_l1_loss","repo":"zhixinwang/frustum-convnet","repo_kind":"official","path":"models/model_util.py","file_url":"https://github.com/zhixinwang/frustum-convnet/blob/HEAD/models/model_util.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":"ce156beb68c9daa3"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}