FR2821459A1 - Procede et dispositif de reperage d'un objet par sa forme, sa dimension et/ou son orientation - Google Patents

Procede et dispositif de reperage d'un objet par sa forme, sa dimension et/ou son orientation Download PDF

Info

Publication number
FR2821459A1
FR2821459A1 FR0102539A FR0102539A FR2821459A1 FR 2821459 A1 FR2821459 A1 FR 2821459A1 FR 0102539 A FR0102539 A FR 0102539A FR 0102539 A FR0102539 A FR 0102539A FR 2821459 A1 FR2821459 A1 FR 2821459A1
Authority
FR
France
Prior art keywords
signal
space
locating
interest
data
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.)
Granted
Application number
FR0102539A
Other languages
English (en)
Other versions
FR2821459B1 (fr
Inventor
Patrick Pirim
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.)
Holding BEV SA
Original Assignee
Holding BEV 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 Holding BEV SA filed Critical Holding BEV SA
Priority to FR0102539A priority Critical patent/FR2821459B1/fr
Priority to US09/876,929 priority patent/US7043465B2/en
Priority to PCT/EP2002/001899 priority patent/WO2002069265A1/fr
Priority to EP02716806A priority patent/EP1364341A1/fr
Priority to JP2002568307A priority patent/JP2004523047A/ja
Priority to CA002439867A priority patent/CA2439867A1/fr
Priority to MXPA03007554A priority patent/MXPA03007554A/es
Publication of FR2821459A1 publication Critical patent/FR2821459A1/fr
Application granted granted Critical
Publication of FR2821459B1 publication Critical patent/FR2821459B1/fr
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • 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/161Detection; Localisation; Normalisation

Abstract

La présente invention concerne un procédé et un dispositif de localisation d'une forme dans un espace représenté par des pixels formant ensemble un espace i, j multidimensionnel, évoluant dans le temps, et représenté à une succession de moments T, lesdites données associées chacune un paramètre temporel A, B,... étant sous la forme de signaux DATA (A), DATA (B),... numériques constitués d'une suite A ijt , B ijt ,... de nombres binaires de n bits associés à des signaux de synchronisation permettant de définir le moment T de l'espace et la position i, j dans cet espace, auquel les signaux A ijt , B ijt ,... reçus à un instant donné.Selon l'invention, a) on repère une zone d'intérêt de l'espace en fonction d'un critère statistique appliqué à un paramètre temporel, b) on inhibe la zone principale ainsi repérée, c) on réitère les étapes a) et b) de façon à repérer d'autres zones d'intérêt à l'intérieur d'une zone de l'espace non inhibée, d) on arrête le processus lorsqu'une zone restante, non inhibée, de l'espace ne produit plus de zone d'intérêt correspondant audit critère statistique, e) on incrémente par trame valide consécutive, un compteur pour chaque zone d'intérêt ainsi repérée, et que lors de la perte d'une zone d'intérêt, son compteur associé soit remis à zéro, f) on récupère pour chaque zone d'intérêt ainsi repérée, le barycentre de son nuage de points.

Description

<Desc/Clms Page number 1>
Figure img00010001
La présente invention concerne un procédé et un dispositif de repérage d'um objet par sa forme, sa dimension et/ou son orientation.
On connaît déjà de tels procédés et dispositifs et, en particulier, certains d'entre eux ont proposé l'analyse statistique des points ou pixels d'un signal vidéo numérique provenant d'un système d'observation, pour la réalisation de dispositifs efficaces susceptibles de fonctionner en temps réel.
Plus récemment, il a été proposé de réaliser ces dispositifs par l'association d'unités de traitement d'informations de même nature s'adressant chacune à un paramètre particulier extrait du signal vidéo.
C'est ainsi que la demande de brevet FR-00.02355 dont un extrait est annexé à la présente demande (voir ANNEXE UNIQUE qui fait partie de la présente description), et l'article"Le mécanisme de la vision s'intègre sur une pucc"Patrick PIRIM Electronique, Juin 2000 N 104 ont proposé la mise en oeuvre d'unités de calcul d'histogrammes ou neurones spatiotemporels électroniques STN traitant chacun une donnée DATA (A),... par
Figure img00010002

une fonction (fg) pour produire individuellement une valeur de sortie S, ces valeurs de sortie toutes ensemble formant une rétroannotation R disponible sur un bus 110.
En même temps, chacune de ces unités de calcul d'histogrammes constitue et met à jour un registre de sortie d'analyse rega fournissant des informations statistiques sur le paramètre correspondant.
Le choix du paramètre traité par chaque unité de calcul d'histogrammes, le contenu du registre de sortie d'analyse ainsi que la fonction (log) qu'elle remplit, sont déterminés par un logiciel dit API (Application Program Interface).
On connaît, également par ailleurs, des procédés et dispositifs
Figure img00010003

permettant de repérer ou de localiser dans une image une zone ou um objet i en mouvement. Le PCT WO 98/05002 qui a pour inventeur celui de la présente demande, concerne tme telle technique.
Le but de l'invention est de proposer un procédé de repérage d'un objet par sa forme, sa dimension et/ou son orientation utilisant un dispositif constitué d'un ensemble d'unités de calcul d'histogrammes.
A l'origine de la présente invention, il est proposé de décomposer hiérarchiquement l'objet à repérer en fonction de ses propriétés.
<Desc/Clms Page number 2>
Figure img00020001
On pourra par exemple déterminer d'abord le contour général d'un a objet en mouvement par rapport à un fond relativement stable, puis rechercher à l'intérieur de ce contour des éléments caractéristiques par leur teinte, leur couleur, leur position relative...
Cette approche permet l'élaboration rapide d'applications multiples mettant en jeu le repérage d'un objet. Ces applications peuvent être développées, soit à partir d'une formalisation antérieure ayant dégagé les
Figure img00020002

caractéristiques significatives de l'objet, soit, grâce à une fonction d'apprentissage par l'examen d'tme scène dans laquelle l'objet en question est présent, le dispositif permettant lui-même d'extraire des paramètres caractéristiques de l'objet.
A cet effet, l'invention concerne un procédé de localisation d'une forme dans un espace représenté par des pixels formant ensemble un espace i, j multidimensionnel, évoluant dans le temps, et représenté à ume succession de moments T, lesdites données associées chacune à un paramètre temporel A, B,... étant sous la forme de signaux DATA (A), DATA (B),... numériques constitués d'une suite Aijt, Bijt,... de nombres binaires de n bits associés à des signaux de synchronisation permettant de définir le moment T de l'espace et la position i, j dans cet espace, auquel les signaux Aijt, Bijt,... reçus à un instant donné.
Selon l'invention : a) on repère une zone d'intérêt de l'espace en fonction d'un critère statistique appliqué à un paramètre temporel, b) on inhibe la zone principale ainsi repérée, c) on réitère les étapes a) et b) de façon à repérer d'autres zones d'intérêt à l'intérieur d'une zone de l'espace non inhibée, d) on arrête le processus lorsqu'une zone restante, non inhibée, de l'espace ne produit plus de zone d'intérêt correspondant au critère statistique, e) on incrémente par trame valide consécutive, un compteur pour chaque zone d'intérêt ainsi repérée, le barycentre de son nuage de points, f) on récupère pour chaque zone d'intérêt ainsi repérée, le barycentre de son nuage de points.
La présente invention concerne également les caractéristiques qui ressortiront au cours de la description qui va suivre et qui devront être
<Desc/Clms Page number 3>
considérées isolément ou selon toutes leurs combinaisons techniques possibles : - un compteur est associé à chaque zone d'intérêt, et que la valeur de compteur est incrémentée d'une unité à chacune des trames successives pour lesquelles ladite zone d'intérêt est repérée, la valeur de ce compteur
Figure img00030001

étant forcée à zéro à la première trame pour laquelle ladite zone n'est plus repérée, - la position du barycentre des points constituant une zone d'intérêt et mis en mémoire dans une mémoire associée et permet son identification, - la zone d'intérêt est validée pour une valeur de son compteur associé supérieur a l, - la zone validée soit repérée par son barycentre, l'orientation de ses axes de projection et les dimensions du cadre associé, - le barycentre, les axes principaux du cadre et la dimension de celuici soient respectivement la position, l'orientation et la dimension de l'objet perçu, - on repère, à l'intérieur de la zone d'intérêt, une ou des zones secondaires définies par un ou des critères de sélection, - on réitère l'étape de la revendication 2, une zone secondaire jouant le rôle de la zone d'intérêt, ce qui conduit à repérer des zones tertiaires, - on utilise le repérage desdites zones secondaires pour suivre les mouvements de la zone principale, - le paramètre temporel est la vitesse, - le paramètre temporel est un niveau de luminance, - le paramètre temporel est une couleur, - le paramètre temporel est la résolution spatiale, - le paramètre temporel est la profondeur de champ, - la zone repérée est définie par rapport à un repère choisi parmi plusieurs repères d'orientations différentes, - les positions relatives des barycentres des nuages de points des zones d'intérêt repérées servent à contrôler la forme de l'objet perçu, - la forme est un visage, - ladite zone principale est le visage et que des zones secondaires sont choisies dans l'ensemble formé par les yeux, la bouche, les sourcils et le nez.
<Desc/Clms Page number 4>
Figure img00040001
L'invention concerne également lm dispositif de localisation d'une forme dans lm espace représenté par des pixels formant ensemble un espace i, j multidimensionnel, évoluant dans le temps, et représenté à une succession de moments T, lesdites données associées chacune à un paramètre temporel A, B,... étant sous la forme de signaux DATA (A), DATA (B),... numériques sous forme d'une suite Aijt, Bijt,... de nombres binaires de n bits associés à des signaux de synchronisation permettant de définir le moment T de l'espace et la position i, j dans cet espace, auquel les signaux Aijt, Bijt,... reçus à un instant donné.
Le dispositif de localisation d'une forme selon l'invention comporte deux ensembles d'unités de calcul d'histogrammes recevant les signaux et produisant chacun une valeur de classification, le premier sous-ensemble recevant un signal porteur d'un premier paramètre temporel et le deuxième sous-ensemble recevant deux signaux spatiaux, la valeur de classification du premier sous-ensemble validant un groupe de points de l'espace traités par le deuxième sous-ensemble, le nombre desdits points étant ni, la valeur de classification du deuxième sous-ensemble validant les valeurs de paramètre traitées par le premier sous-ensemble, les deux sous-ensembles produisant conjointement un signal binaire ZA représentant une zone d'intérêt et un signal P représentant la valeur du paramètre temporel dans cette zone. il comporte un troisième sous-ensemble recevant un signal porteur d'un deuxième paramètre temporel, ce troisième sous-ensemble ayant un fonctionnement analogue au premier et s'y substituant lorsqu'il valide des points de l'espace dont le nombre est n2, n2 étant supérieur à ni.
Il comporte plusieurs sous-ensembles recevant des signaux spatiaux permettant de valider successivement plusieurs groupes de points de l'espace.
Il comporte un ensemble d'unités de calcul d'histogramme commandé par im logiciel API et reliées entre elles par un bus de données et par un bus de rétroannotation.
L'invention sera décrite plus en détail en référence aux dessins annexés dans lesquels : - la figure 1 est la représentation d'une unité de calcul d'histogramme de l'art antérieur mise en oeuvre dans l'invention ;
<Desc/Clms Page number 5>
Figure img00050001

- la figure 2 est la représentation de l'association de deux unités de calcul remplissant une fonction composite spatiale selon l'invention ; - la figure 3 est la représentation synthétique du dispositif de la figure 2 ; - la figure 4 est une représentation développée de l'association d'un ensemble d'unités de calcul d'histogramme utilisées pour la détection et le repérage d'un objet en noir et blanc ; - la figure 5 est ume représentation développée de l'association d'un ensemble d'unités de calcul d'histogramme utilisées pour la détection et le repérage d'un objet en couleur ; - la figure 6 est une représentation synthétique du dispositif de la figure 5 ; - la figure 7 représente la combinaison du dispositif de la figure 3 avec une unité de calcul d'histogramme appliquée au mouvement ; - la figure 8 représente le repérage d'une zone d'intérêt ; - la figure 9 est la représentation des histogrammes, respectivement du mouvement 9A, de X 9B et de Y 9C pour la zone d'intérêt de la figure
Figure img00050002

8 ; - la figure 10 est un organigramme de repérage d'une zone d'intérêt ; - la figure 11 représente un dispositif de repérage de trois zones d'intérêt à partir d'une zone principale ; - la figure 12 illustre le fonctionnement du dispositif de la figure 11 sous la forme d'un graphe ; - la figure 13 est une représentation schématique de l'analyse de la forme constituée par lm visage ; - la figure 14 illustre l'utilisation des résultats produits par l'analyse de forme, ces résultats peuvent être transférés à distance et l'image reconstruite.
Sur la figure 1, la référence 1 désigne une unité de traitement d'histogramme au bloc dans son ensemble.
En 2, est mentionné le paramètre DATA (A) traité par l'unité de calcul d'histogramme 1 par la fonction 3 (fog). Cette unité de traitement d'histogramme 1 comporte un registre de sortie d'analyse reg 4 contenant des valeurs représentant la répartition statistique du paramètre DATA (A).
<Desc/Clms Page number 6>
Figure img00060001
L'unité de traitement d'histogramme 1 fournit au bus 110 ume valeur de sortie S, il est commandé par l'API 5 qui détermine à la fois le paramètre DATA (A) qu'elle traite, le contenu du registre 4 et la fonction 3 (log). Cette unité de traitement d'histogramme fournit en sortie, sur le bus 110 ume valeur de classification et reçoit en entrée, de ce même bus 110, les valeurs de classification provenant de ses homologues auxquelles elle est associée.
Pour chacune des unités de calcul d'histogramme, la valeur de classification est le résultat de l'application de la fonction (log) à la suite de valeurs Aijt constituant DATA (A). Dans le registre reg 4, se trouve le résultat de différents traitements statistiques de la suite Aijt. Ces traitements sont définis par l'API et leurs résultats sont disponibles pour toute utilisation, par exemple définie par cette même API.
Une étape préalable, facilitant le traitement du signal, quels que soient l'objet ou ses caractéristiques à repérer, est avantageusement prévue et consiste en l'adaptation du niveau de luminance et ainsi qu'en une adaptation de niveau et de dynamique pour repérage d'un objet en mouvement.
Sur la Figure 2, est représentée la combinaison de deux unités de traitement d'histogramme 10 et Il ayant chacune sur un paramètre spatial, respectivement X et Y.
Le bus 110 fournit aux unités de calcul d'histogramme 10 et 11 les informations à traiter et un opérateur ET 12 combine les signaux de sortie
Figure img00060002

