Face Morphin'

Sam Potasznik (spotaszn)
March 26, 2010


The goal of this project was to create a combination of two faces into a realistic-looking third face. To do this, the actual shape of the faces needed to be combined, not just the color values at each pixel.
To merge the shapes, I calculated defined certain features on both faces, then took the midpoints of these features. These midpoints become the location of the feature on the final image.
From these midpoints, offsets can be calculated to the location of the feature on imgA and imgB.
From these feature offsets, which were only defined at certain points (the midpoints) offsets for the rest of the image could be computed using a Poisson fill.
One the offsets to each image were found, each pixel in the final image was then determined to be the average of
imgA @ offset_to_a + imgB @ offset_to_b

To create animations, instead of taking the average (i.e. the midpoint) of the differences between features and the average of the pixel value from each image, I used a weighted average.
I calculated 60 frames for each morph, so on frame 5, for example, the "midpoint" was defined as 5/60ths of the way from imgA to imgB and the pixel value came 55/60ths from imgA and only 5/60ths from imgB.

I've grouped my results into the different "experiments" I tried.
Those marked with ec are extra credit extensions. I've listed the results in order of AWESOMENESS, so check them out in that order if you're pressed for time.

Results Images

M.C. Escher: The Master of Morphing ec
Camera Transformations ec
Caricatures! ec
Attractive People!
All morphs!