Project 4: Face Morphing

Raymond Chu - cs194-26-aak

Computing Mid-Way Face

I computed the mid-way face between Donald Trump and Kevin (from The Office). To do this, I picked roughly 50 corresponding points on each face, triangluated the points, performed an affine transformation and output half of each transformed image.

Morph Sequence

I did the same as above, but instead of `0.5` as the warp and dissolve fraction, I used the corresponding frame (factor of `1/45`) and wrote each image as a frame of a video.

Mean Face of Population

Average Danish Face

I got the average Danish Face by using the points given in the data-set to morph and display each face together for an "average" of all the face in the data set

Warped Faces

I warped my face to the average Danish face and vice verse. This uses the same morphing process as above, and I played around with the warp/dissolve fractions to find a better output. The warps are not as smooth as I would have liked because I did not put enough corresponding points on each image.

My Face

Average Danish Face

My Face Warped To Average Face

Average Face Warped To My Face


I made a caricature of my face by warping my face with the average danish face and extrapolating the vectors between corresponding points. I play with the amount of extrapolation as seen in the images below.

Caricature 1

Caricature 2

Bells and Whistles

My Face + Average NBA Player's Face

I warped and merged my face with the average NBA player's face (found on the internet). Again, I played around with the warp/dissolve fractions to achieve a nicer result.

Original Face

Average NBA Player's Face