TP3: Morphage de visages

Partie A

Dans cette partie, il fallait implémenter un algorithme de morphage. Le morphage a pour but de trouver une image de destination $I_D$ à partir d’un mélange de forme et de couleur de deux images initiales. Pour ce faire, nous utilisons l’algorithme classique par triangulation :

\begin{equation}
P_D=(1-\alpha)\cdot P_1 + \alpha\cdot P_2
\end{equation}

\begin{equation}
\vec{x}=A^{-1}\vec{b}
\end{equation}

\begin{equation}
\begin{bmatrix}
a \\
b \\
c \\
e \\
f \\
g \\
\end{bmatrix}
=
\begin{bmatrix}
x_1 & y_1 & 1 & 0 & 0 & 0 \\
0 & 0 & 0 & x_1 & y_1 & 1 \\
x_2 & y_2 & 1 & 0 & 0 & 0 \\
0 & 0 & 0 & x_2 & y_2 & 1 \\
x_3 & y_3 & 1 & 0 & 0 & 0 \\
0 & 0 & 0 & x_3 & y_3 & 1 \\
\end{bmatrix}^{-1}
\begin{bmatrix}
x’_1 \\
y’_1 \\
x’_2 \\
y’_2 \\
x’_3 \\
y’_3 \\
\end{bmatrix}
\end{equation}

\begin{equation}
I_D=(1-\beta)\cdot C_1 + \beta\cdot C_2
\end{equation}

Résultat avec notre visage

En choisissant plusieurs valeurs de $\alpha$ et de $\beta$ , nous pouvons créer une animation de transformation. C’est ce que nous pouvons voir dans l’image qui suit.

Discussion : Nous pouvons voir que le résultat est intéressant. Or, à cause des lunnettes, la déformation est un peu bizarre près des yeux. Également, la capuche du hoodie gâche un peu le rendu. Malgré cela, nous pouvons voir que la transformation est fluide et sans discontinuité importante.

Résultats avec d’autres images du net

- Beethoven vers Mozart

Discussion : La transformation des deux génies musicaux est impressionnante, d’autant plus que nous opérons une transformation sur des portraits peinturés et que celle-ci est très fluide. Mis à part le collet de beethoven, la transition du visage est presque parfaite. Il faut dire que le fond quasi identique de la photo aide.

- Trump vers un orang-outan

Discussion : Nous avions fait la transformation de deux génies. Pourquoi ne pas faire ici tout le contraire? La transformation est encore extrêmement fluide et impressionnante. Le plus marquant est la bouche qui reste quasi-identique tout au long de la transformation.

- Labeaume vers un pitbull

Discussion : Pourquoi ne pas s’acharner encore un peu sur les politiciens? Ici, la transformation est un défi puisque les deux images sont très différentes. Nous pouvons voir que la transformation est beaucoup moins fluide. Sûrement à cause d’un choix de points plus ardu. Or, la transformation est quand même appréciable.

Résultats avec d’autres images personnelles

- 25 cents vers 2 dollars

Discussion : Voici un moyen efficace de payer sa session unicersitaire… Malheureusement, on peut voir que la transition est moins fluide que les autres. Le déplacement entre les deux images et le choix des points difficile ont compliqué le travail pour obtenir une bonne transformation. Nous pouvons apercevoir les triangles formées lors de la transormation des pièces. Peut-être aurait-il fallu prendre plus de points autour de celles-ci.

- L’auteur vers tintin

Discussion : Ici, un autre défi. Transformer l’auteur vers une figurine de tintin. Le résultat est tout de même impressionnant. De petites discontinuités existent autour du visage, mais l’ensemble du visage se transforme assezs bien. À gauche, on peut observer un artéfact venant d’un problème de la première version du code. En effet, il existait des cas rares où plus d’une valeur étaient inscritent au frontière d’un triangle, ce qui saturait les pixels et donnait des lignes blanches. Le code a été réglé pour la partie B.

Partie B1

Dans cette partie, il fallait utiliser un détecteur de visage pour trouver des points de correspondance sur toutes les images de la base de données Utrecht .

Pour calculer un visage moyen, il suffit de calculer les points moyens $P_M$ , de transformer chaque visage de la base de donnée vers ce visage moyen et de faire la moyenne des couleurs.

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

