From 717a099f525748b07902e2315b732c35a3a5b9a7 Mon Sep 17 00:00:00 2001 From: Jens Date: Wed, 29 Jul 2026 22:09:19 +0200 Subject: [PATCH] Add v44 Flemish corpus expansion --- docs/CODEX_EXECUTION_LOG.md | 6 ++++++ docs/TODO.md | 1 + ...vision_belgium_building_training_portfolio.py | 16 ++++++++++++++++ 3 files changed, 23 insertions(+) diff --git a/docs/CODEX_EXECUTION_LOG.md b/docs/CODEX_EXECUTION_LOG.md index 52fa8459..c331a616 100644 --- a/docs/CODEX_EXECUTION_LOG.md +++ b/docs/CODEX_EXECUTION_LOG.md @@ -11950,6 +11950,12 @@ Verified: narrowly from `0.525` to `0.496`. Added a `0.03` precision/recall sampling guard-band so a just-passing region retains stabilizing evidence while the hard-failing region remains the primary target (`21 passed`). +- Iterations 5 and 6 confirmed that the guard-band retains Wallonia above its + gates, but Flanders remains structurally below precision, recall and F1 + gates. Stopped iteration 7 before its first result row and freed the GPU + rather than repeating the same evidence. Added 12 independent v44 Flemish + acquisition targets across coastal, industrial, ribbon, dunes, port and + farmland-hard-negative contexts for the next immutable corpus wave. Open: diff --git a/docs/TODO.md b/docs/TODO.md index 91a45aa4..5b19b089 100644 --- a/docs/TODO.md +++ b/docs/TODO.md @@ -1019,6 +1019,7 @@ This file now starts with the current implementation status. Older preparation/b - [x] Pass structural corpus and 56,474-label tile-quality audits with zero invalid or missing labels and zero spatial leakage failures. - [x] Render and inspect a 56-tile contact sheet covering all 14 new AOIs before retraining. - [ ] Run the v43 calibration-first, failure-driven CUDA loop against the frozen regional release gates. +- [ ] Acquire and integrate the v44 Flemish-only corpus wave after six loop assessments isolated coastal, industrial and ribbon-domain under-generalisation. - [x] Rotate region-capped repeat windows deterministically per loop round so persistent failures cannot reuse an identical training list indefinitely. - [x] Keep near-gate regional precision/recall stabilization inside a 0.03 sampling guard-band to prevent cross-region seesaw regressions. - [ ] Open protected test and pure-background evidence only after every calibration gate passes. diff --git a/scripts/provision_belgium_building_training_portfolio.py b/scripts/provision_belgium_building_training_portfolio.py index 852eb84f..7f8fa365 100644 --- a/scripts/provision_belgium_building_training_portfolio.py +++ b/scripts/provision_belgium_building_training_portfolio.py @@ -102,6 +102,22 @@ AOIS = ( Aoi("veurne-ribbon-train-v42", "flanders", "ribbon-development", "train", 2.666, 51.073), Aoi("zwin-dunes-train-v42-bg", "flanders", "dunes-negative", "train", 3.360, 51.350, "background_candidate"), Aoi("nieuwpoort-port-train-v42-bg", "flanders", "port-hard-negative", "train", 2.735, 51.146, "background_candidate"), + # v44 corpus correction after six closed-loop assessments isolated the + # remaining blocker to Genk/Lokeren/Ostend-like Flemish roof domains. + # These centers are independent from the protected calibration footprints + # and expand real evidence rather than repeating the same capped tiles. + Aoi("middelkerke-coastal-train-v44", "flanders", "coastal-urban", "train", 2.820, 51.185), + Aoi("heist-coastal-train-v44", "flanders", "coastal-urban", "train", 3.245, 51.338), + Aoi("westende-coastal-train-v44", "flanders", "coastal-urban", "train", 2.768, 51.170), + Aoi("dessel-industry-train-v44", "flanders", "industrial", "train", 5.112, 51.238), + Aoi("olen-industry-train-v44", "flanders", "industrial", "train", 4.858, 51.143), + Aoi("evergem-industry-train-v44", "flanders", "industrial", "train", 3.710, 51.113), + Aoi("waasmunster-ribbon-train-v44", "flanders", "ribbon-development", "train", 4.085, 51.110), + Aoi("wingene-ribbon-train-v44", "flanders", "ribbon-development", "train", 3.274, 51.058), + Aoi("kasterlee-ribbon-train-v44", "flanders", "ribbon-development", "train", 4.966, 51.241), + Aoi("de-panne-dunes-train-v44-bg", "flanders", "dunes-negative", "train", 2.575, 51.112, "background_candidate"), + Aoi("zeebrugge-dock-train-v44-bg", "flanders", "port-hard-negative", "train", 3.190, 51.345, "background_candidate"), + Aoi("diksmuide-field-train-v44-bg", "flanders", "farmland-hard-negative", "train", 2.830, 51.020, "background_candidate"), Aoi("bruges-val", "flanders", "historic-urban", "val", 3.224, 51.209), Aoi("turnhout-val", "flanders", "suburban", "val", 4.944, 51.322), Aoi("hasselt-cal", "flanders", "suburban", "calibration", 5.340, 50.930),