Project 3

Felix Juefei Xu

juefeix@andrew.cmu.edu

Oct.13 2010

 

Face Morphing:

In this project, the morphing between 2 faces is studied. A morph is simultaneous warp of the image shape and a cross-dissolve of the image colors.

In order to create an animation of face morphing, I choose my face to be the starting face and another student's face to be the ending face.

Here is the starting face (my face):

and the ending face (giacomo):

The red dots in both of the face images are the corresponding pairs formed in accordance with the following:

Once the corresponding points are acquired, I can compute the Delaunay triangulation. Those corresponding points are located within the face region, thus the background and the face would not be consistent when warping is carried out. So, in addition to the 43 pairs of corresponding points, I add 4 more pairs, pointing at the four corners of the image. So there are totally 47 pairs of corresponding points.

Here is the example of the Delaunay triangulation on my face image:

Within each triangle region, an affine transformation matrix can be found based on the 2 images. Thus the morph for the whole face can be found. By adjusting 2 parameters: warp_frac and dissolve_frac from 0 to 1, I can create 59 frames of intermediate morphing images. Combined with the starting image and ending image, I can create an animation using 61 frames.

Here is the morphing animation from my face to giacomo: (This is carried out without 4 extra pairs of corresponding points)

And here is the inverse morphing animation from giacomo to mine: (This is carried out without 4 extra pairs of corresponding points)

If using only 43 pairs of corresponding points, most of the background is not included in the triangulation, thus the computing is faster, but usually artifacts can occur in the boundary of triangulation.

Here is an example using 43+4=47 pairs of corresponding points, the boundary is smoother than previous 2 examples.

My face morphing into garrick's:

Here is the original size of morphing animation.

Here is the folder containing 61 frames of the morphing animation.

Computing the Mean Face:

This is really a fun thing to do. Computing mean face would involve: (1) computing the average shape, (2) warping all faces into that shape, and (3) averaging the colors together.

Here is the mean face of the entire class:

Here is my face warped into the average geometry:

Bells and Whistles:

(1) Play with mean face:

In our class, there are only 2 female student. So the mean face is really masculine. Here is the example of masculitizing:

original image from natasha:

morphed to mean face:

Please disregard the long hair, the central face region is pretty much masculitized.

(2) Play with PCA:

Using the faces of the entire class for training, here is the Top 5 PCA basis (eigenfaces):

When averaging those 5 eigenfaces, I get this:

If I morph my face to the eigen mean, interesting things can happen:

END