Spx et Spy. La sortie de cet opérateur est dirigée vers le bus 110. s er ge
La figure 3 est une représentation synthétique de la même fonction.
On comprend aisément que l'ensemble des deux unités d'analyse décrites précédemment et représentées sur la figure 2 remplit la même fonction que le bloc de même nature, et également une unité de calcul d'histogramme 6.
On peut de la même manière, tel que représenté sur la figure 4, associer un plus grand nombre d'unités de calcul d'histogramme 16 à 19 traitant chacune un paramètre. Par exemple, pour la localisation d'un objet en noir et blanc, le paramètre de luminance est traité par l'unité de calcul d'histogramme 16, le signal de saturation est traité par l'unité de calcul d'histogramme 17, le paramètre spatial X est traité par l'unité de calcul d'histogramme 18 et le paramètre spatial Y est traité par l'unité de calcul d'histogramme 19.
<Desc/Clms Page number 7>
Figure img00070001
On a encore représenté sur les figures 5 et 6, un regroupement d'unités de calcul d'histogrammes permettant le repérage de la couleur d'un objet sélectionné. Les unités de calcul d'histogrammes, respectivement 20 pour la teinte, 21 pour la saturation, 22 pour la luminance, fournissent des signaux de sortie combinés par l'opérateur ET 23. Cet opérateur fournit en sortie un signal de rétroannotation combiné représentatif de la couleur analysée.
Cet ensemble complexe de la figure 6 remplit une fonction analogue à l'unité de calcul d'histogramme 24 représentée sur la figure 5.
Sur la figure 7, sont représentées deux unités de calcul d'histogramme 100 et 101 traitant respectivement le paramètre mouvement et les paramètres spatiaux X et Y.
Ces unités de calcul d'histogramme 100 et 101 sont associées par la ligne 103 correspondant au bus 110 des figures décrites précédemment.
L'association d'unités de calcul d'histogramme traitant respectivement lm paramètre temporel, ici le mouvement'MVT présenté à titre d'exemple, et des paramètres spatiaux tels que X et Y, permet le repérage d'une zone dans l'espace (i, j) dans lequel un point est représenté par les paramètres X, Y, pour laquelle un nombre suffisant de points donne au paramètre temporel considéré (ici le mouvement), une valeur singulière qtù peut être directement déterminée par le système ou encore être prédéterminée au travers de l'API.
Le fonctionnement du système peut être présenté de la manière suivante :
Le bus 102 fournit aux unités de calcul d'histogramme 100 et 101, les données qu'elles traitent.
Supposant qu'un objet soit en mouvement à une vitesse approximativement uniforme V par rapport au fonds, l'histogramme produit et exploité par l'unité 100 sera de la forme représentée sur la figure 9A. L'unité de calcul d'histogramme fournira au travers de la ligne 103, un signal de classification SMVT (i, j, t) qui a pour valeur 1 pour l'ensemble des pixels i, j qui ont un paramètre mouvement autour de Vi, plus précisément compris entre les bornes VIA, VIB déterminées par l'unité de calcul d'histogramme 100 en fonction de l'API, S (i, j, t) prenant la valeur 0
<Desc/Clms Page number 8>
Figure img00080001

lorsque le paramètre mouvement a une valeur extérieure à l'intervalle défini par les bornes mentionnées plus haut.
Au travers de la ligne 103 qui peut éventuellement être confondue avec le bus 110, l'unité de calcul d'histogramme 101 reçoit cette valeur de classification du mouvement et ne valide donc que les points X, Y pour lesquels le paramètre mouvement MVT a une valeur voisine de VI.
Pour cet ensemble de points, l'unité de calcul d'histogramme 101 fournit une valeur de classification Sx, y qui fournit au travers de la ligne 104, éventuellement au travers du bus 110, à l'unité de calcul d'histogramme 100.
La ligne 105 fournit à l'extérieur, pour tout usage, éventuellement à travers le bus, la valeur du paramètre V1 et la ligne 106 fournit la valeur de classification dénotée ici ZA qui permet de définir une zone dont le contour 202 représenté sur la figure 8 est approximativement représentatif de
Figure img00080002

l'ensemble des points 203 animés de la vitesse VI et de son barycentre XI, Yi.
I 1Le système fonctionne tel qu'indiqué tant qu'un nombre de points suffisant déterminé par r-API répond au système, c'est-à-dire à ume valeur du paramètre mouvement MVT comprise entre les bornes VIA et V IB.
Lorsque le nombre de points répondant à cette condition est insuffisant, le système est réinitialisé, prenant en considération à nouveau l'ensemble des points de l'espace 201 et cherchant donc une nouvelle zone caractéristique au regard des valeurs du paramètre MVT.
Ce fonctionnement et cette réinitialisation sont représentés par l'organigramme de la figure 10.
Lors du démarrage (START), le système traite l'ensemble des points de l'espace 201. Si les unités de calcul d'histogramme 100 et 101 isolent um nombre de points ayant des valeurs caractéristiques du paramètre MVT supérieur à un seuil, le signal de classification ZA permet de définir une nouvelle zone d'intérêt (NEW ROI-Région Of Interest). Un compteur Cr s'incrémente d'une unité par trame valide consécutive. Ce compteur représente l'indice de confiance de la fonction de repérage. Une nouvelle zone est déclarée valide pour une valeur Cr supérieure à 1.
Dans le cas contraire, lorsque le traitement d'un espace à im moment donné ou encore appelé trame ne permet pas d'isoler um nombre de points
<Desc/Clms Page number 9>
supérieur au seuil fixé, dans ce cas la zone de l'espace considéré (ROI) est réinitialisée, le système prenant alors en compte l'espace dans son ensemble. Le compteur Cr est alors forcé à zéro.
La description précédente faite en référence aux figures 7 à 10 explicite le fonctionnement résultant de l'association d'une unité de traitement d'histogramme traitant un paramètre temporel à une unité de traitement traitant des paramètres d'espace. On comprend que dans l'une et l'autre de ces catégories, les paramètres peuvent être quelconques. En particulier, du paramètre mouvement ou vitesse, on peut également traiter en tant que paramètre temporel, la luminance, une teinte ou la résolution spatiale.
De même, les paramètres d'espace dépendent à la fois de l'espace considéré et du repère utilisé pour le définir. C'est ainsi que dans le cas d'un espace à deux dimensions, des repères orthonormés d'orientations différentes peuvent être utilisés, celui permettant de définir la meilleure concentration de points pour un paramètre donné étant sélectionné.
Ce processus qui permet de définir une zone, peut être répété et réitéré de différentes manières.
Dans la suite de cette description, on utilisera la représentation Z aussi bien pour désigner le signal de classification associé à une zone que la zone elle-même.
Les figures 11 et 12 schématisent la manière dont, à partir d'une zone principale ZA associée à un paramètre P, on peut obtenir, pour le même paramètre P, des sous-zones Zâo, Zal, Za2.
Figure img00090001
Sur la figure 11, a été représentée l'association de trois unités de calcul d'histogramme qui, chacune, en fonction de critères définis par l'API, permet de dégager une sous-zone repérée, respectivement Zao, Zal, Za2, à partir d'une zone ZA.
Ainsi, telles que représentées sur la figure 12, à partir d'une zone générale Za, sont repérées et dissociées les zones Zâo, Zwar, Za2. On comprend que telle que représentée sur la figure 12, chaque sous-zone Zao peut alors servir de zone principale et permettre l'extraction de sous-souszones Zaoo, Zaoi, Zea. 2...
Ce processus peut être reproduit autant de fois que souhaité par l'opérateur et défini au travers de l'API jusqu'à un degré de définition ou de
<Desc/Clms Page number 10>
finesse des zones correspondant au nombre minimal de points défini pour constituer le seuil utilisé dans la description préalable en référence à la figure 10.
La figure 13 est la représentation d'une analyse hiérarchique d'un objet dans le cas particulier d'un visage. il s'agit donc d'une application particulière du procédé et du dispositif décrits plus haut.
D'une part, l'ensemble représenté à la figure 7 permet de repérer une première zone d'intérêt délimitée par le contour de l'objet en mouvement que l'on appellera ultérieurement la zone tête. Cette zone est caractérisée par une couleur dominante.
A l'intérieur de la zone ainsi déterminée, une autre unité de calcul d'histogramme détermine les variations ou compléments de couleurs à l'intérieur de cette zone et détecte ainsi de nouvelles zones ou sous-zones homogènes identifiant la position d'éléments caractéristiques du visage, tels que les yeux et la bouche.
Chacune de ces sous-zones est alors analysée séparément en couleur, mouvement, forme, ce qui permet de leur faire ressortir la spécificité et de déterminer le visage.
Chaque forme est avantageusement analysée à partir de la résolution spatiale, par exemple sur la base du traitement par ondelettes de Gabor et de leur orientation.
Sur la figure 13, on a représenté l'association de deux unités de calcul d'histogramme traitant des paramètres temporels 301 traitant le paramètre mouvement et 302 traitant une teinte résultant de l'association des paramètres de luminance, de teinte et de saturation tels que représentés sur les figures 5 et 6.
Lorsque l'association des unités de calcul d'histogramme 300 et 301 fonctionnant tel que décrit plus haut, ne permet plus, en raison de l'application du seuil de nombres de points de la zone considérée, de repérer de zones ou de sous-zones, alors l'unité de calcul d'histogramme 302 traitant les paramètres LTS prend le relais en se substituant dans son fonctionnement à l'unité de calcul 301 pour coopérer avec l'unité de calcul d'histogramme 300.
Les unités de calcul d'histogramme d'espaces 303 à 305 permettent le découpage de la zone principale constituée par le cadre formé autour du
<Desc/Clms Page number 11>
Figure img00110001

contour du visage en un certain nombre de sous-zones formées par exemple par les yeux, la bouche,... n est aussi possible d'élaborer un graphe représentatif de l'objet. Ce graphe multi-niveau est décrit par différentes résolutions spatiales de l'image, le niveau supérieur étant attribué à la résolution spatiale la plus faible, les niveaux suivants correspondant à des résolutions spatiales croissantes.
Ainsi, la tête peut être définie au premier niveau par la couleur dominante du visage, des cheveux, de la barbe. Pour chacune de ces caractéristiques, une résolution spatiale supérieure indique des zones représentatives pour un visage, des yeux et de la bouche, un troisième niveau indiquerait par une représentation spatiale plus fine des caractéristiques des yeux.
La description faite jusqu'à présent correspond à l'utilisation du dispositif de l'invention pour analyser un objet dans l'espace dont les caractéristiques ne sont pas initialement connues. Le dispositif s'adapte alors et repère de lui-même les zones caractéristiques. il est également possible de fournir à ce dispositif, au travers de l'API, un descriptif d'un objet particulier, ce descriptif étant constitué par la définition d'un ensemble de zones correspondant chacune à um intervalle de valeurs d'un paramètre particulier associé à une zone particulière de l'espace.
A partir de cette définition, le dispositif de l'invention peut identifier parmi les données qui lui sont fournies, celles correspondant à cette définition. Il lui est ainsi possible de repérer et de localiser un objet
Figure img00110002

prédéfini. prec. et1m
Cette prédéfinition peut résulter soit de considérations théoriques, telles les positions relatives des barycentres des nuages de points des zones d'intérêt repérées, présentées par la figure 14, soit d'une utilisation antérieure du dispositif au cours de laquelle des données correspondant à l'objet lui ont été fournies, le dispositif en ayant extrait la définition.
<Desc/Clms Page number 12>
L'invention concerne un procédé et un dispositif de perception automatique. Le dispositif comporte une unité de calcul d'histogramme, de préférence auto-adaptative éventuellement avec anticipation et apprentissage. Ils sont plus particulièrement destinés à la perception et au traitement d'images.
On connaît des procédés et des dispositifs de traitement d'images permettant, en temps réel, de reconnaître, de localiser et/ou d'extraire des objets correspondants à certains critères de leur contexte.
Les critères de sélections peuvent être extrêmement variés. Il peut s'agir d'une vitesse, d'une forme, d'une couleur... ou d'une combinaison de ces critères.
Ces procédés et dispositifs peuvent être utilisés pour faciliter l'appréhension d'une scène ou d'un phénomène par un observateur ou pour commander un automatisme à partir des informations ainsi extraites.
De tels procédés et dispositifs sont par exemple décrits dans les publications suivantes FR-2.611. 063 et WO-98/05002.
Certains de ces procédés et dispositifs mettent en oeuvre une unité de traitement spatial et temporel qui, recevant un signal S (PI) de type vidéo, produit un certains nombre de paramètres pour chaque pixel. Il s'agit par exemple de la vitesse V, de la direction DL, d'une constante de temps CO, et d'un paramètre binaire de validation VL en plus du signal vidéo retardé VR et des différents signaux de synchronisation de trame, de ligne et de pixel regroupés sous la dénomination F.
Dans de tels dispositifs, on a déjà souligné l'intérêt de constituer des histogrammes de ces paramètres permettant la constitution la manipulation et l'exploitation d'informations statistiques.
Le but de ces procédés et de ces dispositifs de traitement d'images est de fournir en sortie un signal S' (t) qui porte pour chaque pixel une information significative du résultat de l'application de critères de reconnaissance ou de sélection. Ces critères sont prédéfinis ou élaborés par les procédés et dispositifs de traitements d'images eux mêmes.
On connaît en particulier un tel procédé et un tel dispositif décrit dans la demande de brevet WO-98/05002, déjà citée qui est incorporée ici par référence.
<Desc/Clms Page number 13>
Le but de l'invention est de proposer un procédé et un dispositif de perception automatique rapide et efficace et d'améliorer pour un tel dispositif les unités de constitution d'histogrammes en assurant des fonctions d'autoadaptation et, dans des modes de réalisation préférés d'anticipation et d'apprentissage.
La présente invention concerne à cet effet un dispositif de perception automatique d'un événement intervenant dans un espace par rapport à au moins un paramètre.
Selon l'invention, ce dispositif comporte une unité de contrôle, un bus de données, un bus de rétroannotation et au moins une unité de calcul d'histogramme pour le traitement du paramètre.
La présente invention concerne également les caractéristiques qui
Figure img00130001

ressortiront au cours de la description qui va suivre et qui devront être considérées isolément ou selon toutes leurs combinaisons techniques possibles : - le dispositif comporte, pour traiter plusieurs paramètres, plusieurs unités de calcul d'histogramme organisées en matrice ; - les unités de calcul d'histogramme traitent des données a, jt associées à des pixels formant ensemble un espace multidimensionnel évoluant dans le temps et représenté à une succession de moments, les données parvenant à l'unité de calcul sous la forme d'un signal DATA (A) numérique sous forme d'une suite aljt de nombre binaire de n bits associé à des signaux de synchronisation permettant de définir le moment donné de l'espace et la position du pixel dans cet espace, auquel le signal aijt reçu à un instant donné est associé, comprenant : - une mémoire d'analyse comportant une mémoire avec des adresses, chacune associée à des valeurs possibles des nombres de n bits du signal DATA (A) et dont l'écriture est contrôlée par un signal "WRITE", - un dassifieur comportant une mémoire destinée à recevoir un critère C de sélection du paramètre DATA (A), recevant le signal DATA (A) en entrée et fournissant, en sortie, un signal binaire de classification dont la valeur dépend du résultat de la comparaison du signal DATA (A) avec le critère C de sélection,
<Desc/Clms Page number 14>
Figure img00140001

- une unité de rétroannotation recevant le signal de sortie du classifieur et, de l'extérieur de l'unité de calcul de l'histogramme, des signaux binaires de classification individuels concernant des paramètres autres que DATA (A), ladite unité de rétroannotation fournissant en sortie un signal de validation global positif lorsque l'ensemble des signaux de rétroannotation individuels sont positifs, - une unité de test, - une unité de sortie d'analyse, - un multiplexeur d'adresses, - une unité de validation d'incrémentation, le compteur de chaque adresse de la mémoire correspondant à la valeur d de aljt à un instant donné, étant incrémentée d'une unité lorsque l'unité de rétroannotation fournit en sortie un signal de validation global positif, l'unité de calcul et de mémorisation de données statistiques exploitant à la fin de la réception des données aijt correspondant à l'espace à un moment le contenu de la mémoire pour mettre à jour l'unité de sortie d'analyse, la mémoire étant effacée avant le début de chaque trame pour un espace à un moment par un signal d'initialisation") N ! T", et en outre : - la mémoire du classifieur est une mémoire adressable permettant la mise à jour en temps réel du critère de sélection et ayant une entrée de données DATA IN, une commande d'adresse ADRESS et une commande d'écriture WR, recevant sur son entrée la sortie de la mémoire d'analyse et un signal END sur sa commande d'écriture, - les unités de traitement d'histogramme comportent, de plus, un multiplexeur d'entrée de données ayant deux entrées et une sortie, recevant sur l'une de ses entrées un signal de comptage COUNTER et, sur l'autre de ses entrées, la suite de données ait et fournissant en sortie la suite de données aijt à la commande d'adresse de la mémoire du classifieur et un opérateur OU commandant le multiplexeur d'adresse et recevant sur ses entrées un signal d'initialisation INIT et le signal de fin
END ;
<Desc/Clms Page number 15>
Figure img00150001

- l'espace est à deux dimensions et le signal DATA (A) est associé aux pixels d'une succession d'images ; - les unités de traitements d'histogramme comportent des moyens d'anticipation de la valeur du critère de sélection ; - les moyens d'anticipation de la valeur du critère de sélection comportent des mémoires destinées à contenir les valeurs de paramètres statistiques relatives à deux trames successives ; - les paramètres statistiques sont les valeurs moyennes des données ait validées ; - le registre de sortie d'analyse des unités de calcul d'histogramme
Figure img00150002

constitue et garde en mémoire l'une au moins des valeurs suivantes : la valeur minimum"MIN", la valeur maximum"MAX", le nombre maximum de pixels pour lesquels le signal Vljt a une valeur particulière Il RMAX", la valeur particulière correspondante POSRMAX, le nombre total de pixels validés "NBPTS" ; - le paramètre statistique de comparaison utilisé par le classifieur est RMAX/2 ; - elle comporte un multiplexeur commandé, pouvant recevoir en entrée plusieurs paramètres statistiques et la nature de la comparaison faite par le classifieur dépend de la commande de ce multiplexeur ; - certaines unités de calcul d'histogramme, au moins, comportent un multiplexeur d'apprentissage destiné à recevoir un signal de commande extérieur et produisant un fonctionnement selon un mode d'apprentissage dans lequel les registres du classifieur et de l'unité de rétroannotation sont effacés au début de l'exploitation d'une trame et que le registre de sortie d'analyse fournit des valeurs caractéristiques de la séquence pour chacun de ces registres ; - dans certaines unités de calcul d'histogramme, au moins, la mémoire du classifieur est constituée d'un ensemble de registres indépendants comportant chacun une entrée, une sortie et une commande d'écriture, le nombre de ces registres étant égal au nombre n de bits des nombres de la suite V, jt, et elle comporte un décodeur permettant de sortir un signal de commande d'écriture correspondant à la valeur d'entrée (adresse) associée et un multiplexeur commandé par cette valeur d'entrée, permettant de lire le registre choisi ;
<Desc/Clms Page number 16>
- certaines unités de calcul d'histogramme au moins, comportent des multiplexeurs, un d'entre eux étant associé à l'entrée de chaque registre et des modules combinatoires reliant entre eux les registres, les multiplexeurs permettant le choix entre l'écriture séquentielle et une écriture commune à tous les registres liés entre eux par les modules combinatoires ; - dans certaines unités de calcul d'histogramme au moins, les modules combinatoires comportent un opérateur morphologique de dilatation comportant une unité logique"OU"à trois entrées dont la première reçoit le signal de sortie du registre de rang"Q", la deuxième est reliée à la sortie d'une unité logique"ET"à deux entrées recevant respectivement le signal de sortie du registre de rang"Q+1"et un signal de dilatation positive, la
Figure img00160001

troisième est reliée à la sortie d'une unité logique"ET"à deux entrées recevant respectivement le signal de sortie du registre de rang"Q-1"et un signal de dilatation négative ; - dans certaines unités de calcul d'histogramme au moins, les modules combinatoires comportent un opérateur morphologique d'érosion comportant une unité logique"ET"à trois entrées dont la première reçoit le signal de sortie du registre de rang"Q", la deuxième est reliée à la sortie d'une unité logique"ET"dont une inversée à quatre entrées recevant respectivement le signal de sortie du registre de rang Il Q", le signal de sortie du registre de rang le Q-1 ", le signal de sortie du registre de rang"Q+1"et un signal d'érosion positive, la troisième est reliée à la sortie d'une unité logique "ET"à quatre entrées dont une inversée recevant respectivement le signal de sortie du registre de rang"Q", le signal de sortie du registre de rang"Q- 1 ", le signal de sortie du registre de rang"Q+1"et un signal d'érosion négative ; - dans certaines unités de calcul d'histogramme au moins, chaque module combinatoire comporte un multiplexeur associant un opérateur morphologique d'érosion et un opérateur morphologique d'érosion ;
L'invention concerne un procédé de perception automatique d'un événement intervenant dans un espace par rapport à au moins un paramètre consistant à le digitaliser et à le fournir en entrée à une unité de calcul d'histogramme pour former un histogramme représentatif du paramètre et-en déduire le résultat désiré.
<Desc/Clms Page number 17>
L'invention concerne également un procédé d'analyse d'un paramètre représentatif d'un événement dans un dispositif électronique comprenant un calcul d'histogramme sur des données aijt associées à des pixels formant ensemble un espace multidimensionnel évoluant dans le temps et représenté à une succession de moments, les données parvenant à l'unité de calcul sous la forme d'un signal DATA (A) numérique sous forme d'une suite a, jt de nombre binaire de n bits associé à des signaux de synchronisation permettant de définir le moment donné de l'espace et la position du pixel dans cet espace, auquel le signal aijt reçu à un instant donné est associé dans lequel - on associe à chaque donnée aijt un signal binaire de classification dont la valeur dépend du résultat de la comparaison du signal DATA (A) avec le critère C de sélection, - on constitue une répartition statistique des données a, jt pour un moment donné pour lesquelles un signal de validation global est positif, ledit signal de validation global étant constitué d'un ensemble de signaux de rétroannotation individuels chacun correspondant à un paramètre
DATA (A), DATA (B),... DATA (E), résultant de la comparaison entre un critère de rétroannotation R et de son signal de classification et étant positif.
L'invention sera décrite plus en détail en référence aux dessins annexés dans lesquels : - la figure 1 est une représentation de l'unité de calcul d'histogramme selon l'invention, dans son contexte ; - la figure 2 est une représentation du signal vidéo d'entrée, traité par le dispositif et le procédé de l'invention et des signaux de commande générés par un séquenceur ; - la figure 3 est un diagramme représentant une unité passive de calcul d'histogramme ; - la figure 4 est un diagramme représentant une unité de calcul d'histogramme autoadaptative selon l'invention avec les fonctionnalités d'anticipation et d'apprentissage ; - la figure 5 est un diagramme représentant des signaux exploités par l'unité de calcul de la figure 4 ; - la figure 6 est l'organigramme du logiciel de commande de l'unité de calcul de la figure 4 en mode maître ;
<Desc/Clms Page number 18>
- la figure 7 est l'organigramme du logiciel de commande de l'unité de calcul de la figure 4 en mode esclave ; - la figure 8 est l'organigramme du logiciel d'insertion de la zone de courbe ; - la figure 9 est l'organigramme du logiciel d'initialisation (génération de la commande INIT ) ; -la figure 10 est l'organigramme du logiciel de calcul de statistiques (utilisation de la commande WRITE ) ; - la figure 11 est l'organigramme de fin de traitement (utilisation de la commande END ) ; - la figure 12 est une représentation des éléments essentiels de l'unité de calcul d'histogramme ayant une fonctionnalité d'autoadaptation ; - la figure 13 est une représentation d'un calculateur de validation ayant plusieurs fonctionnalités d'autoadaptation ; - la figure 14 est une représentation des éléments d'une unité de calcul d'histogramme produisant des valeurs POSMOY ; - la figure 15 est un schéma représentant les éléments essentiels de i'unité d'histogramme autoadaptative avec anticipation selon une première méthode ; - la figure 15a est une représentation analogue à la figure 15 mettant en oeuvre une première méthode d'anticipation généralisée ; - la figure 16 est un schéma de la mémoire du classifieur ; - la figure 17 est un schéma représentant les éléments essentiels de l'unité d'histogramme autoadaptative avec anticipation selon une deuxième méthode ; - la figure 18 est une représentation détaillée de la mémoire du classifieur avec un automate de calcul élémentaire par bit ;
Figure img00180001

- la figure 19 est une représentation d'un automate élémentaire de calcul de l'anticipation ; - la figure 20 est une représentation schématique de l'anticipation ; - la figure 21 est l'organigramme du logiciel de mise en oeuvre de l'anticipation ; - la figure 22 est une représentation de l'unité de rétroannotation ; - la figure 23 est une représentation synoptique d'une unité reprogrammable logique (FPGA) utilisée comme unité de rétroannotation ;
<Desc/Clms Page number 19>
- la figure 24 est la représentation par registre, limitée à une rangée du circuit, de la figure 23 ; - la figure 25 est une représentation des éléments essentiels d'une unité de calcul d'histogramme permettant l'apprentissage ; - les figures 26 et 27 sont des représentations schématiques d'un choix d'axe particulier ; - la figure 28 est une représentation schématique du dispositif de visualisation statistique ; - la figure 29 est un exemple du résultat de la visualisation produite par le dispositif de la figure 28 ; - la figure 30 est la représentation de la mise en oeuvre d'une pluralité d'unités de calcul d'histogramme ; - la figure 31 est la représentation de l'utilisation d'une unité de calcul d'histogramme unique programmable avec un multiplexeur permettant son , exploitation pour une pluralité de paramètres ; - la figure 32 représente un ensemble d'unités de calcul d'histogramme à contrôle d'entrée programmable dans leur contexte d'utilisation constituant une unité fonctionnelle ; - la figure 33 est une représentation synthétique d'une unité fonctionnelle avec le générateur de signal associé ;
Figure img00190001

- la figure 34 correspond à la figure 32 dans le cas d'une acquisition à deux sources ; - la figure 35 correspond à la figure 33 dans le cas d'une acquisition binoculaire ; - la figure 36 schématise un générateur de signal équipé d'une optique commandée ; - la figure 37 présente le cas d'une acquisition à trois sources ; - la figure 38 est une représentation de l'interface de gestion de l'application (API) ; - la figure 39 représente un dispositif de traitement d'un signal sonore selon l'invention ; - la figure 40 est une représentation simplifiée d'un dispositif selon l'invention.
L'invention peut être l'objet de réalisations nombreuses. Les informations exploitées peuvent être de natures variées et représenter des
<Desc/Clms Page number 20>
Figure img00200001

données ou paramètres multiples. Toutefois, sa première application est le traitement d'images, celles-ci constituant l'espace considéré. Il est bien entendu, alors, à deux dimensions. La description détaillée qui suit correspond à ce mode de réalisation particulier.
L'unité de calcul d'histogramme 1 de l'invention est représentée dans son contexte par les figures 1 et 2.
Cette unité de calcul d'histogramme 1 fait partie d'une unité de perception visuelle 13 qui reçoit et exploite un signal S (t) ou S (PI). L'unité de
Figure img00200002

calcul d'histogramme exploite et génère une information dite rétroannotation S' (t) sur un bus 111. Plus précisément, la figure 1 représente plusieurs unités de calcul d'histogramme 1A, 1B,..., 1E associées dans une même unité de perception visuelle.
Dans un mode de réalisation, l'unité de perception visuelle 13 traite différents signaux concernant une ou des scènes visuelles. Dans d'autres modes de réalisation, l'unités de perception 13 traite d'autres paramètres de perception, par exemple des sons, des odeurs... La description qui suit concerne principalement la perception visuelle, l'adaptation à d'autres paramètres est possible.
Un séquenceur 9 génère, à partir de signaux de synchronisation ST, SL, CLOCK, des signaux de séquence INIT, WRITE et COUNTER qui commandent les unités de calcul d'histogramme.
Tels que représentés sur la figure 1, les signaux d'entrée du séquenceur 9 (SL, ST, CLOCK) peuvent provenir d'un ensemble générateur de signaux 2 comportant une caméra 22 ou d'un ensemble générateur de signaux 3 comportant un imageur CMOS 32.
Lorsque les signaux d'entrée proviennent d'un ensemble 2 comportant
Figure img00200003

une caméra, cet ensemble impose des signaux de synchronisation de trames et de lignes de telle sorte que l'unité de calcul d'histogramme et son séquenceur 9 fonctionnent en mode esclave ou-synchronisation esclave-.
Au contraire, dans le cas où ces signaux proviennent d'un ensemble 3 comportant un imageur CMOS, le séquenceur 9 fonctionne en mode maître et génère lui-même les signaux de synchronisation.
Plus précisément, l'ensemble 2 permet l'acquisition de données provenant d'une scène 21 par une caméra 22. La caméra 22 produit un signal
<Desc/Clms Page number 21>
Figure img00210001

S (pol) dont la forme, du type de celle représentée sur la figure 2, sera décrite en détail plus loin.
L'unité électronique de commande 23 de la caméra 22 fournit alors les signaux S (t) résultant de l'extraction des signaux de synchronisation de S (PI),
Figure img00210002

ST, SL et le signal d'horloge CLOCK issu d'une boucle à verrouillage de phase, qui sont utilisés par l'unité de calcul d'histogramme.
Dans le cas d'un ensemble 3 comportant un imageur CMOS, cet imageur 32 est utilisé pour l'acquisition de données de la scène 31, il fournit S (t) et est piloté par une unité de synchronisation 33 qui produit les signaux de synchronisation de trames ST et de synchronisation de lignes SL, ainsi que le signal d'horloge CLOCK utilisé aussi bien par l'imageur CMOS 32 que par les autres éléments de l'unité de perception visuelle 13.
Les unités de calcul d'histogramme 1 sont avantageusement coordonnées à une unité de traitement spatial 6 et temporel 5 qui a été décrite dans la demande de brevet WO-98/05002, et à une ligne à retard 7. L'unité de traitement spatial et temporel 5,6 correspond au dispositif référencé 11 dans la demande de brevet citée. Il reçoit le signal S (PI) et génère des paramètres V (vitesse), DI (direction) correspondant chacun à l'une des données identifiées par DATA (A)... DATA (E) dans la présente demande.
Ces paramètres peuvent aussi être la résolution spatiale, la structure de l'image (variation du contraste multi-échelle en coordonnées polaires...), tels qu'ils résultent d'une analyse par ondelettes de Gabor et décrits dans
Figure img00210003

l'article de Daugman, 1988, Complete Discrete 2D Gabor Transform..., IEEE Trans. Acoust. Speech Signal Process, 36 : 1169-1179.
Cet ensemble, constitué par une unité de calcul d'histogramme 1, l'unité de traitement spatial et temporel 5,6 et la ligne à retard 7, fournit soit des informations, généralement sous forme numérique, dites-de rétroannotation-exploitables par un dispositif aval, soit un signal permettant la visualisation des informations sur un écran 8 par l'intermédiaire du bus 111.
Une unité de calcul d'histogramme passive (non autoadaptative) et sans anticipation est représentée sur la figure 3.
Cette unité de calcul d'histogramme est destinée à traiter les valeurs d'un paramètre A qui sont affectées à chaque pixel dans un signal
<Desc/Clms Page number 22>
Figure img00220001

S (t) = {aijt} de type vidéo Plus précisément, on appelle-signal S de type vidéo-un signal qui est composé d'une succession de trames, chaque trame consistant en une succession de pixels dont l'ensemble forme un espace, par exemple une image pour un espace à deux dimensions. Dans ce cas, les trames sont ellesmêmes décomposées en lignes et colonnes. Ce signal S (t) porte une valeur air du paramètre A pour chacun des pixels (i, j). La succession des trames
Figure img00220002

représente donc la succession d'images dans le temps. Dans la notation {a, jr}, T représente la trame, i est le numéro d'une ligne dans la trame T, j est le numéro de la colonne du pixel dans cette ligne, a est la valeur du paramètre A associée au pixel ijT.
Le signal S peut être un signal analogique. Toutefois, il est de
Figure img00220003

