Source-linked AI summary

BatSLAM 2.0: Sequence-Verified Sonar Place Recognition in a Robust Pose Graph

Jan Steckel

arXiv:2609.40085v1cs.ROcs.AIcs.LGcs.SYeess.SY

TL;DR

Sonar place recognition is vulnerable to ambiguity because distinct places can produce similar echo trains and false loop closures can collapse a map. BatSLAM 2.0 combines direction-aware views, sequence-verified loop closures, and a robust pose graph. It produced consistent maps without incorrect loop closures in simulated runs and a real recording, with reduced trajectory error on the real recording.

  • Problem

    Similar sonar echo trains can cause false place matches that pull geometrically distinct places together and collapse the map.

    Source: §I · p. 1
  • Method

    BatSLAM 2.0 combines a direction cue in the acoustic descriptor, a verifier for long, strong, unambiguous, geometrically plausible place hypotheses, and removable groups of weak loop-closure constraints in a robust pose graph.

    Source: §X · p. 14
  • Results

    Across 12 calibrated or approximately calibrated simulated runs and a real recording, maps remained consistent without incorrect loop closures; real-recording trajectory error fell from 3.62 (0.46) m to 0.67 (0.13) m.

    Source: §X · p. 14
  • Takeaways & Limitations

    Reliable place recognition depends on sensor signal-to-noise ratio and spectral-shape information, while a stored template’s capture region is limited to about ±0.15 m laterally and ±25° in heading.

    Source: §X · p. 14

    Early in a drive, relative pose uncertainty may span several meters, leaving strong aliased matches geometrically plausible; delaying large corrections can also delay loop closures that constrain the map.

    Source: §IX · pp. 12–13

Abstract

from arXiv · show

Echolocating bats can navigate dark and cluttered spaces using echolocation. Over a decade ago, BatSLAM showed that a robot with a biomimetic binaural sonar can build a topological map of the environment, by recognizing places from the received acoustic signals. Sonar place recognition, however, is ambiguous by nature: corridors produce nearly identical echo trains, and wrong loop closure can collapse the topological map. In this paper, we introduce BatSLAM 2.0, a novel sonar-only SLAM system built from three elements: an updated acoustic front-end, a sequence verifier that tracks and verifies loop closure candidates and a pose graph implemented on a high performance factor graph framework. The system was thoroughly evaluated both in simulated as well as real world recordings. In both cases, the BatSLAM2.0 algorithm shows the capability of robust topological map creation, countering map collapse, and robust scaling of map size.

I. INTRODUCTION

Sonar views can make distinct places appear alike, so false loop closures may collapse a map. BatSLAM 2.0 combines a direction-aware acoustic front-end, sequence verification, and a robust pose-graph back-end.

I. INTRODUCTION

  • Similar sonar echo trains can produce false place matches that pull geometrically distinct places together, while transfer of vision- and lidar-based defenses to ambiguous sonar remained untested.Bats’ ability to navigate using sound motivates acoustic sensing for environments where optical sensors struggle.Source: §I · p. 1

II. OVERVIEW OF BATSLAM 2.0

  • BatSLAM 2.0 replaces BatSLAM’s pose cells and experience map with an iSAM2-solved factor-graph pose graph and templates anchored to optimized pose nodes.The overview traces echoes through local-view comparison, sequence verification, grouped weak loop-closure links, and possible later withdrawal of those links.Source: §I · p. 1, §II · p. 2

I. INTRODUCTION

  • The system adds a spectral-shape direction cue, verifies competing place hypotheses before committing, and groups committed links so they can be withdrawn or re-admitted.Required evidence rises with the geometric correction implied by a commitment, which is checked against relative pose uncertainty.Source: §I · pp. 1–2

A. Echo formation

  • The acoustic model represents each received echo as the emitted call filtered by emitter, reflector, and binaural-ear responses, with reflector direction and round-trip delay shaping the signal.In the frequency domain, emitter and ear directivity combine as an Echolocation-Related Transfer Function.Source: A. Echo formation · p. 2

B. Cochlear processing

Cochlear processing compresses each echo and extracts channel envelopes, then aggregates their power across range bins for the local-view representation.

