Find Yourself in Event Photos with Face Recognition

Türkçe okuBy Ali Mert Güleç7 min read

To find yourself in event photos with face recognition, one selfie is enough: a numeric "signature" of your face is computed from the selfie, compared with the signatures of every face in every event photo, and the photos above a similarity threshold are shown to you. This post explains how that works in Photonza with our own measurements: how many faces a 1,000-photo test found, how long a search takes, where the system gets it wrong, and a bug we fixed. Numbers, not marketing lines.

Step by step: from selfie to photo

  1. Face detection. A detector finds the faces in a photo (the open-source YuNet model), with position and five landmarks (two eyes, nose, mouth corners).
  2. Alignment. Each face is rotated and scaled into a 112×112 pixel square so the eyes and mouth sit in standard positions.
  3. Signature. A 128-number signature is computed from the aligned face (the open-source SFace model). A signature isn't a photo; it can't be used to redraw the face.
  4. Comparison. Similarity between your selfie signature and each face signature (cosine similarity) is a number between −1 and 1. Two photos of the same person score high; two different people score low.

One important detail on the selfie side: your selfie photo is never uploaded. The signature is computed in your phone's browser on the "Find Me" screen, and only those 128 numbers reach the server. We measured the similarity between the phone-computed and the server-computed signature of the same face: 0.9987. Both sides produce the same result.

What similarity scores look like in practice

From our test set of public-domain event photos and a co-founder's own photos:

CaseSimilarity
Same person, selfie ↔ event photo0.38 – 0.74
Same person, photo ↔ photoaround 0.50
Different people, ordinary photosat most 0.24
Different people, 30–60-person crowd shotsoccasionally 0.30 – 0.31

We tuned the thresholds not only on the test set but on a real wedding's photos. At a wedding on 26 September 2026, 48 guests used Find Me across 220 shots with 1,603 faces. We checked the results face by face:

  • The "sure" threshold is 0.48. Large, clear faces above it are shown directly as "your photo". Above 0.55 a match is sure without quality checks.
  • The "possible" threshold is 0.42. In crowded wedding shots the 0.33–0.40 band could include other people, so we removed that band from results.
  • Whose face is it? A face goes to the guest whose selfie it resembles most. If the bride took her own selfie, her photos don't leak into the results of another guest who looks a bit like her.

After this tuning we checked every result of 10 randomly chosen guests: for all 10, every photo showed the right person, including the lowest-scoring ones. After the photos were uploaded we ran the search for all 48 guests who used Find Me: 47 got their own photos (median 10 photos per person). All the wedding's numbers: real wedding data.

That's why results are shown in two groups, "sure" and "maybe". Face recognition is statistical; a system that claims to be flawless is misleading you.

Scale test: 1,000 photos, 34,577 faces

We built a test much harder than a real wedding: 1,000 crowded photos with about 35 people in each.

MeasurementResult
Upload (1,000 photos)about 5 minutes
Faces found34,577
Scanning speed (5 servers)41 photos per minute
"Find Me" search (500 results)0.9 seconds
Face signatures stored714 (2.1%)

The last row matters; we come back to it below. A wedding usually has far fewer faces per photo, so real events scan faster than this test.

The bug we fixed: a face that fills the frame

In one test, a close-up selfie taken with a phone had no face detected at all. We measured why: the face covered 72% of the photo's width. The detector scanned the photo resized to 1,920 pixels; at that size the face was about 1,040 pixels wide, outside the largest face size the detector recognises.

Size the photo was scanned atFaces found
1,920 px0
1,280 px0
960 px1 (confidence 0.70)
640 px1 (confidence 0.86)

The fix was to scan every photo a second time at a small size (640 px) and merge the results. In the same change we started downscaling large faces without skipping pixels before alignment; on our test set that raised the same person's score from 0.46 to 0.50. After the fix, all six of six photos of the same person were found (0.56 – 0.74) with no false matches.

Bugs like this only show up when you measure with real photos instead of leaving a system at "it mostly works".

Privacy: what is stored and what is discarded?

A face signature is biometric data. Under Türkiye's Personal Data Protection Law (KVKK), as under the EU's GDPR, it is a special category of personal data that generally requires explicit consent. The real question is: what happens to guests who appear in photos but never use "Find Me"?

In Photonza:

  • Guests who don't consent: the signature of their face is computed only in memory, on the fly; if it doesn't resemble any consenting guest, it is discarded without being stored. Only the face position and a small face crop stay with the photo (to compare again if someone consents later); these aren't linked to any name and are deleted with the event.
  • Guests who consent: their selfie signature and the signatures of faces resembling them are stored.
  • Retention: 30 days after the event ends, photos, face crops and signatures are deleted automatically.

That's why the 2.1% in the scale test matters: only 714 of 34,577 face signatures were stored. The other 97.9% were never written to disk.

A guest who consents after photos were uploaded still finds their photos: the event is rescanned for them in the background and they get a notification when the results are ready.

Frequently asked questions

Do I need an app to find my photos with face recognition? Not with Photonza. Scan the event QR code and take a selfie in the browser; the signature is computed in the phone's browser.

Can face recognition confuse me with someone else? It can, especially with very small, blurry or side-on faces. That's why low-similarity results are shown separately as "maybe", and small or low-quality faces never count as "sure", even with high similarity.

Do glasses, beards or make-up affect the result? In our test, a close-up of the same person wearing glasses and a photo without glasses scored 0.50, above the "sure" threshold. Very different looks (costumes, heavy make-up) can lower the score; adding more than one selfie helps.

Can I delete my face data? Yes. "Delete my face data" on the "Find Me" screen removes your selfie signature and your matches; everything is also deleted when the event is deleted.

How it's used by event type: our wedding, marathon and corporate event pages.

Try Photonza for your wedding

Guests join instantly via QR code. Photos are collected automatically in one place.

Get Started