Splits the rep4 write-up's key findings into their own linkable pages: - best-model.md: calibration curves first (discriminative power, independent of any threshold), then F1 on the benchmark — LVFace-B Glint360K wins both. - gallery-scope.md: whole vs. cast-restricted gallery, isolated from model and expansion choice — restriction wins on every axis, but isn't a shipped runtime feature yet. - pose-expansion.md: the training-set expand_gallery effect, and the held-out replication attempt that found it doesn't reproduce (5 films, 2 models, after catching and fixing a replay-timeout truncation bug and a bbox first-match-instead-of-best-match bug in the comparison harness itself). An honest null result, with the methodology errors documented since they're exactly the kind that manufacture a false "it works!" finding. - lvface-deep-dive.md: the winning model's held-out generalization gap, its two failure modes (frozen-bbox ghost tracks), and a verified case (cross- checked against Jellyfin's independent cast metadata) where LVFace correctly identified an actor that X-Ray's ground truth failed to credit. Adds a "report-highlights" artifact-registry package (scripts/artifacts/ push_artifacts.sh, pull_artifacts.sh) for hand-picked illustrative frames that aren't reproducible via the automated best/worst montage selection, and wires pulling it into scripts/docs/build_site.sh.
46 lines
1.9 KiB
Bash
Executable File
46 lines
1.9 KiB
Bash
Executable File
#!/bin/bash
|
|
# build_site.sh — pull the images the docs reference from the artifact registry
|
|
# (if not already present locally), stage them under docs/assets/, then build
|
|
# the MkDocs site. The built site/ output is what gets pushed to gitea-pages —
|
|
# never the source images themselves (see scripts/artifacts/push_artifacts.sh).
|
|
set -euo pipefail
|
|
|
|
REPO_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)"
|
|
cd "$REPO_ROOT"
|
|
|
|
ASSETS_DIR="docs/assets/images"
|
|
mkdir -p "$ASSETS_DIR"
|
|
|
|
# Frames referenced by docs/rep4-optimizer-results.md. Pull the film's montage
|
|
# frames from the registry if this machine doesn't already have them locally.
|
|
FRAMES_ROOT="experiments/results/holdout/frames"
|
|
if [ ! -d "$FRAMES_ROOT/many_saints" ] || [ ! -d "$FRAMES_ROOT/downton_abbey" ]; then
|
|
echo "==> pulling montage frames (not found locally)..."
|
|
scripts/artifacts/pull_artifacts.sh montage-frames Many_Saints_of_Newark || true
|
|
scripts/artifacts/pull_artifacts.sh montage-frames Downton_Abbey__A_New_Era || true
|
|
fi
|
|
|
|
echo "==> staging referenced frames into ${ASSETS_DIR}"
|
|
cp -v "${FRAMES_ROOT}/many_saints/fpi/fpi_t03543.jpg" \
|
|
"${ASSETS_DIR}/many_saints_ghost_fpi.jpg"
|
|
cp -v "${FRAMES_ROOT}/downton_abbey/fpi/fpi_t07242.jpg" \
|
|
"${ASSETS_DIR}/downton_abbey_ghost_fpi.jpg"
|
|
|
|
if [ ! -f "${ASSETS_DIR}/germar_beats_xray.jpg" ]; then
|
|
echo "==> pulling report-highlights/germar_beats_xray.jpg..."
|
|
scripts/artifacts/pull_artifacts.sh report-highlights germar_beats_xray.jpg
|
|
fi
|
|
|
|
if [ ! -d experiments/galleries ] || [ -z "$(ls -A experiments/galleries 2>/dev/null)" ]; then
|
|
echo "==> pulling galleries (not found locally)..."
|
|
scripts/artifacts/pull_artifacts.sh galleries
|
|
fi
|
|
|
|
echo "==> generating calibration curve chart"
|
|
python3 scripts/docs/calibration_chart.py --out "${ASSETS_DIR}/calibration_curves.png"
|
|
|
|
echo "==> building site"
|
|
mkdocs build
|
|
|
|
echo "==> done. site/ is ready to deploy to the gitea-pages branch."
|