CS 194-26 Project #3

Face Morphing

This project involved taking different images and morphing them to another! We also got to explore taking the mean of a population of faces and turning our face into a caricature from that population mean.

Defining Correspondences

We defined pairs of correspondence points on each of our images. This would be helpful later on to help morph our faces. We provided a triangulation of the midway between these two sets of points. I modified code from project 2 in order to pick more correspondence points on both images (40 total)

Dahyun from TWICE!

Nayeon from TWICE!

Triangulation meshes on both images

Computing the “Mid-way Face”

To compute the mid-way face, we had to complete a bunch of tasks with multiple sub-tasks. However, the main gist was to compute the average shape of the two images, warp both faces into that shape, and average the colors together.

Morph Sequence!

Using 45 frames, I created a gif of the morph sequence from Dahyun to Nayeon. This borrowed a lot of code from the previous part but mostly involved using warp_frac and dissolve_frac to control the shape warping and cross-dissolve.

https://media.giphy.com/media/6FyXb5JFjvIwc2PXsi/giphy.gif

The “Mean face” of a population

I used the Danes! I used only the front-facing photos of males. I also got rid of the photos that were in black and white. Atached are some of the original pictures as well as their faces morphed into the average face. Finally, the average face of the population is displayed. I morphed each face into the average face and then took all the morphed faces to compute the mean face of the population.



Caricatures: Extrapolating from the mean!

Distortion constant of 1.5! Extrapolation from the population mean calculated in the last part


Bells & Whistles: Kevin Potter!!

Turning myself into my childhood hero.