Skip to content

Commit b40a02d

Browse files
authored
Merge pull request #129 from rsasaki0109/agent/release-v1.2.0
Prepare v1.2.0 release
2 parents 04bc8c7 + 434d410 commit b40a02d

3 files changed

Lines changed: 37 additions & 2 deletions

File tree

CHANGELOG.md

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,41 @@
22

33
## Unreleased
44

5+
## 1.2.0 - 2026-07-22
6+
7+
Tightly coupled GLIL, exact point-cloud downsampling, and guarded kidnapped-pose
8+
recovery. Release boundary: PR #128 merged at `04bc8c7`; Humble and Jazzy CI passed,
9+
the Python suite reported 314 tests plus 140 subtests passed, and the pinned GLIL
10+
container passed its embedded CTest suite.
11+
12+
### Tightly Coupled GLIL
13+
14+
- Combined IMU preintegration, exact-coreset scan-to-scan GICP, and exact-coreset
15+
scan-to-prior-map GICP in one GLIM fixed-lag factor graph, following the estimator
16+
structure of Koide et al. ICRA 2024 and deferred exact downsampling of Koide et al.
17+
ICRA 2025.
18+
- Added continuous `odom -> base_link` output through map loss and one bounded
19+
`map -> odom` authority; map-factor loss, rejected candidates, and recovery never
20+
reset raw odometry or introduce a second TF parent.
21+
- Added verified map-state epochs, time-aligned 32-candidate BBS/GLIL re-ranking, and
22+
three-frame full-resolution consensus for kidnapped-pose recovery.
23+
- Recovery loss now checks both overlap fraction and the absolute map-factor inlier
24+
floor, closing the misleading 12/12-style sparse-overlap case while ignoring empty
25+
transport frames.
26+
- Published reproducible 01a/01b/02a/02b and outdoor-kidnap A/B runners, measurements,
27+
and six GLIL-only replay GIFs in `docs/koide_gif_gallery.md`.
28+
29+
### Validation Boundary
30+
31+
- Full 01a, 01b, and 02a runs passed accuracy, continuity, real-time playback, queue,
32+
and TF/reset gates. The final 02b run passed accuracy and TF gates; its CPU-contended
33+
playback result is explicitly labeled rather than claimed as clean throughput.
34+
- Outdoor kidnap A and B both ended `recovered_true`, at 0.074 m and 0.041 m final
35+
error respectively, with zero TF jumps, zero unauthorized resets, and drained final
36+
queues.
37+
- The tightly coupled GLIL path is the measured main configuration; NDT is not launched
38+
alongside it. Legacy split prior-map localization remains available for comparison.
39+
540
### Added
641

742
- `failure_category` key on `/alignment_status` distinguishing

CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
cmake_minimum_required(VERSION 3.5)
2-
project(lidar_localization_ros2 VERSION 1.0.0)
2+
project(lidar_localization_ros2 VERSION 1.2.0)
33

44
if(POLICY CMP0074)
55
cmake_policy(SET CMP0074 NEW)

package.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
<?xml-model href="http://download.ros.org/schema/package_format3.xsd" schematypens="http://www.w3.org/2001/XMLSchema"?>
33
<package format="3">
44
<name>lidar_localization_ros2</name>
5-
<version>1.1.0</version>
5+
<version>1.2.0</version>
66
<description>ROS 2 LiDAR localization with Nav2 integration, replay helpers, and benchmarking tools.</description>
77
<maintainer email="rsasaki0109@gmail.com">ryohei sasaki</maintainer>
88
<license>BSD2.0</license>

0 commit comments

Comments
 (0)