{"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/i-can-t-believe-it-s-not-scene-flow","title":"I Can't Believe It's Not Scene Flow!","arxiv_id":"2403.04739","date":"2024-03-07","proceeding":null,"authors":["Ishan Khatri","Kyle Vedder","Neehar Peri","Deva Ramanan","James Hays"],"abstract":"Current scene flow methods broadly fail to describe motion on small objects, and current scene flow evaluation protocols hide this failure by averaging over many points, with most drawn larger objects. To fix this evaluation failure, we propose a new evaluation protocol, Bucket Normalized EPE, which is class-aware and speed-normalized, enabling contextualized error comparisons between object types that move at vastly different speeds. To highlight current method failures, we propose a frustratingly simple supervised scene flow baseline, TrackFlow, built by bolting a high-quality pretrained detector (trained using many class rebalancing techniques) onto a simple tracker, that produces state-of-the-art performance on current standard evaluations and large improvements over prior art on our new evaluation. Our results make it clear that all scene flow evaluations must be class and speed aware, and supervised scene flow methods must address point class imbalances. We release the evaluation code publicly at https://github.com/kylevedder/BucketedSceneFlowEval.","url_abs":"https://arxiv.org/abs/2403.04739v2","url_pdf":"https://arxiv.org/pdf/2403.04739v2.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":"i-can-t-believe-it-s-not-scene-flow","repo_url":"https://github.com/kylevedder/bucketedscenefloweval","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"none","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"i-can-t-believe-it-s-not-scene-flow","repo_url":"https://github.com/kylevedder/SceneFlowZoo","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[],"methods":[{"method_slug":"speed","method_name":"SPEED"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/2403.04739","atlas_url":"https://app.syntology.ai/?focus=2403.04739","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2403.04739"}},"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/kylevedder/bucketedscenefloweval","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/kylevedder/SceneFlowZoo","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran":8},"by_repo_kind":{"official":{"samples":6,"ran":6,"repositories":1},"listed":{"samples":2,"ran":2,"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":"5c5482d289a07f32","entry":"align_vector_to_another","repo":"kylevedder/bucketedscenefloweval","repo_kind":"official","path":"bucketed_scene_flow_eval/datastructures/line_mesh.py","file_url":"https://github.com/kylevedder/bucketedscenefloweval/blob/HEAD/bucketed_scene_flow_eval/datastructures/line_mesh.py","link_basis":"first_harvest_node","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":"5c5482d289a07f32"}},{"code_sha256_prefix":"75b0424130303c2c","entry":"build_metadata","repo":"kylevedder/SceneFlowZoo","repo_kind":"listed","path":"av2_scene_flow_competition_submit.py","file_url":"https://github.com/kylevedder/SceneFlowZoo/blob/HEAD/av2_scene_flow_competition_submit.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":"75b0424130303c2c"}},{"code_sha256_prefix":"8932de372132539f","entry":"from_fixed_array","repo":"kylevedder/bucketedscenefloweval","repo_kind":"official","path":"bucketed_scene_flow_eval/datastructures/pointcloud.py","file_url":"https://github.com/kylevedder/bucketedscenefloweval/blob/HEAD/bucketed_scene_flow_eval/datastructures/pointcloud.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":"8932de372132539f"}},{"code_sha256_prefix":"a9e13d8e6c527e20","entry":"load_json","repo":"kylevedder/SceneFlowZoo","repo_kind":"listed","path":"data_prep_scripts/flatten_non_causal.py","file_url":"https://github.com/kylevedder/SceneFlowZoo/blob/HEAD/data_prep_scripts/flatten_non_causal.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":"a9e13d8e6c527e20"}},{"code_sha256_prefix":"6fa9a0952102a0c3","entry":"make_image_pixel_coordinate_grid","repo":"kylevedder/bucketedscenefloweval","repo_kind":"official","path":"bucketed_scene_flow_eval/datastructures/pointcloud.py","file_url":"https://github.com/kylevedder/bucketedscenefloweval/blob/HEAD/bucketed_scene_flow_eval/datastructures/pointcloud.py","link_basis":"first_harvest_node","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":"6fa9a0952102a0c3"}},{"code_sha256_prefix":"a9bf78961f9edbd5","entry":"normalized","repo":"kylevedder/bucketedscenefloweval","repo_kind":"official","path":"bucketed_scene_flow_eval/datastructures/line_mesh.py","file_url":"https://github.com/kylevedder/bucketedscenefloweval/blob/HEAD/bucketed_scene_flow_eval/datastructures/line_mesh.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":"a9bf78961f9edbd5"}},{"code_sha256_prefix":"76dac6858417dbfb","entry":"ray_triangle_intersect","repo":"kylevedder/bucketedscenefloweval","repo_kind":"official","path":"flow_lab/flow_lab.py","file_url":"https://github.com/kylevedder/bucketedscenefloweval/blob/HEAD/flow_lab/flow_lab.py","link_basis":"first_harvest_node","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":"76dac6858417dbfb"}},{"code_sha256_prefix":"fb9040070a43fabf","entry":"to_fixed_array","repo":"kylevedder/bucketedscenefloweval","repo_kind":"official","path":"bucketed_scene_flow_eval/datastructures/pointcloud.py","file_url":"https://github.com/kylevedder/bucketedscenefloweval/blob/HEAD/bucketed_scene_flow_eval/datastructures/pointcloud.py","link_basis":"first_harvest_node","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":"fb9040070a43fabf"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}