{"id":"fe868faf-3124-4ea7-a388-ab19ef696296","arxiv_id":"2506.21077","paper_version":1,"verdict":"CONDITIONAL","confidence":"MODERATE","novelty_score":6.0,"correctness_risk":"medium","formal_verification":"none","parameter_count":9,"one_line_summary":"A full LiDAR SLAM pipeline with loop closure and local bundle adjustment based on spherical-harmonic patch maps achieves compact, globally consistent, continuously resolvable 3D mapping in real time on a CPU.","lead":"CURL-SLAM is a LiDAR SLAM system that builds 3D maps as compact spherical-harmonic patches instead of raw point clouds, and can reconstruct the same map at many resolutions on a CPU in real time. The maps take roughly 0.26 percent of the storage of raw point clouds while keeping accuracy competitive with point-cloud, mesh, and neural implicit baselines.","discovery_kind":"extension","skeptic_critique":{"model":"deepseek-v4-flash","headline":"Single-valued height-field patches bias pose and map when a voxel contains two surfaces; Eq. (6)/(13) need a multi-surface stress test.","rationale":"The reader's weakest assumption is the height-field projection in Section III-D, and I agree that it is the most load-bearing issue. The paper's core contribution is a CURL-based full SLAM system that claims globally consistent, ultra-compact, continuous maps with SOTA accuracy. Every pose and map update is built on comparing observed and reconstructed heights along the reference-plane normal. If a patch contains two surfaces along that normal, the SH fit averages them, biasing the residuals in Eq. (6) and Eq. (13). This is not a performance gap that tuning can fix; it is a representational limit of the map itself. The paper's mitigation, accumulating points before fixing the reference plane, only addresses small-sample instability of the normal estimate, not the fundamental ambiguity. The empirical results on Newer College and FusionPortable are encouraging, which is why I do not recommend rejecting on this basis alone; the concern needs a targeted test. Secondary issues flagged by the reader, such as the trajectory 'top-two-over-half' claim not matching Table VII, changing s=0.5m for stairs, using all patches on starred sequences, missing code, and the absence of error bars, are real but affect the strength and reproducibility of the claims rather than the core representational validity. Since the reader already issued a conditional verdict, and this attack both confirms and sharpens the condition, the appropriate action is to keep the verdict unchanged while requiring the multi-surface stress test.","tokens_in":25080,"tokens_out":12346,"duration_ms":145979,"concrete_test":"Construct a synthetic voxel of side 1.5m containing two parallel planar surfaces separated by d=0.2m (both faces of a thin wall), and evaluate the objective in Eq. (6) at the true pose and at a perturbed pose using points sampled from the near face. If the true pose does not minimize the residual, or if the residual minimum is shifted by roughly d/2, the single-height assumption is confirmed to bias pose estimation. Repeat with the same wall split into two voxels; the bias should disappear. This analytic/computational test uses the paper's own equations and does not require external benchmarks.","verdict_should_be":"UNCHANGED","load_bearing_attack":"The central claim depends on the height-field assumption made in Section III-D/E: each voxel patch is projected onto one selected reference plane and represented as a single height per (x,y), with pose and BA residuals in Eq. (6) and Eq. (13) comparing observed height P_z(Q) to the reconstructed height I_k(mu). This is only unbiased if the surface is single-valued along the chosen plane normal. The paper's normal-based plane selection (Eq. 1) does not resolve the case where a 1.5m voxel contains two surfaces along that normal: opposing vertical wall faces, floor and ceiling, overhangs, or the interior of a corner. In such a voxel, the covariance eigenvector in Eq. (1) cannot make both surfaces single-valued under any axis-aligned projection; the least-squares spherical-harmonics fit stores a blended height, so the residual is nonzero at the true pose and the optimizer is attracted to a wrong pose. The paper's accumulation-based re-determination of the reference plane (Section III-D1) stabilizes the choice for sparse point counts but does not address this geometric multi-valuedness. This is an internal property of the objective, not a difference of external opinion. Since the abstract claims a general full LiDAR SLAM system with state-of-the-art mapping, this assumption must be tested explicitly on multi-surface voxels before the claim can be considered robust.","agreement_with_reader":"agree"},"referee_report":{"model":"deepseek-v4-flash","summary":"The paper proposes CURL-SLAM, a LiDAR SLAM system built on the Continuous and Ultra-compact Representation of LiDAR (CURL). The map is organized as voxel patches encoded by spherical-harmonics coefficients, and pose estimation is formulated as a frame-to-submap optimization over height residuals, extended by a local bundle adjustment and loop closure with pose-graph optimization. Experiments on Newer College and FusionPortable report map reconstruction quality competitive with or better than HBA, SLAMesh, and PIN-SLAM, with substantially smaller map sizes and CPU-only real-time operation. The paper also derives analytical Jacobians for the pose and bundle-adjustment residuals and validates them against numerical gradients.","tokens_in":25320,"tokens_out":3081,"duration_ms":37463,"significance":"If the claims hold, the paper makes a useful practical contribution: a CPU-only LiDAR SLAM system with a compact, continuously reconstructable implicit map and a complete loop-closure pipeline. The derivation of analytic Jacobians for the spherical-harmonics residuals is a genuine technical element, and the reported validation against numerical gradients is a strength. The compactness results (about 0.26% of raw point-cloud size in the illustrative example) are striking. However, the central pose and mapping residuals rely on a single-valued height-field assumption per voxel patch, and the experimental comparison lacks repeated-run uncertainty. Both issues need to be addressed before the general SLAM claim is fully supported.","major_comments":[{"comment":"The pose and BA residuals assume that each voxel patch can be represented as a single-valued height image under a chosen reference plane, and that the spherical-harmonics fit of that height image is a valid model of the surface. In a voxel that contains two surfaces along the projection normal (opposing vertical wall faces, floor and ceiling, overhangs, or the interior of a corner), the covariance-based plane selection in Eq. (1) cannot make both surfaces single-valued under any axis-aligned projection. The least-squares fit then stores a blended height, the residual in Eq. (6) is nonzero at the true pose, and the optimizer is attracted to a biased pose. This is an internal property of the objective, not a difference of external opinion. Please add a controlled experiment, synthetic or real, with voxels containing two surfaces and quantify pose and map error as a function of surface separation; if the limitation is inherent, it should be stated explicitly in the abstract and in the claims of generality.","section":"Sections III-D, III-E and Eqs. (6), (13)"},{"comment":"The text states that \"All mapping parameters are kept consistent across all experiments,\" but the footnote to Table I reports that the stairs sequence used s=0.5 m instead of the default s=1.5 m, and Table VII marks sequences on which \"all the available associated patches\" were used for pose estimation rather than the default β_ng=β_g=30. These are parameter changes, not mere implementation details. Please either report results for the stairs and asterisked sequences under the default settings, or qualify the statement of parameter consistency. Without this, the comparison across sequences and against baselines is difficult to assess.","section":"Section VI-A3 and Table I footnote"},{"comment":"All metric values appear to be from single runs, with no error bars, no repeated trials, and no statistical significance tests. Map accuracy metrics also depend on the ICP alignment of the reconstructed map to the ground-truth map and on the mesh-sampling procedure, neither of which is described in enough detail to assess variance. Given that the paper claims state-of-the-art mapping quality, please report multiple runs or per-sequence variance, and specify the exact alignment and uniform-sampling protocol used for the quantitative map evaluations.","section":"Tables I, II, VI, VII"},{"comment":"The local BA experiments compare pose-graph-only and with-BA settings on the same runs, and Table VIII shows that improvements are often at the millimeter level (e.g., 0.072 m to 0.067 m for math_e). The paper highlights the stairs improvement (0.509 m to 0.372 m), but for most sequences the difference is within the noise of a single trajectory estimate. Please provide repeated runs or a statistical test to support the claim that local BA consistently improves trajectory accuracy; otherwise, the claim should be softened to report only the qualitative map-consistency improvement.","section":"Section IV-B and Table VIII"}],"minor_comments":[{"comment":"There is a typo: \"Alougth\" should be \"Although\".","section":"Section IV-B2"},{"comment":"The abstract claims 10 Hz CPU real-time performance, while the full-version runtime in Fig. 17(a) is 6.74 Hz and the light version in Fig. 17(b) is 14.3 Hz. Please state clearly in the runtime section which configuration corresponds to the 10 Hz claim and whether the light version is used for the main experimental results.","section":"Section VI-H and Fig. 17"},{"comment":"The footnote for HBA on the stairs sequence says it \"fails to produce a consistent map ... although it has some good results.\" This is confusing as written; please clarify what is meant by \"good results\" for a failed mapping run.","section":"Table I"},{"comment":"The range-weight parameter σ is introduced as fixed at 50, but no sensitivity analysis is given. A short sentence explaining the choice and its effect on map update would improve reproducibility.","section":"Section III-D2"}],"recommendation":"major_revision","confidential_remarks":"I do not see a circularity problem: the method relies on the authors' prior CURL/CURL-MAP representation, which is published and not re-derived here, and the empirical evaluation is the appropriate way to validate a SLAM system. The main risk is that the height-field assumption is silently load-bearing for the pose and BA residuals, and the evaluation section currently does not provide the multi-surface stress test needed to bound that risk. The parameter-consistency contradiction and the lack of repeated-run statistics are fixable but should be addressed before publication."},"author_rebuttal":null,"desk_editor":{"model":"deepseek-v4-flash","letter":"Quick take: this is a real extension of the CURL line into a full SLAM system, and the mapping results are strong enough to justify a review. But the paper overclaims in two places: the trajectory accuracy statement in Section VI-F is not supported by its own table, and the single-valued height field assumption biases the pose objective in multi-surface voxels—a limitation the paper neither tests nor discusses.\n\nWhat's genuinely new: the CURL-specific local bundle adjustment with analytical Jacobians, submap-based loop closure, and the faster patch generation/data association. The analytical Jacobians are validated against numerical gradients (Fig. 9), which is more than many robotics papers do. The map compactness (0.26% of raw points) and the continuous reconstruction at variable resolutions are demonstrated convincingly. The evaluation covers two public datasets with ground truth and compares against three strong baselines (SLAMesh, PIN-SLAM, HBA). For mapping accuracy, the method is often best or second-best. That's a solid practical contribution for CPU-only, resource-constrained robotics.\n\nSoft spots, in order of severity:\n\n1. Height-field bias. Section III-D/E projects every voxel patch onto one reference plane and stores a single height per (x,y). If a 1.5 m voxel contains two surfaces along that normal—opposing wall faces, an overhang, a floor and ceiling—the spherical-harmonics fit stores a blended height, and the residuals in Eq. (6) and (13) are nonzero at the true pose. The optimizer is then attracted to a wrong pose. Normal-based plane selection and point accumulation mitigate but do not remove this. The paper should test this explicitly, e.g., on a sequence with known double-sided geometry or by reporting errors on multi-surface voxels. This is the main threat to the generality claim.\n\n2. Trajectory claim. The text says the method \"consistently ranks in the top two positions in over half of all the sequences.\" Counting Table VII, it is top-2 in exactly two sequences (garden_night and building_day), and often third or fourth behind HBA and PIN-SLAM. That sentence needs to be corrected.\n\n3. Parameter consistency. The paper says \"All mapping parameters are kept consistent across all experiments,\" then reveals that stairs used s=0.5 m and asterisked sequences used all associated patches. That's a contradiction; it should be stated as per-sequence settings.\n\n4. No error bars or significance tests. Map metric differences are large in some cases, but without variance we can't tell how stable they are. Minor given the size of the margins, but worth adding.\n\n5. Code isn't available yet, so the paper isn't reproducible as submitted.\n\nBottom line: this deserves a serious referee. The core mapping contribution holds up for the tested sequences, the BA derivation is careful, and the height-field concern is addressable with additional experiments. I'd recommend conditional acceptance with major revision, and I'd ask for the trajectory claim to be fixed and the multi-surface case to be tested. For a reading group, it's a maybe—good for a discussion on map representations and the tension between compactness and geometric fidelity.","headline":"Solid CURL extension with strong mapping results, but the height-field bias in multi-surface voxels and an overstated trajectory claim need to be addressed before acceptance.","tokens_in":25920,"tokens_out":5489,"would_cite":true,"duration_ms":50684,"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":"The paper claims that turning LiDAR scans into spherical-harmonic height patches makes the map itself the engine of SLAM, producing globally consistent 3D maps about 0.26 percent of raw point-cloud size and running in real time on a CPU.","keywords":["CURL representation","LiDAR SLAM","spherical harmonics","continuous 3D reconstruction","compact map representation","loop closure","bundle adjustment","CPU real-time"],"falsifier":"Take a LiDAR sequence that deliberately passes an overhang or an alcove whose front and back surfaces fall inside the same 1.5 m voxel, run CURL-SLAM with the default parameters, and compare the reconstructed surface in that voxel against a survey-grade ground-truth mesh; if the central claim is wrong, the two surfaces will collapse into one and the completeness and Chamfer metrics on that region will degrade sharply, while the pose residuals in Eqs. (6) and (13) show a systematic bias.","tokens_in":24819,"feed_emoji":"🗺️","tokens_out":17210,"duration_ms":168776,"temperature":0.7,"pith_summary":"This paper tries to establish that a map representation—not the point cloud and not the pose graph—can be the primary engine of LiDAR SLAM. The proposal, CURL-SLAM, encodes each voxel-sized patch of the environment as a small set of spherical-harmonic coefficients describing surface height, then estimates the sensor pose by minimizing the difference between measured heights and heights reconstructed from those coefficients. The same coefficient-based patches are the map, the cost function, and the state optimized in a local bundle adjustment that runs after loop closure, so trajectory correction and map correction happen together. Consequently, the paper argues, LiDAR SLAM can build globally consistent maps that occupy about 0.26 percent of the raw point-cloud storage, reconstruct the same map at any requested density, and run at sensor rate on a CPU without a GPU. The reported experiments on two public benchmark datasets put its map accuracy at or above point-cloud, mesh, and neural-implicit baselines.","feed_headline":"Spherical-harmonic patches shrink LiDAR maps to 0.26 percent","feed_subtitle":"One implicit map drives odometry, loop closure, and multi-resolution reconstruction on a CPU.","key_machinery":"The load-bearing object is the CURL map patch. Each fixed-size cubic voxel is projected onto a reference plane chosen from the patch's point-cloud normal, forming a masked height-augmented image; this image is encoded as a spherical-harmonics expansion $f(\\theta,\\phi)=\\sum_{l=0}^{L}\\sum_{m=-l}^{l}c_{l,m}Y_{l,m}(\\theta,\\phi)$, with a designed coordinate map from image coordinates to spherical angles to keep the encoding bijective. The patch stores the resulting $(L+1)^2$ coefficients, the keyframe pose it is tied to, a binary mask, and an axis-aligned bounding box, and patches are organized in a spatial hashing grid for fast lookup. This object carries the entire argument: it defines the residual in odometry and bundle adjustment, its coefficients are the map state updated by $c^*=c+(Y^T Y)^{-1}Y^T r$, and its basis functions supply the analytic Jacobians that make CPU-rate optimization possible.","core_discovery":"CURL-SLAM claims to be the first full LiDAR SLAM system built on the CURL representation, and its central claim is that the same implicit map can serve as the stored geometry, the measurement model for odometry, and the optimization variable in bundle adjustment. Instead of ICP or hand-crafted planar/edge features, each associated patch gives a residual $P_z(Q)-I^k(\\mu)$ between the projected height of a scan point and the height reconstructed from the patch's spherical-harmonics coefficients; pose optimization minimizes the sum of these residuals, and local bundle adjustment extends the same residual to jointly update keyframe poses and coefficients, with analytic Jacobians derived for the spherical-harmonics basis. Loop closure is handled by a submap graph plus place recognition, and after pose-graph optimization the overlapping submap patches are merged and their coefficients refined. The experimental section reports that this produces map accuracy better than or comparable to point-cloud, mesh, and neural-implicit baselines on two public benchmark datasets while using, on average, about 2.8 percent of a dense point-cloud map, 13.4 percent of a mesh map, and 51.6 percent of a neural-implicit map, with the whole pipeline running at 10 Hz on a CPU.","pith_inferences":["Inference: Because the residual is structurally the same as photometric error in direct visual odometry, the CURL map could be fused with camera intensity residuals in one joint optimization, letting a single implicit representation serve both LiDAR and vision.","Inference: The degree ablation showing diminishing returns past degree 5 suggests an adaptive-degree policy—raising the harmonic order only for patches whose residuals demand it—could reduce map size further; the paper fixes degrees and does not test this.","Inference: A multi-layer extension in which each voxel stores several height fields, one per dominant surface orientation, would extend CURL to overhangs and dense vegetation, the classes of geometry most likely to violate the single-height-per-pixel assumption.","Inference: Since the map can be queried at arbitrary density from coefficients alone, the same representation could double as a planning cost map, letting a robot plan paths directly on the implicit surface without first extracting a point cloud or mesh."],"forward_implications":["Because one stored coefficient set can be evaluated at any reconstruction width $\\omega$, a robot can keep a single ultra-compact map and query it at coarse resolution for navigation or fine resolution for inspection; the paper reports that accuracy stays roughly constant across $\\omega=10$ to $\\omega=50$.","Loop closure in CURL-SLAM corrects the map, not just the trajectory: overlapping current and historical submaps are merged and their spherical-harmonics coefficients jointly refined, which is what removes ghosting artifacts in revisited regions.","The system runs in real time on a CPU (6.7 Hz in the full configuration and 14.3 Hz in a lighter configuration on a 128-channel sensor), meaning dense, globally consistent mapping no longer requires GPU hardware.","Map size scales with patch count and harmonic degree, so storage cost follows the paper's formula $N\\times((L+1)^2\\times 8 + 12\\times 4 + 1 + \\omega^2/8)$ bytes, making large-scale maps saveable and reloadable as a small binary file.","The per-patch degree can be chosen by content—degree 2 for ground, degree 5 for non-ground—so the representation adapts its capacity to local geometric complexity without changing the SLAM pipeline."],"supporting_citations":[{"why":"Introduces the spherical-harmonics patch representation that the whole pipeline encodes, decodes, and optimizes.","marker":"[1]"},{"why":"The prior map representation and odometry system whose lack of loop closure and quasi-conformal parametrization this work explicitly extends.","marker":"[14]"},{"why":"Provides the neural-implicit LiDAR SLAM baseline with global map consistency that motivates the CPU-only design and is used for comparison.","marker":"[13]"},{"why":"Supplies the real-time mesh-based LiDAR SLAM baseline for mapping accuracy and map-size comparisons.","marker":"[7]"},{"why":"Supplies the offline hierarchical bundle adjustment baseline for trajectory accuracy and point-cloud map comparison.","marker":"[45]"},{"why":"Supplies the ground segmentation step that separates ground and non-ground scan patches before association.","marker":"[54]"},{"why":"Provides the iterative residual fitting algorithm used to compute each patch's spherical-harmonics coefficients.","marker":"[56]"},{"why":"Supplies the place-recognition signature used to find loop-closure candidates.","marker":"[61]"},{"why":"Supplies the spatial hashing grid that stores patch pointers for efficient association and update.","marker":"[62]"}],"fun_headline_variants":["One implicit map drives odometry, loop closure, and reconstruction","Spherical-harmonics patches shrink LiDAR maps to under 3%","CURL-SLAM: continuous, compact, CPU-real-time LiDAR mapping","First full LiDAR SLAM on spherical-harmonics encoding","LiDAR SLAM with 97% smaller maps, still 10 Hz on CPU"],"cache_read_input_tokens":3200,"weakest_assumption_plain":"The load-bearing assumption is that each voxel-sized patch of the world can be written as a single height above one reference plane; surfaces that are multi-valued in that projection—overhangs, dense vegetation, two opposing walls in the same voxel—are flattened, and the height residuals that drive both odometry and mapping become biased.","fun_headline_variants_meta":{"raw":{"variants":["One implicit map drives odometry, loop closure, and reconstruction","Spherical-harmonics patches shrink LiDAR maps to under 3%","CURL-SLAM: continuous, compact, CPU-real-time LiDAR mapping","First full LiDAR SLAM on spherical-harmonics encoding","LiDAR SLAM with 97% smaller maps, still 10 Hz on CPU"]},"model":"deepseek-v4-flash","effort":"low","cost_usd":0.000668,"raw_usage":{"total_tokens":3090,"prompt_tokens":1029,"completion_tokens":2061,"prompt_tokens_details":{"cached_tokens":384},"prompt_cache_hit_tokens":384,"prompt_cache_miss_tokens":645,"completion_tokens_details":{"reasoning_tokens":1965}},"tokens_in":645,"tokens_out":2061,"duration_ms":18502,"temperature":1.0,"reasoning_tokens":1965,"cache_read_input_tokens":384,"cache_creation_input_tokens":0},"cache_creation_input_tokens":0},"created_at":"2026-08-06T22:35:28.672197+00:00","model_set":{"reader":"deepseek-v4-flash"},"falsifier":"Take a LiDAR sequence that deliberately passes an overhang or an alcove whose front and back surfaces fall inside the same 1.5 m voxel, run CURL-SLAM with the default parameters, and compare the reconstructed surface in that voxel against a survey-grade ground-truth mesh; if the central claim is wrong, the two surfaces will collapse into one and the completeness and Chamfer metrics on that region will degrade sharply, while the pose residuals in Eqs. (6) and (13) show a systematic bias.","supporting_citations":[{"cited_title":"CURL: Continuous, ultra- compact representation for LiDAR,","cited_arxiv_id":null,"evidence_quote":"Introduces the spherical-harmonics patch representation that the whole pipeline encodes, decodes, and optimizes."},{"cited_title":"CURL- MAP: Continuous mapping and positioning with CURL representation,","cited_arxiv_id":null,"evidence_quote":"The prior map representation and odometry system whose lack of loop closure and quasi-conformal parametrization this work explicitly extends."},{"cited_title":"PIN-SLAM: LiDAR SLAM using a point-based implicit neural representation for achieving global map consistency,","cited_arxiv_id":null,"evidence_quote":"Provides the neural-implicit LiDAR SLAM baseline with global map consistency that motivates the CPU-only design and is used for comparison."},{"cited_title":"SLAMesh: Real-time LiDAR simultaneous localization and meshing,","cited_arxiv_id":null,"evidence_quote":"Supplies the real-time mesh-based LiDAR SLAM baseline for mapping accuracy and map-size comparisons."},{"cited_title":"Large-scale LiDAR consistent mapping using hierarchical LiDAR bundle adjustment,","cited_arxiv_id":null,"evidence_quote":"Supplies the offline hierarchical bundle adjustment baseline for trajectory accuracy and point-cloud map comparison."},{"cited_title":"Patchwork++: Fast and robust ground segmentation solving partial under-segmentation using 3D point cloud,","cited_arxiv_id":null,"evidence_quote":"Supplies the ground segmentation step that separates ground and non-ground scan patches before association."},{"cited_title":"Large-scale modeling of parametric surfaces using spherical harmonics,","cited_arxiv_id":null,"evidence_quote":"Provides the iterative residual fitting algorithm used to compute each patch's spherical-harmonics coefficients."},{"cited_title":"Scan context: Egocentric spatial descriptor for place recognition within 3D point cloud map,","cited_arxiv_id":null,"evidence_quote":"Supplies the place-recognition signature used to find loop-closure candidates."},{"cited_title":"Optimized spatial hashing for collision detection of deformable objects","cited_arxiv_id":null,"evidence_quote":"Supplies the spatial hashing grid that stores patch pointers for efficient association and update."}],"review_version":1}