correct overlapping checkpoint evaluation
GeoIntel release gates / Compile, test, contracts and builds (push) Canceled after 0s
GeoIntel release gates / Python and npm vulnerability policy (push) Canceled after 0s
GeoIntel release gates / GIS image, SBOM and container scan (push) Canceled after 0s

This commit is contained in:
Jens
2026-08-09 20:41:54 +02:00
parent 2de438b9cc
commit 48084799c9
11 changed files with 539 additions and 10 deletions
+9 -4
View File
@@ -59,7 +59,8 @@ def dataset_overlap_evidence(dataset_yaml: Path) -> dict[str, Any]:
return {
"status": "unavailable",
"summary_path": str(summary_path),
"validation_rows_independent": None,
"validation_tiles_non_overlapping": None,
"statistical_independence_established": False,
}
payload = json.loads(summary_path.read_text(encoding="utf-8"))
tile_size = payload.get("tile_size")
@@ -69,7 +70,8 @@ def dataset_overlap_evidence(dataset_yaml: Path) -> dict[str, Any]:
"status": "invalid",
"summary_path": str(summary_path),
"summary_sha256": sha256_file(summary_path),
"validation_rows_independent": None,
"validation_tiles_non_overlapping": None,
"statistical_independence_established": False,
}
overlap_pixels = max(tile_size - stride, 0)
return {
@@ -79,12 +81,15 @@ def dataset_overlap_evidence(dataset_yaml: Path) -> dict[str, Any]:
"tile_size": tile_size,
"stride": stride,
"overlap_pixels": overlap_pixels,
"validation_rows_independent": overlap_pixels == 0,
"validation_tiles_non_overlapping": overlap_pixels == 0,
"statistical_independence_established": False,
"interpretation": (
"Tile metrics can repeat the same source object and are valid for "
"candidate ranking only, not independent object-level uncertainty."
if overlap_pixels
else "Tile rows do not overlap according to the dataset summary."
else "Tiles do not overlap, but spatial/statistical independence is "
"not established because adjacent tiles share AOI context and edge "
"objects can remain split."
),
}