Brevet FR3130056A1 — publié le 20230609

Procédé de pilotage automatique d’une chaîne de traitement d’images Un aspect de l’invention concerne un procédé de pilotage automatique d’une chaîne de traitement d’images (200), comportant les étapes suivantes : Entraînement par renforcement d’un réseau de neurones artificiels (302), consistant pour chaque image (I) d’une base de données d’entraînement, à mettre à jour un ensemble de paramètres du réseau de neurones artificiels (302) en fonction d’une récompense calculée à partir d’une image (I’) traitée obtenue en fournissant l’image (I) à un simulateur de la chaîne de traitement d’images piloté avec un ensemble de jeux de paramètres de pilotage (P) obtenu en utilisant le réseau de neurones artificiels (302) sur un ensemble de données (D) extrait de l’image (I) ; Pour chaque image (I) à traiter, pilotage de la chaîne de traitement d’images (200) avec un ensemble de jeux de paramètres de pilotage (P) obtenu en utilisant le réseau de neurones artificiels (302) entraîné sur un ensemble de données (D) extrait de l’image (I). Figure à publier avec l’abrégé : Figure 1 Procédé de pilotage automatique d’une chaîne de traitement d’images DOMAINE TECHNIQUE DE L’INVENTION Le domaine technique de l’invention est celui du traitement d’images et plus particulièrement celui du pilotage d’une chaîne de traitement d’images. La présente invention concerne un procédé de pilotage automatique d’une chaîne de traitement d’images. La présente invention concerne également un système, un produit-programme d’ordinateur et un support d’enregistrement adaptés à la mise en œuvre du procédé selon l’invention. ARRIERE-PLAN TECHNOLOGIQUE DE L’INVENTION De nombreux dispositifs optroniques, tels que les viseurs pour véhicules terrestres, maritimes ou aériens, les jumelles, les caméras de surveillance et manière générale tout système comprenant une caméra, mettent en œuvre une chaîne de traitement d’images comportant une série de modules réalisant chacun une fonction de traitement différente sur les images qui leur sont fournies, par exemple une correction ou une réduction de bruit. Le fonctionnement de chacun de ces modules est ajusté à l’aide d’un jeu de paramètres, c’est-à-dire que le traitement sur les images réalisé par chaque module varie en fonction de son jeu de paramètres. Actuellement, chaque jeu de paramètres est fixe et sa valeur est déterminée manuellement par des experts. Ainsi, la valeur du jeu de paramètres ne dépend pas du contenu de l’image, c’est-à-dire de la scène représentée dans l’image, et peut donc être mis en défaut sur certaines scènes atypiques. Une solution pourrait consister à ajuster automatiquement chaque jeu de paramètres à l’aide d’une loi de pilotage variable. Cependant, comme d’une part, le nombre de paramètres est important et que certains paramètres sont communs à plusieurs jeux de paramètres ou ont des effets croisés, et que d’autre part, certains paramètres ont une influence sur la qualité de l’image qui est une donnée subjective, une telle loi de pilotage est difficile à déterminer. Il existe donc un besoin de déterminer automatiquement pour chaque image, chaque jeu de paramètres optimal pour le traitement de l’image par la chaîne de traitement d’images. L’invention offre une solution aux problèmes évoqués précédemment, en permettant pour chaque image à traiter, d’obtenir pour chaque module de la chaîne de traitement d’images, un jeu de paramètres permettant de traiter l’image de manière optimale, et ceci sans nécessiter l’expertise de spécialistes. Un premier aspect de l’invention concerne un procédé de pilotage automatique d’une chaîne de traitement d’images configurée pour fournir une image traitée à partir d’une image non traitée, la chaîne de traitement d’images comprenant une pluralité de modules de traitement d’images et étant pilotée via un ensemble de jeux de paramètres de pilotage comprenant un jeu de paramètres de pilotage par module de traitement d’images, le procédé comportant les étapes suivantes : Entraînement par renforcement d’un réseau de neurones artificiels configuré pour fournir à partir d’un ensemble de données extrait d’une image non traitée, un ensemble de jeux de paramètres de pilotage, le réseau de neurones artificiels présentant un ensemble de paramètres et étant entraîné sur une base de données d’entraînement comportant une pluralité d’images non traitées chacune associée à un ensemble de données extrait de l’image, l’entraînement comprenant les sous-étapes suivantes pour chaque image non traitée de la base de données d’entraînement : Utilisation du réseau de neurones artificiels sur l’ensemble de données associé à l’image non traitée, pour obtenir un ensemble de jeux de paramètres de pilotage ; Traitement de l’image non traitée en pilotant un simulateur de la chaîne de traitement d’images avec l’ensemble de jeux de paramètres de pilotage obtenu, pour obtenir une image traitée ; Calcul d’une récompense à partir de l’image traitée obtenue ; Mise à jour de l’ensemble de paramètres du réseau de neurones artificiels en fonction de la récompense calculée ; Pour chaque image à traiter : Extraction d’un ensemble de données de l’image à traiter ; Utilisation sur l’ensemble de données extrait, du réseau de neurones artificiels entraîné, pour obtenir un ensemble de jeux de paramètres de pilotage ; Pilotage de la chaîne de traitement d’images avec l’ensemble de jeux de paramètres de pilotage obtenu, pour le traitement de l’image à traiter. Grâce à l’invention, l’ensemble de jeux de paramètres permettant de piloter la chaîne de traitement d’images est ajusté à chaque nouvelle image à traiter, grâce à un réseau de neurones artificiels entraîné pour fournir l’ensemble de jeux de paramètres en fonction d’un ensemble de données extrait de l’image. Le pilotage de la chaîne de traitement d’images est donc adapté en fonction des caractéristiques de l’image et donc de la scène représentée dans l’image, ce qui permet un traitement optimal de l’image, et ceci automatiquement. Le réseau de neurones artificiels a été entraîné par renforcement en utilisant une récompense liée à la qualité de l’image traitée obtenue, ce qui permet d’obtenir un ensemble de jeux de paramètres permettant d’optimiser la qualité de l’image traitée pour chaque image à traiter. Le recours à l’entraînement par renforcement permet de ne pas avoir à utiliser une base de données d’entraînement annotée, c’est-à-dire comprenant l’ensemble de jeux de paramètres désiré pour chaque ensemble de données extrait, comme c’est le cas pour un entraînement supervisé. En effet, l’élaboration d’une telle base de données d’entraînement annotée nécessiterait l’intervention de spécialistes pour la détermination de chaque ensemble de jeux de paramètres désiré qui serait alors subjective et dépendante de la chaîne de traitement d’images considérée. De plus, comme l’entraînement par renforcement ne nécessite pas d’intervention humaine, la complexité de la chaîne de traitement d’images n’est pas limitée. Outre les caractéristiques qui viennent d’être évoquées dans le paragraphe précédent, le procédé selon l’invention peut présenter une ou plusieurs caractéristiques complémentaires parmi les suivantes, considérées individuellement ou selon toutes les combinaisons techniquement possibles. Selon une variante de réalisation, chaque module de traitement d’images est choisi parmi les modules de traitement d’images suivants : module de contrôle automatique d’un gain d’un capteur, module d’application de tables de correction, module de réduction du bruit, module de contrôle automatique d’histogramme. Selon une variante de réalisation compatible avec la variante de réalisation précédente, chaque ensemble de données extrait d’une image comporte au moins une donnée choisie parmi les données suivantes : histogramme d’au moins une zone de l’image, moyenne et/ou écart-type d’au moins une zone de l’image, taille et/ou nombre de sous-groupes dans l’image, contraste de l’image, nombre de pixel saturés. Selon une variante de réalisation compatible avec les variantes de réalisation précédentes, chaque récompense est une combinaison de métriques choisies parmi les métriques suivantes : rapport signal sur bruit de crête, similarité structurelle, netteté, dynamique, nombres de pixels saturés. Un deuxième aspect de l’invention concerne un système de pilotage automatique d’une chaîne de traitement d’images configurée pour fournir une image traitée à partir d’une image non traitée, la chaîne de traitement d’images comprenant une pluralité de modules de traitement d’images et étant pilotée via un ensemble de jeux de paramètres comprenant un jeu de paramètres par module de traitement d’images, le système comportant : Un module d’extraction de données configuré pour extraire un ensemble de données de chaque image à traiter ; Un réseau de neurones artificiels entraîné par renforcement pour fournir à partir de chaque ensemble de données extrait, un ensemble de jeux de paramètres pour piloter la chaîne de traitement d’images ; Un module de pilotage configuré pour piloter la chaîne de traitement d’images avec chaque ensemble de jeux de paramètres de pilotage fourni par le réseau de neurones artificiels. Selon une variante de réalisation, le système selon l’invention comprend en outre : Une base de données d’entraînement comportant une pluralité d’images non traitées chacune associée à un ensemble de données extrait de l’image ; Un simulateur de la chaîne de traitement d’images configuré pour traiter chaque image non traitée de la base de données d’entraînement, pour fournir une image traitée en étant piloté par un ensemble de jeux de paramètres fourni par le réseau de neurones artificiels pour l’ensemble de données associé à l’image non traitée dans la base de données d’entraînement ; Un module de calcul configurée pour calculer une récompense à partir de chaque image traitée fournie par le simulateur de la chaîne de traitement d’images ; le réseau de neurones artificiels présentant un ensemble de paramètres et étant configuré pour mettre à jour l’ensemble de paramètres en fonction de chaque récompense calculée par le module de calcul. Un autre aspect de l’invention concerne un aéronef comprenant le système selon l’invention. Un autre aspect de l’invention concerne un véhicule maritime ou terrestre comprenant le système selon l’invention. Un troisième aspect de l’invention concerne un produit-programme d’ordinateur comprenant des instructions qui, quand le programme est exécuté sur un ordinateur, conduisent celui-ci à mettre en œuvre les étapes du procédé selon l’invention. Un quatrième aspect de l’invention concerne un support d'enregistrement lisible par ordinateur comprenant des instructions qui, lorsqu'elles sont exécutées par un ordinateur, conduisent celui-ci à mettre en œuvre les étapes du procédé selon l’invention. L’invention et ses différentes applications seront mieux comprises à la lecture de la description qui suit et à l’examen des figures qui l’accompagnent. BREVE DESCRIPTION DES FIGURES Les figures sont présentées à titre indicatif et nullement limitatif de l’invention. La montre une représentation schématique d’une chaîne de traitement d’images à piloter. La est un schéma synoptique illustrant l’enchaînement des étapes d’un procédé selon l’invention. La montre une représentation schématique d’une première étape du procédé selon l’invention. Procédé (100) de pilotage automatique d’une chaîne de traitement d’images (200) configurée pour fournir une image (I’) traitée à partir d’une image (I) non traitée, la chaîne de traitement d’images (200) comprenant une pluralité de modules de traitement d’images (201-1, 201-2, 201-3) et étant pilotée via un ensemble de jeux de paramètres de pilotage (P) comprenant un jeu de paramètres de pilotage (P1, P2, P3) par module de traitement d’images (201-1, 201-2, 201-3), le procédé (100) étant caractérisé en ce qu’il comporte les étapes suivantes : Entraînement (101) par renforcement d’un réseau de neurones artificiels (302) configuré pour fournir à partir d’un ensemble de données (D) extrait d’une image (I) non traitée, un ensemble de jeux de paramètres de pilotage (P), le réseau de neurones artificiels (302) présentant un ensemble de paramètres et étant entraîné sur une base de données d’entraînement (3021) comportant une pluralité d’images (I) non traitées chacune associée à un ensemble de données (D) extrait de l’image (I), l’entraînement (101) comprenant les sous-étapes suivantes pour chaque image (I) non traitée de la base de données d’entraînement (3021) : Utilisation (1011) du réseau de neurones artificiels (302) sur l’ensemble de données (D) associé à l’image (I) non traitée, pour obtenir un ensemble de jeux de paramètres de pilotage (P) ; Traitement (1012) de l’image (I) non traitée en pilotant un simulateur de la chaîne de traitement d’images (3022) avec l’ensemble de jeux de paramètres de pilotage (P) obtenu, pour obtenir une image (I’) traitée ; Calcul (1013) d’une récompense (R) à partir de l’image (I’) traitée obtenue ; Mise à jour (1014) de l’ensemble de paramètres du réseau de neurones artificiels (302) en fonction de la récompense (R) calculée ; Pour chaque image (I) à traiter : Extraction (102) d’un ensemble de données (D) de l’image (I) à traiter ; Utilisation (103) sur l’ensemble de données (D) extrait, du réseau de neurones artificiels (302) entraîné, pour obtenir un ensemble de jeux de paramètres de pilotage (P) ; Pilotage (104) de la chaîne de traitement d’images (200) avec l’ensemble de jeux de paramètres de pilotage (P) obtenu, pour le traitement de l’image (I) à traiter. Procédé (100) selon la revendication 1, dans lequel chaque module de traitement d’images (201-1, 201-2, 201-3) est choisi parmi les modules de traitement d’images (201-1, 201-2, 201-3) suivants : module de contrôle automatique d’un gain d’un capteur, module d’application de tables de correction, module de réduction du bruit, module de contrôle automatique d’histogramme. Procédé (100) selon l’une quelconque des revendications précédentes, dans lequel chaque ensemble de données (D) extrait d’une image (I) comporte au moins une donnée choisie parmi les données suivantes : histogramme d’au moins une zone de l’image (I), moyenne et/ou écart-type d’au moins une zone de l’image (I), taille et/ou nombre de sous-groupes dans l’image (I), contraste de l’image (I), nombre de pixel saturés. Procédé (100) selon l’une quelconque des revendications précédentes, dans lequel chaque récompense (R) est une combinaison de métriques choisies parmi les métriques suivantes : rapport signal sur bruit de crête, similarité structurelle, netteté, dynamique, nombres de pixels saturés. Système (300) de pilotage automatique d’une chaîne de traitement d’images (200) configurée pour fournir une image (I’) traitée à partir d’une image (I) non traitée, la chaîne de traitement d’images (200) comprenant une pluralité de modules de traitement d’images (201-1, 201-2, 201-3) et étant pilotée via un ensemble de jeux de paramètres (P) comprenant un jeu de paramètres (P1, P2, P3) par module de traitement d’images (201-1, 201-2, 201-3), le système (300) étant caractérisé en ce qu’il comporte : Un module d’extraction de données (301) configuré pour extraire un ensemble de données (D) de chaque image (I) à traiter ; Un réseau de neurones artificiels (302) entraîné par renforcement pour fournir à partir de chaque ensemble de données (D) extrait, un ensemble de jeux de paramètres (P) pour piloter la chaîne de traitement d’images (200) ; Un module de pilotage (303) configuré pour piloter la chaîne de traitement d’images (200) avec chaque ensemble de jeux de paramètres de pilotage (P) fourni par le réseau de neurones artificiels (302). Système (300) selon la revendication 5, comprenant en outre : Une base de données d’entraînement (3021) comportant une pluralité d’images (I) non traitées chacune associée à un ensemble de données (D) extrait de l’image (I) ; Un simulateur de la chaîne de traitement d’images (3022) configuré pour traiter chaque image (I) non traitée de la base de données d’entraînement (3021), pour fournir une image (I’) traitée en étant piloté par un ensemble de jeux de paramètres (P) fourni par le réseau de neurones artificiels (302) pour l’ensemble de données (D) associé à l’image (I) non traitée dans la base de données d’entraînement (3021) ; Un module de calcul (3023) configurée pour calculer une récompense (R) à partir de chaque image (I’) traitée fournie par le simulateur de la chaîne de traitement d’images (3022) ; le réseau de neurones artificiels (302) présentant un ensemble de paramètres et étant configuré pour mettre à jour l’ensemble de paramètres en fonction de chaque récompense (R) calculée par le module de calcul (3023). Aéronef comprenant le système selon l’une quelconque des revendications 5 ou 6. Véhicule maritime ou terrestre comprenant le système selon l’une quelconque des revendications 5 ou 6. Produit-programme d’ordinateur comprenant des instructions qui, quand le programme est exécuté sur un ordinateur, conduisent celui-ci à mettre en œuvre les étapes du procédé (100) selon l’une quelconque des revendications 1 à 4. Support d'enregistrement lisible par ordinateur comprenant des instructions qui, lorsqu'elles sont exécutées par un ordinateur, conduisent celui-ci à mettre en œuvre les étapes du procédé (100) selon l’une quelconque des revendications 1 à 4.