{"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/hindsight-is-20-20-leveraging-past-traversals-1","title":"Hindsight is 20/20: Leveraging Past Traversals to Aid 3D Perception","arxiv_id":"2203.11405","date":"2022-03-22","proceeding":"ICLR 2022 4","authors":["Yurong You","Katie Z Luo","Xiangyu Chen","Junan Chen","Wei-Lun Chao","Wen Sun","Bharath Hariharan","Mark Campbell","Kilian Q. Weinberger"],"abstract":"Self-driving cars must detect vehicles, pedestrians, and other traffic participants accurately to operate safely. Small, far-away, or highly occluded objects are particularly challenging because there is limited information in the LiDAR point clouds for detecting them. To address this challenge, we leverage valuable information from the past: in particular, data collected in past traversals of the same scene. We posit that these past data, which are typically discarded, provide rich contextual information for disambiguating the above-mentioned challenging cases. To this end, we propose a novel, end-to-end trainable Hindsight framework to extract this contextual information from past traversals and store it in an easy-to-query data structure, which can then be leveraged to aid future 3D object detection of the same scene. We show that this framework is compatible with most modern 3D detection architectures and can substantially improve their average precision on multiple autonomous driving datasets, most notably by more than 300% on the challenging cases.","url_abs":"https://arxiv.org/abs/2203.11405v1","url_pdf":"https://arxiv.org/pdf/2203.11405v1.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":"hindsight-is-20-20-leveraging-past-traversals-1","repo_url":"https://github.com/yurongyou/hindsight","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"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":"self-driving-cars","task_name":"Self-Driving Cars"},{"task_slug":"object-detection-1","task_name":"object-detection"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/2203.11405","atlas_url":"https://app.syntology.ai/?focus=2203.11405","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2203.11405"}},"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":"deterministic:regex_extraction","url":"https://github.com/YurongYou/Hindsight","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/yurongyou/hindsight","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran":9,"unverified":4},"by_repo_kind":{"official":{"samples":13,"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":0,"samples":[{"code_sha256_prefix":"dd2865592c40bf95","entry":"box_to_string","repo":"YurongYou/Hindsight","repo_kind":"official","path":"data_preprocessing/lyft/lyft2kitti.py","file_url":"https://github.com/YurongYou/Hindsight/blob/HEAD/data_preprocessing/lyft/lyft2kitti.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":"dd2865592c40bf95"}},{"code_sha256_prefix":"74ac280ac0823fc6","entry":"cart2hom","repo":"YurongYou/Hindsight","repo_kind":"official","path":"data_preprocessing/gather_historical_traversals.py","file_url":"https://github.com/YurongYou/Hindsight/blob/HEAD/data_preprocessing/gather_historical_traversals.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":"74ac280ac0823fc6"}},{"code_sha256_prefix":"68d59bd1b88d6e20","entry":"cls_type_to_id","repo":"YurongYou/Hindsight","repo_kind":"official","path":"data_preprocessing/kitti_util.py","file_url":"https://github.com/YurongYou/Hindsight/blob/HEAD/data_preprocessing/kitti_util.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":"68d59bd1b88d6e20"}},{"code_sha256_prefix":"4974407b90a3a234","entry":"find_closest_integer_in_ref_arr","repo":"YurongYou/Hindsight","repo_kind":"official","path":"data_preprocessing/nuscenes/nusc2kitti_boston.py","file_url":"https://github.com/YurongYou/Hindsight/blob/HEAD/data_preprocessing/nuscenes/nusc2kitti_boston.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":"4974407b90a3a234"}},{"code_sha256_prefix":"37c1e89b5864f71a","entry":"load_velo_scan","repo":"YurongYou/Hindsight","repo_kind":"official","path":"data_preprocessing/gather_historical_traversals.py","file_url":"https://github.com/YurongYou/Hindsight/blob/HEAD/data_preprocessing/gather_historical_traversals.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":"37c1e89b5864f71a"}},{"code_sha256_prefix":"145ca2df8e53618f","entry":"postprocessing","repo":"YurongYou/Hindsight","repo_kind":"official","path":"data_preprocessing/lyft/lyft2kitti.py","file_url":"https://github.com/YurongYou/Hindsight/blob/HEAD/data_preprocessing/lyft/lyft2kitti.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":"145ca2df8e53618f"}},{"code_sha256_prefix":"8843d80ab666c4e9","entry":"rotx","repo":"YurongYou/Hindsight","repo_kind":"official","path":"data_preprocessing/kitti_util.py","file_url":"https://github.com/YurongYou/Hindsight/blob/HEAD/data_preprocessing/kitti_util.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":"8843d80ab666c4e9"}},{"code_sha256_prefix":"ae86074e10e1dfd7","entry":"roty","repo":"YurongYou/Hindsight","repo_kind":"official","path":"data_preprocessing/kitti_util.py","file_url":"https://github.com/YurongYou/Hindsight/blob/HEAD/data_preprocessing/kitti_util.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":"ae86074e10e1dfd7"}},{"code_sha256_prefix":"8b80c6bbc9d282b1","entry":"transform_points","repo":"YurongYou/Hindsight","repo_kind":"official","path":"data_preprocessing/gather_historical_traversals.py","file_url":"https://github.com/YurongYou/Hindsight/blob/HEAD/data_preprocessing/gather_historical_traversals.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":"8b80c6bbc9d282b1"}},{"code_sha256_prefix":"696fe155f9990d38","entry":"cfg_from_yaml_file","repo":"YurongYou/Hindsight","repo_kind":"official","path":"downstream/OpenPCDet/pcdet/config.py","file_url":"https://github.com/YurongYou/Hindsight/blob/HEAD/downstream/OpenPCDet/pcdet/config.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":"696fe155f9990d38"}},{"code_sha256_prefix":"65fe32ede00e7dcb","entry":"compute_fg_mask","repo":"YurongYou/Hindsight","repo_kind":"official","path":"downstream/OpenPCDet/pcdet/utils/loss_utils.py","file_url":"https://github.com/YurongYou/Hindsight/blob/HEAD/downstream/OpenPCDet/pcdet/utils/loss_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":"65fe32ede00e7dcb"}},{"code_sha256_prefix":"1780d388cc532a6d","entry":"get_corner_loss_lidar","repo":"YurongYou/Hindsight","repo_kind":"official","path":"downstream/OpenPCDet/pcdet/utils/loss_utils.py","file_url":"https://github.com/YurongYou/Hindsight/blob/HEAD/downstream/OpenPCDet/pcdet/utils/loss_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":"1780d388cc532a6d"}},{"code_sha256_prefix":"392c0cf3a1b07b12","entry":"merge_new_config","repo":"YurongYou/Hindsight","repo_kind":"official","path":"downstream/OpenPCDet/pcdet/config.py","file_url":"https://github.com/YurongYou/Hindsight/blob/HEAD/downstream/OpenPCDet/pcdet/config.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":"392c0cf3a1b07b12"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}