préférence numérique et composé, tel que représenté sur la figure 2 d'une succession de trames Ti et T2, chacune étant formée d'une succession de lignes horizontales balayées telles que tu, ti. 2,..., ii 17 pour Ti et 12. 1... pour T2' Chaque ligne consiste en une succession de pixels ou de points-images Pl.
S (PI) comprend un signal (ST) de synchronisation de trames au début de chaque trame, un signal (SL) de synchronisation de lignes au début de chaque ligne qui n'est pas également un début de trame. Ainsi, S (PI) comprend une succession de trames qui représente le domaine temporel et, à l'intérieur de chaque trame, une série de lignes et de pixels en colonnes qui sont représentatifs du domaine spatial.
Dans le domaine temporel," des trames successives"désignent des trames se succédant dans le temps et"des pixels successifs à la même
Figure img00220004

position"désignent les valeurs successives a, j associées respectivement aux pixels (i, j) placés au même endroit dans les trames successives, c'est-à-dire par exemple (1, 1) de ti. i dans la trame T1 et (1,1) de 12. 1 dans la trame suivante correspondante T2...
A partir du S (PI), tel qu'indiqué plus haut par référence à la demande PCT/FR-97/01354, l'unité de traitement spatial 6 et temporel 5 génère un ou plusieurs signaux DATA (A)... DATA (E).
L'unité de calcul d'histogramme passive et sans anticipation, telle que représentée sur la figure 3, exploite un signal DATA (A) dont la structure est représentée sur la figure 2. Ce signal peut provenir soit directement d'une caméra ou d'un système quelconque d'acquisition d'images, ou avoir
<Desc/Clms Page number 23>
préalablement subi un premier traitement, par exemple un traitement spatial et/ou temporel.
Elle génère un signal 101s de même structure qui porte pour chaque pixel une information significative du résultat de l'application des critères de reconnaissance ou de sélection.
Tel que représenté sur la figure 3, l'unité de calcul d'histogramme 1 comporte une mémoire d'analyse 100, un multiplexeur d'adresses 105, un multiplexeur d'entrées de données 106, une unité de validation d'incrémentation 107, un classifieur 101, une unité de rétroannotation 102 et une unité de test 103 dont les fonctionnements seront décrits plus loin.
L'ensemble des éléments constituant l'unité de calcul d'histogramme sont commandés et synchronisés par un signal d'horloge (clock).
1. La mémoire d'analyse 100
Cette unité de calcul d'histogramme 1 comporte une mémoire d'analyse 100.
Cette mémoire d'analyse 100 est de préférence une mémoire numérique dassique synchrone ou asynchrone telle qu'une DRAM ou une
SDRAM. Cette mémoire a un nombre n d'adresses d égal au nombre de niveaux possibles pour les valeurs du paramètre A qui doivent être discriminées.
Chacune de ces adresses peut stocker au moins le nombre de pixels contenu dans une trame (c'est-à-dire dans une image).
A chaque trame, après une remise à zéro rapide par le signal de commande INIT, un signal WRITE valide, pendant toute la trame, le traitement de la donnée DATA (A). Ainsi, la mémoire d'analyse 100 est susceptible de recevoir le signal DATA (A). Pour chaque trame reçue, les pixels pour lesquels la valeur du paramètre A a une valeur aij= d (s'ils sont validés par le signal de validation 102s qui sera décrit plus loin), incrémentent le contenu de l'adresse de rang d de la mémoire 100 d'une valeur 1. Ainsi, après avoir reçu une trame complète, la mémoire 100 comporte, à chacune de ses adresses d, le nombre de pixels qui sont validés et pour lesquels le paramètre A a une valeur d.
<Desc/Clms Page number 24>
Il. Les multiplexeurs d'adresses et d'entrées de données
L'unité de calcul d'histogramme 1 comprend aussi un multiplexeur d'adresses 105, un multiplexeur d'entrées de données 106.
Chacun de ces multiplexeurs comporte une commande de sélection binaire, deux entrées et une sortie.
La sortie du multiplexeur a pour valeur celle de l'une des entrées lorsque la commande de sélection vaut 1 et l'autre lorsqu'elle vaut zéro.
Lorsque le signal de commande INIT est égal à zéro, le multiplexeur d'adresses 105 sélectionne une adresse dans la mémoire d'analyse 100 en fonction du niveau d du signal (aij-r) reçu, le multiplexeur d'entrées de données 106 transfert l'incrémentation de la valeur contenue dans cette mémoire en fonction de l'état de sa commande de sélection.
Lorsque le signal de commande INIT est égal à 1, le multiplexeur d'adresses 105 transfert le signal du compteur qui incrémente l'adresse de zéro à la valeur maximum de DATA (A). Le multiplexeur d'entrées de données 106 force zéro sur l'entrée de la mémoire 100.
Figure img00240001
III. L'unité d'incrémentation
L'unité de calcul d'histogramme comporte également une unité d'incrémentation 107.
Il s'agit d'un incrémenteur commandé comportant une entrée, une commande et une sortie.
La sortie de l'unité d'incrémentation est égale à la sortie de la mémoire d'analyse 100 si le signal de validation 102s est égal à zéro, elle est égale à cette même valeur augmentée de 1 dans le cas contraire.
IV. Le classifieur
L'unité passive de calcul d'histogramme comporte également un classifieur passif 101 qui comporte un registre 101r susceptible de mémoriser certaines des valeurs de niveaux possibles (di, d2 des niveaux du paramètre A.
Le classifieur 101 reçoit le signal DATA (A) et effectue un tri des pixels fournissant, sur sa sortie 101s, une valeur 1 lorsque le paramètre A associé audit pixel a un niveau correspondant à celui contenu dans le registre 101r (di, dz,...) et la valeur zéro dans le cas contraire.
<Desc/Clms Page number 25>
La sortie du classifieur 101 est reliée à un bus 111.
V. L'unité de rétroannotation
L'unité de calcul d'histogramme comporte encore une unité de rétroannotation 102.
Cette unité de rétroannotation 102 est reliée au bus 111. Elle comporte au moins un registre 102r et reçoit pour chaque pixel des signaux DATA (A), les valeurs (inE,..., inB, inA) de sortie des classifieurs 101 des différentes unités de calcul d'histogramme auto-adaptatives reliées au bus 111.
Cette unité de rétroannotation compare les valeurs ainsi reçues à celles contenues dans son registre 102r et émet, sur sa sortie 102s, pour chaque pixel, un signal de validation égal à 1 lorsqu'il y a coïncidence entre les valeurs du registre égales à 1 et les données correspondantes reçues du bus 111, et une valeur zéro dans le cas contraire, ce qui correspond à la fonction booléenne suivante :
Figure img00250001

out = (in. + RegJ. (in, + Reg)... (inn + RegJ (in, +m, +... mJ VI. L'unité de test et le registre de sortie d'analyse
L'unité de calcul d'histogramme comprend également une unité de test 103 recevant les informations sortant de la mémoire d'analyse 100 et reliée à des registres de sortie d'analyse 104.
Les registres de sortie d'analyse 104 sont destinés à recevoir des informations statistiques élaborées sur les valeurs du paramètre A du signal DATA (A) pour chaque trame.
Il peut s'agir par exemple des valeurs minimum (MIN) et maximum (MAX) du paramètre A, du nombre d'occurrences (RMAX) de la valeur la plus représentée et de la position (POSRMAX) de cette valeur, ainsi que du nombre (NBPTS) de points pour lesquels des informations ont été reçues.
L'unité de test 103 met à jour les registres de sortie d'analyse 104 en fonction des informations qu'il reçoit.
L'unité de validation d'incrémentation 107 produit également en sortie un signal adressé sur l'unité de test 103 lui permettant d'incrémenter le registre de sortie d'analyse 104 dans l'hypothèse favorable.
On comprend ainsi qu'après l'exploitation d'une trame complète, l'unité de calcul d'histogramme 1 a produit des informations statistiques
<Desc/Clms Page number 26>
représentatives de cette trame, disponibles dans Je registre de sortie d'analyse 104 et exploitables à toutes fins utiles, soit pour une visualisation accessible à l'opérateur, soit pour exploitation par tout autre programme ou automate.
Les registres de sortie d'analyse 104 comportent des mémoires pour chacune des caractéristiques-clés qui incluent le minimum (MIN) de l'histogramme, le maximum (MAX) de l'histogramme, le nombre de points (NBPTS) de l'histogramme, la position (POSRMAX) du maximum de l'histogramme et le nombre de points (RMAX) au maximum de l'histogramme. Ces caractéristiques sont déterminées en parallèle avec la formation de l'histogramme par l'unité de test 103, de la manière suivante :
Pour chaque pixel qui est validé : (a) si la valeur du paramètre DATA (A) du pixel < MIN (qui est initialement fixée à la valeur maximale de DATA (A) possible de l'histogramme), alors la valeur du paramètre est inscrite dans MIN ; (b) si la valeur du paramètre DATA (A) du pixel > MAX (qui est initialement fixée à la valeur minimale de DATA (A) possible de l'histogramme), alors la valeur du paramètre est inscrite dans MAX ; (c) si le contenu de la mémoire 100 à l'adresse de la valeur du paramètre du pixel > RMAX (qui est initialement fixée à la valeur minimale DATA (A) possible de l'histogramme), alors i) écrire la valeur du paramètre dans POSRMAX et ii) écrire la sortie de la mémoire dans RMAX ; (d) augmenter NBPTS (qui est initialement fixé à la valeur zéro) d'une unité.
VH. Fonctionnement d'ensemble de l'unité de calcul d'histogramme passive
Plusieurs unités de calcul d'histogramme 1A, 1B... 1E sont donc reliées au même bus de rétroannotation 111. La présente description est faite en référence à cinq unités de calcul d'histogramme A à E. On comprend que la généralisation à un nombre quelconque d'unités peut être faite.
A. Signal WRITE
Pendant chaque signal WRITE, chacune d'elles fournit au bus, pour chaque pixel, le signal de sortie 101s de son classifieur 101 et elles reçoivent
<Desc/Clms Page number 27>
Figure img00270001

ANNEXE UNIQUE
Figure img00270002

chacune l'ensemble de ces signaux sur l'entrée inA,..., ir) E de leur unité de rétroannotation 102.
La valeur du paramètre, par exemple DATA (A) pour l'unité 1 A, est comparée au contenu du registre 101r du classifieur 101. Le résultat inA= 101s de cette comparaison est un signal binaire qui est adressé en même temps que ses homologues inB... inE provenant des autres unités 1B... 1E.
L'unité de rétroannotation 102 compare ces valeurs prises ensemble au contenu de son registre 102r constituant un critère R de rétroannotation et génére, sur sa sortie 102s, un signal binaire dont la valeur dépend du résultat de la comparaison.
Ce signal 102s commande l'incrémenteur 107. Lorsqu'il est égal à 1, il produit, par l'intermédiaire du multiplexeur de données 106, l'incrémentation d'une unité du contenu du registre de la mémoire 100 correspondant à la valeur du paramètre DATA (A), simultanément l'unité de test 103 assure l'exploitation statistique du contenu de la mémoire 100 et en transfert le contenu dans le registre de sortie d'analyse 104.
A la fin du signal WRITE, les registres de la mémoire 100 contiennent chacun pour valeur d, le nombre de pixels pour lesquels le signal DATA (A) avait la valeur d correspondante et que l'unité de rétroannotation a validé.
B. Signal INIT
Pendant le signal INIT, le signal COUNTER qui balaie les valeurs de 0 à n, assure la remise à zéro des registres de la mémoire 100.
VIII. L'auto-adaptation
Dans la description faite jusqu'à présent, la mémoire du classifieur 101 est un registre 101r dont le contenu déterminé de l'extérieur du système est fixe. Ce classifieur est alors dit passif.
L'autoadaptation consiste en l'actualisation automatique, par le système lui-même, du contenu de la mémoire du classifieur, ce contenu étant alors une table d transcodage (LUT-Look Up Table). On obtient ainsi une unité de calcul d'histogramme 1 autoadaptative.
<Desc/Clms Page number 28>
Figure img00280001
Pour assurer la fonction d'autoadaptation, c'est-à-dire de mise à jour en temps réel du classifieur, l'unité de calcul d'histogramme de la figure 3 est perfectionnée conformément à la figure 4.
Au lieu d'avoir un simple registre 101r écrit de l'extérieur du système, le classifieur 101 a une mémoire adressable dont l'écriture est commandée par un signal END.
Le séquenceur 9 génère ce signal END représenté sur la figure 5.
L'unité de calcul d'histogramme comporte un opérateur de sélection OU 110 recevant en entrée les signaux INIT et END et relié en sortie à la commande du multiplexeur d'adresses 105.
La mémoire du classifieur 101 est commandée par le système luimême. Son contenu est modifiable, elle comporte une entrée de données DATA IN, une commande d'écriture WR et une entrée d'adresses ADRESS.
Cette entrée d'adresses est reliée à la sortie d'un multiplexeur d'anticipation 108. Ce multiplexeur 108 de type"deux vers un"comporte une commande d'anticipation reliée à la sortie d'un opérateur OU 112 recevant en entrée les signaux INIT et END.
Les entrées du multiplexeur d'anticipation reçoivent les mêmes signaux que les entrées du multiplexeur d'adresses 105 (DATA (A) et COUNTER).
Lorsque le signal END vaut 1, la mémoire du classifieur est écrite par un signal résultant de la comparaison entre la valeur de la mémoire 100 d'histogramme et une valeur issue du registre de sortie d'analyse 104 (RMAX/2) pour toutes les valeurs possibles de DATA (A)).
Ainsi, le classifieur assure une fonction de classification fA qui est la relation qu'il établit entre les données DATA (A) qu'il reçoit et la valeur de sortie 101s qu'il produit.
A. Classifieur premier mode de réalisation
En référence à la figure 12, le classifieur 101 assurant l'autoadaptation comporte une mémoire 118 dont l'entrée d'écriture WR reçoit le signal END, l'entrées d'adresses ADRESS reçoit le signal de sortie du multiplexeur d'adresses 108. Il comporte de plus un comparateur 119 comportant deux entrées et une sortie, celle-ci étant reliée à l'entrée de données DATA IN de la mémoire 118.
<Desc/Clms Page number 29>
La première entrée du comparateur 119 reçoit la valeur RMAX/2 produite par un registre de sortie d'analyse 104 et, sa deuxième entrée reçoit la sortie de la mémoire 100.
Le fonctionnement de la mémoire 118 du classifieur est alors le suivant.
Elle comporte le même nombre de mots que la mémoire d'analyse 100 mais dans la mémoire 118, chaque mot ne comporte qu'un seul bit.
A la fin (signal END = 1) de la réception d'un nouveau flux de données DATA (A) d'une trame, une séquence d'écriture commence.
Lorsque pour une mémoire donnée d de la mémoire d'analyse 100, la valeur tue est supérieure à RMAX/2, une valeur 1 est inscrite dans la mémoire 118 à la position correspondante. Dans le cas contraire, la valeur 0 est inscrite à cette position. L'ensemble des mémoires d est balayé de 0 à n. La mémoire 118 du classifieur 101 a ainsi été mise à jour.
B. Classifieur deuxième mode de réalisation
La figure 13 représente un mode de réalisation alternatif du classifieur dans lequel un multiplexeur 120 est commandé par une commande de choix 124 et permet la comparaison du paramètre P à une valeur statistique Q, qui peut être élaborée de différentes manières en fonction des paramètres statistiques reçus sur ses différentes entrées 0,1, 2,3 qui sont sélectionnées par la commande de choix 124. La commande de choix dépend du contenu du registre"CHOIX". L'entrée 0 du multiplexeur 120 reçoit la valeur RMAX/2
Figure img00290001

