Kristopher Baker iOS roots · Product systems · AI-assisted workflows
← KiFinder

shipped · 2026.06.26 · 2 min read

Finding Kion in a crowd

The first cycle was the finder itself, end to end. You run enroll on a few reference photos of one person, which detects the largest face in each and averages their ArcFace embeddings into a profile. Then scan takes an album, a directory, or the preschool's zip files straight as they arrive, finds every face in every photo, and scores it by cosine similarity against the profile. Anything close enough lands in keep, the borderline ones in maybe, and the rest in no. It writes thumbnails and a manifest.json recording what it decided and at what score, so I can see its reasoning instead of trusting a black box.

The defaults matter more than they look. Set the threshold too high and you miss the candid shot where Kion is half-turned at the edge of the frame; too low and you are back to scrolling through everyone else's kids. So I added calibrate, which walks a small labeled set of yes and no photos and recommends the highest threshold that still catches every real match while keeping the false matches manageable. It prints the number but never applies it on its own, because the call about missing a real photo of my daughter should be mine. HEIC was non-negotiable since that is what the photos arrive as, so that went in too. By the end of the day it could take a month's albums and hand me back a folder that was mostly Kion.