CS194 proj3

James Li

Overview

"Face Morphing"

In this assignment you will produce a "morph" animation of your face into someone else's face, compute the mean of a population of faces and extrapolate from a population mean to create a caricature of yourself.

I used Rick Astley and Danny DeVito as the two faces, not myself.

Computing the "Mid-way Face"

I computed the midway face by merely taking frame 22 out of all [0..44] images generated from the morph sequence. It looks a lot more like Danny DeVito, who has a more distinct face.

Note that instead of cropping all images to the same size, I automatically perform a rotate+scale to ensure the eyes are in the same spot in every video frame. This was extremely time-consuming and painful. As a result, the video is smaller than the source images, and the first and last frames of the video are not identical to the source images.

I have posted the raw (not eye-aligned) source images below. Note that I manually straightened Rick Astley:

The Morph Sequence

Uploaded to YouTube:

The "Mean face" of a population

I used the Danes dataset. In retrospect, it was a poor choice because neither the ears nor the face's top/hair were labeled. As a result, the forehead's shape will be wrong.

Mean face:

Danny DeVito warped into the average geometry: (It was difficult to polish the code to make this not look nightmarish)

Average face warped into Danny DeVito's geometry: (Still nightmarish)

Caricatures: Extrapolating from the mean

I extrapolated 150% from the mean geometry to Danny DeVito's geometry. The caricature looks quite good, even though the forehead is the wrong shape.