B. Cochlear processing

  • The cochlear model applies a matched filter to compress each echo, then bandpass filters and envelope-detects it across 64 logarithmically spaced channels from 30 kHz to 90 kHz.The envelope computation uses a short inverse Fourier transform over each channel’s frequency bins, reducing front-end compute time by about 15-fold with 0.999 correlation to full-rate computation.Source: B. Cochlear processing · pp. 2–3
  • The processed binaural echoes feed a local view whose energy and spectral-shape images are compared with stored templates.The figure’s flow shows the five best matches passing to the sequence verifier.Source: Figure 1 · p. 3
  • Channel power is averaged across 6 cm range bins from 0.25 m to 10 m and pairs of neighboring channels, then time-varying gain scales amplitude by range to compensate for spreading.The representation uses 162 range bins and 32 channels.Source: B. Cochlear processing · p. 3

C. The local view

The local view combines an echo-amplitude image with a spectral-shape image that retains direction cues. Examples show that these features distinguish some otherwise similar places.

C. The local view

  • The energy image represents echo amplitude relative to the view’s strongest bin and compresses it with a cube root, without a noise-level floor parameter.Each ear’s images have 32 × 162 pixels.Source: C. The local view · p. 3
  • The spectral-shape image subtracts each range bin’s mean level across channels to retain an echo’s direction cue independently of its overall level.Both images are clipped to [−1, 1], zeroed where bins lie more than 40 dB below the maximum, and smoothed across range with a one-bin Gaussian kernel.Source: C. The local view · p. 3
  • The two binaural energy images are concatenated and normalized, as are the spectral-shape images, giving both image types equal weight in the combined local view.The resulting descriptor has 20,736 elements.Source: C. The local view · p. 3
  • 0.89 similarity links two corridor views recorded 641 m of travel apart, while the best other earlier junction view scores 0.69, with range and spectral-shape differences distinguishing them.The junction views initially look alike because both are dominated by wall echoes.Source: C. The local view · pp. 3–4

IV. RECOGNIZING PLACES

BatSLAM 2.0 recognizes revisited places by comparing local-view templates and uses a sequence verifier to turn ambiguous individual matches into verified loop closures.

A. Pose-anchored local view templates

  • Each stored local view is anchored to its pose-graph node, so its estimated position and heading follow graph optimization; templates are added after 0.45 m of travel or 20° of turning.Heading is included because sonar views depend strongly on direction.Source: A. Pose-anchored local view templates · p. 4
  • The system compares query and template views by correlation while shifting the query by up to ±18 cm in range, keeping the best match and using its shift as a forward offset in loop-closure links.This comparison accommodates revisits that do not pass through exactly the same position.Source: A. Pose-anchored local view templates · p. 4
  • The five most similar templates become candidates only if similarity is at least 0.60, they were recorded more than 6 m earlier, and their headings differ by less than 69°; there is no position gate.The candidate search is global over templates.Source: A. Pose-anchored local view templates · p. 4

B. The sequence verifier

The verifier tracks competing hypotheses that the current path was driven before, and commits only when evidence and geometric checks support a revisit. After commitment, it extends the verified link chain along the revisit.

B. The sequence verifier

  • Each hypothesis links query nodes to templates whose anchors should lie the same distance ahead and share the same heading.The chain represents a stretch of path being driven again.Source: B. The sequence verifier · p. 4
  • A new pair extends a hypothesis only when query motion agrees with anchor motion, with position tolerance growing with travel distance.Candidates are tested against both the first and last pair, while competing hypotheses can remain alive.Source: B. The sequence verifier · p. 4
  • A hypothesis accumulates log-likelihood evidence from candidate similarities and penalties for missed pulses, using a clipped logistic-fit evidence curve.The curve gives zero evidence at similarity 0.70 and is clipped to [−4, 4] so one match cannot dominate.Source: B. The sequence verifier · p. 4
  • A hypothesis dies after four consecutive missed pulses.Source: B. The sequence verifier · p. 5
  • A hypothesis commits only after enough pairs, templates, evidence, and advantage over a rival; corrections above 1.5 m require stricter evidence.The risk-scaled rule requires at least 16 pairs and evidence Λ ≥40, with mean evidence of at least one per pair.Source: B. The sequence verifier · pp. 5–6
  • The plausibility gate rejects a hypothesis when its predicted pose correction exceeds what pose drift and single-link match error can explain.For a correct hypothesis, the Mahalanobis distance follows a χ2 distribution with three degrees of freedom; the rejection threshold is its 99.9th percentile, 16.27.Source: B. The sequence verifier · pp. 5–6
  • After commitment, the verifier releases the chain as a link group and adds each consistent new pair immediately, correcting drift along the revisit.While locked on, it lays no new templates; lock-on ends when the hypothesis dies or its link group is withdrawn.Source: B. The sequence verifier · p. 6

