Modèles et plateformes d’IA
InstructIR : Restauration d’images de haute qualité suivant les instructions humaines
Une image peut transmettre beaucoup d’informations, mais elle peut également être altérée par divers problèmes tels que le flou de mouvement, la brume, le bruit et la faible plage dynamique. Ces problèmes, communément appelés dégradations en vision par ordinateur de bas niveau, peuvent survenir en raison de conditions environnementales difficiles telles que la chaleur ou la pluie, ou en raison des limitations de l’appareil photo lui-même. La restauration d’images représente un défi fondamental en vision par ordinateur, visant à récupérer une image de haute qualité et propre à partir d’une image présentant de telles dégradations. La restauration d’images est complexe car il peut y avoir plusieurs solutions pour restaurer une image donnée. Certaines approches ciblent des dégradations spécifiques, telles que la réduction du bruit ou la suppression du flou ou de la brume.
Alors que ces méthodes peuvent donner de bons résultats pour des problèmes particuliers, elles ont souvent du mal à généraliser à différents types de dégradation. De nombreux cadres emploient un réseau neuronal générique pour une large gamme de tâches de restauration d’images, mais ces réseaux sont formés séparément. La nécessité de différents modèles pour chaque type de dégradation rend cette approche coûteuse en termes de calcul et de temps, ce qui a conduit à un intérêt récent pour les modèles de restauration tout-en-un. Ces modèles utilisent un seul modèle de restauration aveugle profond pour traiter différents niveaux et types de dégradation, en employant souvent des invites ou des vecteurs de guidage spécifiques à la dégradation pour améliorer les performances. Bien que les modèles tout-en-un montrent généralement des résultats prometteurs, ils rencontrent encore des défis avec les problèmes inverses.
InstructIR représente une approche innovante dans le domaine, étant le premier cadre de restauration d’images conçu pour guider le modèle de restauration à l’aide d’instructions écrites par l’homme. Il peut traiter des invites de langage naturel pour récupérer des images de haute qualité à partir d’images dégradées, en tenant compte de différents types de dégradation. InstructIR établit une nouvelle norme de performance pour une large gamme de tâches de restauration d’images, y compris la suppression de la pluie, la réduction du bruit, la suppression de la brume, la suppression du flou et l’amélioration des images à faible luminosité.
Cet article vise à couvrir le cadre InstructIR en profondeur, et nous explorons le mécanisme, la méthodologie, l’architecture du cadre ainsi que sa comparaison avec les cadres d’état de l’art pour la génération d’images et de vidéos. Alors, commençons.
InstructIR : Restauration d’images de haute qualité
La restauration d’images est un problème fondamental en vision par ordinateur, car elle vise à récupérer une image de haute qualité et propre à partir d’une image qui présente des dégradations. En vision par ordinateur de bas niveau, les dégradations sont un terme utilisé pour représenter les effets désagréables observés dans une image, tels que le flou de mouvement, la brume, le bruit, la faible plage dynamique, etc. La raison pour laquelle la restauration d’images est un défi inverse complexe est qu’il peut y avoir plusieurs solutions pour restaurer une image donnée. Certaines approches ciblent des dégradations spécifiques, telles que la réduction du bruit ou la suppression du flou ou de la brume.
Les méthodes d’apprentissage automatique récentes ont montré des performances plus fortes et plus cohérentes par rapport aux méthodes traditionnelles de restauration d’images. Ces modèles de restauration d’images basés sur l’apprentissage automatique proposent d’utiliser des réseaux de neurones basés sur les transformateurs et les réseaux de neurones convolutionnels. Ces modèles peuvent être formés de manière indépendante pour diverses tâches de restauration d’images et possèdent la capacité de capturer les interactions entre les caractéristiques locales et globales, et de les améliorer, ce qui aboutit à des performances satisfaisantes et cohérentes. Bien que certaines de ces méthodes puissent fonctionner de manière satisfaisante pour des types de dégradation spécifiques, elles ne s’étendent généralement pas bien à différents types de dégradation. De plus, alors que de nombreux cadres existants utilisent le même réseau neuronal pour une multitude de tâches de restauration d’images, chaque formulation de réseau neuronal est formée séparément. Il est donc évident que l’utilisation d’un modèle neuronal distinct pour chaque dégradation concevable est impraticable et coûteuse en termes de temps, ce qui a conduit les cadres de restauration d’images récents à se concentrer sur les proxys de restauration tout-en-un.
Les modèles de restauration tout-en-un, également appelés modèles de restauration multi-dégradation ou multi-tâche, gagnent en popularité dans le domaine de la vision par ordinateur, car ils sont capables de restaurer plusieurs types et niveaux de dégradations dans une image sans nécessiter de former les modèles de manière indépendante pour chaque dégradation. Les modèles de restauration tout-en-un utilisent un modèle de restauration aveugle profond unique pour traiter différents types et niveaux de dégradation d’image. Différents modèles tout-en-un mettent en œuvre différentes approches pour guider le modèle aveugle pour restaurer l’image dégradée, par exemple, un modèle auxiliaire pour classer la dégradation ou des vecteurs de guidage multi-dimensionnels ou des invites pour aider le modèle à restaurer différents types de dégradation dans une image.
Avec cela, nous arrivons à la manipulation d’images basée sur le texte, car elle a été mise en œuvre par plusieurs cadres au cours des dernières années pour la génération d’images à partir de texte et les tâches d’édition d’images basées sur le texte. Ces modèles utilisent souvent des invites de texte pour décrire des actions ou des images, ainsi que des modèles basés sur la diffusion pour générer les images correspondantes. L’inspiration principale pour le cadre InstructIR est le cadre InstructPix2Pix, qui permet au modèle d’éditer l’image en utilisant des instructions écrites par l’utilisateur qui indiquent au modèle quelle action effectuer, plutôt que des étiquettes de texte, des descriptions ou des légendes de l’image d’entrée. En conséquence, les utilisateurs peuvent utiliser des textes écrits naturellement pour instruire le modèle sur quelle action effectuer sans avoir besoin de fournir des images échantillons ou des descriptions d’images supplémentaires.
En nous appuyant sur ces bases, le cadre InstructIR est le premier modèle de vision par ordinateur à utiliser des instructions écrites par l’homme pour atteindre la restauration d’images et résoudre les problèmes inverses. Pour des invites de langage naturel, le modèle InstructIR peut récupérer des images de haute qualité à partir de leurs contreparties dégradées et prend également en compte plusieurs types de dégradation. Le cadre InstructIR est capable de fournir des performances de pointe pour une large gamme de tâches de restauration d’images, y compris la suppression de la pluie, la réduction du bruit, la suppression de la brume, la suppression du flou et l’amélioration des images à faible luminosité. Contrairement aux travaux existants qui atteignent la restauration d’images en utilisant des vecteurs de guidage appris ou des embeddings d’invite, le cadre InstructIR utilise des invites de texte brutes. Le cadre InstructIR est capable de généraliser à la restauration d’images en utilisant des instructions écrites par l’homme, et le modèle tout-en-un mis en œuvre par InstructIR couvre plus de tâches de restauration que les modèles précédents. La figure suivante montre les exemples de restauration diversifiés du cadre InstructIR.