Discussion : Nous pouvons voir que les points moyens forment une tête moyenne que l’on reconnait à l’oeil tout de suite. Le résultat est donc la tête moyenne de tous les étudiants de la classe. Il est intéressant de voir l’influence de la barbe et des lunnettes, ce qui nous porte à croire que la pilosité faciale et les lunnettes sont majoritaires dans la classe. Il est est de même pour le sourire, puisque nous pouvons voir des dents sur le visage moyen.

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

Discussion : Contrairement aux points que nous avons sélectionnés nous même, les points de dlib sont concentrés à l’intérieur du visage et il y en a plus. Comme nous pouvons le voir sur la figure de la forme du visage, le maillage est plus dense et arrête aux sourcils. Ainsi, contrairement au visage moyen construit avec nos points, le visage moyen construit avec dlib est plus flou à l’extérieur du visage et plus défini à l’intérieur. Puisque les points sont plus concentrés autour des yeux et de la bouche, nous voyons moins les lunnettes et voyons plus le sourire dans le visage moyen.

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

Discussion : Nous voyons que la forme du visage est à peu près similaire à la forme du visage formée de nos points. Nous pouvons voir également que le visage est un visage masculin dû à la majorité des images masculines. Également, nous pouvons voir que la bouche tend vers le sourire, mais n’en est pas tout à fait un. Cela est dû au mélange entre les images avec et sans sourire.

Partie B2

Dans cette partie, il fallait constuire le visage moyen des hommes et des femmes pour masculaniser ou féminiser un visage. Nous avons aussi fait la moyenne des visages avec sourire et sans sourire pour tenter de rajouter ou d’enlever le sourire d’un visage.

Résultat de la masculanisation du visage


Discussion : Le choix de plusieurs $\alpha$ et $\beta$ permet de voir plusieurs effets de masculanisation. Lorsque $\alpha$ est bas et que $\beta$ est élevé, l’effet de transformation est faible, mais l’effet de coloriage est élevé. Ainsi, nous retrouvons trop de traits du visage masculin moyen et on ne reconnait plus le visage initial. De l’autre côté, lorsque $\alpha$ est élevé, mais $\beta$ bas, nous retrouvons le visage initial transformé dans la forme du visage masculin moyen. À cause des lunettes et des points choisis par dlib, la forme du visage est étrange. Les lunettes sont très déformées et le cou est agrandi. Or, un $\alpha$ et un $\beta$ de 0.5 donne le point milieu de masculanisation et le résultat est beaucoup plus intéressant. Il est même presque possible de faire disparaître la pilosité faciale avec ce fondu!

Résultat de la féminisation du visage


Discussion : Il se passe la même chose que pour la masculanisation, mais le résultat moyen est différent. Nous voyons bien la prohiminence des traits féminins. Le plus impressionnant sont les yeux et la bouche qui deviennent très féminin.

Résultat du rajout de sourire sur le visage


Discussion : Il se passe encore la même chose que pour les deux autres images. Mais le résultat est beaucoup plus décevant. Probablement parce que le visage de la photo initiale a déjà un sourire et que l’effet du visage moyen avec sourire est minime.

Résultat de la suppression du sourire sur le visage


Discussion : Il se passe toujours la même chose que pour les trois autres images. Le résultat est encore décevant. Même si dans l’ensemble, le visage a une expression plus sérieuse, l’effet est minime. On voit tout de même une différence entre le visage moyen sans sourire et le visage moyen avec sourire. Et ce qui est intéressant est que cette différence ne se voit pas seulement avec la bouche. Les yeux ont aussi une expression différente. L'image moyenne générale tant qu'à elle représente presque le point milieu entre le avec sourire et le sans sourire. Or, puisqu'il y moins d'image avec sourire (58 vs 73), c'est l'expression du sans sourire qui l'emporte et on ne voit pas les dents sur l'image mohyenne de toutes les images.

Animation : Pour avoir un résultat plus intéressant, on peut choisir des points de correspondance seulement autour de la bouche du sourire moyen et du visage intitial et générer un vidéo de transformation. Voilà le résultat. Même si la fin est un peu étrange dû au redimensionnement de l'image pour le vidéo, nous avons un peu l'impression que le visage est en train de sourir.