GlassGuard: Verified Glass Plane Mapping for Robot Navigation
Organizations: Carnegie Mellon University, Pittsburgh, PA, USA
Abstract
Transparent and specular surfaces pose a serious challenge to LiDAR-based SLAM and navigation because laser returns may pass through glass, leaving collision boundaries absent from the map. Prior work attempts to reconstruct the missing surfaces, but inaccurate obstacle placement can create the opposite failure: contamination of traversable free space. Recognizing this dual requirement, we present GlassGuard, a navigation-oriented framework for reconstructing planar architectural glass from complementary visual and LiDAR evidence. We formulate success in terms of both glass coverage and free-space contamination and apply this principle throughout proposal verification and global map construction. A foundation vision model provides glass-instance masks, structural 3D cues generate metric plane hypotheses, and depth-free 2D projective geometry checks their orientations before they enter a consolidated global map. We evaluate GlassGuard in nine building-scale scenes spanning diverse glass structures, spatial scales, and lighting conditions, with more than one hour and 2.1 km of real-world robot traversal. GlassGuard achieves 85% of total glass coverage for its panoramic version. Under identical pinhole inputs, GlassGuard achieves 82% total coverage, compared with at most 61% for the evaluated baselines, while producing 5-17x fewer false voxels per frame. Qualitative examples with a navigation planner illustrate the reconstructed planes blocking paths through glass while leaving traversable routes open. The project page is available at https://glassguardproject.github.io/.
Figures & tables
| GDD | GSD-S test | |||||
| Method | IoU | Prec. | Rec. | IoU | Prec. | Rec. |
| Grounded-SAM2 [ 30 ] | 0.642 | 0.781 | 0.783 | 0.509 | 0.563 | 0.841 |
| YOLO-World [ 31 ] | 0.436 | 0.677 | 0.550 | 0.230 | 0.589 | 0.274 |
| SAM3 (original) | 0.815 | 0.901 | 0.895 | 0.713 | 0.764 | 0.915 |
| Slim-2816 (ours) | 0.748 | 0.888 | 0.826 | 0.671 | 0.714 | 0.918 |
| Method | Camera | LiDAR | Persist. map | VRAM | s/frame |
| MonoGlass3D | pinhole RGB | — | — | 2.4 GB | 0.13 |
| GlassRecon | pinhole RGB | ✓ | — | 0.8 GB | 3.6 |
| GG-pin (ours) | pinhole RGB | ✓ | ✓ | 1.7 GB | 0.74 |
| GG-360 (ours) | 360 ∘ RGB | ✓ | ✓ | 1.7 GB | 0.73 |
| Coverage Spill Method by 10 m by 8 m by 5 m Ever Air Ground per frame med. dist MonoGlass3D 11.8 18.6 34.6 61.0 1564 490 290.2 4.2 m GlassRecon 16.6 21.0 28.0 44.4 408 150 85.4 3.4 m GG-pin (ours) 32.6 54.2 68.8 82.1 164 94 16.7 3.2 m GG-360 (ours) 47.6 58.0 71.4 85.2 171 55 15.3 3.0 m | 0.2 m 0.5 m 2.0 m Ever sp/f Ever sp/f Ever sp/f 22.2 10452 43.4 1461 80.1 52 14.4 2370 30.1 366 58.9 19 52.0 562 72.5 76 90.3 6 60.1 700 79.5 83 89.5 4 |
| m | m | ||||||
| Method | 0–2 m | 2–5 m | Ret. | 0–2 m | 2–5 m | Ret. | Spill/frame |
| MonoGlass3D | 98.1 | 95.5 | — † | 84.2 | 81.5 | — † | 290.2 |
| GlassRecon | 83.1 | 73.4 | — † | 63.9 | 58.4 | — † | 85.4 |
| GG-pin (ours) | 84.4 | 89.0 | 91.7 | 70.1 | 81.0 | 86.8 | 16.7 |
| GG-360 (ours) | 89.1 | 91.5 | 93.2 | 81.3 | 83.8 | 87.8 | 15.3 |
| Config. | Ever | Cur.@0–2 m | Retention | Spill/fr. | Acc. spill |
| Full GlassGuard | 85.2 4.6 | 91.7 7.6 | 92.2 4.1 | 19.4 7.9 | 269 83 |
| – angle gate | 86.1 4.8 | 97.0 4.9 | 93.2 3.5 | 34.0 5.2 | 607 377 |
| – multi-view | 82.0 8.4 | 97.1 5.5 | 93.0 4.0 | 18.7 5.3 | 300 102 |
| – floor evidence | 82.2 8.0 | 97.1 5.9 | 96.2 0.5 | 25.8 3.5 | 280 115 |
| – plane merging | 84.4 9.5 | 96.7 4.6 | 96.8 1.8 † | 33.8 7.7 | 371 116 |
| – global mgmt. | 88.2 6.9 | 99.0 2.1 † | 99.4 0.4 † | 87.7 27.2 | 478 164 |