Project 4: Face Morphing

Project 4: Face Morphing

Jiana Huang

Overview

In this project, we explore using affine transformations on triangles to morph faces seamlessly. We then use the concept of the average face to create new faces and to exaggerate certain features.


Morph Sequence

I decided to morph myself into a stock-photo woman I found on the internet

Me

Me

Stock Photo Woman

Stock Photo Woman

Defining Correspondences

I first had to define corresponding points on both images, using key features like the face shape, eyes, lip, etc. I first cropped and aligned the images to make the morphing as smooth as possible. I then assigned corresponding points and found the Delaunay triangles on the average of these 2 sets of points.

Triangle
Triangle

Then for every triangle, I calculate the inverse affine matrix from the average photo to my photo, and from the woman to the average face. From there, we mapped each pixel using these matrices and cross dissolving the two photos to create a morphing sequence. As seen in the average photo, there is still ghosting from my hair which could be solved by picking more corresponding points near the shoulder and hair. Also, if I had used the same sized photo, there wouldn't be a weird background growth.

Average Image

Average Face

Morphing Sequence

Morphing Sequence


The "Mean face" of a population

I used the FEI Face Database to compute the average Brazilian face. This required morphing each face to the average shape and cross dissolving all the faces on top of eachother. A caveat to the database is that the corresponding points only take into account the face instead of the whole head, so it was much harder to align other faces to the faces in the database.

Average Image

Labeled Points on the Faces

Average Image

Average Brazilian Face

Some Examples of Morphs

Average Image
Average Image

Morphing to My Face

Unfortuntely, the faces weren't aligned well which is why the morph includes a weird slight movement to the corners. However, you can see that my smile is more exaggerated and my face skinner than those of the average Brazilian Face.

Average Image

Morphing My Geometry to the Average Shape

Average Image

Morphing the Average Face to My Geometry


Caricatures: Extrapolating from the Mean

After finding the average Brazilian Face, we can extrapolate from the population mean to create a caricature of my face. This involved finding the difference between my face points and the average brazilian face points, and adding a scaled difference to my original face image points. I then morphed my face to these caricaturized points.

Caricature Image

Bells and Whistles: Changing Gender

I found a picture for the average asian male to make my face more masculine. I took the difference between my face and the asian male face and added the difference in terms of color and corresponding points to make my face more masculine.

Average Asian Male

Morphing Shape

Morphing Appearance

Morphing Both