Translate the whole project to English and fix outdated comments and help
Comments, docstrings, logs, CLI help, map UI, legends, PDF sheet, scripts, compose files and AGENTS.md are now English. Data keys stay unchanged (relief_oriente, densite_sol, visualisations/, API JSON keys, link params). Wrong comments and help defaults found along the way are corrected. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@ -54,7 +54,11 @@ the reference tile above.
|
||||
bundled in this image** (`filters.ground` / TIN missing) — would need to
|
||||
be added to use it (or via lidR / a custom implementation).
|
||||
|
||||
## B. Fast hybrid (chosen for implementation)
|
||||
## B. Fast hybrid (original plan, only partly kept)
|
||||
|
||||
> Only step 1 below is in use today. Step 2 (lowest-return floor) was
|
||||
> dropped and step 3 (`_interpolate_holes`) is no longer called by the DTM
|
||||
> builder: see "Synthesis / decision" for the current gap handling.
|
||||
|
||||
**PTD / Wack & Wimmer** principle (Wack & Wimmer 2002, *ISPRS Archives*
|
||||
XXXIV/3A:293-296: DTM from lowest return, excluding the lowest 1% per cell
|
||||
@ -66,10 +70,12 @@ to discard outliers):
|
||||
*measured* ground where the vendor failed (rock outcrops, clearings,
|
||||
forest floor).
|
||||
3. **Topographic inpainting** of the remaining gaps (terrain-aware
|
||||
interpolation already implemented in `dtm.py:_interpolate_holes`).
|
||||
interpolation, `dtm.py:_interpolate_holes`, still present as a helper
|
||||
but not called by `create_dtm_fast`).
|
||||
|
||||
Expected: **continuous** DTM (0% holes), robust in forest/relief,
|
||||
**~10-15 s/tile** instead of 326-355 s. No GPU dependency, no training.
|
||||
Expected at the time: **continuous** DTM (0% holes), robust in
|
||||
forest/relief, **~10-15 s/tile** instead of 326-355 s. No GPU dependency,
|
||||
no training.
|
||||
|
||||
## C. AI / ML models (supervised — require labels)
|
||||
|
||||
@ -115,18 +121,21 @@ deploy.
|
||||
## Synthesis / decision
|
||||
|
||||
- "Fast" hard constraint + low maintenance → **fast hybrid (B)**
|
||||
(~10-40 s/tile, zero training, zero GPU). ← **chosen approach, IMPLEMENTED**
|
||||
- Base = IGN pre-classification (fast, ~10 s). `auto` prefers it as soon
|
||||
as ≥ 20% of points are classified as ground (threshold lowered from 30%
|
||||
to 20%, since the DTM is subsequently completed — see below).
|
||||
(~10-40 s/tile, zero training, zero GPU). ← **chosen approach, base
|
||||
IMPLEMENTED** (step 1 only, see below)
|
||||
- Base = IGN pre-classification (fast: ~5 s with the direct laspy
|
||||
extraction, vs ~13.5 s through PDAL). `auto` prefers it as soon as
|
||||
≥ 20% of points are classified as ground (threshold lowered from 30%
|
||||
to 20%).
|
||||
- **This gap-filling note is superseded**: gap filling in the DTM is no
|
||||
longer a distance-based `fillnodata` pass over small holes. It is now
|
||||
a morphological closing bounded to the point envelope
|
||||
(`_fill_small_gaps` in `dtm.py`): the closing radius follows the local
|
||||
point spacing (measured over 5 m, staged at 1/1.5/2/3 m), nothing is
|
||||
extended beyond measured pixels, and islands under 1 m² are removed.
|
||||
Large holes (dense forest, steep relief where ground is
|
||||
under-classified) still remain as nodata (black in the renders).
|
||||
point spacing (1.5 × the spacing measured over 5 m, staged at
|
||||
1/1.5/2/3 m), nothing is extended beyond measured pixels, and islands
|
||||
under 1 m² are removed. Large holes (dense forest, steep relief where
|
||||
ground is under-classified) still remain as nodata (dark grey in the
|
||||
oriented relief, hatched in the PDF export).
|
||||
Deliberately no floor at the lowest return: under dense canopy that
|
||||
return is vegetation, which would print trees into the DTM.
|
||||
- Maximum quality in hard cases (steep + dense), ~1-2 min/tile + GPU +
|
||||
|
||||
Reference in New Issue
Block a user