V. THE ROBUST POSE GRAPH

BatSLAM 2.0 fuses odometry and verified place recognitions in a pose graph. Unlike the original pose cells and experience map, this graph estimates pose uncertainty and allows loop closures to be added or removed.

V. THE ROBUST POSE GRAPH

  • Odometry and verified recognitions are fused into one consistent topological map.Source: §V · p. 6
  • The pose graph replaces the original BatSLAM pose cells and experience map, providing pose estimates and their uncertainty.Source: §V · p. 7
  • Loop closures can be added or removed at any time in the pose graph.Source: §V · p. 7

A. Formulation

Each pulse adds an odometry-connected pose node, and each committed recognition adds a loop-closure link. The graph is optimized while link groups remain auditable and removable to guard against erroneous recognitions.

A. Formulation

  • Each pulse adds a pose node connected to its predecessor by odometry, while a committed recognition links the query node to its matched template anchor.Source: A. Formulation · p. 7
  • The map minimizes odometry and loop-link errors with a Huber loss; iSAM2 solves the objective incrementally using Dogleg steps.Links are deliberately weak, so one link can only nudge the map; the authors report Gauss–Newton diverged when many conflicting links were present.Source: A. Formulation · p. 7

B. Link management

  • Committed hypotheses enter the graph as tentative link groups that can be withdrawn and later re-admitted.Source: B. Link management · p. 7
  • A link group is permanently withdrawn if its hypothesis ends with fewer than 16 links.Source: B. Link management · p. 7
  • After each link injection, the tentative group with the worst median Mahalanobis residual is removed if that residual exceeds 12.Source: B. Link management · p. 7
  • Every 400 nodes, a batch GNC audit evaluates all link groups jointly and keeps or re-admits groups whose mean link weight is at least 0.5.A group surviving two audits is confirmed.Source: B. Link management · p. 7
  • The GNC audit changed no final map in the reported experiments, but remains as a safeguard for more strongly aliased environments.Source: B. Link management · p. 7

VI. SIMULATION SETUP

The simulation evaluates BatSLAM 2.0 across sonar environments and odometry conditions, prioritizing correct loop closures and avoiding map collapse over metric accuracy. The setup includes repeated routes, controlled odometry error, and measures of map and trajectory performance.

VI. SIMULATION SETUP

  • The simulation setup covers the sensor, worlds, odometry model, and metrics used to evaluate BatSLAM 2.0.Source: §VI · p. 7

A. Sonar simulator

  • The sonar simulator models a 3 ms, 90-to-30 kHz FM call, reflector and sensor directivity, propagation losses, reflectivity, and Gaussian noise.The design sensor uses −116 dB noise and a 10 m listening window unless otherwise stated.Source: A. Sonar simulator · p. 7

B. Worlds and drives

  • Three simulated worlds include an indoor floor with 40 pillars and repeated corridor-object patterns, a city with the same topology, and a small development hall.Source: B. Worlds and drives · p. 7
  • The indoor-floor and city drives each cover about 1 km, revisit every corridor in both directions, and use unseen routes for testing.Pulses are emitted every 0.15 m, yielding about 6400 per drive.Source: B. Worlds and drives · p. 7

C. Odometry model

  • Over 1 km, simulated dead reckoning drifts 4–36 m depending on bias and random seed, with odometry error modeled through random noise and systematic bias.Source: C. Odometry model · p. 7

D. Metrics

  • Evaluation prioritizes wrong loop closures and map collapse over metric accuracy, while also reporting link precision, revisit coverage, and aligned and unaligned ATE.The pose graph uses GTSAM 4.2 with Python bindings; the simulator uses custom MATLAB code.Source: D. Metrics · p. 8

VII. RESULTS

