Spaces:
Running
Running
Update backend/evaluation.py
#18
by
munals - opened
- backend/evaluation.py +8 -3
backend/evaluation.py
CHANGED
|
@@ -1346,11 +1346,14 @@ def evaluate_architecture_fixes(perc_results: dict, risk_results: dict) -> dict:
|
|
| 1346 |
risk = RiskAgent()
|
| 1347 |
|
| 1348 |
# Build frames with known densities
|
|
|
|
| 1349 |
def _make_fr(density: float, count: int, spacing: float = 200.0) -> FrameResult:
|
|
|
|
| 1350 |
return FrameResult(
|
| 1351 |
-
frame_id=0, timestamp=time.time(),
|
| 1352 |
person_count=count, density_score=density,
|
| 1353 |
avg_spacing=spacing, boxes=[], annotated=None, guardrail_flags=[],
|
|
|
|
| 1354 |
)
|
| 1355 |
|
| 1356 |
density_cases = [
|
|
@@ -1361,9 +1364,11 @@ def evaluate_architecture_fixes(perc_results: dict, risk_results: dict) -> dict:
|
|
| 1361 |
|
| 1362 |
fix4_pass = 0
|
| 1363 |
for density, count, label, expected_trend in density_cases:
|
| 1364 |
-
# Fill
|
| 1365 |
risk2 = RiskAgent()
|
| 1366 |
-
|
|
|
|
|
|
|
| 1367 |
rr = risk2.process_frame(_make_fr(density, count))
|
| 1368 |
got_level = rr.risk_level
|
| 1369 |
# For density=1.0 → d_score=1.0, t_score=0.4 → raw≥0.50 → MEDIUM or HIGH
|
|
|
|
| 1346 |
risk = RiskAgent()
|
| 1347 |
|
| 1348 |
# Build frames with known densities
|
| 1349 |
+
_fr_seq = [0]
|
| 1350 |
def _make_fr(density: float, count: int, spacing: float = 200.0) -> FrameResult:
|
| 1351 |
+
_fr_seq[0] += 1
|
| 1352 |
return FrameResult(
|
| 1353 |
+
frame_id=_fr_seq[0], timestamp=time.time(),
|
| 1354 |
person_count=count, density_score=density,
|
| 1355 |
avg_spacing=spacing, boxes=[], annotated=None, guardrail_flags=[],
|
| 1356 |
+
track_ids=list(range(count)), # unique IDs 0..count-1 for K-window density
|
| 1357 |
)
|
| 1358 |
|
| 1359 |
density_cases = [
|
|
|
|
| 1364 |
|
| 1365 |
fix4_pass = 0
|
| 1366 |
for density, count, label, expected_trend in density_cases:
|
| 1367 |
+
# Fill window (K_WINDOW warmup) + stabilization (STABLE_FRAMES) to confirm level
|
| 1368 |
risk2 = RiskAgent()
|
| 1369 |
+
_fr_seq[0] = 0
|
| 1370 |
+
n_iters = risk2.K_WINDOW + risk2.STABLE_FRAMES
|
| 1371 |
+
for _ in range(n_iters):
|
| 1372 |
rr = risk2.process_frame(_make_fr(density, count))
|
| 1373 |
got_level = rr.risk_level
|
| 1374 |
# For density=1.0 → d_score=1.0, t_score=0.4 → raw≥0.50 → MEDIUM or HIGH
|