# LeanMapper V4 — Stack technique

## Pipeline
```
Vidéo téléphone
   │
   ▼
LingBot-Map (Robbyant/Ant Group, Apache 2.0)
  reconstruction 3D streaming, RGB seul, mode windowed
   │
   ▼
Nuage de points (.ply)
   │
   ▼
Open3D — mesh (reconstruction de Poisson) + nettoyage sol/murs
   │
   ▼
Segmentation entités (DBSCAN) → entities.json
   │
   ▼
Export .leanplan.json → LeanHub / studio 3D (three.js)
```

## Matériel
- **M** : Minisforum AI X1 Pro, RTX 5070 Ti 16 Go (Blackwell, sm_120)
- torch nightly (build cu130) — requis pour la reconnaissance correcte
  de l'architecture Blackwell, les builds stables cu128 dégradent
  fortement la consommation VRAM sur cette carte

## Paramètres validés par tests réels
| Paramètre | Valeur | Raison |
|---|---|---|
| `--use_sdpa` | activé | FlashInfer sature la VRAM sur cette carte |
| `--mode` | windowed | streaming sature dès ~33 frames à 518×518 |
| `--image_size` | 518 | figé par le checkpoint (embeddings de position) |
| `--offload_to_cpu` | activé | décharge les prédictions par frame vers la RAM |

## Bibliothèques
- **LingBot-Map** — reconstruction 3D (github.com/Robbyant/lingbot-map)
- **Open3D** — géométrie, mesh, nuages de points
- **trimesh** — export multi-formats
- **three.js** — viewer 3D web (studio, journal de tests)
- **FastAPI** — API du studio / LeanHub

## Statut
En cours de correction : l'export du nuage de points (étape reconstruction
→ .ply) ne suit pas encore la méthode officielle du dépôt LingBot-Map
pour le mode windowed — voir le journal de tests pour le détail.