Across simulated runs, BatSLAM 2.0 produced consistent maps with calibrated or roughly calibrated odometry, while single-view recognition depended strongly on sensor noise and descriptor design. Local templates had narrow capture regions, and degraded sensors or uncalibrated odometry reduced performance.

C. The complete system

  • Across 12 design-sensor runs with calibrated or roughly calibrated odometry, zero of 457 committed hypotheses was wrong; link precision was 0.994–1.000, true-revisit coverage 0.79–0.84, and ATE 0.47–1.91 m versus 4.2–19.0 m for odometry alone.The final maps and wrong links are illustrated for three simulated worlds.Source: Figure 5 · p. 9, C. The complete system · p. 10

A. Sonar Template Recognition

  • Adding spectral shape raised indoor-floor top-1 accuracy from 0.88 to 0.91; adding ILD further raised AUC but lowered top-1 accuracy on both worlds.Using original BatSLAM matching reduced the new descriptor's top-1 accuracy to about 0.80 on both worlds.Source: A. Sonar Template Recognition · p. 9
  • At −116 dB, the final descriptor at 10 m reached top-1 accuracy 0.89; at −96 dB, no descriptor reached 0.5 and longer range did not help.The authors use the 10 m, −116 dB sensor as the design sensor.Source: A. Sonar Template Recognition · p. 9, Figure 6 · p. 10

B. Capture region of a view template

C. The complete system

  • Degraded sensors still produced consistent maps (0.25–0.81 m aligned ATE), although the −20 dB sensor retained one wrong 17-link hypothesis; uncalibrated odometry degraded metric accuracy.The surviving error distorted the map locally without collapsing it.Source: C. The complete system · p. 10

D. Ablations

Ablations show that sequence verification and link management protect against false loop closures, while robustness tests identify a boundary for odometry calibration. The implementation meets the average 10 Hz pulse budget but not near the end of a 1 km drive, and the real-world evaluation uses virtual ears from an embedded 3D sonar.

D. Ablations

  • Without sequence verification, the system made 215 wrong commits, 10 of which survived link management; removing link management as well caused complete map collapse.The original front-end and hand-set evidence constants made no wrong commits but linked fewer revisits (0.73 and 0.68).Source: D. Ablations · p. 10
  • On four hard cases, omitting risk-scaled commit produced 12 wrong commits among 346; with all safeguards, six wrong hypotheses were committed and link management withdrew all but the early −20 dB alias.Without any plausibility gate, three wrong hypotheses survived.Source: D. Ablations · p. 11

E. Robustness

  • With odometry bias up to b = 0.5 (0.3 °m−1), every run produced a consistent map; beyond that, metric accuracy degraded before topology, and at b = 2 the map collapsed without any wrong hypothesis remaining.The authors conclude that odometry must be calibrated to within about 0.3 °m−1.Source: E. Robustness · p. 11

F. Computational cost

  • At 69 ms per pulse on average, including 41 ms for the pose graph, the unoptimized Python implementation met the 100 ms budget on average but not toward the end of a 1 km drive.Template comparison and pose-graph computation grow with map size.Source: F. Computational cost · p. 11

VIII. REAL-WORLD EXPERIMENT

  • For the real recording, the authors formed two virtual ears from an embedded 3D sonar's microphone array and used lidar-based ground truth.Apart from the virtual ears and frequency band, the system was identical to the simulated-study system.Source: §VIII · p. 11

A. Recording, virtual ears and ground truth

The real-world evaluation used beamformed virtual ears and lidar-derived ground truth; the results show safe loop closure alongside limits from odometry bias, directionality, and simulation-heavy testing.

A. Recording, virtual ears and ground truth

  • The 22 m by 8 m hall recording followed an 89 m figure-eight; lidar supplied ground truth, while odometry was derived from it with distance and rotation scale errors.The drive used 1,186 calls at about 7.1 Hz; the 32-microphone array was split into two beamformed virtual ears.Source: A. Recording, virtual ears and ground… · pp. 11–12

