Raise configured YOLO max detections
This commit is contained in:
@@ -1,3 +1,32 @@
|
||||
## Sprint 148 YOLO max-detection cap hardening (2026-07-09)
|
||||
|
||||
Changed:
|
||||
- Added backend setting `YOLO_MAX_DETECTIONS` / `Settings.yolo_max_detections`.
|
||||
- `YoloDetectionAdapter` now forwards the value to Ultralytics as `max_det`.
|
||||
- Default is `1000` instead of relying on Ultralytics' upstream default of 300.
|
||||
- Added Docker/Unraid/runtime wiring:
|
||||
- `.env.example`
|
||||
- `docker-compose.yml`
|
||||
- `docker-compose.unraid.yml`
|
||||
- `deploy/unraid/geointel.env.example`
|
||||
- `deploy/unraid/run-dockerman-container.sh`
|
||||
- Updated backend/API/AI environment documentation.
|
||||
|
||||
Why:
|
||||
- Real Kempen building AOIs often contain more than 300 reference buildings.
|
||||
- The previous configured-YOLO path could saturate at 300 detections before QA/QC, capping recall independently of model quality.
|
||||
- This does not activate a model and does not fake detections; it removes an inference runtime cap so persisted QA/QC can measure candidate models honestly.
|
||||
|
||||
Tested:
|
||||
- Red step: targeted YOLO adapter tests failed because `max_det` was not passed to the model.
|
||||
- `python -m pytest backend\tests\test_sprint8b_yolo_foundation.py::test_yolo_adapter_converts_single_band_tiles_to_rgb_before_prediction backend\tests\test_sprint8b_yolo_foundation.py::test_yolo_adapter_uses_configured_max_detections -q` (`2 passed`)
|
||||
- Red step: Docker runtime config tests failed before `.env.example` and Unraid runner exposed `YOLO_MAX_DETECTIONS`.
|
||||
- `python -m pytest backend\tests\test_docker_runtime_config.py::test_env_example_uses_runtime_env_names_read_by_backend_and_frontend backend\tests\test_docker_runtime_config.py::test_unraid_deploy_passes_ai_build_arg_and_yolo_runtime_env backend\tests\test_sprint8b_yolo_foundation.py -q` (`16 passed`)
|
||||
|
||||
Open:
|
||||
- Rebuild/redeploy the Tower all-in-one image before rerunning live calibration so the container uses `YOLO_MAX_DETECTIONS=1000`.
|
||||
- After deploy, rerun at least one high-density AOI calibration to confirm detection counts are no longer capped at 300.
|
||||
|
||||
## Sprint 147 AOI512 YOLOv8s scale-match candidate gate (2026-07-09)
|
||||
|
||||
Changed:
|
||||
|
||||
Reference in New Issue
Block a user