
After studying this material, you should be able to:
Imagine you have a few photos of a person's face. You want to:
Think of it like a sculptor who must:
Three tensions exist simultaneously:
| Challenge | Description |
|---|---|
| Fidelity | Does it look like the actual person? |
| Quality | Does it look realistic when animated? |
| Speed | Can it run in real time? |
๐ก Key Insight: These three goals normally conflict. Making it more realistic usually makes it slower.
Before going further, you need to understand the building block: 3D Gaussian Splatting.
Instead of using triangles (like traditional 3D models), this method represents a face as a collection of small 3D blobs called Gaussians.
Each Gaussian has:
Traditional mesh: Many triangles โ complex, slow to animate
Neural rendering: Neural network pixels โ high quality, very slow
3D Gaussians: Blobs in space โ fast to render, flexible
๐ก Analogy: Think of painting with stamps instead of brushes. Each stamp (Gaussian) covers a region. Together, thousands of stamps create a detailed image โ and you can move them quickly.
A canonical representation means a neutral, standard pose โ like a face looking straight ahead with a neutral expression. All animation is then described as changes from this neutral state.
GHARP's central innovation is splitting the problem into two stages with very different computational budgets.
Input: A few photos of the subject
Output: A fixed canonical Gaussian representation
When: Before real-time use (can take seconds or minutes)
What happens here:
๐ก Analogy: Like a sculptor spending hours making a detailed clay model. The hard work is done upfront.
Input: Canonical Gaussians + driving expression signal
Output: Animated frame
When: Every frame, in real time
What happens here:
๐ก Analogy: The sculptor's assistant makes tiny adjustments to the clay model for each expression โ much faster than rebuilding from scratch.
Identity Stage: Expensive โ (done once, offline)
Animation Stage: Cheap โ (done every frame, real time)
The key insight is that expression changes are small and local โ a smile moves your mouth, not your entire head. So the animation network only needs to predict small residuals, not a full new face.
A prior is knowledge learned from data before seeing your specific subject.
๐ก Analogy: A doctor who has seen thousands of X-rays develops intuition about what normal anatomy looks like. This prior knowledge helps them analyze your X-ray faster and more accurately.
GHARP uses a pretrained model trained on large-scale data of many human faces. This model has learned:
Think of it as a map of all possible faces:
Latent Space:
[Neutral face] ----small step----> [Smiling face]
[Young face] ----small step----> [Older face]
Nearby points in this space = similar-looking faces. Moving in specific directions = changing specific attributes (expression, identity, etc.).
The reconstruction prior provides two key benefits:
| Benefit | Explanation |
|---|---|
| Consistent spatial layout | All faces are organized the same way, making multi-view fusion easier |
| Expression changes are spatially contained | In this learned space, a smile only affects the mouth region โ making residual prediction efficient |
๐ก Key Insight: By working in the prior's latent space rather than raw pixel space, expression changes become small, predictable, and local โ perfect for a lightweight residual network.
This is the most subtle and important problem the paper solves.
A problem is ill-posed when the input doesn't contain enough information to determine a unique correct output.
๐ก Analogy: If I ask "what is x + y?" and tell you only that x + y = 10, there are infinite answers. The problem is ill-posed.
Expression codes (the driving signal) describe only the face:
So when the animation network tries to generate a frame, it knows what the face should look like but has no information about where the body/clothing should be.
The network has seen many training examples where:
Since it can't determine which is correct, it averages them:
Position A appearance + Position B appearance
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ = Blurry, flickering result
2
This produces:
Instead of letting the network guess where the body is, explicitly align the body in the target image to match the reference images.
Step 1: Look at reference images โ note body/clothing position
Step 2: Look at target frame โ detect body position
Step 3: Warp/align the target body to match reference position
Step 4: Now the animation network sees consistent body position
Step 5: No more ambiguity โ no more blur or flicker
By removing the ambiguity from the training signal, the network no longer needs to average over conflicting examples. Each training example now has a clear, consistent answer.
๐ก Analogy: Imagine teaching someone to draw a portrait, but in half your examples the subject is sitting and in half they're standing. The student gets confused and draws a blurry in-between. If you first standardize all examples to sitting, the student learns clearly.
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ OFFLINE (Identity Stage) โ
โ โ
โ Input photos โ Reconstruction Prior โ Canonical โ
โ Gaussians โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ
โผ (stored, reused every frame)
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ ONLINE (Animation Stage) โ
โ โ
โ Expression signal โโโ โ
โ โโโโบ Lightweight Network โ
โ Canonical Gaussians โ โ โ
โ โผ โ
โ Body Alignment โโโโโโโบ Residual Gaussians โ
โ โ โ
โ โผ โ
โ Rendered Frame โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
GHARP achieves state-of-the-art quality on Ava-256 while being dramatically faster:
| Metric | Improvement |
|---|---|
| Speed | Up to 13ร faster on A100 GPU |
| Efficiency | 8ร fewer Gaussians needed |
| Quality | State-of-the-art on Ava-256 benchmark |
More Gaussians = Higher detail BUT slower rendering
Fewer Gaussians = Faster rendering BUT potentially lower detail
GHARP achieves high detail WITH fewer Gaussians
because the reconstruction prior organizes them efficiently
The lightweight animation network is specifically optimized for mobile โ meaning this technology could run on a smartphone for live video calls, AR filters, or gaming avatars.
| Concept | One-Line Summary |
|---|---|
| 3D Gaussians | Face represented as 3D blobs, fast to render |
| Canonical representation | Neutral-pose face used as a reference |
| Two-stage design | Expensive identity work done offline; cheap animation done online |
| Reconstruction prior | Pretrained knowledge of face structure guides efficient animation |
| Latent space | Mathematical map where similar faces are close together |
| Residual prediction | Only predict changes from neutral, not the full face |
| Ill-posed problem | Expression codes don't describe body โ ambiguity โ blur |
| Body alignment | Explicitly align body position to remove ambiguity |