InstructIR : Méthode et Architecture
Au cœur du cadre InstructIR se trouve un encodeur de texte et un modèle d’image. Le modèle utilise le cadre NAFNet, un modèle de restauration d’images efficace qui suit une architecture U-Net en tant que modèle d’image. De plus, le modèle met en œuvre des techniques de routage de tâches pour apprendre plusieurs tâches en utilisant un seul modèle avec succès. La figure suivante illustre l’approche d’entraînement et d’évaluation pour le cadre InstructIR.

En s’inspirant du modèle InstructPix2Pix, le cadre InstructIR adopte des instructions écrites par l’homme comme mécanisme de contrôle, car il n’y a pas besoin pour l’utilisateur de fournir des informations supplémentaires. Ces instructions offrent un moyen expressif et clair d’interagir, permettant aux utilisateurs de désigner l’emplacement exact et le type de dégradation dans l’image. De plus, en utilisant des invites de l’utilisateur au lieu d’invites spécifiques à la dégradation, le modèle améliore l’utilisabilité et les applications, car il peut également être utilisé par des utilisateurs qui ne possèdent pas les connaissances de domaine requises. Pour doter le cadre InstructIR de la capacité de comprendre des invites diversifiées, le modèle utilise GPT-4, un grand modèle de langage pour créer des demandes diversifiées, avec des invites ambiguës et peu claires supprimées après un processus de filtrage.
Encodeur de texte
Un encodeur de texte est utilisé par les modèles de langage pour mapper les invites de l’utilisateur vers une représentation vectorielle de taille fixe. Traditionnellement, l’encodeur de texte d’un modèle CLIP est un composant essentiel pour la génération d’images basée sur le texte et les modèles de manipulation d’images basés sur le texte pour encoder les invites de l’utilisateur, car le cadre CLIP excelle dans les invites visuelles. Cependant, la plupart du temps, les invites de l’utilisateur pour les caractéristiques de dégradation présentent peu ou pas de contenu visuel, ce qui rend les grands encodeurs CLIP inutiles pour de telles tâches, car cela gênerait considérablement l’efficacité. Pour résoudre ce problème, le cadre InstructIR opte pour un encodeur de phrase basé sur le texte qui est formé pour encoder des phrases dans un espace d’incrustation significatif. Les encodeurs de phrases sont formés sur des millions d’exemples et sont compacts et efficaces par rapport aux encodeurs de texte CLIP traditionnels, tout en ayant la capacité d’encoder les sémantiques des invites de l’utilisateur diversifiées.
Guidage de texte
Un aspect majeur du cadre InstructIR est la mise en œuvre de l’instruction encodée en tant que mécanisme de contrôle pour le modèle d’image. En nous appuyant sur cela, et en s’inspirant de la routage de tâches pour l’apprentissage de plusieurs tâches, le cadre InstructIR propose un bloc de construction d’instruction ou ICB pour permettre des transformations spécifiques à la tâche au sein du modèle. La routage de tâches conventionnelle applique des masques binaires spécifiques à la tâche aux caractéristiques de canal. Cependant, puisque le cadre InstructIR ne connaît pas la dégradation, cette technique n’est pas mise en œuvre directement. De plus, pour les caractéristiques d’image et les instructions encodées, le cadre InstructIR applique la routage de tâches et produit le masque en utilisant une couche linéaire activée à l’aide de la fonction Sigmoid pour produire un ensemble de poids en fonction des embeddings de texte, obtenant ainsi un masque binaire par canal. Le modèle améliore ensuite les caractéristiques conditionnées en utilisant un NAFBlock, et utilise le NAFBlock et le bloc conditionné par instruction pour conditionner les caractéristiques à la fois dans le bloc d’encodeur et le bloc de décodeur.

