Face Morphs

CS194-26, Project 4

Inan Husain



Defining Correspondences and Mid-way Face

This part of the project simply involved a few steps. First I took the two images, and placed my feature points on them. I took the average of those points, and used that to create a Delaunay triangulation which I then used to find the mid-way face by mapping points in the original 2 images to this triangulation. I then find the tranformation matrices between the original feature points and to the average points by taking the product of the source and target triangles, and taking the inverse, then applying that inverse to points in the source triangle. Tranformed points from both faces are given equal weight to give a final product. Examples of Obama with Clooney and my face with Sharukh Khan below. The Obama/Clooney example looks really good, the other one is messed up a little because mismatch in headsize, glasses, and the smile.

The Morph Sequence

By far the coolest part of this project. This continues on the previous parts, but instead of interpolating solely in the middle, I do the same process above at 45 equal intervals from 0 to 1 to get 45 interpolated faces. I then animated the images using GIMP to produce the GIFS below.

The "Mean Face" of a Population

So this one involved taking the average of all the feature points for the images in the dataset, and then warping each individual face to the average shape. Some example results are below.

All of the morphed faces were then added together and averaged to produce this "mean" Danish face.

I then tried morphing my face to this average face, and morphing the average face to my face, but the result were a little interesting...Probably has to do with the head sizing being different. Still looks pretty cool.

The picture of me I used for this step

Caricatures

I created caricatures of myself by adding alpha*((my face feature points)-(mean face feature points)) where alpha is some constant I set. These also look pretty wonky. The last one is my favorite.

alpha=0.9
alpha=0.6
alpha= -0.6

Bells and Whistles

This was done in collaboration with some of the other students in the class. Below is a gif for the part I was responsible for and the video is here as well.