正在載入留言。
正在確認登入狀態。
在瀏覽器上執行的 LiDAR 工具,用於 SLAM 地圖校正、點雲分析以及可編輯的 Lanelet2 向量地圖草擬。使用 Rust + WebAssembly 本地執行。
AI 翻譯
Browser-based LiDAR tools for SLAM map correction, point-cloud analysis, and editable Lanelet2 vector-map drafting. Runs locally with Rust + WebAssembly.
取自儲存庫 README
正在載入完整 README。 以下為已儲存的摘錄。
Fix your SLAM map, clean it, measure it. In the browser.
CloudAnalyzer is a point cloud viewer and analyzer that runs in your browser: open a ROS bag or a drive's poses
and scans, close its loops, take out the cars that drove past, and compare the result with last month's map or
the ground truth. Everything runs locally in Rust compiled to WebAssembly, on every core: nothing to install, and
your data never leaves your machine.
A loop closed by hand on a real drive (NCLT, University of Michigan): the same place seen twice a kilometre apart,
lined up with ICP, and the drive pulled together檢視完整 README ↗Fix maps. Draft roads. See what changed.
A point cloud viewer and analyzer that runs in your browser. Repair SLAM maps, create vector-map drafts and compare surveys. Processing stays on your machine, powered by Rust and WebAssembly.
Open ROS bags, MCAP, scans, trajectories or g2o graphs. Build odometry, close loops and level maps with IMU gravity; inspect and edit with Undo.
Draft roads from points and trajectories, review equipment proposals, and edit shared boundaries with Undo. Export Autoware Lanelet2 with vectormap-rs. Lane counts, object types and legal control require review.
Road drafting & fitting · Equipment discovery · Source quality · Evidence inspection
Remove passing traffic, join surveys and inspect changes with M3C2. Score maps against a reference with accuracy, completeness, F1 and Chamfer. Review two-pass changes with alignment diagnostics, fixed-camera before/after views and saved human judgments that can be reopened and resumed against matching comparison contents. Inspect overlapping Lanelet2 lanes after confirming a shared coordinate frame, and save selected lanes as human follow-up tasks with source snapshots.
ICP, filtering, normals, meshing, DEM / DSM, scalar fields and trajectory ATE / RPE are also available. Explore the tools →
Open: PLY, PCD, LAS / LAZ, E57, XYZ, KITTI, OBJ / STL, 3DGS and COPC URLs. Save: PLY, LAS / LAZ, E57, CSV and session links. For large surveys, see display LOD vs full-density processing and resumable COPC tiles. Physical ten-billion-point processing remains unbenchmarked.
| Demo | Explore |
|---|---|
| Real drive | ROS 2 bag, odometry, gravity and loops · 10 MB |
| Two seasons | Join and compare April / June drives · 19 MB |
| Loop closure | Find loops and inspect the correction |
| SLAM drive | Replay, close a loop, remove cars |
| Two scans | Measure cloud-to-cloud distance |
| Landslide | Inspect M3C2 changes |
| Stockpile | Measure cut / fill volume |
| Town | Extract ground |
Or drop your files on the app.
KITTI starts from KISS-ICP poses; correction adds loops and IMU gravity. The NCLT result uses loop closure.
| Trajectory ATE (RMSE) | Before | Corrected |
|---|---|---|
| KITTI 00 · 3.7 km | 22.3 m | 5.8 m |
| KITTI 07 | 2.14 m | 1.16 m |
| KITTI 09 | 16.4 m | 2.3 m |
| NCLT 2012-04-29 · 3.2 km, SE(3)-aligned | 4.83 m | 1.64 m |
KITTI map F1 at 0.3 m: 0.45 → 0.70 (07), 0.16 → 0.42 (09). Benchmark tutorial · Leaderboard
The same Rust core runs natively through ca, with JSON metrics, HTML reports
and CI pass/fail gates. Read bags, MCAP and rosbag2 SQLite without installing ROS.
pip install "cloudanalyzer[fast]"
ca posegraph-fix drive.mcap --out fixed/ --remove-dynamic --keyframe-spacing 1
ca web-view fixed/
ca posegraph-compare june/ december/ --here 1219 --there 850 --out changes/
AI agents over MCP can inspect inputs and run the same tools. Agent-driven mapping builds point-cloud maps and HD-road drafts from recordings and an explicit lane layout, with recorded choices and resumable repairs.
CLI reference · Commands · CI & quality gates · Mapping tools
cd web
npm install
npm run wasm
npm run dev
web/ — TypeScript / three.js app · rust/ — Rust core / WASM / Python bindings ·
cloudanalyzer/ — Python CLI
Tests: cargo test in rust/, npx playwright test in web/.
Media: npm run media after npm run build in web/.
MIT. Demo data and derived images retain their upstream terms: image attribution · sample attribution. Real-drive imagery includes NCLT (University of Michigan, ODbL) and PandaSet (Scale AI and Hesai, CC BY 4.0). KITTI data is not redistributed.