Neovulga – Veille Vulgarisée – Représentation neuronale implicite et super résolution

Neovulga – Veille Vulgarisée – Représentation neuronale implicite et super résolution

A Neovision, nous menons une veille scientifique constante pour rester à l’état de l’art. Chaque mois, les dernières avancées sont présentées à l’ensemble de l’équipe, que ce soit de nouveaux jeux de données, un nouveau papier de recherche… Nous passons toutes les actualités – ou presque – au crible. Dans notre ambition visant à mettre l’IA à la portée de tous, nous vous proposons, chaque mois, l’analyse vulgarisée d’un sujet technique présenté par notre cellule R&D.

Ici, nous ferons une introduction à la représentation neuronale implicite avant d’aborder LIIF, une application concrète de cette dernière à la super résolution. Un article proposé par Yinbo Chen, Sifei Liu et Xiaolong Wang.

Qu’est-ce qu’une représentation neuronale implicite ?

Les représentations implicites

Avant de présenter le concept de représentation neuronale implicite, il nous faut tout d’abord présenter celui de représentation implicite lui-même. Ce concept a d’abord été utilisé dans le domaine de la représentation d’objets en 3D.

Plutôt que de représenter un objet 3D comme une grille 3D de voxels, la représentation implicite vient représenter une forme par le biais d’une fonction mathématique. Les Signed Distance Functions (SDF) sont un exemple de ce type de représentation implicite. Ce sont des fonctions mathématiques, codées à la main, dont les équations viennent représenter des formes.

Pour cela, ces fonctions sont conçues pour retourner la distance d’un point à la surface de l’objet, avec des valeurs positives quand ce point est à l’intérieur de l’objet, et négative quand celui-ci est en dehors. La surface de l’objet est ainsi définie comme les points pour lesquels cette fonction retourne une distance nulle.

Cette vidéo présente un très bel exemple de mise en œuvre des SDF, l’auteur combinant progressivement des équations afin de construire l’image de la jeune fille.

Les représentations neuronales implicites

Venons-en donc aux représentations neuronales implicites. Celles-ci sont une extension des représentations implicites dans lesquelles les fonctions ne sont plus posées à la main, mais sont remplacées par des réseaux de neurones.

Dans le cas de la représentation d’un objet 3D par exemple, il existe ainsi une extension des SDF nommée DeepSDF et qui consiste à entraîner le réseau de neurones à prédire pour un point 3D donné, la distance de celui-ci à la surface de l’objet à représenter.

Nous avions d’ailleurs déjà abordé ce type de représentation neuronale implicite dans un article consacré à la reconstruction 3D haute précision.

Une application concrète de la représentation neuronale implicite à la super résolution

Qu’est-ce que la super résolution ?

L’idée de la super résolution, c’est avant tout d’améliorer la résolution d’une image donnée. On cherche donc à augmenter de manière plus ou moins importante le nombre de pixels dans l’image en sortie.

Afin d’entraîner un réseau à la super résolution, on génère tout d’abord des images basse résolution à partir d’images haute résolution. Cela nous donne ainsi des paires d’images avec une version haute résolution et une version basse résolution pour chacune d’entre elles. On va ensuite entraîner le réseau de neurones à reconstruire les images hautes résolutions à partir des versions basse résolution de ces images qu’on lui donne en entrée.

La super résolution a principalement un objectif esthétique, permettant d’aboutir en partant d’un matériel moins performant et donc moins coûteux à des prises de vues ayant des qualités plus que satisfaisantes en sortie réseau. Certaines méthodes de super résolution peuvent même aller au-delà de l’aspect esthétique en permettant d’observer des choses indiscernables sur l’image d’origine en intégrant pour cela d’autres sources d’information comme par exemple d’autres images du même objet dans une vidéo. D’un point de vue opérationnel, la super-résolution est actuellement utilisée par les cartes graphiques NVIDIA afin d’augmenter la résolution perçue dans les jeux vidéo.

Comment la représentation implicite s’y applique-t-elle ?

LIIF est une application concrète de la fonction implicite à la super résolution, en permettant de transformer une image basse résolution en fonction continue.

A l’inverse d’autres systèmes de super résolution, contraints à produire le zoom sur lequel ils ont été entraînés, LIIF permet d’avoir un zoom plus ou moins important dans l’image. En ne prédisant pas une grille de pixels mais les pixels un par un, le système permet d’obtenir une grille de pixel plus ou moins dense. Cela donne donc à l’image en sortie une résolution finale plus ou moins importante.

De plus, LIIF permet d’aller vers des multiplicateurs très importants, en aboutissant à une résolution jusqu’à 30 fois supérieure à l’image de base. Il est entraîné à généraliser à différentes tailles d’images grâce à son entraînement sur des tailles variées.

Etienne Balit
Etienne Balit

L’édito d’Etienne

« Au-delà des résultats intéressants sur le problème de la super-résolution, ce papier se démarque par son utilisation simple mais très efficace de l’idée de représentation neuronale implicite.

Pour visualiser cette idée, prenons l’exemple d’une image. La représentation numérique usuelle d’une image est une grille de pixels. On peut lire dans cette grille la valeur RGB (rouge, vert, bleu) de ce pixel pour chaque coordonnées x et y. L’idée de la représentation implicite neuronale est de remplacer cette grille par un réseau de neurones, entraîné à prédire la valeur RGB quand on lui donne une paire de coordonnées x et y. L’avantage de cette représentation est que contrairement à la grille, elle est capable de généraliser à des coordonnées ne tombant pas exactement sur un pixel. Et c’est exactement cette propriété qui peut être très utile pour la super-résolution.

Partager ce papier était important selon moi car l’idée de représentation neuronale implicite est un outil relativement récent et méconnu de l’arsenal du praticien de l’apprentissage automatique. Elle a déjà permis de nombreux résultats importants dans les 2 dernières années, en particulier dans le domaine de l’apprentissage automatique pour le graphisme, et on peut encore s’attendre à de très nombreuses applications dans les prochaines années. »

Pourquoi c’est cool ?

A la différence des méthodes précédentes, LIIF permet d’augmenter la résolution d’une image plus ou moins fortement. Cette méthode trouverait une utilité particulière dans le cas du rendu fovéal, une méthode de rendu graphique utilisée en réalité virtuelle. A l’image de la vision humaine, LIIF permettrait d’augmenter fortement la résolution au centre du regard de l’utilisateur, et économiser les calculs en prédisant moins de pixels en périphérie.

Cette méthode pourrait également être étendue au cas d’image 3D ou même de vidéos, permettant dans ce dernier cas d’augmenter cette fois-ci le nombre de frames dans une vidéo.

L’article original, ci-dessous.

CONSULTER L'ARTICLE
Chloé Koch-Pageot

Post a Comment

Neovision © 2024