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.
I decided to morph myself into a stock-photo woman I found on the internet
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.
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.
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.
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.
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.
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.