CS194-26 Project 3: Face Morphing

Yusuf Ahmad

Part One - Morph Sequence:

In order to perform a morph sequence, we need to perform both warping and cross-dissolving. In order to warp our two images, we define key feature points as our shape vector on both images. We then take the average of both shape vectors to get our average face shape. We then obtain the Delaunay triangulation of the average face shape as well as the inverse transformation matrices from our average shape to each image. We perform the inverse transformation on the average shape to find the original pixel in the image. We then cross dissolve that pixel with the pixel of the other image in order to obtain a weighted average of the two images. We obtain an animation by performing multiple iterations of this.

(Image 1, Image 2, The Morph Sequence, The Mean Face) in order

 

Part Two - Mean Face of the Population:

In order to obtain the mean face of the Danish men data subset, we simply get the average shape of all the Danish men. From there, we perform a similar technique to our morph sequence where we inverse warp the average shape into every picture and cross dissolve the images all together.

Mean Dane Face

Dane mens' faces warping into the average face shape

Dane face warped into my face shape. My face shape warped into Dane face shape

Caricature:

In order to produce a caricature we simply subtract the average face shape from my face shape. We then use this difference to extrapolate the Danish facial features to produce our result.

My face and an extrapolated less danish version of my face