ai3111/smartgrid-lidar
0
SmartGrid-LiDAR — Adaptive Variable-Resolution 2.5D Mapping
Smart India Hackathon 2026 · Problem Statement 26053 · DRDO · Team Time2Act
A LiDAR map that spends resolution the way your eye does: 5 cm cells beside the vehicle, 50 cm at 100 m. 392× less memory than a uniform 5 cm grid, with every point still accounted for.
Three pages
- Overview (
index.html) — the problem, the pipeline, and the measured numbers, over a hero drawn from real KITTI frames. - Explore (
explore.html) — four drives from two sensors. Play the sequence, recolour by category / height / resolution ring, and click any cell to read its height, size, point count and class. - Grid Lab (
lab.html) — a real scan re-binned in your browser as you move the ring radii and cell sizes. Cell count, memory, foveation and per-ring occupancy update with every change.
The four datasets
Identical code on all four. Foveation measures 26.2× on every one — the grid does not change with the sensor — while ring-0 occupancy falls from 19.9% on 64 beams to about 8.5% on 32, which is the beam spacing made visible.
Honest numbers
- 392× is two effects: 26× from the variable cell size (the contribution) and 15× from storing only occupied cells (any sparse grid gets this).
- 94.9% point accuracy, 70.0% mIoU, scored against SemanticKITTI labels over 50 scans. mIoU is the harder number and the honest headline.
- The near ring is ~21% occupied because beams are discrete: those cells are unknown, not free.
- The recognition model was trained on 64-beam KITTI, so its labels are noisier on the 32-beam drives. The grid itself is unaffected.
Everything here is pre-computed and static; the browser-side grid (assets/grid.js) is a port of src/grid.py, and a test proves under Node that it produces the same cells.
Source: https://github.com/aryan-labs/sih26
