⭐ = active in scanner. Editing = currently selected for managing classes/videos below.
Classes
Pick a model above first.
Tip: always create a class named nothing — empty background frames teach the model what is NOT the object. Without it, false positives skyrocket.
Upload video → auto-extract frames to (pick a class)
Seeks the video at chosen fps, captures each frame to a 224×224 JPEG, uploads each to R2 under the active class. All in browser — no server, no ffmpeg.
Train + activate
Browser loads MobileNet v2, extracts embeddings from every frame in R2 for this model, pushes the result to KV under model:<id>, then marks it active so the scanner picks it up on next refresh.