TP3: Morphage de visages

Partie A:

Le but principal de ce TP est de générer une séquence vidéo qui affiche le visage et le métamorphosera vers le visage du prochain étudiant dans la liste. Pour cela il faut implémenter un algorithme de morphage qui prend 2 images: la 1ere image étant l'image source qu’on va afficher et changer petit à petit vers la 2eme image qui est l'image de destination.

Description de l’algorithme:

Le problème de morphage est divisée en 3 étape principale:

  1. Définir les points de correspondance:

La 1ere étapes consiste à marquer les points de correspondance pour l'image source et l'image de destination, il faut marquer dans chaque image des points pertinente, tel que les yeux, le nez, les lèvres, les sourcils, le menton, etc

  1. Aspect geometrique du probleme:

  1. Trouver la forme moyenne: pour les deux images (source et destination)
  1. La forme moyenne:

    Soit S la 1ere image, image source, et D la 2eme image, image de destination, l’objet moyen M est calculé tel que:        
                    Mk = (1 - α) Sk + α Dk,
    avec α correspond au parametre warp_frac.

  2. Trianguler la forme moyenne trouvée en utilisant la triangulation de delaunay.
  1. Generer les image deformee:
  1. Pour chaque triangle dans l'objet moyen, il faut trouver la transformation T tel que p’= Tp ou P’ sont les coordonnées des triangles de l'objet moyen et P sont les coordonnées du triangle de S ou D.

    La triangulation est calculée en construisant un système d'équation linéaire, tel que:





    Ou [a b c d e f]  est la transposée du vecteur de transformation , {X, Y} sont les coordonnés d'un triangle de l'image source {X’, Y’}  sont les coordonnée d'un triangle de destination
    .
  2. Après avoir calculer les transformations on va appliquer T-1 a partir de l'objet moyen vers S et D pour récupérer les image déformées.
  1. Apparence moyenne: 
    Les transformations précédente permettra d’obtenir la couleur de chaque pixel, en lisant la couleur associé à chaque pixel dans les deux images et en calculant la moyenne pondérée par le dissolve frac tel que:  M’ = (1 - B)S’+B D’, avec B est le dissolve_frac et S’,D’ correspondent au déformations de S et D respectivement. 

Resultat:

  1. Résultat de morphage visage: mon visage vs celui d’Eric:

Discussion : . On peut voir que la transformation est lisse, sauf que à cause de la foular (la partie qui cache une partie des sourcils), on remarque l'apparition des petits artefact. La partie du foulard autour du coup gâche un peu le résultat également.

Mais enfin on peut voir que la transformation est fluide et ne présente pas d’autre discontinuité.

  1. Résultat de morphage du visage de mon marie: ~5 ans vs 23 ans

Discussion :  Une transformation  très fluide du visage, surtout la transformation des yeux, des lèvres et des sourcils.Mis à part Une petite discontinuité présenté en haut des oreilles et le col de la chemise.

  1. Résultat de morphage des visages de mes deux nièces:

Discussion :  Une transformation  très fluide du visage. Mis à part la partie des épaules de la filles.

  1. Résultat de morphage, une images filtrée en haute fréquence avec une image filtrée avec basse fréquence:

Discussion :  “ The most visible difference between a simple hybrid image and the morphed hybrid image is the alignment, the morphed hybrid image is perfectly aligned compared to the normal hybrid image, we can also notice that the results are smoother, and better.”

 5. Autre resultat:
Trump (low fps)

Partie B:

Dans la partie B du Tp on vas utiliser l’algorithme du morphage pour calculer le visage moyen d’un ensemble des visages.

Résultat avec nos points sur les images de la classe

On remarque que le visage semble masculin à cause de la majorité masculine dans la classe.

Résultat avec les points de dlib sur les images de la classe

Les points de dlib sont plus précise a l'intérieur de l’image (exactement précise au niveau du visage). Le visage moyen construit par les points de dlib est plus flou à l'extérieur de visage et plus définis à l'intérieur de visage. On peut ainsi remarquer que la sourire est plus claire dans le visage moyen de la classe avec dlib.

Résultat avec les points de dlib sur la base de données Utrecht:

Visage moyen

Visage moyen avec sourire:

Visage moyen :

Visage moyen avec sourire

Discussion: on remarque que le visage moyen ressemble au visage moyen de tous les visages de la base de données Utrecht sauf que la sourire est plus accentuée et les dent sont plus claire puisque c’est le visage moyen de tous les visages souriants! (presque le même visage mais seulement souriant)

Visage moyen sans sourire:

Visage moyen:

Visage moyen sans sourire

Discussion: on remarque que le visage moyen ressemble au visage moyen de tous les visages de la base de données Utrecht sauf qu’il parait un peu sérieux que le visage moyen.

2. Masculinisation et féminisation de du visage

Visage masculin moyen:

Dissolve 0.3, warp 0.5

Dissolve 0.5 warp 0.5

Warp 0.8 dissolve 0.5

Warp 00.8 dissolve 0.3

Warp 0.9 dissolve 0.3

Warp 0.9 dissolve 0.5

On remarque bien l'apparence d’une sorte de barbe, et un menton un plus large.

Visage feminin moyen:

Warp 0.5 dissolve 0.3

Warp 0.5 diss 0.5

Warp 0.8 dissolve 0.3

Warp 0.8 dissolve 0.5

Warp 0.9 diss 0.3

Warp 0.9 dissolve 0.5

On remarque l'apparence d’un cou Sous la foulard!, lorsque la valeur de dissolve est importante, ainsi qu’une forme plus fine des sourcils.

Credit supplementaire:

My evolution over Time: