File size: 2,115 Bytes
9694f55
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
@echo off
REM ============================================================
REM  FAR-ZONE HAND-OFF 2 -- the clip-measured gates (28/08/2026)
REM  Steps 1, 2 and 3 of design doc 7_FarZone_Detection_BallID.md
REM  section 5, BRIEF 28/08 (hand-off 2).
REM
REM  Why this run happens:
REM    Unit tests can prove the two-band association and the rack
REM    geometry on synthetic input, but three acceptance numbers
REM    only exist in the footage: ball 5 wedged in the far right
REM    pocket of shot_02, the 0.5 s hole in the cue track of
REM    shot_05 against the far cushion, and which shots are break
REM    racks. This driver measures those three on the SHIPPED
REM    analyze front end and reports PASS/FAIL against the
REM    thresholds the design doc fixed. It tunes nothing.
REM
REM  Input clips: the ones the probe already cut on 28/08 with the
REM  worker's own cut_clip, so these frames are the frames the
REM  analyze job read:
REM    D:\poolcoach\out_probe_farzone_20260828\clips\shot_*.mp4
REM  Same corners as run A2b (14/08) and every regeneration since:
REM    [[527.5,869.7],[1380.1,864.0],[1232.3,278.5],[673.0,272.8]]
REM
REM  CPU environment: poolcoach-cv-env carries torch 2.12.1+cpu,
REM  so there is no CUDA to fall back to. Expect a couple of
REM  minutes for the five clips at imgsz 960.
REM
REM  Nothing is written except farzone_gates.json next to the
REM  clips. D:\Khoa luan is never opened.
REM
REM  No app and no Redis has to be running: the driver loads YOLO
REM  itself and imports scripts\cv_worker.py only for the shipped
REM  constants, clip_frame_wh and comp_homography_cls.
REM ============================================================
setlocal
set PYTHONUTF8=1
set PYTHONDONTWRITEBYTECODE=1
set POOLCOACH_CV_DEVICE=cpu
set POOLCOACH_APP_ROOT=D:\poolcoach\poolcoach-app
set POOLCOACH_GATE_CLIPS=D:\poolcoach\out_probe_farzone_20260828\clips
set POOLCOACH_GATE_OUT=D:\poolcoach\out_probe_farzone_20260828
set PY=D:\poolcoach\poolcoach-cv-env\Scripts\python.exe

"%PY%" "D:\poolcoach\launchers\check_farzone_gates.py"
echo [check-farzone-gates] exit code %ERRORLEVEL%
endlocal