{"id":"f45c4516-0ed6-4b39-af38-8e35e487be55","arxiv_id":"2411.18443","paper_version":1,"verdict":"CONDITIONAL","confidence":"MODERATE","novelty_score":6.0,"correctness_risk":"medium","formal_verification":"none","parameter_count":5,"one_line_summary":"A residual-based heuristic separates dynamic from static LiDAR points, enabling 14 ms dynamic object detection and tracking within a real-time odometry pipeline.","lead":"This paper presents a real-time LiDAR odometry system that detects moving objects, such as people and cars, using the leftover matching errors from the robot's own localization, then removes them from the map. It aims to give search-and-rescue robots the mapping accuracy of heavier methods while running on limited onboard computers.","discovery_kind":"new_method","skeptic_critique":{"model":"deepseek-v4-flash","headline":"Residual-based dynamic detection fails in repeated-traversal scenarios, and the paper's own DOALS numbers undercut the 'comparable detection performance' claim; conditional acceptance with revised claims is appropriate.","rationale":"The reader's conditional verdict already identifies the residual heuristic as the weakest assumption and flags the manual threshold tuning and quantitative gap. My stress-test reinforces that judgment rather than overturning it. The paper has genuine independent support: open-source code, a new public dataset, and a concrete per-component timing breakdown showing 14.3 ms added overhead and real-time operation. The failure mode is explicitly acknowledged in Section IV-F, so the paper is internally consistent. The problem is that the abstract's claim of 'comparable detection performance' is contradicted by the reported DOALS numbers, and the manual tuning on evaluation data makes the comparison optimistic. These are correctness risks for the central accuracy claim, not outright fraud or internal inconsistency. A conditional acceptance requiring revised claims and a held-out validation protocol is therefore the right outcome; no verdict change is needed beyond what the reader already proposed.","tokens_in":11085,"tokens_out":3937,"duration_ms":39064,"concrete_test":"Re-run the DOALS small town evaluation with a temporal train/test split, e.g., tune theta_res and theta_disp on the first 60% of frames using the Fig. 5 metric and report IoU/precision/recall on the remaining 40%. Additionally, select or construct a segment where a dynamic object traverses the same region more than once and measure recall on the second traversal. If held-out metrics remain below Dynablox by a similar margin, or if second-pass recall drops substantially, the residual heuristic's documented failure is confirmed and the abstract's 'comparable detection performance' should be revised to 'efficient but less accurate detection.'","verdict_should_be":"UNCHANGED","load_bearing_attack":"The central claim that GICP residuals reliably separate dynamic from static points is load-bearing, yet the paper's own quantitative evaluation contradicts it. On DOALS small town, the method achieves IoU/precision/recall of 0.48/0.78/0.49 versus Dynablox 0.69/0.99/0.69 (Section IV-C). The authors attribute the gap to objects crossing the same area: ghost traces in the submap lower residuals and prevent later detections (Section IV-F). This is not a peripheral failure; repeated traversal is common in USAR loops and is exactly the mechanism on which the Eq. (6) threshold depends. Because the residual heuristic is the primary dynamic/static discriminator alongside displacement, this failure mode directly weakens the headline 'comparable detection performance.' Compounding the issue, the thresholds theta_res, theta_disp, nmin, and nmax are manually tuned on the evaluation data ('adjusted them manually with reasonable effort to achieve optimal results', Section IV-C) without a validation split, so the reported operating point may overstate achievable performance. The efficiency contributions (14.3 ms overhead, 46.0 ms total) are well supported, but the accuracy claim is not.","agreement_with_reader":"agree"},"referee_report":{"model":"deepseek-v4-flash","summary":"The paper proposes a real-time dynamic LiDAR odometry pipeline for ground robots that extends Direct LiDAR Odometry (DLO) with range-image segmentation, a residual-based heuristic for distinguishing dynamic from static objects, Kalman-filter-based tracking, and removal of dynamic points before map integration. The main novelty is reusing GICP scan-matching residuals, which are already computed by the odometry module, as the basis for dynamic object classification, thereby avoiding learned networks and dense volumetric maps. The authors report an average total processing time of 46.0 ms per scan (14.3 ms overhead for detection and tracking) on a consumer laptop, and they evaluate detection accuracy on the DOALS small town simulation sequence and qualitatively on a newly recorded real-world dataset. They report IoU/precision/recall of 0.48/0.78/0.49 on DOALS versus Dynablox's 0.69/0.99/0.69, while still describing the detection performance as comparable in the abstract.","tokens_in":11318,"tokens_out":3886,"duration_ms":38823,"significance":"If the central claims held, the paper would offer a lightweight, training-free approach to dynamic object detection integrated with LiDAR odometry, which is valuable for computationally constrained rescue robots. The efficiency contribution is credible and well supported by the timing analysis in Section IV-E, and the open-source release of code and a new dataset is a concrete strength. The idea of reusing GICP residuals as a dynamic/static cue is elegant and the authors are transparent about several failure modes. However, the detection accuracy evidence is the weak pillar: the reported quantitative results are substantially below Dynablox on all metrics, the parameters are tuned on the evaluation data without a validation split, and the central residual assumption fails in repeated-traversal scenarios. The paper is a useful engineering contribution, but the headline claim of comparable detection performance requires revision and additional validation.","major_comments":[{"comment":"The claim of 'comparable detection performance' is contradicted by the paper's own quantitative evaluation. On the DOALS small town sequence, the proposed method attains IoU/precision/recall of 0.48/0.78/0.49 versus Dynablox's 0.69/0.99/0.69 (Section IV-C). Every metric is substantially lower, especially precision and recall, so the abstract and introduction should be revised to characterize the detection performance accurately or supplemented with additional evidence supporting the comparison.","section":"Abstract; Section IV-C"},{"comment":"The reported detection operating point appears to be selected on the evaluation data itself. The authors state that parameters were 'adjusted ... manually with reasonable effort to achieve optimal results' (Section IV-C), and Figure 5 sweeps theta_res on the same DOALS sequence to illustrate the precision-recall trade-off. Without a separate validation split or cross-validation, the reported IoU/precision/recall may overstate achievable performance. Please provide a validation protocol and report the sensitivity of the results to theta_res, theta_disp, nmin, and nmax.","section":"Section IV-C; Figure 5"},{"comment":"The central assumption that moving objects produce higher GICP residuals than static objects is violated in precisely the repeated-traversal cases documented in Section IV-F: ghost traces left in the submap lower the residuals of later objects at the same location, preventing their detection. Since the DOALS quantitative evaluation uses objects on looped trajectories, this failure mechanism directly explains the large gap to Dynablox and limits the method's applicability in USAR environments where areas are commonly re-crossed. This limitation should be elevated to a central scope condition in the abstract and conclusions, not only mentioned in the limitations paragraph.","section":"Section III-B2; Section IV-F"},{"comment":"Tracking performance, which is a stated contribution, is only evaluated qualitatively. The description of two persons being tracked over 480 s with three ID switches is informative, but quantitative tracking metrics (e.g., MOTA, MOTP, ID switch counts, or similar) would be needed to support the claim of 'robust object tracking'. The current evidence is anecdotal and does not permit a comparison with other DATMO approaches.","section":"Section IV-D"}],"minor_comments":[{"comment":"The heading 'Segmantation' should be corrected to 'Segmentation'.","section":"Section III-B"},{"comment":"The projection formula contains undefined symbols j and k, and the bracketing of the floor terms is confusing; please clarify the intended coordinate mapping.","section":"Equation (1)"},{"comment":"The default values of theta_res, theta_disp, nmin, and nmax are not reported in the text. Since these are the key parameters of the proposed method, please list the exact values used in the evaluation for reproducibility.","section":"Section III-C2; Equation (6)"},{"comment":"When describing the DOALS dataset, the authors state that the original layout was changed from column-major to row-major. Please clarify whether this transformation affects the ground-truth annotations or the comparability of the evaluation with other methods.","section":"Section IV-B"},{"comment":"There are formatting artifacts in Table I such as '31 .7' and '3 .5'; please unify the spacing and units.","section":"Table I"}],"recommendation":"major_revision","confidential_remarks":null},"author_rebuttal":null,"desk_editor":{"model":"deepseek-v4-flash","letter":"Two things to know. First, the core efficiency result is real: reusing GICP residuals to distinguish dynamic from static segments costs only 14.3 ms per scan on top of odometry, and the paper ships open-source code and a new dataset. Second, the detection accuracy claim does not survive the paper's own numbers: on DOALS small town they report IoU/precision/recall of 0.48/0.78/0.49 versus Dynablox's 0.69/0.99/0.69, and the abstract's \"comparable detection performance\" is an overstatement.\n\nThe residual-based heuristic itself is a genuine new contribution relative to LIO-DOR's bounding-box-overlap method. Working directly on the range image keeps it grid-free and fast, and the Kalman filter tracking over longer windows is a sensible way to catch slow movers. The timing table (46 ms total per scan, 21.7 Hz on a laptop CPU) is concrete and plausible. The paper also does something rare: it honestly documents the failure mode in Section IV-F where repeated traversals leave ghost traces in the submap and suppress residuals, preventing later detections. That is exactly the scenario of their DOALS sequence, which explains the gap.\n\nThe soft spots are real but not disqualifying. The \"comparable\" claim in the abstract should be revised to something like \"competitive at a fraction of the compute\" or simply report the actual numbers. The thresholds (theta_res, theta_disp, nmin/nmax) are hand-tuned on the evaluation data, without a validation split, so the reported operating point likely overstates what a user would get. A proper train/validation split or at least a sensitivity analysis with a fixed rule would help. The tracking evaluation is mostly qualitative; the 480 s kantplatz sequence shows one ID change three times, which is decent but not quantified against a benchmark.\n\nOverall, this is a useful engineering contribution for mobile robots in dynamic scenes where compute is limited. The efficiency win is solid; the detection claim needs to be dialed back. I'd send it to a serious referee with a request to fix the abstract, add a validation protocol, and do a more careful comparison with Dynablox at matched parameter tuning effort. The open-source release is a plus.\n\nRecommendation: conditional accept. Worth engaging with.","headline":"Solid efficiency contribution with a novel residual-based dynamic detector, but the accuracy claim is overstated and the repeated-traversal failure mode is real; conditional accept.","tokens_in":11858,"tokens_out":2301,"would_cite":true,"duration_ms":21538,"reading_group":"maybe","serious_thinker":"yes","would_accept_peer_review":true},"rs_alignment":null,"lean_confirmation":null,"pith_extraction":{"msc":[],"pacs":[],"model":"deepseek-v4-flash","headline":"This paper claims that the residuals already produced by GICP scan matching can distinguish dynamic from static objects in structured LiDAR clouds, enabling real-time dynamic odometry on a CPU with 14.3 ms added overhead.","keywords":["dynamic LiDAR odometry","range image segmentation","residual-based classification","object detection and tracking","mobile robots","urban search and rescue","GICP scan matching","structured point clouds"],"falsifier":"Measure the segment-average GICP residuals for a moving pedestrian and a static pole of the same height and distance across several scans: the paper's rule requires a clean separation between these distributions, so a large overlap between the two residual distributions would directly refute the residual heuristic's core premise.","tokens_in":10857,"feed_emoji":"🤖","tokens_out":11207,"duration_ms":96293,"temperature":0.7,"pith_summary":"The paper proposes a dynamic LiDAR odometry pipeline for mobile rescue robots that detects moving objects without pretrained networks or dense volumetric maps. Its central claim is that the per-point residuals left over from GICP scan matching—already computed by the odometry module—contain a usable dynamic-object signal: points on objects missing from the submap have larger residuals than static points. The paper turns that signal into a detector by projecting residuals onto a range image, segmenting the image into objects, and classifying a segment as dynamic when its average residual exceeds a height-scaled threshold. It reports that this adds only 14.3 ms per scan, runs at 21.7 Hz on a consumer laptop, and detects fast non-rigid objects such as running humans at point level. The payoff would be real-time dynamic awareness on computationally limited ground robots, using a byproduct of localization rather than an additional expensive representation.","feed_headline":"Residuals from scan matching reveal moving objects for only 14 ms","feed_subtitle":"It reuses odometry residuals to detect and track moving objects at 21.7 Hz, with no learned models or dense maps.","key_machinery":"The central object is the residual image: after the scan-to-submap GICP stage converges, each point in the current scan retains a residual equal to the Euclidean distance to its nearest neighbor in the submap, and these values are projected onto the same cylindrical coordinates as the range image. Because the moving object is absent from the submap, its points should have larger residuals than static points, so averaging the residuals over each range-image segment gives a per-object score $r_{avg}$. The decision rule is the height-scaled threshold $r_{avg} \\geq \\theta_{res} h_S$, where $h_S$ is the vertical extent of the segment; this rule is applied only after an object has been seen for a minimum number of frames and has moved a minimum displacement. The same machinery also includes range-image segmentation by connected components and Kalman-filter-based tracking with Hungarian assignment, which turn the per-frame classification into stable object identities and allow dynamic points to be removed before the scan is added to the submap.","core_discovery":"The discovery the paper aims to establish is that dynamic object detection can be obtained almost for free from the scan-matching residuals already computed for odometry. In the scan-to-submap stage of GICP, the current scan is aligned to a submap built from past scans; because a moving object was not part of that submap, its points' nearest-neighbor distances after convergence are systematically larger. Projecting these residuals to the range image and averaging them per segmented object yields a scalar $r_{avg}$ per candidate segment. The paper's rule declares an object dynamic when $r_{avg} \\geq \\theta_{res} h_S$, where $h_S$ is the segment's vertical extent, after a minimum number of detections and a minimum displacement; such objects are tracked with Kalman filters, removed from the scan before map integration, and their bounding-box histories are used to erase ghost traces from the global map. The paper argues this is enough to match the practical detection capability of a volumetric method on its real-world data while taking a small fraction of its processing time, and to detect highly articulated objects at full point-cloud resolution.","pith_inferences":["One extension the paper leaves implicit is that the residual signal could be used as a self-supervised cue: rather than hand-setting the threshold $\\theta_{res}$, a robot could collect residual distributions during operation and fit the decision boundary from observed data, which might recover detections in environments where the fixed linear threshold misfires.","A testable extension is to combine the residual image with short-term occupancy blanking: when an object is classified as dynamic, temporarily remove or downweight the submap points it generated, which may prevent the ghost-trace failure the paper documents for repeated crossings.","Because the residual image is a byproduct of registration, the same idea might transfer to other registration-based odometry systems or to scan-to-scan residuals, yielding earlier dynamic cues before a submap has accumulated enough static evidence.","The method's dependence on structured point clouds is a practical boundary; applying the residual-average heuristic to unstructured clouds would require an alternative spatial aggregation, such as voxel or kd-tree grouping, replacing the range-image projection."],"forward_implications":["A robot's odometry module can double as a dynamic-object detector at roughly 14.3 ms of added overhead per scan, making dynamic handling practical on CPUs without GPUs.","Because classification does not rely on object classes, arbitrary and unknown objects—including rescue workers, animals, or equipment—can be flagged as dynamic whenever their residual signal is high enough.","Removing dynamic points before the keyframe database is updated reduces ghost-trace artifacts in the map, and the global-map bounding-box rollback removes traces left by objects that started static.","Object tracks, with IDs and bounding boxes, are outputs available for downstream tasks such as following a person, motion planning, or human-robot interaction."],"supporting_citations":[{"why":"Supplies the two-stage GICP odometry whose scan-to-submap residuals are the paper's detection signal, along with the submap and keyframe database.","marker":"[5]"},{"why":"Provides the range-image segmentation that groups points into the objects whose average residuals are classified.","marker":"[28]"},{"why":"Serves as the state-of-the-art volumetric baseline whose detection performance and runtime the paper compares against.","marker":"[9]"},{"why":"Supplies the public simulated benchmark with ground-truth labels used for the quantitative IoU, precision, and recall evaluation.","marker":"[31]"},{"why":"Supplies the Kalman-filter tracking, data association, and birth-death memory used to maintain object identities across scans.","marker":"[29]"},{"why":"Provides the Hungarian assignment algorithm used to associate detections to tracked objects at minimal cost.","marker":"[30]"}],"fun_headline_variants":["No learned models needed: residuals spot moving objects in 14 ms","Odometry residuals flag dynamic objects at 21.7 Hz","Track moving objects using scan-matching residuals alone","14 ms extra: detect and track dynamic objects from residuals"],"cache_read_input_tokens":3200,"weakest_assumption_plain":"The method assumes that moving objects are consistently absent from the map used for scan matching, so their matching errors remain higher than static points' errors, and that these errors can be separated by a height-scaled threshold; the paper itself notes this fails when objects repeatedly cross the same area and leave residual traces in the map.","fun_headline_variants_meta":{"raw":{"variants":["No learned models needed: residuals spot moving objects in 14 ms","Odometry residuals flag dynamic objects at 21.7 Hz","Track moving objects using scan-matching residuals alone","14 ms extra: detect and track dynamic objects from residuals"]},"model":"deepseek-v4-flash","effort":"low","cost_usd":0.000216,"raw_usage":{"total_tokens":1441,"prompt_tokens":964,"completion_tokens":477,"prompt_tokens_details":{"cached_tokens":384},"prompt_cache_hit_tokens":384,"prompt_cache_miss_tokens":580,"completion_tokens_details":{"reasoning_tokens":409}},"tokens_in":580,"tokens_out":477,"duration_ms":5129,"temperature":1.0,"reasoning_tokens":409,"cache_read_input_tokens":384,"cache_creation_input_tokens":0},"cache_creation_input_tokens":0},"created_at":"2026-08-12T11:11:11.012078+00:00","model_set":{"reader":"deepseek-v4-flash"},"falsifier":"Measure the segment-average GICP residuals for a moving pedestrian and a static pole of the same height and distance across several scans: the paper's rule requires a clean separation between these distributions, so a large overlap between the two residual distributions would directly refute the residual heuristic's core premise.","supporting_citations":[{"cited_title":"Fast range image-based segmenta- tion of sparse 3D laser scans for online operation,","cited_arxiv_id":null,"evidence_quote":"Provides the range-image segmentation that groups points into the objects whose average residuals are classified."},{"cited_title":"Dynamic Object Aware LiDAR SLAM based on Automatic Generation of Training Data,","cited_arxiv_id":null,"evidence_quote":"Supplies the public simulated benchmark with ground-truth labels used for the quantitative IoU, precision, and recall evaluation."},{"cited_title":"The Hungarian method for the assignment problem,","cited_arxiv_id":null,"evidence_quote":"Provides the Hungarian assignment algorithm used to associate detections to tracked objects at minimal cost."}],"review_version":1}