produite à partir des données du registre de sortie d'analyse 104 par le diviseur par 2,121, l'entrée 1 du multiplexeur 120 reçoit directement la valeur RMAX, l'entrée 2 du multiplexeur 120 reçoit une valeur de seuil contenu dans un registre"SEUIL"123 dont le contenu est programmé de l'extérieur du système, l'entrée 4 de ce multiplexeur reçoit le quotient du nombre de points NBPTS par le SEUIL produit par le diviseur 122.
Figure img00290002
Donc tel que représenté sur la figure 13, le paramètre P peut être comparé aux valeurs respectives RMAX/2, RMAX, à un seuil B entré depuis l'extérieur et au rapport du nombre de points NBPTS rapporté à ce seuil par le diviseur 122.
<Desc/Clms Page number 30>
Le contenu de la mémoire 118 est mis à jour, en fonction des signaux fournis par le comparateur 119 de manière analogue à la mise à jour décrite dans le premier mode de réalisation.
C. Classifieur troisième mode de réalisation
La figure 13bis et 13ter représente un troisième mode de réalisation dans lequel on utilise le cumul des occurrences dans l'histogramme au lieu des niveaux de ceux-ci. Les bornes de classification sont définies par exemple par l'utilisation d'un registre RMAX, correspondant au maximum d'occurrences du paramètre analysé, en recherchant les valeurs du paramètre pour RMAX/2. De part et d'autre de la position de RMAX, ces valeurs correspondent aux borne A et borne B du classifieur.
Ainsi, le registre RMAX est remplacé par le registre NBPTS, correspondant au cumul total des occurrences, et à supprimer un pourcentage k de NBPTS de part et d'autre de l'histogramme. Les bornes A et B deviennent plus stables.
Un dispositif peut aisément exécuter cette fonction.
En fin de calcul d'histogramme, le registre NBPTS est connu et un signal Fin-Trame permet de connaître la valeur a = k. NBPTS et une valeur P = NBPTS-a.
En initialisant à zéro une fonction de cumul S, soit So=zéro, l'incrément i d'un compteur connecté sur l'adresse de la mémoire histogramme précédemment calculée permet de lire le contenu de cette mémoire, et d'alimenter le registre de cumul Si.
Figure img00300001
Un premier test consiste à assigner à Borne A, la valeur d'incrément i tant que Si est plus petit que la valeur a précédemment définie.
Un second test consiste à assigner à Borne B, la valeur d'incrément i tant que So est plus petit que la valeur ss précédemment définie.
IX. La mémoire 118 du classifieur 101
La figure 16 est une représentation détaillée de la mémoire 118 faisant apparaître un démultiplexeur avec validation d'entrée 130 et un multiplexeur de sortie 131. Le démultiplexeur d'entrée 130 recevant le signal d'écriture
WR est donc à même de valider le choix du registre de la mémoire 118, sélectionné par la commande d'adresse ADRESS, pour l'écriture de la valeur
<Desc/Clms Page number 31>
binaire de la comparaison DATA IN. Le multiplexeur 131 de sortie adresse la valeur d'un registre particulier, sélectionné par la commande d'adresse
ADRESS, sur la sortie 101s de la mémoire 118 du classifieur.
Le démultiplexeur d'entrée 130 et le multiplexeur de sortie 131 sont commandés par le bus 134 issu du multiplexeur d'anticipation 108.
Plus précisément, le démultiplexeur 1/n d'entrée 130, commandé par l'adresse transmise par le bus 134, envoie le signal WR (WRITE), respectivement sous la forme des signaux Seto, Seh, Sets,..., Sein sur les registres 140ob 1401, 140z,..., 140n de rang 0, 1..., n et détermine celui de ces registres dans lequel le contenu de l'information transmise par le signal DATA
IN est adressé. En sortie, les informations provenant de ces registres 1400,
1401, 1402,..., 140n sont adressées sur le multiplexeur 131 qui les dirige sur sa sortie OUT.
X. L'anticipation
Dans une forme de réalisation préférée, en plus de la mise à jour en temps réel, l'unités 1 de constitution d'histogramme assure une fonction d'anticipation.
Cette anticipation de l'autoadaptation du classifieur 101 améliore le fonctionnement de ce système bouclé et le rapproche d'un fonctionnement d'un système physiologique.
Le but de l'anticipation est, comme son nom l'indique, d'anticiper la valeur contenue dans la mémoire 118 du classifieur de façon à accélérer le traitement et, par là, à faciliter le suivi d'un objet ou de son évolution.
A cet effet on recourt d'abord à un calcul de la variation global de l'histogramme dont le résultat est, ensuite, utilisé pour appliquer l'anticipation selon l'une ou l'autre des méthodes suivantes. Dans tous les cas, l'anticipation définit une fonction d'anticipation qui, combinée à la fonction de
Figure img00310001

classification f, produit une fonction (fog) A reliant les données DATA (A) et la valeur de sortie (101 S) A caractérisant l'unité de traitement d'histogramme traitant le paramètre A.
A. Calcul de la variation globale de l'histogramme
L'unité de test 103 et les registres 104 de sortie d'analyse génère alors une valeur statistique POSMOY dont les valeurs POSMOYo et POSMOY1
<Desc/Clms Page number 32>
pour deux trames successives sont mémorisées. POSMOY est la valeur du paramètre DATA (A) par rapport à laquelle, dans une trame donnée, ledit paramètre a une valeur supérieure ou égale pour la moitié des points validés de la trame et une valeur inférieure pour l'autre moitié.
Préparation
Lorsque le signal END vaut 1, la nouvelle valeur POSMOYo est calculée et la valeur précédente de POSMOYo est sauvegardée en POSMOY1.
POSMOY
En référence à la figure 14, on décrira maintenant l'élaboration de la variable POSMOYo.
Cette variable POSMOYo est produite par un comparateur 302.
Figure img00320001
Ce comparateur 302 reçoit, sur l'une de ses entrées Q, le paramètre NBPTS qui est divisé par deux par le diviseur 303.
Sa deuxième entrée P est alimentée par la sortie d'un registre 301 qui est commandé par les signaux d'initialisation INIT et de fin END, et reçoit en entrée la sortie d'un additionneur 300 qui reçoit lui-même en entrée, la valeur de sortie du registre 301 et sur sa deuxième entrée, la valeur de sortie de la mémoire 100 qui a été précédemment décrite.
Figure img00320002
Ainsi, le registre 301, initialement remis à zéro, mémorise le cumul du contenu des registres de la mémoire qui sont balayés par le signal COUNTER de zéro à n.
Tant que ce cumul est inférieur à NBPTS/2, la valeur du COUNTER est mémorisée dans POSMOYo. A la fin du cycle END, POSMOYo contient donc la dernière valeur COUNTER pour laquelle le cumul est inférieur à NBPTS/2.
B. Application de la variation de l'histogramme à l'anticipation (1erg méthode)
Figure img00320003

Cette première méthode est représentée sur la figure 15. La mémoire 118 est celle décrite précédemment en référence à la figure 16.
Un automate 310 dit-unité de calcul de valeur absolue avec extraction de signe-fournit les valeurs IPOSMOYo-POSMOYo et le signe de cette différence.
Ces paramètres commandent un translateur 311 après inversion du signe par l'inverseur 312.
<Desc/Clms Page number 33>
Figure img00330001
La valeur du paramètre alimentant la mémoire 118 est ainsi décalée de la valeur IPOSMOYo - POSMOY1 ! par rapport au fonctionnement passif, dans le sens opposé à la variation de POSMOY calculée dans l'unité 310.
La figure 15a représente un circuit alternatif permettant la mise en
Figure img00330002

oeuvre de la première méthode d'application de la variation de l'histogramme à l'anticipation. Dans ce mode de réalisation, l'unité de calcul 310a est analogue à l'unité de calcul 310 mais elle permet des possibilités plus souples de décalage de la valeur du paramètre fourni à la mémoire 118. Alors que l'unité de calcul 310 de la figure 5 produit un décalage déterminé par une fonction de la forme y = x où x est (POSMOYo -POSMOY1), l'unité de calcul 31 da fournit un décalage déterminé par des fonctions de la forme y = ax + b, dans laquelle a (par exemple k1 et k2) et b (par exemple c1 et c2) sont des constantes ajustables qui peuvent être fournies par un processeur.
On comprend qu'ainsi, toute autre fonction agissant sur les valeurs POSMOY peuvent être utilisées si voulu tel que y = ax. Sur la figure 15a, le multiplexeur 127 reçoit en entrée les deux fonctions de POSMOY, c'est-à-dire k1 x (Pô-Pi) + c1 et k2 x (P.-Pi) + c2, et fournit une sortie fondée sur la valeur du signal de contrôle CLOCK .
Pour augmenter le domaine de classification, le circuit OU 125 et le circuit de retard 126 peuvent être utilisés. Le circuit de retard est contrôlé par le même signal d'horloge qui contrôle le multiplexeur 127. Les valeurs de sortie de la mémoire 118 reliées aux deux fonctions différentes de décalage sont alors fournies à la porte OU 125 dont la sortie est le signal 102s avec un domaine de classification amélioré, ce qui améliore l'anticipation.
Figure img00330003
C. Application de la variation de l'histogramme à l'anticipation (2"méthode) Cette deuxième méthode est représentée sur la figure 17. La mémoire 118 est alors celle représentée sur la figure 18.
L'architecture générale de la mémoire 118 est celle déjà décrite plus haut. Nous décrirons une séquence pour 1 bit donnée, les autres étant analogues. Les éléments communs à la figure 16 portent les mêmes références.
Le registre 1401 est associé à un multiplexeur d'entrées 2/1 1601 qui reçoit sur l'une de ses entrées, le signal binaire sortant du comparateur 119
<Desc/Clms Page number 34>
et sur l'autre de ses entrées, le signal de sortie de l'automate de calcul d'anticipation 1501.
Le multiplexeur d'entrée 1601 est commandé par le signal ETD qui commande également l'écriture.
A cet effet, la commande d'écriture du registre 1401 est reliée à un opérateur OU 1701 qui reçoit, sur l'une de ses entrées, le signal ETD et sur l'autre, un signal Seil..
En sortie du registre 1401, un automate de calcul d'anticipation 1501 reçoit en entrée les trois signaux Qo, QI et Q2 de sortie des registres 14001 1401, 1402 de rang respectivement 0,1, 2, il est commandé par ! es signaux SM, SP et T.
Dans les automates 1500, 1501,..., l'anticipation est réalisée par la succession d'opérations de dilatation suivie d'opérations d'érosion.
L'automate de calcul d'anticipation 150 est décrit en détail sur la figure 19, il comporte un multiplexeur 207 comportant une sortie et deux entrées commandé par le signal T.
L'une de ses entrées est reliée à un opérateur de dilatation 208 qui
Figure img00340001

fournit un signal Ai et l'autre à un opérateur d'érosion 209 qui fournit un signal Bi.
L'opérateur de dilatation 208 comporte un circuit OU 201 à trois entrées et une sortie. Sa sortie est reliée au multiplexeur 207.
Sa première entrée est alimentée par le signal Qi, sa deuxième entrée est alimentée par la sortie d'un circuit ET 202 à deux entrées dont l'une des entrées est le signal Q, et l'autre entrée est le signal SP. La troisième entrée
Figure img00340002

du circuit OU 201 est alimentée par la sortie d'un circuit ET 203 à deux entrées, l'une de ces entrées étant le signal Q2 et l'autre étant le signal SM.
La fonction réalisée par l'opération de dilatation 208 est ainsi
Ai = QI + Qo x SP + Q2 x SM
L'opérateur d'érosion 209 comporte un circuit ET 204 à trois entrées et une sortie. Sa sortie est reliée au multiplexeur 207.
Sa première entrée est alimentée par le signal Qi.
Sa deuxième entrée est reliée à un circuit NON-ET à quatre entrées et une sortie 205.
<Desc/Clms Page number 35>
La première entrée de ce circuit NON-ET 205 est reliée au signal SP, la deuxième au signal Qi. La troisième entrée est reliée au signal Qo et la quatrième inversée au signal Q2.
Un deuxième opérateur NON-ET 206 a quatre entrées et une sortie reliée à la troisième entrée du circuit ET 204, la première de ses entrées étant
Figure img00350001

alimentée par le signal Qi, la deuxième par le signal SM, la troisième par le signal Q2 et la quatrième inversée par le signal Qo.
La fonction réalisée par l'opérateur d'érosion 209 est ainsi BI =Q, x (SMxQ2 xQo) x (SPxQ2 XxQo)
Le fonctionnement de l'opérateur d'anticipation est illustré par la figure 20.
Sur cette figure, à gauche en référence à l'axe des temps t, sont représentés les signaux INIT, WRITE, END, ETD, T, SP, SM.
Le signal INIT génèré par le séquenceur 9 démarre le cycle de traitement d'une trame. Pendant sa durée, tous les mémoires et registres sont initialisés.
Le signal WRITE également généré par le séquenceur 9 suit le signal INIT et commande les calculs statistiques pour la trame considérée dont les données sont représentées par la courbe C, dont les axes représentent en abscisse les valeurs du paramètre et en ordonnée le nombre d'occurrences.
L'unité de test 103 recherche le nombre d'occurrences maximum RMAX.
A la fin du signal WRITE, le signal END encore généré par le séquenceur 9 valide la mise à jour de la mémoire du classifieur 118. Les nouvelles données sont générées par le comparateur 119.
A la fin du signal END au temps to, le contenu de la mémoire 118 est représenté par la répartition Ro.
La fin du signal END démarre le signal ETD dont la durée est déterminée par le générateur de commande 313. Ce signal ETD valide le calcul de l'étendue dans la mémoire 118 du classifieur.
Les signaux SP (Sens Plus) et SM (Sens Moins) compris dans ETD commandent respectivement le traitement dans le sens positif (SP=1) et dans
<Desc/Clms Page number 36>
Figure img00360001

le sens négatif (SM=1) de l'étendue de la répartition Ro qui devient R1 à ti, Rz à t2 et R3 à t3...
Ainsi, les durées respectives de SP et SM déterminent l'étendue et la position de la répartition R5 à la fin du signal ETD.
Le multiplexeur 207 commandé par la commande T ayant deux entrées alimentées respectivement par les sorties des opérateurs de dilatation et
Figure img00360002

d'érosion et une sortie permet de mettre en oeuvre l'un ou l'autre de ces opérateurs en fonction de la commande T.
La sortie du multiplexeur 207 est OUT, OUT, =A, xT+BxT XI. La rétroannotation Dans un mode de réalisation simplifié décrit jusqu'à présent, le bloc de rétroannotation 102 comporte un seul registre contenant une seule valeur de rétroannotation constituant le critère R de rétroannotation.
Figure img00360003
A. Critères complexes de rétroannotation
Dans un mode de réalisation préféré, le bloc de rétroannotation est une mémoire pouvant contenir plusieurs valeurs formant ensemble le critère R de rétroannotation, l'une ou l'autre d'entre elles pouvant valider l'information portée par un pixel. Chacune de ces valeurs est mise en mémoire dans un registre terme produit 410.
La figure 22 représente un tel bloc de rétroannotation 102 dans son ensemble. Il est composé d'un ensemble de termes produits 410 alimentés par le bus 425 A PRODUCT TERM et commandés par le bus Programm Register 12.
Chacun de ces termes produits 410 a une sortie qui alimente un opérateur OU 421 qui fournit lui-même en sortie un signal entrant sur l'une des entrées d'un inverseur commandé 422, qui reçoit sur sa deuxième entrée les signaux provenant du bus Programm Register 12 par l'intermédiaire du registre 423.
Les figures 23 et 24 illustrent une unité mémoire (FPGA-Field Programmable Gate Area) reprogrammable 400 mise en oeuvre pour la réalisation de l'unité de rétroannotation 102.
<Desc/Clms Page number 37>
Une telle mémoire comporte un inverseur commandé 403 dont la sortie est la sortie de l'unité reprogrammable 400 et dont l'une des entrées est un opérateur OU 401 relié aux B lignes 405, ces lignes coupant les A colonnes 406 qui sont reliées à des amplificateurs 402 fournissant des signaux s et s.
Les intersections 404 des lignes 405 et des colonnes 406 sont des connexions programmables permettant de déterminer l'ensemble du fonctionnement de l'unité reprogrammable 400.
La figure 24 représente une ligne unique 410 d'une telle unité reprogrammable 400.
Une telle ligne comporte des registres 411 et 412 destinés à recevoir des variables Reg-aO et Reg-bO de programmation.
Cette ligne est décomposable en A fonctions élémentaires dont chacune comporte un inverseur commandé 413, un opérateur OU 415 et un inverseur 414. L'une des entrées de l'inverseur commandé 413 est reliée à l'entrée A et l'autre de ces entrées au bit i du registre Reg-aO.
La sortie de cet inverseur commandé 413 est reliée à l'entrée de l'inverseur 414 qui alimente, par sa sortie, l'une des entrées de l'opérateur OU 415.
L'autre entrée de cet opérateur OU 415 est alimentée par le bit i du registre Reg-bO.
La sortie de l'inverseur commandé 413 alimente également l'une des entrées d'un opérateur OU 417 qui reçoit encore l'ensemble des signaux correspondants produits par les différentes sorties des fonctions élémentaires.
* Un opérateur ET 416 dont la sortie est product termO reçoit en entrée d'une part la sortie de l'opérateur OU 417 et d'autre part les sorties des différentes fonctions élémentaires.
B. L'apprentissage
Le bloc de rétroannotation peut être programmé de l'extérieur par une instruction d'une interface de gestion d'application. Cette interface charge les registres 411 et 412.
Dans un mode de réalisation encore préféré, l'unité 1 de constitution d'histogramme, en plus de la mise à jour du classifieur et de l'anticipation a une fonction d'apprentissage.
<Desc/Clms Page number 38>
Figure img00380001
A cet effet, l'unité 1 de constitution d'histogramme comporte un multiplexeur d'apprentissage 108 qui permet la programmation automatique de l'unité de rétroannotation 102.
Le multiplexeur d'apprentissage 108 sélectionne l'un ou l'autre des deux modes de fonctionnement possibles (exploitation et apprentissage). En mode d'exploitation, les valeurs contenues dans le registre de l'unité de rétroannotation 102 sont fixées, au contraire, en mode d'apprentissage, ces valeurs sont mises à jour.
Le mode d'exploitation
Lors du fonctionnement en mode d'exploitation, le multiplexeur d'apprentissage 109 émet, sur sa sortie, un signal de valeur 1 signifiant que les valeurs contenues dans les registres du bloc de rétroannotation 102 ne sont pas modifiées pendant la séquence de fonctionnement en mode d'exploitation.
Les valeurs stockées dans ces registres ont donc soit été choisies et mises en mémoire par l'utilisateur, soit ont résulté d'une phase d'apprentissage préalable que nous analyserons plus loin.
L'unité de rétroannotation 102 reçoit également, des autres unités de calcul d'histogramme coopérant avec celle décrite ici, des signaux comparables inE... inA.
Remplissant son rôle déjà décrit plus haut, cette unité de rétroannotation compare les valeurs ainsi reçues aux valeurs mises en mémoire dans son ou dans ses registre (s) et produit en sortie un signal 102s égal à 1 en cas de coïncidence et à zéro dans le cas contraire. Ce signal de validation est adressé à l'unité de validation d'incrémentation et lorsque sa
Figure img00380002

valeur est égale à 1, autorise la prise en compte de la valeur du paramètre DATA (A) du pixel concerné dans la mémoire d'analyse 100 et, dans le cas contraire, autorise le traitement du pixel suivant.
Le mode d'apprentissage
Le fonctionnement de l'unité de calcul d'histogramme est alors commandé par des signaux représentés sur la figure 5, c'est-à-dire un signal d'initialisation (INIT), un signal d'écriture (WRITE), qui portent les informations correspondant à chaque pixel de la trame (ou de l'image) et un signal de fin END.
<Desc/Clms Page number 39>
Dans le mode d'apprentissage, le multiplexeur d'apprentissage 109 fournit en sortie la valeur du signal de rétroannotation qui est alors utilisée comme donnée DATA (A).
Lors de l'apprentissage d'une unité de calcul d'histogramme de rang i, un signal LEARNi valide durant toute une séquence trame le traitement en mode apprentissage.
Pendant cette séquence, les registres d'apprentissage 116 sont mis à jour. Simultanément, le bloc de rétroannotation 102 assure la transparence des signaux, validant la donnée DATA (A), alors égale au signal de rétroannotation 111 dès qu'une au moins des entrées inA,..., in E est active (=1).
A la fin du signal WRITE, la mémoire d'histogramme 100 représente la distribution du signal de rétroannotation.
L'unité de test 103 produit alors un classement des occurrences par valeur décroissante en nombre égal au B SUM TERM .
Pendant le signal END, les valeurs du signal de rétroannotation ainsi sélectionnées sont écrites dans les registres 411 et 412 de chacun des blocs 410 du bloc de rétroannotation 102.
Le registre 412 correspond à la valeur du signal de rétroannotation et le registre 411 correspond à son complément. En pratique, on peut utiliser deux sorties d'un même registre fournissant ces deux valeurs.
On réalise ainsi une élaboration statistique automatique des paramètres caractéristiques dans la trame étudiée.
Ainsi, l'apprentissage nécessite, pour n paramètres d'entrée, n+1 unités calcul d'histogramme. Les n blocs traitant l'un des paramètres et le bloc restant traitant l'information de rétroannotation pour assurer l'apprentissage. En pratique, l'information de rétroannotation ayant un nombre de digits important, l'unité d'apprentissage est dédiée et est de grande dimension.
Les organigrammes des différents logiciels requis pour assurer les fonctions d'autoadaptation, d'anticipation et d'apprentissage représentés sur les figures sont lisibles en eux-mêmes et ne nécessitent pas d'explications complémentaires pour être compris de l'homme du métier. Lorsque, de manière interne, ils font appel à des variables, celles-ci ont été représentées
<Desc/Clms Page number 40>
dans un cadre. Certaines fonctions étant réalisées dans un composant particulier décrit par ailleurs, la référence numérique de ce composant a aussi été affectée à la fonction.
XII. L'unité de traitement spatial et temporel
Avantageusement, l'unité de traitement spatial 6 produit en sortie des signaux F, SR, V, VL, DI, CO associés chacun à chaque pixel de manière synchrone. Ce sont de préférence des signaux numériques. Le signal complexe F comprend alors un certain nombre de signaux de sortie générés par le système comprenant de préférence des signaux signifiant la présence et la localisation d'une zone ou d'un objet en mouvement, la vitesse V est la direction orientée du déplacement DI de chaque pixel de l'image. Egalement,
Figure img00400001

