Inspiration

AI makes it easier than ever to generate beauty campaigns, experiment with different looks, and create dozens of variations from a single reference photo. But there is an important question behind this convenience: how much of the original person survives AI generation?

When a brand chooses a model, it chooses a recognizable face and identity. AI-generated transformations can subtly change facial characteristics, even when the result looks visually appealing.

We built FacePrint to address this gap: an independent quality assurance layer that helps brands understand, measure, and review visual changes before using AI-generated images in their campaigns.

What it does

FacePrint analyzes AI-generated image variations against an original reference photo to help brands evaluate visual similarity and identify potential identity drift.

Its main capabilities include:

  • Identity Similarity: Uses ArcFace facial embeddings to calculate cosine similarity between the reference and a generated image, with calibrated SAFE, REVIEW, and DRIFT thresholds.
  • Facial Attribute Analysis: Examines eight groups of facial characteristics using facial landmarks, geometry, and appearance measurements.
  • YouCam Integration: Uses YouCam API transformations, including aging and smile effects, to evaluate how generated variations compare with the original.
  • Identity Lock: Explores how much a transformation can be applied while keeping the measured similarity within a selected threshold.
  • Campaign Quality Assurance: Compares multiple variants and applies configurable campaign policies to distinguish identity similarity from campaign-specific requirements.
  • Reporting: Generates downloadable reports to help teams review findings and document their decisions.

FacePrint is designed as a review and decision-support tool, not as a guarantee of identity or a replacement for human judgment.

How we built it

We built FacePrint as a modular Python application with a Streamlit interface, combining facial identity analysis, YouCam API integrations, campaign evaluation, and reporting.

The core identity engine uses InsightFace's buffalo_l model and ArcFace embeddings to calculate cosine similarity between a reference face and an AI-generated variant. We calibrated identity thresholds using the Labeled Faces in the Wild (LFW) dataset, with 200 identities, 2,923 genuine pairs, and 5,000 impostor pairs.

FacePrint integrates several YouCam API capabilities, including Face Analyzer (Face Attributes), AI Makeup Transfer, AI Aging, and AI Smile. These integrations let us examine facial attributes and evaluate supported transformations against the original reference image. Hair Style (v2) is also present in our integration workflow, but it is not a primary focus of the demo.

To complement the identity score, we implemented an eight-group facial attribute analysis based on facial geometry and appearance measurements. Our Identity Lock workflow evaluates transformation levels to identify the strongest tested result that remains within a selected similarity threshold.

We also developed configurable campaign policies, CSV exports, PDF reports, and automated tests, bringing the analysis into a single quality assurance workflow.

Challenges we ran into

1. Distinguishing visual similarity from identity preservation

A single score cannot explain every change in a face. We needed a way to combine identity similarity with a more detailed breakdown of facial characteristics, while keeping the two measurements conceptually separate.

2. Choosing meaningful thresholds

A similarity score has little practical value without a way to interpret it. We calibrated thresholds using genuine and impostor pairs from LFW, while recognizing that calibration on this dataset does not automatically establish performance on every AI-generated image.

3. Finding the right transformation boundary

A transformation may look good but reduce similarity to the reference. Identity Lock required us to evaluate multiple levels of a transformation and distinguish the full effect from the strongest tested level that remains within the selected threshold.

4. Integrating different API workflows

Connecting image generation and face-attribute analysis required handling API requests, task processing, responses, and comparisons within one consistent workflow.

5. Making the results understandable

We wanted FacePrint to explain more than whether an image passed a threshold. Separate attribute breakdowns, campaign policies, and reports help make the results more useful to people reviewing the images.

Accomplishments that we're proud of

  • Building a working application that combines facial similarity scoring, attribute analysis, campaign evaluation, and reporting.
  • Integrating YouCam API functionality into a dedicated quality assurance workflow.
  • Implementing an Identity Lock approach that explores transformation levels instead of evaluating only the final image.
  • Calibrating identity thresholds on a dataset containing both genuine and impostor face pairs.
  • Separating identity similarity from campaign-policy compliance, allowing an image to pass one check while requiring attention under another.
  • Creating a modular architecture with automated tests, analysis tools, and downloadable reports.

Most importantly, we turned a broad concern about AI-generated beauty imagery into a workflow that can be measured, inspected, and improved.

What we learned

We learned that generating a convincing image and evaluating its relationship to an original reference are two different problems.

We also learned that a single similarity score cannot explain every visual change. Combining identity embeddings with facial measurements provides more context, although heuristic attribute scores have limitations of their own.

Calibration matters: thresholds should be based on data rather than chosen arbitrarily, and results from one dataset should not be treated as universal guarantees.

Finally, we learned that useful AI tools need more than a model. They need clear explanations, transparent limitations, reproducible evaluations, and reports that help people make informed decisions.

What's next for FacePrint

Our next steps are to:

  • Expand validation: Evaluate FacePrint on a larger and more diverse set of real and AI-generated facial images.
  • Measure human agreement: Conduct a blinded human-rating study and compare human judgments with FacePrint similarity scores.
  • Improve attribute analysis: Refine the measurement and validation of subtle facial changes.
  • Expand transformation coverage: Evaluate additional YouCam effects and supported generation workflows as they are tested and integrated.
  • Improve campaign workflows: Make it easier to compare larger sets of variants, configure brand-specific policies, and review flagged results.
  • Strengthen reporting: Provide clearer evidence, calibration context, and limitations alongside each result.

Our long-term goal is to help brands use AI-generated beauty imagery more confidently by making visual changes easier to understand, review, and document.

Built With

  • api
  • arcface
  • computervision
  • insightface
  • learning
  • machine
  • opencv
  • python
  • streamlit
  • youcam
Share this project:

Updates

Submission history