Project 3

PersonSam Huang

Project 3: Face Morphing

Part 1: Defining Correspondence

Here are the portrait of me and Shengfan (also taking this class), both were taken a while ago when we were in high school. Luckily we were both wearing glasses, so I can simply put correspondences on glass frame as well to avoid distortion (was worrying about this a lot). I used about 40 correspondences in total for each image, aligning head, mouse, eyes, glasses, and nose. I found it helpful to add the 4 corners of the image to be correspondences as well, even if images has been resized to the same shape, or there would be some weird distortion.

Sam
Shengfan

Part 2 & 3: Midway Face & Morphing Sequence

In this part, I first calculate the average between Shengfan’s and my correspondences, and then warp each of the image to the average shape. Then I calculate the average warped image to produce the midway face between Shengfan and I. After that, instead of a unweighted average, I create a gif file of weighted average from 0 to 1 with 50 steps.

Sam warped to midway
combine two warped images
Shengfan warped to midway
Morphing Sequence

Part 4: The “Mean Face” of Population

In this part I used annotated Danes Face Dataset. Using the same technique from previous part, I extend the mean to a list of about 30 Images of Danish males, and calculated a population mean by averaging their warped face to the mean structure. Here are some examples to compare before and after warping to the average.

Before
Before
After
After
average of about 30 faces of Danish males

Besides calculating the mean structure and appearance of the population, of course the subset. I also tried to warp my face to population mean, and also warp the mean to my face structure. As I worried, the glasses become an issue because face in the dataset do not wear glasses, but this is unfortunately unavoidable unless using a image without glasses.

warping average Danes to my face
warping my face to average Danes’ structure

Part 5: Caricatures: Extrapolating from the Mean

Well, in previous part, when I calculate the mean structure, we use C=αA+(1α)B\mathbf{C} = \alpha \mathbf{A} + (1 - \alpha) \mathbf{B} where α\alpha is within the range between 00 and 11. But we can make it quite interesting to pick α\alpha outside the range. Here are some caricatures I created by warping my face to a shape outside standard range.

alpha = 1.5
alpha = -1.5

Bells & whistles: Change Gender

Here I found a image of the average face of Chinese women online, and I would like to see if warping and morphing would produce interesting results on my face. I also made appearance only, where my face is warped to average structure of Chinese women, and shape only, where the average face is warped to my face shape.

average face of Chinese women
appearance only
combined face
shape only