de préférence, une sortie du système est constituée par le signal vidéo numérique d'entrée qui est retardé (SR) de façon à le synchroniser avec la sortie ZH de la trame, en prenant en compte le temps de calcul du signal de données composite F (pour une trame). Le signal retardé SR est utilisé pour représenter l'image reçue par la caméra sur un moniteur ou un écran de
Figure img00400002

télévision qui peut aussi être utilisé pour représenter l'information contenue dans le signal composite ZH. Le signal composite ZH peut aussi être transmis à une unité de traitement distincte 1 Oa qui poursuit le traitement de ce signal.
XIII. Traitement spatial : Choix d'axes
La position d'un pixel dans l'espace est représentée par rapport à un système d'axes. Selon la forme, l'orientation,... des objets dans la scène, certains systèmes d'axes fournissent de meilleurs résultats que les autres.
Les figures 26 et 27 présentent le procédé de choix des axes permettant d'obtenir des histogrammes optimisés, c'est-à-dire présentant un maximum particulièrement marqué.
L'unité Space transform reçoit en entrée les données spatiales x, y qui peuvent être soit des données cartésiennes, soit des données polaires. Cette unité Space transform est commandée par un signal a et fournit en sortie, pour chacune des valeurs de a, un paramètre qui alimente une unité de constitution d'histogramme selon l'invention.
<Desc/Clms Page number 41>
Le programme de commande de cette unité d'histogramme introduit par le Programm Register permet de sélectionner la valeur a produisant un histogramme optimisé.
Un tel procédé de choix des axes a été décrit en détail dans la demande PCT WO-98/05002 (voir la figure 11 et la description correspondante, l'unité Space Transform y étant référencée 37).
XIV. Traitement temporel
Au traitement colorimétrique qui exploite les valeurs des signaux de teinte, de saturation et de luminance, aux signaux de vitesse, direction et intensité, on peut adjoindre une fonction de filtrage spatial produisant un paramètre de résolution spatiale (méthode de Gabor) et une fonction binoculaire qui, par un automate de calcul de distance, fournit un paramètre de profondeur.
Des applications complètes peuvent être réalisées en exploitant tout ou partie de l'ensemble de ces paramètres.
XV. Visu courbe statistique
Dans un mode de réalisation préféré, un générateur de courbe 114 permet l'incrustation à l'écran d'une courbe des valeurs DATA pour la trame antérieurement traitée.
De même, une incrustation du signal de rétroannotation est possible.
Ces incrustations sont adressées respectivement par les lignes 14 et 15 vers un écran. Des interrupteurs 16 et 17 permettent de sélectionner une unité de calcul d'histogramme particulière parmi l'ensemble de celles-ci.
Les figures 28 et 29 décrivent plus précisément les moyens de visualisation de la courbe d'histogramme.
La mémoire 100 adressée par la valeur du compteur de colonnes 353 alimente l'une des entrées d'un registre à décalage 350 dont l'autre entrée est alimentée par le paramètre RMAX produit par le registre d'analyse 104.
La sortie de ce registre à décalage 350 alimente l'une des entrées d'un comparateur 351 dont l'autre entrée est alimentée par un compteur de lignes 352 au travers d'un inverseur 354. Un opérateur ET 355 recevant, d'une part,
Figure img00410001

le résultat de la comparaison P > Q et, d'autre part, la variable Val-ZOne, fournit en sortie la variable AffCbe.
<Desc/Clms Page number 42>
Figure img00420001
Le compteur de colonnes 353 qui génère les variables Col-Counter 356 et Col~Curve~Counter 357, le compteur de lignes 352 qui génère les variables RowCurveCounter)) 358 et RowCounter 359 et le générateur de la variable Val-Zone sont un sous-ensemble 91 du séquenceur
Figure img00420002

9.
De plus, le bloc de commande de visualisation 365 de l'écran 8 reçoit le signal vidéo retardé SR, une commande de curseur produite par le bloc curseur 366, une commande produite par la mémoire semi-graphique 367.
La figure 29 est le résultat de la vignette obtenue 360 validé par le commutateur 16 qui transfert le signal d'affichage courbe sur la commande d'incrustation 15 dans l'écran 361 qui comporte de plus une zone de commande 362, un curseur 363 et une zone texte 364.
Ainsi, cet écran et la souris associée constituent une interface graphique utilisateur (GUI) permettant à l'utilisateur de générer et de commander l'application.
De même, la fonction de rétroannotation peut être visualisée, en dynamique, sous forme de pixels 365, par commutation du commutateur 17
Figure img00420003

sur la commande d'incrustation de la rétroannotation 14.
XVI. Applications
Sur les figures 30 et suivantes, on a représenté la mise en oeuvre d'un ensemble d'unités de calcul d'histogramme permettant la gestion d'un nombre aussi grand que nécessaire de paramètres A, B, C, D, E... L'association de paramètres à la fois spatiaux (en principe au nombre de deux) et temporels (au moins un) permet de modéliser un neurone spatiotemporel. Les unités de traitement respectivement temporelles 5 et spatiales 6 reçoivent d'une part le signal S (t), d'autre part les signaux horloge CLOCK et de synchronisation ST, synchronisation de trames et SL, synchronisation de lignes.
Tel que représenté sur les figures 4 et 30, chacun des paramètres A, B, C, D, E... sortant de ces unités de traitement temporel 5 et spatial 6 alimente une unité de calcul d'histogramme, respectivement 1A, 1B... 1E. La rétroannotation produite par l'ensemble des classifieurs est disponible sur le bus 111 et utilisée dans son ensemble par chacune des unités de calcul d'histogramme, respectivement 1 A, 1s... 1 E.
<Desc/Clms Page number 43>
A titre d'exemple, A, B, C,..., E peuvent représenter respectivement les composantes couleur du pixel d'entrée sous la forme luminance L, teinte T et saturation S. D et E seraient les coordonnées P1 et P2 du pixel considéré dans un système d'axes optimisé.
De manière synthétique, tel que représenté sur la figure 30bis, chaque unité de calcul d'histogramme 1 le, le traite l'une des données DATA (A), DATA (B),... DATA (E) par la fonction correspondante (log) A... pour produire individuellement une valeur de sortie (101 S) A... et toutes ensemble la rétroannotation disponible sur le bus 111.
Le choix du paramètre traité par chaque unité de calcul d'histogramme ainsi que la fonction fog qu'elle remplit, sont déterminés par l'A. P. I.
Dans le mode de réalisation de la figure 31, les différents paramètres DATA (A)... DATA (E) alimentent un multiplexeur d'entrée 500 qui est
Figure img00430001

commandé par un registre 501. Le registre 501 est mis à jour par la commande SELECT référencée 502. Le multiplexeur commandé d'apprentissage 503 reçoit, selon l'état de la commande d'apprentissage de l'unité de calcul d'histogramme i, LEARN, soit l'information de rétroannotation transmise par le bus 111, soit les informations provenant du multiplexeur d'entrée 500.
Il est ainsi possible d'utiliser une seule unité de calcul d'histogramme 1 pour traiter l'un quelconque des différents paramètres A, B, C,..., E qui lui sont adressés par un bus 510 en fonction de la commande SELECT.
Selon l'état de la commande d'apprentissage LEARN, l'unité de calcul d'histogramme fonctionnera soit en exploitation, soit en apprentissage.
L'ensemble 1a ainsi formé par une unité de calcul d'histogramme 1, un multiplexeur d'entrée 500, son registre associé 501, et éventuellement un multiplexeur d'apprentissage constitue une unité de calcul d'histogramme polyvalente.
La figure 32 représente un dispositif complet comprenant à titre d'exemple un ensemble de seize unités de calcul d'histogramme polyvalentes.
Ces unités constituent une matrice, elles sont reliées à un bus 510 sur lequel les paramètres D, V, S, T, L, pO, p1, p2,..., p15 sont disponibles (pO, p1, p2,..., p15 sont des pentes d'axes de référence). Le bus 111 porte l'information de rétroannotation.
<Desc/Clms Page number 44>
Figure img00440001
L'ensemble de l'application est commandé par l'unité de contrôle 513 qui détermine ceux des paramètres L, T, S, V, D, po, ph... pis qui sont traités à un instant donné par une ou un groupe d'unités d'histogramme polyvalentes dédié et, par le séquenceur 9.
La figure 40 représente un diagramme fonctionnel d'un ensemble comportant plusieurs unités de calcul d'histogramme (tel que représenté sur la figure 31) conformément à un mode de réalisation de la présente invention. Chaque unité 1a de calcul d'histogramme est reliée à un bus de données 510 qui fournit les différents paramètres à traiter, et à un bus 11 qui fournit le signal de classification 101s et les signaux de fonction d'apprentissage aux différentes unités 1a. Chaque unité de calcul d'histogramme comporte une mémoire 100, un classifieur 101 et une unité de rétroannotation 102. Chaque unité 1a est susceptible d'avoir des fonctions de classification automatique d'anticipation et d'apprentissage telles que décrites plus haut.
L'ensemble d'unités de calcul d'histogramme 1 peut fonctionner en mode de traitement pendant qu'une ou plusieurs d'entre elles sont en mode d'apprentissage.
Dans un mode de réalisation particulier, une unité de calcul d'histogramme est utilisée en temps partagé par plusieurs paramètres pendant chaque trame, éventuellement mémorisés dans une mémoire non représentée.
Par exemple, en référence à la figure 31, l'unité de calcul d'histogramme 1 calcule des histogrammes et les statistiques correspondantes pour deux ou plus paramètres (par exemple DATA (A) et DATA (C)) pendant chaque trame.
Un multiplexeur 500 prévu dans ce mode de réalisation est susceptible de multiplexer les différents paramètres. De cette façon, un nombre limité d'unités de calcul d'histogramme est nécessaire pour traiter'un plus grand nombre de paramètres, ce qui permet de diminuer la quantité de silicium nécessaire pour fabriquer le nombre utile d'unités de calcul d'histogramme.
Le processeur de perception visuelle générique (GVPP) 520 ainsi constitué peut être intégré sur un seul substrat semi-conducteur.
Le nombre d'unités de calcul d'histogramme polyvalentes 1a dépend de l'application et des technologies de fabrications de composants semiconducteurs disponibles.
<Desc/Clms Page number 45>
Figure img00450001
La technologie 0, 5 Am actuellement accessible permet l'intégration de 32 unités de façon économique. Avec les techniques avancées de semi- conducteurs, il devient impossible de fabriquer de plus en plus d'unités de calcul d'histogramme (par exemple les blocs 1 a de la figure 32) sur le même composant et de réaliser des calculs plus nombreux sur plus d'échantillons (c'est-à-dire des nombres de plus en plus importants d'échantillonnage par paramètre).
Une telle augmentation des capacités de calcul peut être réalisée sans augmentation de la complexité de LAPI, qui est présentée plus loin et représentée en détail sur l'annexe A. Par exemple, le même ensemble d'instructions peut commander un ensemble de 20 unités comme un ensemble de 200 ou même de 2000 unités sans que sa complexité ne soit accrue.
Dans un autre mode de réalisation représenté sur la figure 39, une unité de calcul 605 conforme à la présente invention, c'est-à-dire similaire à l'unité de calcul 520 de la figure 32, est utilisée pour traiter les paramètres associés à un domaine de perception autre que le domaine visuel. Sur la figure 39, la technique de la présente invention est appliquée à l'analyse orale ou de son, par exemple pour la reconnaissance vocale ou l'utilisation de la voix pour entrer un texte dans un ordinateur. Sur la figure 39, un dispositif générant un signal sonore fournit un signal sonore au calculateur 605 qui produit un signal de sortie.
Dans un mode de réalisation, le dispositif générant le signal comporte un microphone 600 mais peut aussi comprendre n'importe quel dispositif susceptible de fournir des signaux analogues ou digitaux, par exemple un lecteur CD ou DVD... Le dispositif générateur de signal fournit de préférence des signaux digitaux et peut fonctionner dans un mode esclave ou dans un mode maître de la même manière que l'ensemble générateur de signal 2 de la figure 1. Le calculateur 605 reçoit les signaux et traite différents paramètres du signal sonore. Ces paramètres comportent la fréquence, l'amplitude et la phase. Les paramètres de phase et d'amplitude sont respectivement analogues aux signaux spatiaux et temporels exploités pour le traitement de scènes visuelles. Le calculateur 605 fournit des signaux au dispositif 610 de façon à permettre la représentation des résultats. Par exemple, dans un mode de réalisation, le dispositif 610 comporte une imprimante permettant
<Desc/Clms Page number 46>
l'impression de textes associés aux signaux fournis par le générateur de signal 600. De la même manière, le dispositif 610 peut comporter un moniteur ou n'importe quel autre dispositif générateur de texte.
La figure 33 est la représentation d'un processeur de perception visuelle générique 520 ou 530 recevant des informations d'un imageur CMOS 521 comportant une rétine 522 et un séquenceur 523.
La figure 34 représente un système complet susceptible de constituer une application complète et fonctionnant avec plusieurs imageurs CMOS.
L'association de deux imageurs CMOS 531,532 représentés sur la figure 35 permettant d'acquérir des informations sur la profondeur dans la scène observée.
Dans certaines utilisations, il est souhaitable de pouvoir observer certains plans, en profondeur, d'une scène et c'est la raison pour laquelle la rétine peut être équipée d'un dispositif à focale variable tel que représenté sur la figure 36.
La figure 37 schématise un système constitué d'un ensemble d'unités de calcul d'histogramme polyvalente susceptible de traiter des informations provenant de trois directions, respectivement V1, V2 et V3 pouvant représenter un espace tridimensionnel. On peut ainsi gérer des données de perception volumique et les utiliser dans le domaine de la robotique.
XVII. Interface de gestion de l'application (A. P. I)
L'interface de gestion de l'application (A. P. - Application Programm Interface) représentée sur la figure 38 permet de fournir à système complet ou processeur de perception visuelle générique composé d'un certain nombre de d'unités de calcul d'histogramme polyvalentes, l'ensemble des paramètres extérieurs dont il a besoin. On assure ainsi sa configuration dynamique.
L'annexe A qui est jointe, fait partie intégrante de la description de la présente demande, elle fournit un diagramme fonctionnel de l'unité spatio-
Figure img00460001

temporelle APl, l'interface graphique utilisatrice (GUI) API, la souris API et le 110 API, ainsi que les différentes commandes API associées.
Chacun des mnémoniques de commande est associé à un indice i correspondant au numéro de l'unité de calcul d'histogramme polyvalente à laquelle il est destiné. Il peut être accompagné de paramètres de configuration.
<Desc/Clms Page number 47>
Elle permet d'affecter les paramètres DATA (A)... DATA (E) à des paramètres réels de la scène observée.
SELECT permet d'attribuer un paramètre DATA (A) à une unité déterminée.
LEARNj permet d'effectuer l'apprentissage pour une d'unité de calcul d'histogramme polyvalente i.
START assure l'initialisation d'une unité de calcul d'histogramme potyvalente. Cette commande configure la mémoire 118 de classifieur 101.
STOP assure l'arrêt de l'unité de calcul d'histogramme polyvalente.
Elle est utilisée dès qu'une unité de calcul d'histogramme est inactive. On réduit ainsi la consommation d'énergie de l'ensemble.
AFCURV est la commande d'affichage de courbe commandant le commutateur 16 représenté sur la figure 4. Sa commande inverse est CLCURV.
Figure img00470001
AFMAP est la commande d'affichage de la rétroannotation commandant le commutateur 17. Sa commande inverse est CLRMAP.
MAP est la commande d'écriture des registres 411 et 412 de l'unité de rétroannotation 102.
GETLRN est la commande assurant la récupération du contenu des registres de rétroannotation 411 et 412 après l'apprentissage.
<Desc/Clms Page number 48>
Figure img00480001

ANNEXE A
Figure img00480002

Spécificattons API (Application Programming Interface)
Figure img00480003

interface de programmation applicative (API) pour le Processeur de Perception Visuelle Generique : (GVPP)
Figure img00480004

L'interface comporte 4 subdivisions pour GVPP : - Une AP ! Btoc spatio-temporet - Une AP ! graphique - Une AP ! de gestion de la souris - Une AP ! de gestion de la communication avec les périphériques
Figure img00480005

AFCURV API CLCURV Bloc spatio-temporel AFMAP CLRMAP GET SELECT START STOP LEARN MAP GETLRN CLRSCR API Graphique Interface générique DPDATA Utilisateur (GUI) DPNTER API souris Interface générique BUTTON Utilisateur (GUI) MVCAM SENDPC GETCAM, AP ! Entrées/Sorties GETCAM..
MVMOT GETPC GETMOT
<Desc/Clms Page number 49>
Figure img00490001

Description des commandes de programmation app ! icat) ves
Figure img00490002

AP Bloc Spatio-temporel Elle regroupe l'ensemble des fonctions génériques utilisées pour initialiser, paramétrer ou apprendre et démarrer le bloc ainsi que les fonctions pour récuperer les résultats de calcul. Le nom de la commande est suivi des parametres nécessaires écrit dans des registres définis. Fonctions : START : Rôle : Démarrage du calcul d'un bloc.
Paramètres : Numéro du bloc concerné, valeur MIN, valeur MAX pour initialisation Prototype :
Bloc3 equ 03
MIN equ 10
MAX equ 100
START Bloc3 MIN MAX
Figure img00490003

Entrée-RO numéro du bloc
R1 : valeur MIN
R2 : valeur MAX
Sortie- STOP : Rôle : Arret du calcul d'un bloc.
Paramètres : Numéro du bloc concerné.
Prototype :
Figure img00490004

Bloc3 equ 03 : equivalence Bloc3 est egal à la valeur 3
STOP Bloc3
Entrée - R0 : numéro du bloc
Sortie- SELECT : Rôle : Sélection du signal d'entrée d'un bloc. Par exemple la luminance, la
Figure img00490005

teinte, la saturation, l'orientation de lignes dans le plan... etc.
Paramètres : Numéro du bloc concerné, signal a seléctionner.
<Desc/Clms Page number 50>
Prototype :
Bloc3 equ 03
LUM equ 00
SELECT Bloc3 LUM Entrée - RO : Numéro du bloc R1 : Parametre d'entrée
Sortie- GET : Rôle : Récupération des résultats de calcul.
Paramètres : Numéro du bloc concerné, paramètre (s) a recupérer.
Prototype :
Bloc3 equ 03
MIN equ 00
MAX equ 01
RMAX equ 02
POSRMX equ 03
POSMOY equ 04
NBPTS equ 05
GET Bloc3 NBPTS Entrée - R0 : Numéro du bloc
R1 : Parametre d'entrée
Sortie - R0 : valeur résultante de ce parametre LEARN : Rôle : Passage d'un bloc en mode apprentissage.
Paramètres : Numéro du bloc concerné.
Prototype :
Bloc3 equ 03
LEARN Bloc3 Entrée-RO : Numéro du bloc
Sortie- MAP : Rôle : Programmation du bloc en fonction d'un apprentissage précédent pour changer de contexte. Recherche d'un autre évenement ou objet : ecriture de la matrice de rétro annotation du bloc.
<Desc/Clms Page number 51>
Paramètres : Numéro du bloc concerné, Combinaison logique des autres blocs associés ; somme de termes produits (ET et OU).
Prototype :
Bloc3 equ 03
MAP Bloc3 OF3 1AB 007 Entrée-RO Numéro du bloc
R1 Premier terme produit
R2 Second terme produit
R3 : .......... suite
Sortie- GETLRN : Rôle : Lecture des résultats de l'apprentissage.
Paramètres : Numéro du bloc concerné.
Prototype :
Figure img00510001

GETLRN Entrée-RO : Numéro du bloc Sortie - RO : MIN classification R1 MAX Classification
R2 : Premiere majeure association (terme produit)
R3 Seconde association
R4 : .......... suite AFCURV : Rôle : Affichage de la courbe d'un bloc.
Paramètres : Numéro du bloc concerné.
Prototype :
Bloc3 equ 03
AFCURV Bloc3 Entrée - RO : Numéro du bloc
Sortie- CLCURV : Rôle : Effacement de la courbe d'un bloc.
Paramètres : Numéro du bloc concerné.
<Desc/Clms Page number 52>
Prototype :
Bloc3 equ 03
CLCURV Bloc3 Entrée-RO : Numéro du bloc
Sortie- AFMAP : Rôle : Affichage de la table de rétro-annotation d'un bloc.
Paramètres : Numéro du bloc concerné.
Prototype :
Bloc3 equ 03
AFMAP Bloc3 Entrée - RO : Numéro du bloc
Sortie- CLRMAP : Rôle : Effacement de l'écran de la table de rétro-annotation d'un bloc.
Paramètres : Numéro du bloc concerné.
Prototype :
Bloc3 equ 03
Figure img00520001

CLRMAP Bloc3 Entrée-RO : Numéro du bloc SortieAPI Graphique CLRSCR : Rôle : Effacage de l'écran.
Paramètres : Aucun.
Prototype :
CLRSCR
Entrée-
Sortie-
<Desc/Clms Page number 53>
Figure img00530001

DPDATA : Rôle : Affichage des données à l'écran.
Paramètres : Donnée à afficher et position à l'écran.
Prototype :
DPDATA
Entrée-RO Code ASCII
R1 : position ligne 22 position colonne
Sortie- AP 1 de gestion de la souris DPNTER : Rôle : Déplacer et afficher curseur.
Paramètres : Coordonnées.
Prototype :
DPNTER Entrée- R0 : poition ligne
R1 : position colonne
Sortie- BUTTON : Rôle : Générer un click curseur.
Paramètres : Boutton.
Prototype :
BUTTON
Entrée- Sortie-RO nouvelle position des boutons
Figure img00530002

API de gestion de la communication avec les péripheriques MVCAM : Rôle : Déplacer la caméra.
Paramètres : Position et focus.
Prototype :
MVCAM
<Desc/Clms Page number 54>
Entrée-RO X position
R1 Y position
R2 Focus
Sortie- GETCAM : Rôle : Récuperer la position de la caméra.
Paramètres : Aucun.
Prototype :
GETCAM
Entrée- Sortie- RD : X position R1 Y position R2 ; Focus MVMOT : Rôle : Action moteur.
Parametre : Sens+nombre de pas.
Prototype :
MVCAM
Entrée - R0 : Sens+nombre de pas
Sortie-
Figure img00540001

GETMOT : Rôle : Recupere la position actuelle du moteur.
Parametre : Non Prototype :
GETMOT
Entrée-
Sortie-RO : position SENDPC : Rôle : Envoyer une information au PC.
Paramètres : pointer sur l'information et nombre d'informations.
Prototype :
SENDPC Entrée-RO : pointeur information
R1 : nombre d'informations
Sortie-
<Desc/Clms Page number 55>
GETPC : Rôle : Récuperer une information du PC.
Paramètres : Aucun.
Prototype :
GETPC
Entrée-
Sortie-RO : information
<Desc/Clms Page number 56>
Figure img00560001

ART ANTERIEUR
Figure img00560002

FIG. 1
<Desc/Clms Page number 57>
Figure img00570001

FIG. 2
Figure img00570002

FIG. 3
<Desc/Clms Page number 58>
Figure img00580001
<Desc/Clms Page number 59>
Figure img00590001

FIG. 5
Figure img00590002
<Desc/Clms Page number 60>
Figure img00600001
<Desc/Clms Page number 61>
Figure img00610001
Figure img00610002
<Desc/Clms Page number 62>
Figure img00620001
<Desc/Clms Page number 63>
Figure img00630001

Fig. 11
<Desc/Clms Page number 64>
Figure img00640001
Figure img00640002

FIG. 13
<Desc/Clms Page number 65>
Figure img00650001
Figure img00650002
<Desc/Clms Page number 66>
Figure img00660001
<Desc/Clms Page number 67>
Figure img00670001
Figure img00670002
<Desc/Clms Page number 68>
Figure img00680001
Figure img00680002
<Desc/Clms Page number 69>
Figure img00690001
<Desc/Clms Page number 70>
Figure img00700001

FIG. 21
<Desc/Clms Page number 71>
Figure img00710001

FIG. 39
<Desc/Clms Page number 72>
Figure img00720001
<Desc/Clms Page number 73>
Figure img00730001

FIG. 25
<Desc/Clms Page number 74>
Figure img00740001
Figure img00740002
<Desc/Clms Page number 75>
Figure img00750001
Figure img00750002

Fig. 29
<Desc/Clms Page number 76>
Figure img00760001
Figure img00760002
<Desc/Clms Page number 77>
Figure img00770001
<Desc/Clms Page number 78>
Figure img00780001
<Desc/Clms Page number 79>
Figure img00790001
<Desc/Clms Page number 80>
Figure img00800001
<Desc/Clms Page number 81>
Figure img00810001

Claims (22)

  1. REVENDICATIONS 1. Procédé de localisation d'une forme dans un espace représenté par des pixels formant ensemble un espace i, j multidimensionnel, évoluant dans le temps, et représenté à une succession de moments T, lesdites données associées chacune à un paramètre temporel A, B,... étant sous la forme de signaux DATA (A), DATA (B),... numériques constitués d'une suite Aijt, Bijt,... de nombres binaires de n bits associés à des signaux de synchronisation permettant de définir le moment T de l'espace et la position i, j dans cet espace, auquel les signaux Aijt, Bist,... reçus à un instant donné, caractérisé en ce que a) l'on repère une zone d'intérêt de l'espace en fonction d'un critère statistique appliqué à un paramètre temporel, b) l'on inhibe la zone principale ainsi repérée, c) l'on réitère les étapes a) et b) de façon à repérer d'autres zones d'intérêt à l'intérieur d'une zone de l'espace non inhibée, d) l'on arrête le processus lorsqu'une zone restante, non inhibée, de l'espace ne produit plus de zone d'intérêt correspondant audit critère statistique, e) l'on incrémente par trame valide consécutive, un compteur. pour chaque zone d'intérêt ainsi repérée, et que lors de la perte d'une zone d'intérêt, son compteur associé soit remis à zéro, f) l'on récupère pour chaque zone d'intérêt ainsi repérée, le barycentre de son nuage de points.
  2. 2. Procédé de localisation d'une forme selon la revendication l, caractérisé en ce qu'un compteur est associé à chaque zone d'intérêt, et que la valeur de compteur est incrémentée d'une unité à chacune des trames successives pour lesquelles ladite zone d'intérêt est repérée, la valeur de ce compteur étant forcée à zéro à la première trame pour laquelle ladite zone n'est plus repérée.
  3. 3. Procédé de localisation d'une forme selon l'une des revendications 1 ou 2, caractérisé en ce que la position du barycentre des points constituant une zone d'intérêt et mis en mémoire dans une mémoire associée et permet son identification.
    <Desc/Clms Page number 83>
  4. 4. Procédé de localisation d'une forme selon l'une des revendications 1 à 3, caractérisé en ce que la zone d'intérêt est validée pour une valeur de son compteur associé supérieur a 1.
  5. 5. Procédé de localisation d'une forme selon l'une des revendications 1 à 4, caractérisé en ce que la zone validée soit repérée par son barycentre, l'orientation de ses axes de projection et les dimensions du cadre associé.
  6. 6. Procédé de localisation d'une forme selon l'une des revendications 1 à 5, caractérisé en ce que le barycentre, les axes principaux du cadre et la dimension de celui-ci soient respectivement la position, l'orientation et la dimension de l'objet perçu.
  7. 7. Procédé selon l'une des revendications 1 à 6, caractérisé en ce que l'on repère, à l'intérieur de la zone d'intérêt, une ou des zones secondaires définies par un ou des critères de sélection.
  8. 8. Procédé de localisation d'une forme selon la revendication 7, caractérisé en ce que l'on réitère l'étape de la revendication 2, une zone secondaire jouant le rôle de la zone d'intérêt, ce qui conduit à repérer des zones tertiaires.
  9. 9. Procédé de localisation d'une forme selon l'une des revendications 7 ou 8, caractérisé en ce que l'on utilise le repérage desdites zones secondaires pour suivre les mouvements de la zone principale.
  10. 10. Procédé de localisation d'une forme selon l'une des revendications 1 à 9, caractérisé en ce que le paramètre temporel est la vitesse.
  11. 11. Procédé de localisation d'une forme selon l'une des revendications 1 à 9, caractérisé en ce que le paramètre temporel est un niveau de luminance.
  12. 12. Procédé de localisation d'une forme selon l'une des revendications 1 à 9, caractérisé en ce que le paramètre temporel est une couleur.
  13. 13. Procédé de localisation d'une forme selon l'une des revendications 1 à 9, caractérisé en ce que le paramètre temporel est la résolution spatiale.
  14. 14. Procédé de localisation d'une forme selon l'une des revendications 1 à 9, caractérisé en ce que le paramètre temporel est la profondeur de champ.
    <Desc/Clms Page number 84>
    Figure img00840001
  15. 15. Procédé de localisation d'une forme selon l'une des revendications 1 à 14, caractérisé en ce que la zone repérée est définie par rapport à un repère choisi parmi plusieurs repères d'orientations différentes.
  16. 16. Procédé de localisation d'une forme selon les revendications 1 à 15, caractérisé en ce que les positions relatives des barycentres des nuages de points des zones d'intérêt repérées servent à contrôler la forme de l'objet perçu.
  17. 17. Procédé de localisation d'une forme selon l'une quelconque des revendications 1 à 16, caractérisé en ce que la forme est un visage.
  18. 18. Procédé de localisation d'une forme selon la revendication 17, caractérisé en ce que ladite zone principale est le visage et que des zones secondaires sont choisies dans l'ensemble formé par les yeux, la bouche, les sourcils et le nez.
  19. 19. Dispositif de localisation d'une forme dans un espace représenté par des pixels formant ensemble un espace i, j multidimensionnel, évoluant dans le temps, et représenté à une succession de moments T, lesdites données associées chacune à un paramètre temporel A, B,... étant sous la forme de signaux DATA (A), DATA (B),... numériques sous forme d'une suite Aijt, Bijt,... de nombres binaires de n bits associés à des signaux de synchronisation permettant de définir le moment T de l'espace et la position i, j dans cet espace, auquel les signaux Ajt, Bijt,... reçus à un instant donné, caractérisé en ce qu'il comporte deux ensembles d'unités de calcul d'histogrammes recevant les signaux et produisant chacun une valeur de classification, le premier sous-ensemble recevant un signal porteur d'un premier paramètre temporel et le deuxième sous-ensemble recevant deux signaux spatiaux, la valeur de classification du premier sous-ensemble validant un groupe de points de l'espace traités par le deuxième sous-ensemble, le nombre desdits points étant ni, la valeur de classification du deuxième sous-ensemble validant les valeurs de paramètre traitées par le premier sous-ensemble, les deux sous-ensembles produisant conjointement un signal binaire ZA représentant une zone d'intérêt et un signal P représentant la valeur du paramètre temporel dans cette zone.
    <Desc/Clms Page number 85>
  20. 20. Dispositif selon la revendication 19, caractérisé en ce qu'il comporte un troisième sous-ensemble recevant un signal porteur d'un deuxième paramètre temporel, ce troisième sous-ensemble ayant un fonctionnement analogue au premier et s'y substituant lorsqu'il valide des points de l'espace dont le nombre est n2, n2 étant supérieur à ni.
  21. 21. Dispositif de localisation d'une forme selon l'une des revendications 19 ou 20, caractérisé en ce qu'il comporte plusieurs sousensembles recevant des signaux spatiaux permettant de valider successivement plusieurs groupes de points de l'espace.
  22. 22. Dispositif de localisation d'une forme selon l'une des revendications 19 à 21, caractérisé en ce qu'il comporte un ensemble d'unités de calcul d'histogramme commandé par un logiciel API et reliées entre elles par un bus de données et par un bus de rétroannotation.
FR0102539A 2000-02-24 2001-02-23 Procede et dispositif de reperage d'un objet par sa forme, sa dimension et/ou son orientation Expired - Fee Related FR2821459B1 (fr)

Priority Applications (7)

Application Number Priority Date Filing Date Title
FR0102539A FR2821459B1 (fr) 2001-02-23 2001-02-23 Procede et dispositif de reperage d'un objet par sa forme, sa dimension et/ou son orientation
US09/876,929 US7043465B2 (en) 2000-02-24 2001-06-08 Method and device for perception of an object by its shape, its size and/or its orientation
EP02716806A EP1364341A1 (fr) 2001-02-23 2002-02-22 Procede et dispositif de reperage d'un objet par sa forme, sa dimension et/ou son orientation
JP2002568307A JP2004523047A (ja) 2001-02-23 2002-02-22 対象物をその形状、そのサイズ及び/又はその方向によって認知する方法及び装置
PCT/EP2002/001899 WO2002069265A1 (fr) 2001-02-23 2002-02-22 Procede et dispositif de reperage d'un objet par sa forme, sa dimension et/ou son orientation
CA002439867A CA2439867A1 (fr) 2001-02-23 2002-02-22 Procede et dispositif de reperage d'un objet par sa forme, sa dimension et/ou son orientation
MXPA03007554A MXPA03007554A (es) 2001-02-23 2002-02-22 Metodo y dispositivo para la percepcion de un objeto por su forma, su tamano y/o su orientacion.

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR0102539A FR2821459B1 (fr) 2001-02-23 2001-02-23 Procede et dispositif de reperage d'un objet par sa forme, sa dimension et/ou son orientation

Publications (2)

Publication Number Publication Date
FR2821459A1 true FR2821459A1 (fr) 2002-08-30
FR2821459B1 FR2821459B1 (fr) 2004-11-12

Family

ID=8860406

Family Applications (1)

Application Number Title Priority Date Filing Date
FR0102539A Expired - Fee Related FR2821459B1 (fr) 2000-02-24 2001-02-23 Procede et dispositif de reperage d'un objet par sa forme, sa dimension et/ou son orientation

Country Status (6)

Country Link
EP (1) EP1364341A1 (fr)
JP (1) JP2004523047A (fr)
CA (1) CA2439867A1 (fr)
FR (1) FR2821459B1 (fr)
MX (1) MXPA03007554A (fr)
WO (1) WO2002069265A1 (fr)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2843467A1 (fr) * 2002-08-07 2004-02-13 Holding Bev Sa Procede et dispositif a recrutement dynamique de modules de calcul et traitement d'histogrammes pour caracterisation et reconnaissance d'objets
WO2004015630A2 (fr) * 2002-08-07 2004-02-19 Holding B.E.V. Sa Procede et dispositif de perception visuelle active pour caracterisation et reconnaissance par analyse de parametres mono/multidimentionnels dans des unites multiclasses de calcul et traitement d'histogramme, recrutement dynamique d'unites
WO2005010820A2 (fr) * 2003-07-29 2005-02-03 Holding Bev Sa Procede et dispositif automatise de perception avec determination et caracterisation de bords et de frontieres d'objets d'un espace, construction de contours et applications
FR2884625A1 (fr) * 2005-04-15 2006-10-20 Holding Bev Sa Sa Luxembourgeo Procede de guidage automatique de vehicule dans une voie de circulation, dispositif correspondant

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4696991B2 (ja) * 2006-03-22 2011-06-08 日産自動車株式会社 動き検出方法および動き検出装置
FR3065825B1 (fr) 2017-04-28 2022-12-23 Patrick Pirim Procede et dispositif automatises aptes a assurer l'invariance perceptive d'un evenement spatio-temporel dynamiquement en vue d'en extraire des representations semantiques unifiees

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2611063A1 (fr) * 1987-02-13 1988-08-19 Imapply Procede et dispositif de traitement en temps reel d'un flot de donnees sequence, et application au traitement de signaux video numeriques representatifs d'une image video
US5795306A (en) * 1994-03-10 1998-08-18 Mitsubishi Denki Kabushiki Kaisha Bodily state detection apparatus

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2611063A1 (fr) * 1987-02-13 1988-08-19 Imapply Procede et dispositif de traitement en temps reel d'un flot de donnees sequence, et application au traitement de signaux video numeriques representatifs d'une image video
US5795306A (en) * 1994-03-10 1998-08-18 Mitsubishi Denki Kabushiki Kaisha Bodily state detection apparatus

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2843467A1 (fr) * 2002-08-07 2004-02-13 Holding Bev Sa Procede et dispositif a recrutement dynamique de modules de calcul et traitement d'histogrammes pour caracterisation et reconnaissance d'objets
WO2004015630A2 (fr) * 2002-08-07 2004-02-19 Holding B.E.V. Sa Procede et dispositif de perception visuelle active pour caracterisation et reconnaissance par analyse de parametres mono/multidimentionnels dans des unites multiclasses de calcul et traitement d'histogramme, recrutement dynamique d'unites
WO2004015630A3 (fr) * 2002-08-07 2004-10-07 Holding B E V Sa Procede et dispositif de perception visuelle active pour caracterisation et reconnaissance par analyse de parametres mono/multidimentionnels dans des unites multiclasses de calcul et traitement d'histogramme, recrutement dynamique d'unites
WO2005010820A2 (fr) * 2003-07-29 2005-02-03 Holding Bev Sa Procede et dispositif automatise de perception avec determination et caracterisation de bords et de frontieres d'objets d'un espace, construction de contours et applications
FR2858447A1 (fr) * 2003-07-29 2005-02-04 Holding Bev Sa Procede et dispositif automatise de perception avec determination et caracterisation de bords et de frontieres d'objets d'un espace, construction de contours et applications
WO2005010820A3 (fr) * 2003-07-29 2005-08-18 Holding Bev Sa Procede et dispositif automatise de perception avec determination et caracterisation de bords et de frontieres d'objets d'un espace, construction de contours et applications
FR2884625A1 (fr) * 2005-04-15 2006-10-20 Holding Bev Sa Sa Luxembourgeo Procede de guidage automatique de vehicule dans une voie de circulation, dispositif correspondant

Also Published As

Publication number Publication date
MXPA03007554A (es) 2003-12-04
EP1364341A1 (fr) 2003-11-26
FR2821459B1 (fr) 2004-11-12
JP2004523047A (ja) 2004-07-29
WO2002069265A1 (fr) 2002-09-06
CA2439867A1 (fr) 2002-09-06

Similar Documents

Publication Publication Date Title
Hernandez-Ortega et al. Deepfakeson-phys: Deepfakes detection based on heart rate estimation
EP1259939B1 (fr) Procede et dispositif de perception automatique
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é
Nazir et al. Semattnet: Toward attention-based semantic aware guided depth completion
Bonomi et al. Dynamic texture analysis for detecting fake faces in video sequences
US20210272292A1 (en) Detection of moment of perception
Hernandez-Ortega et al. Deepfakes detection based on heart rate estimation: Single-and multi-frame
Modasshir et al. Mdnet: Multi-patch dense network for coral classification
Planamente et al. Da4event: towards bridging the sim-to-real gap for event cameras using domain adaptation
Ilyas et al. Deepfakes examiner: An end-to-end deep learning model for deepfakes videos detection
FR2821459A1 (fr) Procede et dispositif de reperage d&#39;un objet par sa forme, sa dimension et/ou son orientation
Klenk et al. Masked event modeling: Self-supervised pretraining for event cameras
Akhtar et al. Experiments with ocular biometric datasets: A practitioner’s guideline
Laith et al. Effectiveness of new algorithms for facial recognition based on deep neural networks
Sabaghi et al. Deep learning meets liveness detection: recent advancements and challenges
WO2020193972A1 (fr) Analyse faciale
WO2002075659A1 (fr) Procede et dispositif d&#39;adaption de la sensibilite de detection d&#39;un parametre porte par un signal
Menon et al. Style transfer applied to face liveness detection with user-centered models
Mocanu et al. Gesture-based human-robot interaction
Alya'a et al. Real Time Multi Face Blurring on Uncontrolled Environment based on Color Space algorithm
Khedkar et al. Exploiting spatiotemporal inconsistencies to detect deepfake videos in the wild
Narwal et al. Image Systems and Visualizations
Corcoran et al. Getting more from your datasets: Data augmentation, annotation and generative techniques
Ahad et al. Towards Generalized Violence Detection; a Pose Estimation Approach
Sontakke et al. Comparative Analysis of Deep-Fake Algorithms

Legal Events

Date Code Title Description
ST Notification of lapse

Effective date: 20061031