Si Adobe a les outils pour modifier les visages, transformer les paysages, supprimer ou ajouter des éléments à une scène, qui pourrait être mieux placé pour détecter les “fakes”, les images trafiquées trop courantes en ces temps où il devient si difficile de démêler le vrai du faux ? Les ingénieurs maison se sont rapprochés du labo de Berkeley (Université de Californie) pour développer un procédé à même d’identifier les retouches réalisée sur un image, en particulier les visages. Le résultat : un outil reposant sur un réseau de neurones convolutifs (CNN pour Convolutional Neural Network) qui permet un apprentissage automatique, utilisé dans l’identification d’images ou du langage. Le mécanisme est inspiré par le fonctionnement du cortex visuel des animaux. Ceux-ci décodent ce qu’ils voient en décomposant la scène en mosaïque dont les tesselles se chevaucheraient, certaines cellules du cortex répondant uniquement à des signaux forts (contraste ou luminosité élevés), d’autres ayant des champs de réception plus larges.

Pour entrainer l’algorithme, on l’a nourri de plus d’un million d’images, 1 sur 10 étant des photos originales, les autres des images retouchées avec la retouche de visage Fluidité de Photoshop. L’idée étant de lui apprendre à reconnaître les détails qui caractérisent des visages jugés séduisants, comme des yeux plus larges et un visage plus élancé. Après cet apprentissage, on lui a donné 100 photos, la moitié retouchées, l’autre moitié intactes. Il a reconnu les faux et leurs altérations avec une précision de 94%. De plus, il a été capable de reconstituer l’image d’origine avec une précision quasi absolue. En comparaison, si l’on propose à des humains de deviner la photo retouchée entre deux versions d’un même portrait, ils ne tombent juste qu’un peu plus d’une fois sur 2.

Photo retouchée  > Retouches détectées >  Original suggéré   > Photo originale (Document Adobe)

Un des éléments clés de l’analyse se situe au niveau des pixels. Pour faire une retouche de portrait, dans le filtre Fluidité de Photoshop comme dans les autres outils, on triture les pixels. Si on agrandit le front, on va créer de nouveaux pixels, extrapolés à partir des pixels voisins, si on rétrécit le nez, on va enlever des pixels. L’algorithme va facilement identifier ces faux pixels ou les manques qui provoquent d’inévitables cassures, invisibles à l’œil nu mais repérables par la machine. Une fois la phase d’identification effectuée, l’algorithme va pouvoir retravailler ces zones anormales, en ajoutant des pixels là où on en aura retiré ou en compressant les zones qui ont été élargies.La limite de l’exercice est que l’algorithme ne fonctionne que si la photo a été retouchée avec l’outil Fluidité de Photoshop. Si un autre logiciel ou d’autres outils Photoshop ont été utilisés, les déformations et les artifacts seront différents et la machine ne saura les identifier, ou en tous cas avec nettement moins de fiabilité. Les fakes ont encore de beaux jours devant eux.

Pour plus de détails, voici une vidéo de démonstration présentée à Adobe Max 2019