Harden SAM roof refinement geometry gates
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-07-30 04:00:24 +02:00
parent 5ac3238c27
commit 29378bba42
4 changed files with 74 additions and 6 deletions
@@ -13,9 +13,19 @@ SPEC.loader.exec_module(MODULE)
def test_plausible_refinement_is_fail_closed() -> None:
source = (10.0, 10.0, 30.0, 30.0)
assert MODULE.plausible_refinement(source, (8.0, 9.0, 31.0, 32.0), min_iou=0.15, min_area_ratio=0.25, max_area_ratio=4.0)
assert not MODULE.plausible_refinement(source, (100.0, 100.0, 120.0, 120.0), min_iou=0.15, min_area_ratio=0.25, max_area_ratio=4.0)
assert not MODULE.plausible_refinement(source, (0.0, 0.0, 100.0, 100.0), min_iou=0.15, min_area_ratio=0.25, max_area_ratio=4.0)
limits = dict(
min_iou=0.15,
min_area_ratio=0.25,
max_area_ratio=4.0,
max_center_shift_ratio=0.75,
min_dimension_ratio=0.5,
max_dimension_ratio=2.0,
)
assert MODULE.plausible_refinement(source, (8.0, 9.0, 31.0, 32.0), **limits)
assert not MODULE.plausible_refinement(source, (100.0, 100.0, 120.0, 120.0), **limits)
assert not MODULE.plausible_refinement(source, (0.0, 0.0, 100.0, 100.0), **limits)
assert not MODULE.plausible_refinement(source, (10.0, 10.0, 51.0, 20.0), **limits)
assert not MODULE.plausible_refinement(source, (24.0, 24.0, 44.0, 44.0), **limits)
def test_yolo_round_trip_shape() -> None: