FR2884008A1 - Systeme et procede de localisation de points d'interet dans une image d'objet mettant en oeuvre un reseau de neurones - Google Patents

Systeme et procede de localisation de points d'interet dans une image d'objet mettant en oeuvre un reseau de neurones Download PDF

Info

Publication number
FR2884008A1
FR2884008A1 FR0503177A FR0503177A FR2884008A1 FR 2884008 A1 FR2884008 A1 FR 2884008A1 FR 0503177 A FR0503177 A FR 0503177A FR 0503177 A FR0503177 A FR 0503177A FR 2884008 A1 FR2884008 A1 FR 2884008A1
Authority
FR
France
Prior art keywords
neurons
object image
interest
image
intermediate layer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
FR0503177A
Other languages
English (en)
Inventor
Christophe Garcia
Stefan Duffner
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Orange SA
Original Assignee
France Telecom SA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by France Telecom SA filed Critical France Telecom SA
Priority to FR0503177A priority Critical patent/FR2884008A1/fr
Priority to PCT/EP2006/061110 priority patent/WO2006103241A2/fr
Priority to EP06725370A priority patent/EP1866834A2/fr
Priority to US11/910,159 priority patent/US20080201282A1/en
Priority to CNA2006800149363A priority patent/CN101171598A/zh
Priority to JP2008503506A priority patent/JP2008536211A/ja
Publication of FR2884008A1 publication Critical patent/FR2884008A1/fr
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • G06V10/443Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/168Feature extraction; Face representation
    • G06V40/171Local features and components; Facial parts ; Occluding parts, e.g. glasses; Geometrical relationships

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Biomedical Technology (AREA)
  • Evolutionary Computation (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Multimedia (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Human Computer Interaction (AREA)
  • Image Processing (AREA)
  • Image Analysis (AREA)

Abstract

L'invention concerne un système de localisation d'au moins un point d'intérêt dans une image d'objet.Selon l'invention, un tel système met en oeuvre un réseau de neurones artificiels et présente une architecture en couches comprenant :- une couche d'entrée (E) recevant ladite image d'objet ;- au moins une couche intermédiaire (N4), appelée première couche intermédiaire, comprenant une pluralité de neurones (N4l) permettant degénérer au moins une carte de saillance (R5m) associée à ladite image d'objet ; - au moins une couche de sortie (R5) comprenant ladite au moins une carte de saillance (R5m).Cette carte de saillance (R5m) comprend une pluralité de neurones connectés chacun à tous les neurones (N4l) de ladite première couche intermédiaire (N4). Ledit au moins un point d'intérêt est localisé, dans ladite image d'objet, par la position (171-174) d'un maximum global sur ladite au moins une carte de saillance.

Description

Système et procédé de localisation de points d'intérêt dans une image
d'objet mettant en oeuvre un réseau de neurones.
1. Domaine de l'invention Le domaine de l'invention est celui du traitement numérique des images fixes ou animées. Plus précisément, l'invention concerne une technique de localisation d'un ou plusieurs point(s) d'intérêt dans un objet représenté sur une image numérique.
L'invention trouve notamment, mais non exclusivement, une application dans le domaine de la détection de caractéristiques physiques dans les visages présents sur une image numérique ou numérisée, telles que la pupille de l'oeil, le coin des yeux, le bout du nez, la bouche, les sourcils, etc. En effet, la détection automatique de points d'intérêt dans des images de visages est un enjeu majeur dans le domaine de l'analyse faciale.
2. Solutions de l'art antérieur Dans ce domaine, on connaît plusieurs techniques qui consistent, pour la plupart, à rechercher et détecter de manière indépendante chaque élément facial particulier, au moyen de filtres dédiés et spécialisés.
La plupart des détecteurs utilisés reposent sur une analyse de la chrominance du visage: les pixels du visage sont étiquetés comme appartenant à la peau ou à des éléments faciaux en fonction de leur couleur.
D'autres détecteurs utilisent les variations du contraste. Pour cela, un détecteur de contour est appliqué, reposant sur l'analyse du gradient lumineux. On tente alors d'identifier les éléments faciaux à partir de la forme des différents contours détectés.
D'autres approches mettent en oeuvre une recherche par corrélation en utilisant des modèles statistiques de chaque élément. Ces modèles sont généralement construits à partir d'une analyse en composantes principales (ACP) à partir d'exemples d'imagettes de chacun des éléments à rechercher ("eigenfeatures").
Certaines techniques connues mettent en oeuvre une seconde phase consistant à appliquer un modèle géométrique de visage à l'ensemble des positions candidates déterminées dans la première phase de détection indépendante de chaque élément. Les éléments détectés en phase initiale forment des constellations de positions candidates et le modèle géométrique pouvant être déformable permet de sélectionner la meilleure constellation.
Une méthode récente permet de s'affranchir du schéma classique à deux étapes (recherches indépendantes des éléments faciaux suivies par l'application de règles géométriques). Cette méthode repose sur l'utilisation de Modèles Actifs d'Apparence (AAMs) et est décrite notamment par D. Cristinacce et T. Cootes, dans "A comparison of shape constrained facial feature detectors" (Proceedings of the 6h International Conference on Automatic Face and Gesture Recognition 2004, Séoul, Corée, pages 375-380, 2004). Elle consiste à prédire la position des éléments faciaux en essayant de faire correspondre un modèle de visage actif sur le visage dans l'image, en adaptant les paramètres d'un modèle linéaire combinant forme et texture. Ce modèle de visage actif est appris à partir de visages sur lesquels les points d'intérêt sont annotés, à partir d'une analyse en composantes principales (ACP) sur les vecteurs encodant la position des points d'intérêt et les textures lumineuses des visages associés.
3. Inconvénients de l'art antérieur Ces différentes techniques connues présentent toutes pour inconvénient principal d'être peu robustes face aux bruits affectant les images de visage, et plus généralement les images d'objets.
En effet, les détecteurs conçus spécifiquement pour la détection des différents éléments faciaux ne résistent pas aux conditions extrêmes d'illumination des images, telles que le sur-éclairage ou le sous éclairage, l'éclairage de coté, de dessous. Ils sont également peu robustes vis-à-vis des variations de qualité de l'image, notamment dans le cas des images de basse résolution issues de flux vidéo (acquises par exemple au moyen d'une "webcam") ou préalablement compressées.
Les méthodes reposant sur l'analyse de la chrominance (qui mettent en oeuvre un filtrage de la teinte chair) sont également sensibles aux conditions d'éclairage. En outre, elles ne peuvent pas être appliquées aux images en niveaux de gris.
Un autre inconvénient de ces techniques connues, reposant sur la détection indépendante de différents points d'intérêt, est qu'elles sont totalement inefficaces lorsque ces points d'intérêt sont occultés, ce qui est le cas par exemple pour les yeux dans le cas du port de lunettes noires, pour la bouche en présence de barbe, ou lorsqu'une main vient la cacher, et plus généralement en cas de fortes dégradations locales de l'image.
L'échec dans la détection de plusieurs éléments ou même d'un seul n'est généralement pas corrigé par l'utilisation postérieure d'un modèle de visage géométrique. Ce dernier n'est utilisé que lorsque il s'agit de choisir entre plusieurs positions candidates, qui doivent impérativement avoir été détectées dans l'étape précédente.
Ces différents inconvénients sont partiellement compensés dans les méthodes reposant sur des visages actifs, qui permettent une recherche globale des éléments en utilisant conjointement les informations de forme et de texture. Cependant, ces dernières ont pour autre inconvénient de reposer sur un processus d'optimisation lent et instable, qui dépend de centaines de paramètres qu'il s'agit de déterminer itérativement durant la recherche, ce qui est particulièrement long et fastidieux.
De plus, les modèles statistiques utilisés étant linéaires, créés par ACP, ils sont peu robustes aux variations globales de l'image, notamment aux variations d'éclairage.
Ils sont de plus peu robustes vis-à-vis d'occultations partielles du visage.
4. Objectifs de l'invention L'invention a notamment pour objectif de pallier ces inconvénients de l'art antérieur.
Plus précisément, un objectif de l'invention est de fournir une technique de localisation d'un ou plusieurs point(s) d'intérêt dans une image représentative d'un objet qui ne nécessite pas de développement long et fastidieux de filtres spécifiques à chaque point d'intérêt que l'on veut pouvoir localiser, et à chaque type d'objet.
Un autre objectif de l'invention est de proposer une telle technique de localisation qui soit particulièrement robuste à tous les bruits pouvant affecter l'image, tels que les conditions d'illumination, les variations chromatiques, les occultations partielles, etc. L'invention a encore pour objectif de fournir une telle technique qui prenne en compte les occultations affectant partiellement les images, et qui permette l'inférence de la position des points occultés.
L'invention a également pour objectif de proposer une telle technique qui soit simple à mettre en oeuvre et peu coûteuse à implémenter.
Un autre objectif de l'invention est de fournir une telle technique qui soit particulièrement bien adaptée à la détection d'éléments faciaux dans des images de visages.
5. Caractéristiques essentielles de l'invention Ces objectifs, ainsi que d'autres qui apparaîtront par la suite, sont atteints à l'aide d'un système de localisation d'au moins un point d'intérêt dans une image d'objet, qui met en oeuvre un réseau de neurones artificiels et présente une architecture en couches comprenant: - une couche d'entrée recevant ladite image d'objet; - au moins une couche intermédiaire, appelée première couche intermédiaire, comprenant une pluralité de neurones permettant de générer au moins une carte de saillance associée à ladite image d'objet; - au moins une couche de sortie comprenant ladite au moins une carte de saillance, qui comprend elle-même une pluralité de neurones connectés chacun à tous les neurones de ladite première couche intermédiaire.
Ledit au moins un point d'intérêt est localisé, dans ladite image d'objet, par la position d'un maximum global sur ladite au moins une carte de saillance.
Ainsi, l'invention repose sur une approche tout à fait nouvelle et inventive de la détection d'un ou plusieurs points d'intérêt dans une image représentative d'un objet, puisqu'elle propose d'utiliser une architecture neuronale en couches, qui permet de générer en sortie une ou plusieurs cartes de saillance permettant une détection directe du ou des points d'intérêt à localiser, par simple recherche de maximum.
L'invention propose donc une recherche globale, sur l'ensemble de l'image d'objet, des différents points d'intérêt par le réseau de neurones, ce qui permet notamment de tenir compte des positions relatives de ces points, et permet également de s'affranchir des problèmes liés à leur occultation totale ou partielle.
Il n'est en outre plus nécessaire de concevoir et développer des filtres dédiés à la détection des différents points d'intérêt, ces derniers étant localisés automatiquement par le réseau de neurones après achèvement d'une phase préliminaire d'apprentissage.
Une telle architecture neuronale s'avère en outre plus robuste que les techniques antérieures aux éventuels problèmes d'éclairage des images d'objets.
Préférentiellement, ladite couche de sortie comprend au moins deux cartes de saillance associées chacune à un point d'intérêt distinct. On peut ainsi rechercher simultanément plusieurs points d'intérêt sur une même image, en dédiant chaque carte de saillance à un point d'intérêt particulier: la localisation de ce point se fait alors par recherche d'un unique maximum sur chaque carte, ce qui est plus facile à mettre en oeuvre qu'une recherche simultanée de plusieurs maxima locaux sur une carte de saillance globale, associée à tous les points d'intérêt.
Selon une caractéristique avantageuse, ladite image d'objet est une image de visage. Les points d'intérêt recherchés sont alors des traits physiques permanents, tels que les yeux, le nez, la bouche, les sourcils, etc. Avantageusement, un tel système de localisation comprend également au moins une deuxième couche intermédiaire de convolution comprenant une pluralité de neurones. Une telle couche peut se spécialiser dans la détection d'éléments de bas niveaux, tels que des lignes de contraste, dans l'image d'objet.
De manière préférentielle, un tel système de localisation comprend également au moins une troisième couche intermédiaire de souséchantillonnage comprenant une pluralité de neurones. On réduit ainsi la dimension de l'image sur laquelle on travaille.
Dans un mode de réalisation préférentiel de l'invention, un tel système de localisation comprend, entre ladite couche d'entrée et ladite première couche intermédiaire: - une deuxième couche intermédiaire de convolution comprenant une pluralité de neurones et permettant de détecter au moins une forme élémentaire de type ligne dans ladite image d'objet, ladite deuxième couche intermédiaire délivrant une image d'objet convoluée; une troisième couche intermédiaire de sous-échantillonnage comprenant une pluralité de neurones et permettant de réduire la dimension de ladite image d'objet convoluée, ladite troisième couche intermédiaire délivrant une image d'objet convoluée réduite; - une quatrième couche intermédiaire de convolution comprenant une pluralité de neurones et permettant de détecter au moins une forme complexe de type coin dans ladite image d'objet convoluée réduite.
L'invention concerne aussi un procédé d'apprentissage d'un réseau de neurones d'un système de localisation d'au moins un point d'intérêt dans une image d'objet tel que décrit précédemment. Chacun desdits neurones présente au moins une entrée pondérée par un poids synaptique, et un biais. Un tel procédé d'apprentissage comprend des étapes de: construction d'une base d'apprentissage comprenant une pluralité d'images d'objet annotées en fonction dudit au moins un point d'intérêt à localiser; - initialisation desdits poids synaptiques et/ou desdits biais; - pour chacune desdites images annotées de ladite base d'apprentissage: préparation de ladite au moins une carte de saillance désirée en sortie à partir dudit au moins un point d'intérêt annoté sur ladite image; présentation de ladite image en entrée dudit système de localisation et détermination de ladite au moins une carte de saillance délivrée en sortie; - minimisation d'une différence entre lesdites cartes de saillance désirées et délivrées en sortie sur l'ensemble desdites images annotées de ladite base d'apprentissage, de façon à déterminer lesdits poids synaptiques et/ou lesdits biais optimaux.
Le réseau de neurones apprend ainsi, en fonction d'exemples annotés manuellement par un utilisateur, à reconnaître certains points d'intérêt sur les images d'objet. Il sera ensuite capable de les localiser dans une image quelconque fournie en entrée du réseau.
Avantageusement, ladite minimisation est une minimisation d'une erreur quadratique moyenne entre lesdites cartes de saillance désirées et délivrées en sortie et met en oeuvre un algorithme itératif de rétropropagation du gradient. Cet algorithme est décrit en détail en annexe 2 du présent document, et permet une convergence rapide vers les valeurs optimales des différents biais et poids synaptiques du réseau.
L'invention concerne aussi un procédé de localisation d'au moins un point d'intérêt dans une image d'objet, qui comprend des étapes de: présentation de ladite image d'objet en entrée d'une architecture en couches mettant en oeuvre un réseau de neurones artificiels; - activation successive d'au moins une couche intermédiaire, appelée première couche intermédiaire, comprenant une pluralité de neurones et permettant de générer au moins une carte de saillance associée à ladite image d'objet, et d'au moins une couche de sortie comprenant ladite au moins une carte de saillance, ladite carte de saillance comprenant au moins deux neurones connectés chacun à tous les neurones de ladite première couche intermédiaire; - localisation dudit au moins un point d'intérêt dans ladite image d'objet par recherche, dans ladite au moins une carte de saillance, d'une position d'un maximum global sur ladite carte.
Selon une caractéristique avantageuse de l'invention, un tel procédé de localisation comprend des étapes préalables de: - détection, dans une image quelconque, d'une zone englobant ledit objet, et constituant ladite image d'objet; - redimensionnement de ladite image d'objet.
Cette détection peut se faire à partir d'un détecteur classique bien connu de l'Homme du Métier, par exemple un détecteur de visages qui permet de déterminer une boîte englobant un visage dans une image complexe. Le redimensionnement peut être effectué automatiquement par le détecteur, ou indépendamment par des moyens dédiés: il permet de fournir en entrée du réseau de neurones des images présentant toutes la même taille.
L'invention concerne encore un programme d'ordinateur comprenant des instructions de code de programme pour l'exécution du procédé d'apprentissage d'un réseau de neurones décrit précédemment lorsque ledit programme est exécuté par un processeur, ainsi qu'un programme d'ordinateur comprenant des instructions de code de programme pour l'exécution du procédé de localisation d'au moins un point d'intérêt dans une image d'objet décrit précédemment lorsque ledit programme est exécuté par un processeur.
De tels programmes peuvent être téléchargés depuis un réseau de communication (par exemple le réseau mondial Internet) et/ou stockés dans un support de données lisible par ordinateur.
6. Liste des figures D'autres caractéristiques et avantages de l'invention apparaîtront plus clairement à la lecture de la description suivante d'un mode de réalisation préférentiel, donné à titre de simple exemple illustratif et non limitatif, et des dessins annexés, parmi lesquels: - la figure 1 présente un synoptique de l'architecture neuronale du système de localisation de points d'intérêt dans une image d'objet de l'invention; la figure 2 illustre plus précisément une carte de convolution, suivie d'une carte de sous-échantillonnage, dans l'architecture neuronale de la figure 1; - les figures 3a et 3b présentent quelques exemples d'images de visage de la base d'apprentissage; la figure 4 décrit les grandes étapes du procédé de localisation d'éléments faciaux dans une image de visage selon l'invention; la figure 5 présente un schéma synoptique simplifié du système de localisation de l'invention; - la figure 6 présente un exemple de réseau de neurones artificiels de type perceptron multi-couches; - la figure 7 illustre plus précisément la structure d'un neurone artificiel; la figure 8 présente la caractéristique de la fonction tangente hyperbolique utilisée comme fonction de transfert pour les neurones sigmoïdes.
7. Description d'un mode de réalisation de l'invention Le principe général de l'invention repose sur l'utilisation d'une architecture neuronale pour pouvoir détecter de manière automatique un ou plusieurs point(s) d'intérêt dans des images d'objet (plus particulièrement d'objets semi-rigides), et notamment dans des images de visages (détection de traits permanents tels que les yeux, le nez ou la bouche). Plus précisément, le principe de l'invention consiste à construire un réseau de neurones permettant d'apprendre à transformer, en une passe, une image d'objet en plusieurs cartes de saillance dont les positions des maxima correspondent aux positions de points d'intérêts sélectionnés par l'utilisateur dans l'image d'objet fournie en entrée.
Cette architecture neuronale est composée de plusieurs couches hétérogènes, qui permettent de développer automatiquement des détecteurs bas-niveau robustes, tout en apprenant des règles permettant de régir les dispositions relatives plausibles des éléments détectés et de prendre en compte naturellement toute information disponible pour localiser d'éventuels éléments occultés.
Tous les poids de connexions des neurones sont réglés au cours d'une phase d'apprentissage, à partir d'un ensemble d'images d'objets pré- segmentées, et des positions des points d'intérêt dans ces images.
L'architecture neuronale agit par la suite comme une cascade de filtres permettant de transformer une zone d'image contenant un objet, préalablement détectée dans une image de plus grande taille ou dans une séquence vidéo, en un ensemble de cartes numériques, de la taille de l'image en entrée, dont les éléments sont compris entre -1 et 1. Chaque carte correspond à un point d'intérêt particulier dont la position est repérée par une simple recherche de la position de l'élément dont la valeur est maximale.
On s'attache, dans toute la suite de ce document, à décrire plus particulièrement un exemple de réalisation de l'invention dans le cadre de la détection de plusieurs éléments faciaux sur une image de visage. L'invention s'applique cependant bien sûr aussi à la détection de points d'intérêt quelconques dans une image représentative d'un objet, comme par exemple la détection d'éléments de la carrosserie d'un véhicule automobile, ou de caractéristiques architecturales d'un ensemble d'immeubles.
Dans ce contexte de la détection de caractéristiques physiques dans des images de visage, le procédé de l'invention permet une détection robuste des éléments faciaux dans des visages, en poses variées (orientations, semi-frontalité), avec des expressions faciales variées, pouvant contenir des éléments occultants, et apparaissant dans des images qui présentent une variabilité importante en termes de résolution, de contraste et d'illumination.
7.1 Architecture neuronale On présente, en relation avec la figure 1, l'architecture du réseau de neurones artificiels du système de localisation de points d'intérêt de l'invention. Le principe de fonctionnement de tels neurones artificiels, ainsi que leur structure, est rappelé en annexe 1, qui fait partie intégrante de la présente description. Un tel réseau de neurones est par exemple un réseau de type perceptron multi-couches, également décrit en annexe 1.
Un tel réseau de neurones est constitué de six couches hétérogènes interconnectées référencées E, C,, S2, C3, N4 et R5, qui contiennent une série de cartes issues d'une succession d'opérations de convolution et de sous-échantillonnage. Ces différentes couches réalisent, par leurs actions successives et combinées, l'extraction de primitives dans l'image présentée en entrée pour conduire à la production de cartes de sorties R5m, d'où les positions des points d'intérêt peuvent être facilement déterminées.
Plus précisément, l'architecture proposée comprend: une couche d'entrée E: il s'agit d'une rétine, qui est une matrice image de taille H x L où H est le nombre de lignes et L, le nombre de colonnes. La couche d'entrée E reçoit les éléments d'une zone d'image de même taille H x L. Pour chaque pixel P; i de l'image présentée en entrée du réseau de neurones, en niveaux de gris (P;i variant de 0 à 255), l'élément correspondant de la matrice E est E= (P;j-128)/128, de valeur comprise entre -1 et 1. On choisit par exemple H=56 et L=46. HxL est donc aussi la taille des images de visages de la base d'apprentissage utilisée pour le paramétrage du réseau de neurones, et des images de visage dans lesquelles on souhaite détecter un ou plusieurs éléments faciaux. Cette taille peut être celle obtenue directement en sortie du détecteur de visage qui extrait les images de visage, d'images de plus grande dimension ou de séquences vidéo. Il peut aussi s'agir de la taille à laquelle sont redimensionnées les images de visage après extraction par le détecteur de visages. De préférence, un tel redimensionnement respecte les proportions naturelles des visages; une première couche de convolution C,, constituée de NC1 cartes référencées C,;. Chaque carte C,; est connectée 10; à la carte d'entrée E, et comprend une pluralité de neurones linéaires (tels que présentés en annexe 1). Chacun de ces neurones est connecté par des synapses à un ensemble de M, x M, éléments voisins dans la carte E (champs réceptif) comme décrit plus en détail sur la figure 2. Chacun de ces neurones reçoit en outre un biais. Ces M, x M, synapses, plus le biais, sont partagées par l'ensemble des neurones de Chaque carte C,; correspond donc au résultat d'une convolution par un noyau M, x M, 11 augmentée d'un biais, dans la carte d'entrée E. Cette convolution se spécialise en un détecteur de certaines formes bas niveaux dans la carte d'entrée comme par exemple des lignes de contraste orientées de l'image. Chaque carte C,; est donc de taille H, x L, où H, = (H - M,+ 1) et L, = (L - M, + 1), pour empêcher les effets de bord de la convolution. Par exemple, la couche C, contient NC1=4 cartes de taille 50 x 41 avec des noyaux de convolution de taille NN1 x NN1 = 7 x 7; - une couche de sous- échantillonnage S2, constituée de NS2 cartes S2. Chaque carte Sei est connectée 12j à une carte correspondante C,;. Chaque neurone d'une carte S2, reçoit la moyenne de M2 x M2 éléments voisins 13 dans la carte C,; (champs réceptif), comme illustré plus en détail sur la figure 2. Chaque neurone multiplie cette moyenne par un poids synaptique, et y ajoute un biais. Poids synaptique et biais, dont les valeurs optimales sont déterminées lors d'une phase d'apprentissage, sont partagés par l'ensemble des neurones de chaque carte S2j. La sortie de chaque neurone est obtenue après passage dans une fonction sigmoïde. Chaque carte S2j est de taille H2 x L2 où H2 = H1/M2 et L2 = L,/M2. Par exemple, la couche S2 contient NS2=4 cartes de taille 25 x 20 avec un sous-échantillonage de 1 pour NN2 x NN2 = 2 x 2; - une couche de convolution C3, constituée de NC3 cartes C3k. Chaque carte C3k est connectée 14, à chacune des cartes S2j de la couche de sous-échantillonnage S2. Les neurones d'une carte C3k sont linéaires, et chacun de ces neurones est connecté par des synapses à un ensemble de M3 x M3 éléments voisins 15 dans chacune des cartes S2j. II reçoit en outre un biais. Les M3 x M3 synapses par carte, plus le biais, sont partagés par l'ensemble des neurones des cartes C3k. Les cartes Cu correspondent au résultat de la somme de NC3 convolutions par des noyaux M3 x M3 15, augmentées d'un biais. Ces convolutions permettent d'extraire des caractéristiques de plus haut niveau, telles que des coins, en combinant des extractions sur les cartes de convolution Cu en entrée. Chaque carte C3k est de taille H3 x L3 où H3 = (H2 - M3 + 1) et L3 = (L2 - M3 + 1). Par exemple, la couche C3 contient NC3=4 cartes de taille 21 x 16 avec un noyau de convolution de taille NN3 x NN3 = 5 x 5; - une couche N4 de NN4 neurones sigmoïdes N41. Chaque neurone de la couche N4 est connecté 16, à tous les neurones de la couche C3, et reçoit un biais. Ces neurones N41 permettent d'apprendre à générer les cartes de sortie R5m en maximisant les réponses sur les positions des points d'intérêt dans chacune de ces cartes, tout en prenant en compte la globalité des cartes C3, ce qui permet de détecter un point d'intérêt particulier en tenant compte de la détection des autres. On choisit par exemple NN4=100 neurones, et la fonction tangente hyperbolique (notée th ou tanh) pour la fonction de transfert des neurones sigmoïdes; une couche R5 de cartes, constituée de NR5 cartes RSn, une pour chaque point d'intérêt choisi par l'utilisateur (oeil droit, ceil gauche, nez, bouche, etc.).
Chaque carte R5m est connectée à tous les neurones de la couche N4. Les neurones d'une carte R5m sont sigmoïdes, et chacun est connecté à tous les neurones de la couche N4. Chaque carte R5m est de taille H x L, qui est la taille de la couche d'entrée E. On choisit par exemple NR5=4 cartes de taille 56 x 46. Après activation du réseau de neurones, la position du neurone 171, 172, 173, 174 présentant une sortie maximale dans chaque carte R5m correspond à la position de l'élément facial correspondant dans l'image présentée en entrée du réseau. On notera que, dans une variante de réalisation de l'invention, la couche R5 ne compte qu'une unique carte de saillance sur laquelle figurent tous les points d'intérêt que l'on souhaite localiser dans l'image.
La figure 2 illustre un exemple d'une carte C11 de convolution 5 x 5 11 suivie d'une carte S2 de sous-échantillonnage 2 x 2 13. Comme on le notera, la convolution effectuée ne tient pas compte des pixels situés sur les bords de la carte Cl,, afin d'éviter les effets de bord.
Afin de pouvoir détecter les points d'intérêt sur des images de visage, il est nécessaire de paramétrer le réseau de neurones de la figure 1 lors d'une phase d'apprentissage décrite ci-après.
7.2 Apprentissage à partir d'une base d'images Après construction de l'architecture neuronale en couches décrite ci-dessus, on constitue donc une base d'apprentissage d'images annotées, de façon à régler par apprentissage les poids des synapses de tous les neurones de l'architecture.
Pour ce faire, on procède comme décrit ci-dessous.
On extrait tout d'abord manuellement un ensemble T d'images de visages d'un corpus d'images de taille importante. Chaque image de visage est redimensionnée à la taille H x L de la couche d'entrée E de l'architecture neuronale, de préférence en respectant les proportions naturelles des visages. On veille à extraire des images de visages d'apparences variées.
Dans un mode particulier de réalisation, dans lequel on s'intéresse à la détection de quatre points d'intérêt dans le visage ( à savoir oeil droit, oeil gauche, nez et bouche), les positions des yeux, du nez et du centre de la bouche sont repérées manuellement, comme illustré sur la figure 3a:on obtient ainsi un ensemble d'images annotées en fonction des points d'intérêt que le réseau de neurones va devoir apprendre à localiser. Ces points d'intérêt à localiser dans les images peuvent être choisis librement par l'utilisateur.
De manière à générer automatiquement des exemples plus variés, on applique un ensemble de transformations à ces images, ainsi qu'aux positions annotées, telles que des translations selon les colonnes et selon les lignes (par exemple jusqu'à 6 pixels à gauche, à droite, en haut, en bas), des rotations par rapport au centre de l'image par des angles variant de -25 à +25 degrés, des zooms arrière et avant de 0.8 à 1. 2 fois la taille du visage. A partir d'une image donnée, on obtient ainsi une pluralité d'images transformées, comme illustré par la figure 3b. Les variations appliquées aux images de visages permettent de prendre en compte en phase d'apprentissage, non seulement les apparences possibles des visages, mais aussi des erreurs possibles de centrage lors de la détection automatique des visages.
L'ensemble T est appelé l'ensemble d'apprentissage.
A titre d'exemple, on peut utiliser une base d'apprentissage d'environ 2500 images de visages annotées manuellement en fonction de la position du centre de l' eil gauche, de l'oeil droit, du nez et de la bouche. Après application de modifications géométriques sur ces images annotées (translations, rotations, zooms, etc.), on obtient environ 32000 exemples de visages annotés présentant une variabilité importante.
On procède ensuite à l'apprentissage automatique de l'ensemble des poids synaptiques et des biais de l'architecture neuronale. Pour cela, on initialise tout d'abord les biais et poids synaptiques de l'ensemble des neurones de manière aléatoire, à de petites valeurs. Les NT images I de l'ensemble T sont ensuite présentées dans un ordre quelconque en couche d'entrée E du réseau de neurones. Pour chaque image I présentée, on prépare les cartes de sorties D5r,, que le réseau de neurones devrait délivrer dans la couche R5 si son fonctionnement était optimal: ces cartes D5m sont appelées cartes désirées.
Sur chacune de ces cartes D5m, on fixe la valeur de l'ensemble des points à -1, à l'exception du point dont la position correspond à celle de l'élément facial que la carte D5m doit permettre de localiser, et dont la valeur désirée est de 1. Ces cartes D5m sont illustrées en figure 3a, sur laquelle chaque point correspond au point de valeur +1, dont la position correspond à celle d'un élément facial à localiser (oeil droit, oeil gauche, nez ou centre de la bouche).
Une fois les cartes D5m préparées, la couche d'entrée E et les couches C,, S2, C3, N4, et R5 du réseau de neurones sont activées l'une après l'autre.
En couche R5, on obtient alors la réponse du réseau de neurones à l'image I. Le but est d'obtenir des cartes R5m identiques aux cartes désirées D5m. On définit donc une fonction objectif à minimiser pour atteindre ce but: xa; 1 z O = 1(R1 D5,) où (ij) correspond à l'élément en NTxNRSxHxGh_, n,i)EHvc ligne i et colonne j de chaque carte R5m. Il s'agit donc de minimiser l'erreur moyenne quadratique entre les cartes produites R5m et désirées D5,n sur l'ensemble des images annotées de l'ensemble d'apprentissage T. Pour minimiser la fonction objectif O, on utilise l'algorithme itératif de rétropropagation du gradient, dont le principe est rappelé en annexe 2, qui fait partie intégrante de la présente description. Un tel algorithme de rétropropagation du gradient va ainsi permettre de déterminer l'ensemble des poids synaptiques et biais optimaux de l'ensemble des neurones du réseau.
A titre d'exemple, on peut utiliser les paramètres suivants dans l'algorithme de rétropropagation du gradient: un pas d'apprentissage de 0. 005 pour les neurones des couches C,, S2, C3; - un pas d'apprentissage de 0.001 pour les neurones de la couche N4; un pas d'apprentissage de 0. 0005 pour les neurones de la couche R5; un momentum de 0.2 pour tous les neurones de l'architecture.
L'algorithme de rétropropagation du gradient converge alors vers une solution stable après 25 itérations, si l'on considère qu'une itération de l'algorithme correspond à la présentation de toutes les images de l'ensemble d'apprentissage T. Une fois les valeurs optimales des biais et poids synaptiques déterminées, le réseau de neurones de la figure 1 est prêt à traiter une image de visage numérique quelconque, afin d'en extraire les points d'intérêt annotés sur les images de l'ensemble d'apprentissage T. 7.3 Recherche des points d'intérêt dans une image On peut désormais utiliser le réseau de neurones de la figure 1, réglé en phase d'apprentissage, pour la recherche des éléments faciaux dans une image de visage. Le procédé mis en oeuvre pour réaliser une telle localisation est présenté en figure 4.
On détecte 40 les visages 44 et 45 présents dans l'image 46 en utilisant un détecteur de visage. Ce dernier localise la boîte englobant l'intérieur de chaque visage 44, 45. Les zones d'images contenues dans chaque boîte englobante sont extraites 41 et constituent les images de visages 47, 48 dans lesquelles doit s'effectuer la recherche des éléments faciaux.
Chaque image de visage extraite 147, 48 est redimensionnée 41 à la taille H x L et est placée en entrée E de l'architecture neuronale de la figure 1. La couche d'entrée E, les couches intermédiaires C,, S2, C3, N4, et la couche de sortie R5 sont activées l'une après l'autre, de façon à réaliser un filtrage 42 de l'image 1 47, 48 par l'architecture neuronale.
En couche R5, on obtient la réponse du réseau de neurones à l'image I 47, 48, sous la forme de quatre cartes de saillance R5n, pour chacune des images I 47, 48.
On localise alors 43 les points d'intérêt dans les images de visage I 47, 48 par recherche des maxima dans chaque carte de saillance R5n,. Plus précisément, dans chacune des cartes RsR on recherche la position telle que (lin,,,,r'fin.r) = aria (ij)EH xmaxL Rs,n pour m E NRs. Cette position correspond à la position recherchée du point d'intérêt (par exemple l'oeil droit) correspondant à cette carte.
Dans un mode de réalisation préférentiel de l'invention, les visages sont détectés 40 dans les images 46 par le détecteur de visage CFF présenté par C. Garcia et M. Delakis, dans "Convolutional Face Finder: a Neural Architecture for Fast and Robust Face Detection, " IEEE Transactions on Pattern Analysis and Machine Intelligence, 26(11): 1408-1422, Novembre 2004.
Un tel détecteur de visages permet en effet de détecter de manière robuste des visages de taille minimale 20x20, penchés jusqu'à 25 degrés et tournés jusqu'à 60 degrés, dans des scènes à fond complexe, et sous des éclairages variables. Le détecteur CFF détermine 40 la boîte englobante des visages détectés 47, 48 et l'intérieur de la boîte est extrait, puis redimensionné 41 à la taille H=56 et L=46. Chaque image est ensuite présentée en entrée du réseau de neurones de la figure 1.
Le procédé de localisation de la figure 4 présente une particulièrement grande robustesse face à la grande variabilité des visages présents dans les images.
On présente désormais succinctement, en relation avec la figure 5, un schéma synoptique simplifié d'un système ou dispositif de localisation de points d'intérêt dans une image d'objet. Un tel système comprend une mémoire M 51, et une unité de traitement 50 équipée d'un processeur!IF, qui est piloté par le programme d'ordinateur Pg 52.
Dans une première phase d'apprentissage, l'unité de traitement 50 reçoit en entrée un ensemble T d'images de visage d'apprentissage, annotées en fonction des points d'intérêt que le système doit pouvoir localiser dans une image, à partir duquel le microprocesseur 03 réalise, selon les instructions du programme Pg 52, la mise en oeuvre d'un algorithme de rétropropagation du gradient permettant d'optimiser les valeurs des biais et poids synaptiques du réseau de neurones.
Ces valeurs optimales 54 sont alors stockées dans la mémoire M 51.
Dans une deuxième phase de recherche de points d'intérêt, les valeurs optimales des biais et poids synaptiques sont chargées depuis la mémoire M 51.
L'unité de traitement 50 reçoit en entrée une image d'objet I, à partir de laquelle le microprocesseur 1uP réalise, selon les instructions du programme Pg 52, un filtrage par le réseau de neurones et une recherche de maxima dans les cartes de saillance obtenues en sortie. En sortie de l'unité de traitement 50, on obtient les coordonnées 53 de chacun des points d'intérêt recherchés dans l'image I. A partir des positions des points d'intérêt détectés grâce à la présente invention, de nombreuses applications deviennent possibles, comme le codage de visages par modèles, l'animation synthétique d'images de visages fixes par déformations locales du visage (en anglais "morphing"), les méthodes de reconnaissance de visages ou d'émotions basées sur une analyse locale de traits caractéristiques (yeux, nez, bouche) et plus généralement les interactions homme-machine utilisant la vision artificielle (suivi de la direction du regard de l'utilisateur, lecture labiale, etc...).
ANNEXE 1: Neurones artificiels et réseaux de neurones perceptron multicouches 1. Généralités Le perceptron multi-couches est un réseau orienté de neurones artificiels organisé en couches, dans lequel l'information voyage dans un seul sens, de la couche d'entrée vers la couche de sortie. La figure 6 présente l'exemple d'un réseau contenant une couche d'entrée 60, deux couches cachées 61 et 62 et une couche de sortie 63. La couche d'entrée 60 représente toujours une couche virtuelle associée aux entrées du système. Elle ne contient aucun neurone. Les couches suivantes 61 à 63 sont des couches de neurones. Dans le cas général, un perceptron multicouches petit posséder un nombre de couches quelconque et un nombre de neurones (ou d'entrées) par couche également quelconque.
Dans l'exemple présenté en figure 6, le réseau de neurones compte 3 entrées, 4 neurones sur la première couche cachée 61, trois neurones sur la deuxième 62 et quatre neurones sur la couche de sortie 63. Les sorties des neurones de la dernière couche 63 correspondent aux sorties du système.
Un neurone artificiel est une unité de calcul qui reçoit un signal d'entrée (X, vecteur de valeurs réelles), au travers de connexions synaptiques qui portent des poids (valeurs réelles w), et délivrent une sortie à valeur réelle y. La figure 7 présente la structure d'un tel neurone artificiel, dont le fonctionnement est décrit dans le paragraphe 2 ci-après.
Les neurones du réseau de la figure 6 sont reliés entre eux, de couche à couche, par les connexions synaptiques pondérées. Ce sont les poids de ces connexions qui gouvernent le fonctionnement du réseau et "programment" une application de l'espace des entrées vers l'espace des sorties à l'aide d'une transformation non linéaire. La création d'un perceptron multi-couches pour résoudre un problème donné passe donc par l'inférence de la meilleure application possible, telle que définie par un ensemble de données d'apprentissage constituées de paires de vecteurs d'entrées et de sorties désirées.
2. Le neurone artificiel Comme indiqué ci-dessus, un neurone artificiel est une unité de calcul qui reçoit un vecteur X, vecteur de n valeurs réelles Ix,,.., x; ,..,xnl, ainsi qu'une valeur fixe valant xo=+1.
Chacune des entrées x;, excite une synapse pondérée par w;. Une fonction de sommation 70 calcule un potentiel V, qui, après passage dans une fonction 5 d'activation (D, délivre une sortie à valeur réelle y.
Le potentiel V s'exprime de la manière suivante: V = La quantité woxo est appelée biais et correspond à une valeur de seuil pour le neurone. La sortie y s'exprime sous la forme: y = (1)(V)= ( La fonction 1 peut prendre différentes formes en fonction des applications visées.
Dans le cadre du procédé de localisation de points d'intérêt de l'invention, deux types de fonctions d'activation sont utilisés: - pour les neurones à fonction d'activation linéaire, on a: 4(x)= x. C'est le cas par exemple des neurones des couches C, et C3 du réseau de la figure 1; pour les neurones à fonction d'activation non-linéaire sigmoïde, on choisit par exemple la fonction tangente hyperbolique, dont la courbe caractéristique est illustrée en figure 8: (x) = tanh(x) = (e. e) à valeurs réelles entre -1 et 1. (e +e) C'est le cas par exemple des neurones des couches S2, N4 et R3 du réseau de la figure 1.
ANNEXE 2: Algorithme de rétropropagation du gradient Comme décrit précédemment dans ce document, l'apprentissage du réseau de neurones consiste à déterminer tous les poids des connexions synaptiques, de façon à obtenir un vecteur de sorties désirées D en fonction d'un vecteur d'entrée X. Pour cela, une base d'apprentissage est constituée, qui consiste en une liste de K paires d'entrée/sortie (Xk, Dk) correspondantes.
En notant Yk les sorties du réseau obtenues à un instant t pour des entrées Xk, on cherche donc à minimiser l'erreur quadratique moyenne sur la couche de sortie:
K
E=KEkoùEk= Dk YklI2 (1).
Pour ce faire, on réalise une descente de gradient, par un algorithme itératif: aE"-" aE"-" aE"-" Et" = E(-" pVE"-" où VER'-" = est le gradient de l'erreur quadratique moyenne à l'instant (t-1) par rapport à l'ensemble des P poids de connexions synaptiques du réseau, et où p est le pas d'apprentissage.
La mise en oeuvre de ce processus de descente de gradient dans un réseau de neurones passe par l'algorithme de rétropropagation du gradient.
Soit un réseau de neurones où: - c=0 est l'indice de la couche d'entrée; c=l..C-1 sont les indices des couches intermédiaires; - c=C est l'indice de la couche de sortie; - i=1 à ne sont les indices des neurones de la couche d'indice c; - S est l'ensemble des neurones de la couche d'indice c-1 connectés aux entrées du neurone i de la couche d'indice c; - w est le poids de la connexion synaptique s'étendant du neurone j au neurone L'algorithme de rétropropagation du gradient fonctionne en deux passes successives, qui sont des passes de propagation directe et de rétropropagation: - lors de la passe de propagation, le signal d'entrée Xk traverse le réseau de neurones et active une réponse Yk en sortie; - lors de la rétropropagation, le signal d'erreur Ek est rétropropagé dans le réseau, ce qui permet de modifier les poids synaptiques pour minimiser l'erreur Ek.
2884008 21 Plus précisément, un tel algorithme comprend les étapes suivantes: Fixer le pas d'apprentissage p à une valeur positive suffisamment petite (de l'ordre de 0.001) Fixer le momentum a à une valeur positive entre 0 et 1 (de l'ordre de 0.2) Initialiser aléatoirement les poids synaptiques du réseau à de petites valeurs Répéter choisir une paire exemple (Xk, Dk): propagation: calculer dans l'ordre des couches les sorties des neurones: Charger l'exemple Xk dans la couche d'entrée: Yo = Xk et assigner D = Dk =j Pour les couches c de 1 à c Pour chaque neurone i de la couche c (i de 1 à nc) Calculer le potentiel: V = w,, y,c._1 et la sortie y;,, =(V)où Y. =LYS,...,y, rétropropagation: calculer dans l'ordre inverse des couches: Pour les couches c de C à 1 Pour chaque neurone i de la couche c (i de 1 à tic) Calculer: (d; y,,c) 4'(V c) si c = C (couche de sortie) Sk,+t (D'(Vt.c) si c C k tels q ue ÎESk,'+I où (D' (x) = 1 tanh2 (x) mettre à jour les poids des synapses arrivant au neurone i Ow' = P Si y + a Aw Vj E S où p est le pas d'apprentissage et a le momentum (Aw = 0 lors de la première itération) w =w +Aw VjES Aw = Aw =w dj E S VjES,c.
- calculer l'erreur quadratique moyenne E (cf. équation 1) Jusqu'à E < e ou si un nombre maximum d'itérations a été atteint.

Claims (12)

REVENDICATIONS
1. Système de localisation d'au moins un point d'intérêt dans une image d'objet, caractérisé en ce qu'il met en oeuvre un réseau de neurones artificiels et présente une architecture en couches comprenant: -une couche d'entrée (E) recevant ladite image d'objet; - au moins une couche intermédiaire (N4), appelée première couche intermédiaire, comprenant une pluralité de neurones (N41) permettant de générer au moins une carte de saillance (R51) associée à ladite image d'objet; - au moins une couche de sortie (R5) comprenant ladite au moins une carte de saillance (Rsn,), ladite carte de saillance comprenant une pluralité de neurones connectés chacun à tous les neurones de ladite première couche intermédiaire, ledit au moins un point d'intérêt étant localisé, dans ladite image d'objet, par la position (171, 172, 173, 174) d'un maximum global sur ladite au moins une carte de saillance.
2. Système de localisation selon la revendication 1, caractérisé en ce que ladite couche de sortie (R5) comprend au moins deux cartes de saillance (R51) associées chacune à un point d'intérêt distinct.
3. Système de localisation selon l'une quelconque des revendications 1 et 2, caractérisé en ce que ladite image d'objet est une image de visage.
4. Système de localisation selon l'une quelconque des revendications 1 à 3, caractérisé en ce qu'il comprend également au moins une deuxième couche intermédiaire de convolution (C1, C3) comprenant une pluralité de neurones (C11, C3k).
5. Système de localisation selon l'une quelconque des revendications 1 à 4, caractérisé en ce qu'il comprend également au moins une troisième couche intermédiaire de sous-échantillonnage (S2) comprenant une pluralité de neurones (S2i).
6. Système de localisation selon l'une quelconque des revendications 1 à 3, caractérisé en ce qu'il comprend, entre ladite couche d'entrée (E) et ladite première couche intermédiaire (N4) : - une deuxième couche intermédiaire de convolution (C1) comprenant une pluralité de neurones (C1i) et permettant de détecter au moins une forme élémentaire de type ligne dans ladite image d'objet, ladite deuxième couche intermédiaire délivrant une image d'objet convoluée; - une troisième couche intermédiaire de sous-échantillonnage (S2) comprenant une pluralité de neurones (S2i) et permettant de réduire la dimension de ladite image d'objet convoluée, ladite troisième couche intermédiaire délivrant une image d'objet convoluée réduite; - une quatrième couche intermédiaire de convolution (C3) comprenant une pluralité de neurones (C3k) et permettant de détecter au moins une forme complexe de type coin dans ladite image d'objet convoluée réduite.
7. Procédé d'apprentissage d'un réseau de neurones d'un système de localisation d'au moins un point d'intérêt dans une image d'objet selon la revendication 1, chacun desdits neurones présentant au moins une entrée pondérée par un poids synaptique caractérisé en ce qu'il comprend des étapes de: - construction d'une base d'apprentissage comprenant une pluralité d'images d'objet annotées en fonction dudit au moins un point d'intérêt à localiser; - initialisation desdits poids synaptiques et/ou desdits biais; - pour chacune desdites images annotées de ladite base d'apprentissage: - préparation de ladite au moins une carte de saillance désirée en sortie (D5m) à partir dudit au moins un point d'intérêt annoté sur ladite image; - présentation de ladite image en entrée dudit système de localisation et détermination de ladite au moins une carte de saillance délivrée en sortie (R;,,,) ; - minimisation d'une différence entre lesdites cartes de saillance désirées (D5,,,) et délivrées (R5,,,) en sortie sur l'ensemble desdites images annotées de ladite base d'apprentissage, de façon à déterminer lesdits poids synaptiques (w,-w,) et/ou lesdits biais (wo) optimaux.
8. Procédé d'apprentissage selon la revendication 7, caractérisé en ce que ladite minimisation est une minimisation d'une erreur quadratique moyenne entre lesdites cartes de saillance désirées (D5,,,) et délivrées (R51) en sortie et met en oeuvre un algorithme itératif de rétropropagation du gradient.
9. Procédé de localisation d'au moins un point d'intérêt dans une image d'objet, caractérisé en ce qu'il comprend des étapes de: -présentation de ladite image d'objet en entrée d'une architecture en couches mettant en oeuvre un réseau de neurones artificiels; - activation successive d'au moins une couche intermédiaire (N4), appelée première couche intermédiaire, comprenant une pluralité de neurones (N41) et permettant de générer au moins une carte de saillance (R5m) associée à ladite image d'objet, et d'au moins une couche de sortie (R5) comprenant ladite au moins une carte de saillance (R5m), ladite carte de saillance comprenant au moins deux neurones connectés chacun à tous les neurones de ladite première couche intermédiaire (N4) ; - localisation dudit au moins un point d'intérêt dans ladite image d'objet par recherche, dans ladite au moins une carte de saillance (R5m), d'une position (171-174) d'un maximum global sur ladite carte.
10. Procédé de localisation selon la revendication 9, caractérisé en ce qu'il comprend des étapes préalables de: - détection (40), dans une image quelconque (46), d'une zone englobant ledit objet, et constituant ladite image d'objet (44, 45) ; - redimensionnement (41) de ladite image d'objet.
11. Programme d'ordinateur comprenant des instructions de code de programme pour l'exécution du procédé d'apprentissage d'un réseau de neurones selon l'une quelconque des revendications 7 et 8 lorsque ledit programme est exécuté par un processeur.
12. Programme d'ordinateur comprenant des instructions de code de programme pour l'exécution du procédé de localisation d'au moins un point d'intérêt dans une image d'objet selon l'une quelconque des revendications 9 et 10 lorsque ledit programme est exécuté par un processeur.
FR0503177A 2005-03-31 2005-03-31 Systeme et procede de localisation de points d'interet dans une image d'objet mettant en oeuvre un reseau de neurones Pending FR2884008A1 (fr)

Priority Applications (6)

Application Number Priority Date Filing Date Title
FR0503177A FR2884008A1 (fr) 2005-03-31 2005-03-31 Systeme et procede de localisation de points d'interet dans une image d'objet mettant en oeuvre un reseau de neurones
PCT/EP2006/061110 WO2006103241A2 (fr) 2005-03-31 2006-03-28 Système et procédé de localisation de points d'intérêt dans une image d'objet mettant en œuvre un réseau de neurones
EP06725370A EP1866834A2 (fr) 2005-03-31 2006-03-28 Système et procédé de localisation de points d'intérêt dans une image d'objet mettant en uvre un réseau de neurones
US11/910,159 US20080201282A1 (en) 2005-03-31 2006-03-28 System and Method for Locating Points of Interest in an Object Image Implementing a Neural Network
CNA2006800149363A CN101171598A (zh) 2005-03-31 2006-03-28 采用神经网络定位对象图像中的感兴趣点的***和方法
JP2008503506A JP2008536211A (ja) 2005-03-31 2006-03-28 ニューラルネットワークを実現するオブジェクトイメージにおいて興味のあるポイントを位置決めするシステム及び方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR0503177A FR2884008A1 (fr) 2005-03-31 2005-03-31 Systeme et procede de localisation de points d'interet dans une image d'objet mettant en oeuvre un reseau de neurones

Publications (1)

Publication Number Publication Date
FR2884008A1 true FR2884008A1 (fr) 2006-10-06

Family

ID=35748862

Family Applications (1)

Application Number Title Priority Date Filing Date
FR0503177A Pending FR2884008A1 (fr) 2005-03-31 2005-03-31 Systeme et procede de localisation de points d'interet dans une image d'objet mettant en oeuvre un reseau de neurones

Country Status (6)

Country Link
US (1) US20080201282A1 (fr)
EP (1) EP1866834A2 (fr)
JP (1) JP2008536211A (fr)
CN (1) CN101171598A (fr)
FR (1) FR2884008A1 (fr)
WO (1) WO2006103241A2 (fr)

Families Citing this family (74)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009155415A2 (fr) * 2008-06-20 2009-12-23 Research Triangle Institute Système d'entraînement et de réadaptation, et procédé et programme informatique associés
US8374436B2 (en) * 2008-06-30 2013-02-12 Thomson Licensing Method for detecting layout areas in a video image and method for generating an image of reduced size using the detection method
US8290250B2 (en) 2008-12-26 2012-10-16 Five Apes, Inc. Method and apparatus for creating a pattern recognizer
US8160354B2 (en) * 2008-12-26 2012-04-17 Five Apes, Inc. Multi-stage image pattern recognizer
US8229209B2 (en) * 2008-12-26 2012-07-24 Five Apes, Inc. Neural network based pattern recognizer
KR101558553B1 (ko) * 2009-02-18 2015-10-08 삼성전자 주식회사 아바타 얼굴 표정 제어장치
CN101639937B (zh) * 2009-09-03 2011-12-14 复旦大学 一种基于人工神经网络的超分辨率方法
US9405975B2 (en) 2010-03-26 2016-08-02 Brain Corporation Apparatus and methods for pulse-code invariant object recognition
US9906838B2 (en) 2010-07-12 2018-02-27 Time Warner Cable Enterprises Llc Apparatus and methods for content delivery and message exchange across multiple content delivery networks
US8515127B2 (en) 2010-07-28 2013-08-20 International Business Machines Corporation Multispectral detection of personal attributes for video surveillance
US9134399B2 (en) 2010-07-28 2015-09-15 International Business Machines Corporation Attribute-based person tracking across multiple cameras
US10424342B2 (en) 2010-07-28 2019-09-24 International Business Machines Corporation Facilitating people search in video surveillance
US8532390B2 (en) 2010-07-28 2013-09-10 International Business Machines Corporation Semantic parsing of objects in video
CN102567397B (zh) * 2010-12-30 2014-08-06 高德软件有限公司 兴趣点、连锁店分店兴趣点关联标记的方法与装置
US9224090B2 (en) 2012-05-07 2015-12-29 Brain Corporation Sensory input processing apparatus in a spiking neural network
US9412041B1 (en) 2012-06-29 2016-08-09 Brain Corporation Retinal apparatus and methods
US9186793B1 (en) 2012-08-31 2015-11-17 Brain Corporation Apparatus and methods for controlling attention of a robot
US9311594B1 (en) 2012-09-20 2016-04-12 Brain Corporation Spiking neuron network apparatus and methods for encoding of sensory data
US9111226B2 (en) 2012-10-25 2015-08-18 Brain Corporation Modulated plasticity apparatus and methods for spiking neuron network
US9183493B2 (en) 2012-10-25 2015-11-10 Brain Corporation Adaptive plasticity apparatus and methods for spiking neuron network
US9218563B2 (en) * 2012-10-25 2015-12-22 Brain Corporation Spiking neuron sensory processing apparatus and methods for saliency detection
US9275326B2 (en) 2012-11-30 2016-03-01 Brain Corporation Rate stabilization through plasticity in spiking neuron network
US9436909B2 (en) 2013-06-19 2016-09-06 Brain Corporation Increased dynamic range artificial neuron network apparatus and methods
US9239985B2 (en) 2013-06-19 2016-01-19 Brain Corporation Apparatus and methods for processing inputs in an artificial neuron network
US9552546B1 (en) 2013-07-30 2017-01-24 Brain Corporation Apparatus and methods for efficacy balancing in a spiking neuron network
CN103489107B (zh) * 2013-08-16 2015-11-25 北京京东尚科信息技术有限公司 一种制作虚拟试衣模特图像的方法和装置
US9984326B1 (en) * 2015-04-06 2018-05-29 Hrl Laboratories, Llc Spiking neural network simulator for image and video processing
US10198689B2 (en) 2014-01-30 2019-02-05 Hrl Laboratories, Llc Method for object detection in digital image and video using spiking neural networks
US9987743B2 (en) 2014-03-13 2018-06-05 Brain Corporation Trainable modular robotic apparatus and methods
US9533413B2 (en) 2014-03-13 2017-01-03 Brain Corporation Trainable modular robotic apparatus and methods
US9195903B2 (en) 2014-04-29 2015-11-24 International Business Machines Corporation Extracting salient features from video using a neurosynaptic system
CN103955718A (zh) * 2014-05-15 2014-07-30 厦门美图之家科技有限公司 一种图像主体对象的识别方法
KR101563569B1 (ko) * 2014-05-28 2015-10-28 한국과학기술원 학습형 다이내믹 시각 이미지 패턴 인식 시스템 및 방법
CN105981041A (zh) * 2014-05-29 2016-09-28 北京旷视科技有限公司 使用粗到细级联神经网络的面部关键点定位
US9373058B2 (en) 2014-05-29 2016-06-21 International Business Machines Corporation Scene understanding using a neurosynaptic system
US9798972B2 (en) 2014-07-02 2017-10-24 International Business Machines Corporation Feature extraction using a neurosynaptic system for object classification
US10115054B2 (en) 2014-07-02 2018-10-30 International Business Machines Corporation Classifying features using a neurosynaptic system
US9881349B1 (en) 2014-10-24 2018-01-30 Gopro, Inc. Apparatus and methods for computerized object identification
KR102288280B1 (ko) 2014-11-05 2021-08-10 삼성전자주식회사 영상 학습 모델을 이용한 영상 생성 방법 및 장치
US10650508B2 (en) * 2014-12-03 2020-05-12 Kla-Tencor Corporation Automatic defect classification without sampling and feature selection
CN106033594B (zh) * 2015-03-11 2018-11-13 日本电气株式会社 基于卷积神经网络所获得特征的空间信息恢复方法及装置
CN108027896A (zh) * 2015-03-18 2018-05-11 赫尔实验室有限公司 用于解码具有连续突触可塑性的脉冲储层的***和方法
US9933264B2 (en) 2015-04-06 2018-04-03 Hrl Laboratories, Llc System and method for achieving fast and reliable time-to-contact estimation using vision and range sensor data for autonomous navigation
US9934437B1 (en) 2015-04-06 2018-04-03 Hrl Laboratories, Llc System and method for real-time collision detection
US9840003B2 (en) 2015-06-24 2017-12-12 Brain Corporation Apparatus and methods for safe navigation of robotic devices
CN107851195B (zh) * 2015-07-29 2022-02-11 诺基亚技术有限公司 利用神经网络进行目标检测
CN105260776B (zh) * 2015-09-10 2018-03-27 华为技术有限公司 神经网络处理器和卷积神经网络处理器
JP2017059207A (ja) * 2015-09-18 2017-03-23 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 画像認識方法
CN105205504B (zh) * 2015-10-04 2018-09-18 北京航空航天大学 一种基于数据驱动的图像关注区域质量评价指标学习方法
US20170124409A1 (en) * 2015-11-04 2017-05-04 Nec Laboratories America, Inc. Cascaded neural network with scale dependent pooling for object detection
US10860887B2 (en) * 2015-11-16 2020-12-08 Samsung Electronics Co., Ltd. Method and apparatus for recognizing object, and method and apparatus for training recognition model
KR102554149B1 (ko) * 2015-11-16 2023-07-12 삼성전자주식회사 오브젝트 인식 방법 및 장치, 인식 모델 학습 방법 및 장치
US10055652B2 (en) * 2016-03-21 2018-08-21 Ford Global Technologies, Llc Pedestrian detection and motion prediction with rear-facing camera
CN107315571B (zh) * 2016-04-27 2020-07-31 中科寒武纪科技股份有限公司 一种用于执行全连接层神经网络正向运算的装置和方法
WO2018052587A1 (fr) * 2016-09-14 2018-03-22 Konica Minolta Laboratory U.S.A., Inc. Procédé et système de segmentation d'image de cellule à l'aide de réseaux neuronaux convolutifs à étages multiples
KR101804840B1 (ko) 2016-09-29 2017-12-05 연세대학교 산학협력단 컨벌루션 신경망 기반의 표면 영상 처리 방법 및 장치
KR101944536B1 (ko) * 2016-12-11 2019-02-01 주식회사 딥바이오 뉴럴 네트워크를 이용한 질병의 진단 시스템 및 그 방법
CN106778751B (zh) * 2017-02-20 2020-08-21 迈吉客科技(北京)有限公司 一种非面部roi识别方法及装置
JP6214073B2 (ja) * 2017-03-16 2017-10-18 ヤフー株式会社 生成装置、生成方法、及び生成プログラム
CN108259496B (zh) 2018-01-19 2021-06-04 北京市商汤科技开发有限公司 特效程序文件包的生成及特效生成方法与装置、电子设备
CN108388434B (zh) 2018-02-08 2021-03-02 北京市商汤科技开发有限公司 特效程序文件包的生成及特效生成方法与装置、电子设备
JP6757349B2 (ja) 2018-03-12 2020-09-16 株式会社東芝 固定小数点を用いて認識処理を行う多層の畳み込みニューラルネットワーク回路を実現する演算処理装置
US20190286988A1 (en) * 2018-03-15 2019-09-19 Ants Technology (Hk) Limited Feature-based selective control of a neural network
JP6996455B2 (ja) * 2018-08-31 2022-01-17 オムロン株式会社 検出器生成装置、モニタリング装置、検出器生成方法及び検出器生成プログラム
JP7035912B2 (ja) * 2018-08-31 2022-03-15 オムロン株式会社 検出器生成装置、モニタリング装置、検出器生成方法及び検出器生成プログラム
US11430084B2 (en) 2018-09-05 2022-08-30 Toyota Research Institute, Inc. Systems and methods for saliency-based sampling layer for neural networks
CN109491704A (zh) * 2018-11-08 2019-03-19 北京字节跳动网络技术有限公司 用于处理信息的方法和装置
CN109744996B (zh) * 2019-01-11 2021-06-15 中南大学 Oct图像的bmo位置定位方法
US11080884B2 (en) * 2019-05-15 2021-08-03 Matterport, Inc. Point tracking using a trained network
CN112825115A (zh) * 2019-11-20 2021-05-21 北京眼神智能科技有限公司 基于单目图像的眼镜检测方法、装置、存储介质及设备
US11687778B2 (en) 2020-01-06 2023-06-27 The Research Foundation For The State University Of New York Fakecatcher: detection of synthetic portrait videos using biological signals
EP4170678A4 (fr) * 2020-07-23 2024-03-13 Deep Bio Inc. Méthode d'annotation de site pathogène de maladie au moyen d'un apprentissage semi-supervisé, et système de diagnostic pour sa mise en ?uvre
US11532147B2 (en) * 2020-09-25 2022-12-20 Microsoft Technology Licensing, Llc Diagnostic tool for deep learning similarity models
KR20240056112A (ko) * 2022-10-21 2024-04-30 삼성전자주식회사 이미지에서 관심 영역을 식별하기 위한 전자 장치 및 그 제어 방법

Non-Patent Citations (11)

* Cited by examiner, † Cited by third party
Title
GARCIA C ET AL: "CONVOLUTIONAL FACE FINDER: A NEURAL ARCHITECTURE FOR FAST AND ROBUST FACE DETECTION", IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE, IEEE SERVICE CENTER, LOS ALAMITOS, CA, US, vol. 26, no. 11, November 2004 (2004-11-01), pages 1408 - 1423, XP008039814, ISSN: 0162-8828 *
ITTI L ET AL: "A MODEL OF SALIENCY-BASED VISUAL ATTENTION FOR RAPID SCENE ANALYSIS", IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE, IEEE SERVICE CENTER, LOS ALAMITOS, CA, US, vol. 20, no. 11, November 1998 (1998-11-01), pages 1254 - 1259, XP001203933, ISSN: 0162-8828 *
ITTI L ET AL: "FEATURE COMBINATION STRATEGIES FOR SALIENCY-BASED VISUAL ATTENTION SYSTEMS", JOURNAL OF ELECTRONIC IMAGING, SPIE / IS & T, US, vol. 10, no. 1, January 2001 (2001-01-01), pages 161 - 169, XP001203934, ISSN: 1017-9909 *
JUELL P ET AL: "A hierarchical neural network for human face detection", PATTERN RECOGNITION, ELSEVIER, KIDLINGTON, GB, vol. 29, no. 5, May 1996 (1996-05-01), pages 781 - 787, XP004021638, ISSN: 0031-3203 *
LECUN Y ET AL: "BACKPROPAGATION APPLIED TO HANDWRITTEN ZIP CODE RECOGNITION", NEURAL COMPUTATION, MASSACHUSETTS INSTITUTE OF TECHNOLOGY, US, vol. 1, 1989, pages 541 - 551, XP000789854, ISSN: 0899-7667 *
LECUN Y ET AL: "GRADIENT-BASED LEARNING APPLIED TO DOCUMENT RECOGNITION", PROCEEDINGS OF THE IEEE, IEEE. NEW YORK, US, vol. 86, no. 11, November 1998 (1998-11-01), pages 2278 - 2323, XP000875095, ISSN: 0018-9219 *
MATSUGU M ET AL: "Convolutional spiking neural network model for robust face detection", NEURAL INFORMATION PROCESSING, 2002. ICONIP '02. PROCEEDINGS OF THE 9TH INTERNATIONAL CONFERENCE ON NOV. 18-22, 2002, PISCATAWAY, NJ, USA,IEEE, vol. 2, 18 November 2002 (2002-11-18), pages 660 - 664, XP010638800, ISBN: 981-04-7524-1 *
MATSUGU M ET AL: "Subject independent facial expression recognition with robust face detection using a convolutional neural network", NEURAL NETWORKS, ELSEVIER SCIENCE PUBLISHERS, BARKING, GB, vol. 16, no. 5-6, June 2003 (2003-06-01), pages 555 - 559, XP004433973, ISSN: 0893-6080 *
ROWLEY H A ET AL: "HUMAN FACE DETECTION IN VISUAL SCENES", TECHNICAL REPORT CMU-CS-95-158R, November 1995 (1995-11-01), pages COMPLETE, XP001091562 *
ROWLEY H A ET AL: "NEURAL NETWORK-BASED FACE DETECTION", IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE, IEEE SERVICE CENTER, LOS ALAMITOS, CA, US, vol. 20, no. 1, January 1998 (1998-01-01), pages 23 - 38, XP000753322, ISSN: 0162-8828 *
VAILLANT R ET AL: "An original approach for the localization of objects in images", ARTIFICIAL NEURAL NETWORKS, 1993., THIRD INTERNATIONAL CONFERENCE ON BRIGHTON, UK, LONDON, UK,IEE, UK, 1993, pages 26 - 30, XP006513936, ISBN: 0-85296-573-7 *

Also Published As

Publication number Publication date
US20080201282A1 (en) 2008-08-21
WO2006103241A2 (fr) 2006-10-05
JP2008536211A (ja) 2008-09-04
WO2006103241A3 (fr) 2007-01-11
EP1866834A2 (fr) 2007-12-19
CN101171598A (zh) 2008-04-30

Similar Documents

Publication Publication Date Title
FR2884008A1 (fr) Systeme et procede de localisation de points d&#39;interet dans une image d&#39;objet mettant en oeuvre un reseau de neurones
EP3707676B1 (fr) Procédé d&#39;estimation de pose d&#39;une caméra dans le référentiel d&#39;une scène tridimensionnelle, dispositif, système de réalite augmentée et programme d&#39;ordinateur associé
US11494616B2 (en) Decoupling category-wise independence and relevance with self-attention for multi-label image classification
EP2491532B1 (fr) Procede, programme d&#39;ordinateur et dispositif de suivi hybride de representations d&#39;objets, en temps reel, dans une sequence d&#39;images
EP3640843B1 (fr) Procédé d&#39;extraction de caractéristiques d&#39;une empreinte digitale représentée par une image d&#39;entrée
FR2884007A1 (fr) Procede d&#39;identification de visages a partir d&#39;images de visage, dispositif et programme d&#39;ordinateur correspondants
EP0692772A1 (fr) Procédé et dispositif pour détecter des points clés situés sur le contour d&#39;un objet
EP3639190B1 (fr) Procede d&#39;apprentissage de descripteurs pour la detection et la localisation d&#39;objets dans une video
WO2018185104A1 (fr) Procede d&#39;estimation de pose, dispositif, systeme et programme d&#39;ordinateur associes
EP3582141A1 (fr) Procédé d&#39;apprentissage de paramètres d&#39;un réseau de neurones à convolution
EP0681270A1 (fr) Procédé de trajectographie d&#39;objets et dispositif de mise en oeuvre de ce procédé
WO2022008605A1 (fr) Dispositif électronique et procédé de traitement de données à base de réseaux génératifs inversibles, système électronique de détection et programme d&#39;ordinateur associés
WO2008081152A2 (fr) Procede et systeme de reconnaissance d&#39;un objet dans une image
EP3966739B1 (fr) Procédé d&#39;analyse automatique d&#39;images pour reconnaître automatiquement au moins une caractéristique rare
EP3929809A1 (fr) Procédé de détection d&#39;au moins un trait biométrique visible sur une image d entrée au moyen d&#39;un réseau de neurones à convolution
EP3918576A1 (fr) Procédé dynamique d&#39;imagerie tridimensionnelle
WO2008031978A1 (fr) Procede de cadrage d&#39;un objet dans une image et dispositif correspondant
EP4396789A1 (fr) Procédé de mise en relation d&#39;une image candidate avec une image de référence
Ghosh Scene and Action Understanding Using Context and Knowledge Sharing
WO2023118768A1 (fr) Dispositif et procédé de traitement de données d&#39;images de visages d&#39;êtres humains
WO2012107696A1 (fr) Procédés, dispositif et programmes d&#39;ordinateur pour la reconnaissance de formes, en temps réel, à l&#39;aide d&#39;un appareil comprenant des ressources limitées
FR3144372A1 (fr) Procédé d’annotation de pistes de suivi d’individus dans une séquence d’images
SALMI Reconnaissance de caractères de sous-titres vidéo en utilisant l’apprentissage automatique
WO2018020194A1 (fr) Procédé de comparaison d&#39;objets disposés au voisinage les uns des autres, et dispositif associé
RYM Rééclairage d’images de portrait en utilisant une technique d’apprentissage basée sur un Hourglass network