Bien que le cadre InstructIR ne conditionne pas explicitement les filtres du réseau neuronal, le masque permet au modèle de sélectionner les canaux les plus pertinents sur la base de l’instruction et des informations d’image.
InstructIR : Mise en œuvre et Résultats
Le modèle InstructIR est entraînable de bout en bout, et le modèle d’image n’a pas besoin d’être pré-entraîné. Seules les projections d’incrustation de texte et la tête de classification doivent être formées. L’encodeur de texte est initialisé en utilisant un encodeur BGE, un encodeur similaire à BERT qui est pré-entraîné sur une grande quantité de données supervisées et non supervisées pour l’encodage de phrases génériques. Le cadre InstructIR utilise le modèle NAFNet en tant que modèle d’image, et l’architecture de NAFNet se compose d’un encodeur-décodeur à 4 niveaux avec un nombre variable de blocs à chaque niveau. Le modèle ajoute également 4 blocs intermédiaires entre l’encodeur et le décodeur pour améliorer davantage les caractéristiques. De plus, au lieu de concaténer pour les connexions de saut, le décodeur met en œuvre l’addition, et le modèle InstructIR met en œuvre uniquement le bloc conditionné par instruction ou ICB pour la routage de tâches dans l’encodeur et le décodeur. Ensuite, le modèle InstructIR est optimisé en utilisant la perte entre l’image restaurée et l’image propre de référence, et la perte d’entropie croisée est utilisée pour la tête de classification de l’encodeur de texte. Le modèle InstructIR utilise l’optimiseur AdamW avec une taille de lot de 32 et un taux d’apprentissage de 5e-4 pendant près de 500 époques, et met également en œuvre la décroissance du taux d’apprentissage de cosine annealing. Puisque le modèle d’image dans le cadre InstructIR ne comprend que 16 millions de paramètres, et qu’il n’y a que 100 000 paramètres de projection de texte appris, le cadre InstructIR peut être facilement entraîné sur des GPU standard, ce qui réduit les coûts de calcul et augmente l’applicabilité.
Résultats de dégradation multiple
Pour les dégradations multiples et les restaurations multi-tâches, le cadre InstructIR définit deux configurations initiales :
- 3D pour les modèles de dégradation à trois niveaux pour traiter les problèmes de dégradation tels que la suppression de la brume, la réduction du bruit et la suppression de la pluie.
- 5D pour les modèles de dégradation à cinq niveaux pour traiter les problèmes de dégradation tels que la réduction du bruit, l’amélioration de la lumière faible, la suppression de la brume, la réduction du bruit et la suppression de la pluie.
Les performances des modèles 5D sont démontrées dans le tableau suivant, et les compare aux modèles de restauration d’images et tout-en-un de pointe.

Comme on peut l’observer, le cadre InstructIR avec un modèle d’image simple et seulement 16 millions de paramètres peut traiter avec succès cinq différentes tâches de restauration d’images grâce au guidage basé sur les instructions, et fournit des résultats compétitifs. Le tableau suivant démontre les performances du cadre sur les modèles 3D, et les résultats sont comparables aux résultats ci-dessus.

Le point fort du cadre InstructIR est la restauration d’images basée sur les instructions, et la figure suivante démontre les capacités incroyables du modèle InstructIR pour comprendre une large gamme d’instructions pour une tâche donnée. De plus, pour une instruction adverse, le modèle InstructIR effectue une identité qui n’est pas forcée.

Pensées finales
La restauration d’images est un problème fondamental en vision par ordinateur, car elle vise à récupérer une image de haute qualité et propre à partir d’une image qui présente des dégradations. Dans la vision par ordinateur de bas niveau, les dégradations sont un terme utilisé pour représenter les effets désagréables observés dans une image, tels que le flou de mouvement, la brume, le bruit, la faible plage dynamique, etc. Dans cet article, nous avons discuté d’InstructIR, le premier cadre de restauration d’images qui vise à guider le modèle de restauration d’images en utilisant des instructions écrites par l’homme. Pour des invites de langage naturel, le modèle InstructIR peut récupérer des images de haute qualité à partir de leurs contreparties dégradées et prend également en compte plusieurs types de dégradation. Le cadre InstructIR est capable de fournir des performances de pointe pour une large gamme de tâches de restauration d’images, y compris la suppression de la pluie, la réduction du bruit, la suppression de la brume, la suppression du flou et l’amélioration des images à faible luminosité.