B. Results

  • The real sensor’s correct candidates had median similarity 0.65, so the simulated evidence curve was refitted using lidar-labeled candidates from half the drive.The refitted curve’s zero crossings were 0.576 and 0.546; this curve is sensor-specific rather than deployment-specific.Source: B. Results · p. 12
  • 0.67 (0.13) m trajectory error with the refitted evidence curve, versus 3.62 (0.46) m for dead reckoning; none of 30 runs committed a wrong hypothesis or collapsed.The system linked 0.64 (0.10) of revisits; opposite-direction revisits were not linked.Source: B. Results · p. 12
  • At 15% rotation error, the plausibility gate rejected correct closures; doubling assumed heading noise restored 0.66 (0.07) m trajectory error without a wrong closure.Processing averaged 4.8 ms for the front-end and 6.2 ms for the rest of the system per pulse, against 141 ms between calls.Source: B. Results · p. 12

IX. DISCUSSION AND LIMITATIONS

  • For sonar, temporal consistency alone cannot rule out aliases; delaying large corrections reduces risk but also delays loop closures that constrain the map.Requiring 24 supporting pairs removed the remaining −20 dB sensor alias but left route 7 rotated, exposing a trade-off between topological and metric mapping.Source: §IX · pp. 12–13
  • Most experiments were simulated, and the simulator omits weak higher-order reflections; the real recording transferred successfully after recalibrating the evidence curve.The current pose graph assumes predominantly random odometry errors; systematic heading bias preserves inferred topology while metric accuracy progressively deteriorates.Source: §IX · p. 13
  • The sequence verifier rejected nearly all incorrect hypotheses before they reached the back-end, so GNC auditing did not alter reported maps.The audit may matter more in highly repetitive settings, while evidence constants currently require calibration for each sensor configuration.Source: §IX · pp. 13–14

X. CONCLUSION

BatSLAM 2.0 combines sonar-view recognition with sequence verification and a robust pose graph to address perceptual aliasing. It produced consistent maps without incorrect loop closures in simulated and real recordings, with real-world trajectory error reduced from 3.62 (0.46) m to 0.67 (0.13) m.

X. CONCLUSION

  • BatSLAM 2.0 combines a direction-cued biomimetic acoustic front-end, sequence-verified place recognition, and a robust pose-graph back-end.Accepted loop closures remain removable groups of weak constraints, and required evidence rises with the magnitude of the implied correction.Source: §X · p. 14
  • Across 12 simulated runs with calibrated or approximately calibrated odometry, maps were consistent without incorrect loop closures and reached 0.18–0.53 m after alignment.With systematic odometry bias above 0.3 °m−1, metric accuracy degraded primarily, without map collapses.Source: §X · p. 14
  • On a real acoustic recording, BatSLAM 2.0 produced a consistent map without incorrect loop closures and reduced trajectory error from 3.62 (0.46) m to 0.67 (0.13) m.The template capture region was approximately ±0.15 m laterally and ±25° in heading.Source: §X · p. 14
  • Future work targets longer real-world trajectories with physical odometry and a bat-like binaural sensing head, systematic odometry-error estimation, and recognition across opposite traversal directions.Source: §X · p. 14

APPENDIX A PARAMETERS

The appendix documents shared experiment parameters, reproducibility resources, result-table scopes, and additional trajectory results. It also records a corrected HRTF orientation used for all reported results.

APPENDIX A PARAMETERS

  • All BatSLAM 2.0 parameters were the default code values and were used unchanged across worlds, routes, and sensors.Source: Appendix A · p. 16

APPENDIX B REPRODUCIBILITY

  • Code, scene and experiment definitions, datasets, and scripts for generating results and figures are available in the project repository.The HRTF orientation was corrected by transposing directivity arrays, and all reported results used the corrected HRTF.Source: Appendix B · p. 16

APPENDIX C RESULT TABLES

  • Tables II–V cover descriptor design, per-condition system results, ablations, and real-world results, respectively.Table III reports trajectory error, wrong committed hypotheses, and revisit coverage; Table V averages results over ten odometry seeds.Source: Appendix C · p. 16, Table II · p. 17, Table III · p. 17

APPENDIX D ADDITIONAL RESULTS

  • The additional-results appendix shows main, robustness, and ablation trajectories, with maps identifying ground truth, dead reckoning, BatSLAM 2.0 estimates, and any remaining wrong links.Tables VI–IX provide per-run and ablation results, including trajectory error and wrong-hypothesis counts.Source: Appendix D · p. 18, Table VI · p. 18, Table VII · p. 18
Loading 2609.40085v1…