“Be yourself; everyone else is already taken. ” ― Oscar Wilde.
I used face annotation and wrote a function that takes custom point inputs on any image to correspond to the other image and enable the morphing. I used 25 points on the image + the 4 corners of the image.
|
|
Then I computed the Delaunay Triangulation. Here are the images superimposed with the Delaunay triangulations I computed.
|
|
Here is an average face once the alignment and correspondence was complete. I used my morphing function to generate the midway morph as a test for the morphing process.
|
|
|
After repeating this process and generating 45 frames, I was able to cumulate the pictures into a video gif. The fraction/ ratio for the warp was modified for each iteration using my morph function and then I combined the images so generated to create this morph video.
|
I selected one of the provided libraries of pictures of Danes to compute a mean population face. Here are some of the original faces from the dataset.
|
|
|
Here is the average face computed. Although if you ask me they don't look mean at all!
|
Here are some of the original Danish pictures warped into the average face.
|
|
|
Here is my image warped into the average Danish face I computed.
|
|
Using mean face, I was able to use my warping function to enhance certain features on my face with customizable alpha levels.
|
|
|
|
I used an average French female image to create a morphed image of what I would look like if I was born a woman in France.
|
|
|
Collaborated with 15 students in the class to make this video.
|