Face Recognition in the Cloud

Detection answers is there a face here. Recognition answers the much harder question: whose face is it. That second question needs a comparison against a database of known identities — and that’s usually where it stops making sense to keep everything on-device, and starts making sense to lean on the cloud.


Why Recognition Moves to the Cloud

  • The reference database of known faces can grow into the thousands — too large to comfortably keep in memory on a small edge device

  • Recognition models are heavier than detection models, and benefit from real GPU inference

  • Centralizing recognition means the database of known identities can be updated in one place and instantly apply everywhere

  • Multiple devices (cameras at different doors, different sites) can share one consistent identity store


How the Pipeline Connects

  • The edge device detects a face locally (as covered in the previous post) and crops just that region — not the whole frame

  • That small crop is sent to a cloud recognition service, rather than a continuous video stream

  • The service computes a face embedding — a numeric vector that represents that face’s features

  • That embedding is compared against a database of known embeddings using a similarity search

  • A match (or «unknown») is returned to the device, typically in well under a second


What Actually Gets Sent

On the Device Sent to the Cloud
Full video stream A single cropped face image, only when one is detected
Face detection (where) Face recognition (who)
Runs continuously, every frame Runs only on demand, per detected face

Splitting the problem this way keeps bandwidth and cost down — the cloud only ever sees a cropped still image, not a live video feed — while still getting the accuracy and scalability of a proper recognition model and a centrally managed identity database. Detection stays fast and local; recognition stays accurate and centralized.