In this project, we learned to morph images into each other by combining warps and cross-dissolves.

For this project, I decided to morph my face with Merlin, a character from the BBC show Merlin. To start off, I selected corresponding points on the two images. I then created a triangulation of the points to set up for the next few parts.

Selected Points on Merlin |
Triangulation on Merlin's Face |
Selected Points on my Face |
Triangulation on my Face |

To compute the mid-way face, I took the following steps.

- Compute the average shape (average the keypoints)
- Warping both faces into that shape (by transforming each triangle through a calculated affine transformation matrix)
- Averaging the colors together

original image of my face |
mid-way face of Merlin and I |
original image of Merlin |

To compute the full morph sequence, I warped and cross-dissolved the faces in a way similar to the previous part. But this time, instead of using 0.5 and 0.5 as the parameters, I weighted them from 0 to 1 in increments of 1/45 to create a gif with 45 frames.

I decided to find the mean face of the population of Danes. I did so by doing the following

- Calculate the average face shape (in the form of target points among the population).
- Morph each of the faces in the dataset into the average shape.
- Compute the average face of the population and display it.

Population Average |
Population Average with Points |

My face onto Average Geometry |
Average Face onto my Geometry |

Example 1 Original |
Example 1 Morphed |

Example 2 Original |
Example 2 Morphed |

Example 3 Original |
Example 3 Morphed |

Using the population mean from the previous step, I made caricatures by using alpha values outside of 0 and 1.

Using an alpha value of -0.5 |
Using an alpha value of 1.3 |

I chose to shift my face towards the average face of a German woman. I primarily used the warping and cross-dissolve functions I created in prior parts, but this time, I had to control the warping and cross-dissolve parameters separately.

My Face |
The Average German Woman Face |
changing just the shape of my face |
changing just the appearance of my face |
changing both the shape and appearance of my face |

Overall this was a very fun project! It was quite interesting to learn the computation that goes behind face morphing.