# scene-actor-extraction A face-recognition pipeline that finds when each actor appears on screen in a film or TV episode — built on [KPN++](https://gitea.tourolle.paris/dtourolle/KPN) (a C++20 Kahn Process Network library) for the detect → track → match → scene pipeline, with a Jellyfin-integrated gallery and an X-Ray-validated optimizer. ## Start here - **[Rep4 model bake-off + threshold re-tune](rep4-optimizer-results.md)** — the current experiment log: model comparison, DE threshold tuning, held-out validation, and the visual failure-mode evidence (frozen-bbox ghost tracks). This is where the shipped `src/config.hpp` defaults come from. - **[Optimizer experiments (prior round)](optimizer-experiments.md)** — the earlier scene-union-metric tuning pass, superseded by the per-second metric used in rep4 but kept for the ground-truth/architecture background. - **[Service conversion (proposal)](service-conversion.md)** — design sketch for an idle-GPU Docker worker, not yet built. ## Reproducing the benchmarks Gallery `.h5` files, embedding dumps, the X-Ray corpus, montage frame images, and DE trajectories are not committed to this repository — they're pushed to the Gitea package registry and pulled on demand: ```bash scripts/artifacts/pull_artifacts.sh galleries scripts/artifacts/pull_artifacts.sh experiment-data scripts/artifacts/pull_artifacts.sh montage-frames ``` See `scripts/artifacts/push_artifacts.sh` for the upload side (requires a `GITEA_TOKEN` with package write scope).