FR2729811A1 - Procede d'estimation de mouvement de regions dans des sequences d'images numeriques - Google Patents

Procede d'estimation de mouvement de regions dans des sequences d'images numeriques Download PDF

Info

Publication number
FR2729811A1
FR2729811A1 FR9500826A FR9500826A FR2729811A1 FR 2729811 A1 FR2729811 A1 FR 2729811A1 FR 9500826 A FR9500826 A FR 9500826A FR 9500826 A FR9500826 A FR 9500826A FR 2729811 A1 FR2729811 A1 FR 2729811A1
Authority
FR
France
Prior art keywords
model
scale
region
images
movement
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
FR9500826A
Other languages
English (en)
Other versions
FR2729811B1 (fr
Inventor
Henri Sanson
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Orange SA
Original Assignee
France Telecom SA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by France Telecom SA filed Critical France Telecom SA
Priority to FR9500826A priority Critical patent/FR2729811A1/fr
Priority to PCT/FR1996/000118 priority patent/WO1996023279A1/fr
Publication of FR2729811A1 publication Critical patent/FR2729811A1/fr
Application granted granted Critical
Publication of FR2729811B1 publication Critical patent/FR2729811B1/fr
Granted legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/537Motion estimation other than block-based
    • H04N19/543Motion estimation other than block-based using regions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/207Analysis of motion for motion estimation over a hierarchy of resolutions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/53Multi-resolution motion estimation; Hierarchical motion estimation

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Analysis (AREA)

Abstract

L'invention concerne un procédé d'estimation de mouvement de régions (<T 735>) de formes quelconques d'une image numérique (I1 ) par rapport à une autre image numérique (I2 ). Un modèle (A|^) de mouvement est calculé à l'aide d'un algorithme réalisant le calcul de coefficients d'un polynôme bi-varié décrivant le mouvement de la région (<T 735>). L'identification du modèle est réalisée par minimisation d'un critère d'erreur de reconstruction de la région (<T 735>), à l'aide d'une technique de programmation locale non-linéaire et d'une analyse multirésolution des images permettant d'atteindre un optimum global.

Description

L'invention concerne un procédé d'estimation de mouvement de régions dans des séquences d'images numériques.
Plus particulièrement, l'invention concerne un procédé décrivant le mouvement d'une région déterminée d'une image numérique par rapport à une autre image, prise à un autre instant, par détermination des coefficients d'un polynôme bivarié, c'est-à-dire fonction de deux variables. I1 s'agit, dans ce cas, de l'estimation d'un mouvement proprement dit. De façon plus générale, le procédé selon l'invention permet d'effectuer une estimation de disparité. C'est la cas, par exemple, de la stéréoscopie.
La région pour laquelle le mouvement peut être estimé peut être dotée d'une forme quelconque et avoir été déterminée par tout moyen approprié segmentation manuelle en application interactive, segmentation automatique, etc.
Le procédé selon l'invention trouve application dans de nombreux domaines impliquant une analyse d'image pour laquelle il est exigé une bonne précision, et parmi lesquels
- la vision par ordinateur et la robotique mobile;
- I'imagerie médicale,
- le codage vidéo, c'est-à-dire la compression numérique;
- et la conversion de fréquence temporelle, le désentrelacement, le ralenti dit "slow motion" en vidéo.
De nombreux procédés d'analyse de mouvement et de disparité dans les images numériques sont connus. On peut les répartir en deux catégories principales: l'estimation de champs denses de déplacements, par pixel, et l'estimation de descriptions globales sur des régions ou zones déterminées de l'image. Le procédé de l'invention appartient à cette seconde catégorie.
Dans l'Art Connu, les représentations les plus courantes pour décrire le mouvement des régions sont les suivantes:
- la translation;
-la composition de translation, homothétie et rotation;
- le modèle affine;
- le modèle quadratique;
- et le polynôme à deux variables généralisé.
Tous ces modèles sont emboîtés, du plus simple au plus complexe. La région est quant à elle, soit un rectangle (c'est le cas le plus fréquent), soit une région de forme quelconque, décrite par exemple par un masque. Un masque obéit à la relation suivante: x = 1 r (x,y) E S , x eut y étant les coordonnées d'un point quelconque d'une image I.
Le procédé selon l'invention est concerné l'identification de modèles polynomiaux de mouvement, de degré a priori quelconque, sur des régions d'image de forme également quelconque.
Les procédés de l'Art Connu existant pour identifier de tels représentations se répartissent en trois groupes principaux:
- les procédés par transformées;
- les procédés de mise en correspondance;
- et les procédés différentiels.
A titre d'exemples, des procédés selon ce dernier type ont fait l'objet des publications suivantes:
- l'article de N. Diehl " Object Oriented motion estimation and segmentation in image sequences", paru dans "Signal Processing Image
Communication", vol. 3, NO 1, pages 23-56, 1991
- la thèse de H. Nicolas : "Hiérarchie de modèles de mouvement et méthodes d'estimation associées. Application au codage de séquences d'images",
PhD thesis, Université de Rennes I, Campus de Beaulieu, 35000 Rennes, septembre 1992;
- et l'article de J.M. Odobez et P. Bouthemy : "Robust multiresolution estimation of parametric motions models in complex image sequences", paru dans "Signal Processing II Theories and Applications", vol. 1, pages 411414,
Edinburgh, Ecosse, U.K., septembre 1994, Elsevier.
Les procédés par transformées sont, en l'état actuel des techniques connues, limités au cas de la composition de translation, homothétie et rotation. En outre, ils présentent l'inconvénient de nécessiter la connaissance préalable de la localisation de la région, dont le mouvement est estimé, dans les deux images.
Les procédés de mise en correspondance sont intrinsèquement très coûteux en volume de calculs, en particulier pour des représentations complexes.
En effet, les simplifications ne peuvent s'opérer qu'au détriment de la précision et de la robustesse de l'estimation.
Par contre, les procédés différentiels semblent les plus intéressants, a priori. Cependant, il est nécessaire de les rendre aptes à estimer les mouvements de forte amplitude.
Un procédé différentiel est par ailleurs connu par l'article de H.
Sanson : "Joint estimation and segmentation of motion for video coding at low bit rates", paru dans "Proceedings of COST 211 ter European Workshop on New
Techniques for Coding Video Signals at Very Low Bitrates", Hanovre, Allemagne, 1-2 décembre 1993.
n présente les avantages propres à ce type de procédé. Cependant pour certaines applications, il peut être nécessaire de l'optimiser et de rendre l'estimation des paramètres de mouvement plus robuste. C'est particulièrement le cas lorsqu'il n'est pas possible de mettre en oeuvre un système de prédictions multiples, d'origine spatiale ou temporelle.
Tout en conservant les avantages des procédés de l'Art Connu, en particulier des procédés différentiels, le procédé de l'invention vise à en pallier les inconvénients et, notamment, à permettre d'estimer les mouvements complexes, sans sévères limitations sur leur dynamique maximale, ni sur la précision avec laquelle les paramètres peuvent être obtenus. I1 permet de rendre peu dépendante la complexité des algorithmes mis en oeuvre, en terme de nombre d'opérations, de ces derniers paramètres.
Pour ce faire, l'identification d'un modèle de mouvement est réalisée par la minimisation d'un critère d'erreur de reconstruction d'une région déterminée de l'image. Cette minimisation est effectuée grâce à la combinaison d'une technique d'optimisation locale d'un modèle et d'une analyse multirésolution des images permettant d'atteindre l'optimum global avec une assez forte probabilité dans les cas pratiques.
L'invention a donc pour objet un procédé d'estimation de mouvement d'au moins une région constituée de points et de forme quelconque entre deux images numériques, caractérisé en ce qu'il comprend l'établissement d'un modèle de représentation paramétrique polynomiale dudit mouvement correspondant à une base de polynômes déterminée;
en ce qu'il comprend, au moins, une estimation des paramètres de ladite représentation par une optimisation non-linéaire imbriquée dans un processus de génération d'images multirésolution pyramidal, définissant une pluralité d'échelles successives et comprenant au moins les étapes suivantes::
- la correction itérative dudit modèle par un algorithme de type Newton modifié et Gradient combinés, à chacune desdites échelles;
- la détermination desdits modèles à chaque échelle et leur propagation sélective d'une échelle à la suivante, le résultat obtenu à une échelle servant à initialiser ledit algorithme à l'échelle suivante;
en ce qu'il comprend la construction d'une pyramide de masques binaires associée à chacune desdites régions à toutes les échelles prises en compte pour l'estimation dudit mouvement de manière à imposer une taille minimale déterminée sur ces régions;
et en ce qu'il comprend une adaptation de la complexité dudit modèle en fonction de la taille de ladite région à l'échelle courante.
L'invention sera mieux comprise et d'autres caractéristiques et avantages apparaîtront à la lecture de la description qui suit en référence aux figures annexées, et parmi lesquelles:
- La figure 1 illustre le mouvement d'une région déterminée entre deux
images;
- La figure 2 illustre la définition d'un rectangle circonscrivant une
région déterminée d'une image,
- La figure 3 est un schéma-bloc illustrant un exemple de réalisation
d'un dispositif estimateur de mouvement de régions dans des séquences
d'images numériques pour la mise en oeuvre du procédé selon
l'invention;
- La figure 4 illustre schématiquement le fonctionnement d'un étage de
construction d'une pyramide multirésolution passe-bande dyadique
utilisable dans le cadre du procédé de l'invention;
- La figure 5 illustre la représentation symbolique d'une pyramide
d'images; ;
- La figure 6 illustre la définition et la dilatation d'un point filaire d'une
région définie par un masque;
- La figure 7 est un diagramme illustrant la dilatation morphologique
binaire d'une région;
- La figure 8 est un illustre schématiquement le fonctionnement du
module de construction d'une pyramide multi-échelle de masques
binaires d'une région,
- La figure 9 illustre schématiquement le fonctionnement du module de
correction de paramètres;
- La figure 10 illustre schématiquement le fonctionnement du module
de contrôle de la convergence;
- La figure 11 illustre schématiquement le fonctionnement du module
de choix de prédiction;
- La figure 12 illustre le fonctionnement du module d'adaptation du
modèle polynomial à une échelle courante;
- La figure 13 illustre schématiquement le fonctionnement du module
de conversion d'échelle.
Le mouvement va tout d'abord être modélisé.
La figure 1 illustre schématiquement deux images numériques, numérotées arbitrairement Il et 12. A l'intérieur de ces images Il et 12, on considérée une région déterminée # du plan image PI. Pour chaque pixel situé à la position p = [x,y]r (avec "T" désignant la transposition matricielle) de la région " considérée dans l'image 12, le déplacement d(p) est défini comme étant le vecteur avec lequel il faut déplacer p pour obtenir le pixel homologue dans l'image I1.
Dans l'exemple décrit, les déplacements sont donc définis de l'image 12 vers l'image Il.
L'ensemble des vecteurs d(p) sur # constitue un champ de vecteurs, dont il est supposé qu'il satisfait le modèle suivant:
Figure img00050001
dans le cas non-séparable, c'est-à-dire pour un degré total inférieur à une valeur donnée n, c'est-à-dire au degré du modèle; et:
Figure img00050002
dans le cas séparable, c'est-à-dire pour un degré par variable inférieure à la cette même valeur n.
On définit les paramètres suivants comme suit: p=[xy]7
d =[dx,dy]T (3);
a = relation dans laquelle d est le vecteur de déplacement au point p, x0, y0 définissent l'origine des coordonnées pour le modèle courant par rapport aux coordonnées image, et #x et t sont deux constantes de normalisation de ces coordonnées. On note: Ar =[aiJ.]r
Ay [ay]r (4);
A = kAx)T(Ay)]T respectivement le vecteur de paramètre pour la composante x, soit (Ax), le vecteur de paramètre pour la composante y, soit (Ay), et le vecteur de paramètres global, soit A.
Les deux cas, séparable et non séparable, peuvent être regroupés sous la formulation générique suivante:
Figure img00060001

avecgsy(x,y) =xi dans le cas séparable etgsy(x,y) =x'.y'dans le cas non séparable.
Une telle représentation permet de rendre compte de mouvements de différentes complexités, allant du simple mouvement de translation, couramment utilisé en analyse d'image, à des mouvements beaucoup plus complexes impliquant des rotations et/ou déformations.
Le nombre de paramètres par composante x ou y obéit à la relation:
Figure img00060002

dans le cas non-séparable, et à la relation D,(n) D"(n) = (n + 1)-, dans le cas séparable. "s" est une échelle qui sera définie en relation avec la figure 2.
Une telle représentation permet de manipuler des champs denses de vecteurs déplacement avec une grande précision, en particulier bien inférieure au pixel ou au demi pixel, couramment utilisée.
Si on définit N' et N;, respectivement, le nombre de points par ligne d'une image quelconque 4 considérée à l'échelle s, comme représenté sur la figure 2, et le nombre de ligne de cette image, et xS ,xn ,yS et y, les coordonnées caractérisant le rectangle circonscrivant la région #s considérée de l'image Ii, on effectue les choix suivants pour l'origine et les facteurs de normalisation (voir relation (5)):
Figure img00060003

de sorte que l'on ait toujours: [-1#((x-x0)/#x)#1] et [-1 # ((y-y0)/#y) #1], si x et y sont les coordonnées définies avec les unités pixel. Ce choix est trés important pour obtenir un bon comportement de l'algorithme d'estimation des paramètres.
En réalité, on peut choisir d'autres représentations pour les fonctions polynomiales, par exemple en utilisant la base de Berstein.
En appelant Recto [#min, Ymax]x[Ymin, Ymax] le rectangle circonscrivant la région , le choix des paramètres de normalisation xg y0, Ax et Ay implique que:
Figure img00070001

relation dans laquelle f, désigne la restriction de la fonctionf4 à Recto
Cette condition implique que la contribution des différentes fonctions de base fij est équilibrée. Cette propriété est généralisable et on peut choisir toute normalisation de coordonnées telle que:
Figure img00070002
c'est-à-dire que la base soit normée, pour au moins une norme.
Un modèle polynomial de mouvement peut donc être caractérisé par les paramètres suivants:
- la base de fonctions fij sur laquelle il est développé;
- ses paramètres agJ et a , qui sont les coefficients du
développement sur la base;
et ses facteurs de normalisation xo, y", ArS et Ay3 pour une échelle
donnée s.
Dans la réalité, l'information de luminance associée à une région ne varie pas ou, pour le moins, trés peu au cours du mouvement. Le modèle réel est donc censé minimiser le critère suivant:
Figure img00070003

relation dans laquelle DFD(p, A) désigne la différence inter-images déplacées par les vecteurs engendrés par le modèle A, soit de manière plus précise:
DFD(p,A) = I2(0 (P)-11(P-dùp, A)) (10).
Le problème de l'identification du mouvement réel de la région s est résolu au moyen de la minimisation du critère d'erreur, exprimé par la relation (9).
Ce problème est cependant très difficile, car il n'existe pas de solution analytique connue, ni même de preuve de convergence vers l'optimum global pour les algorithmes existants. Le procédé selon l'invention comprend deux grandes phases pour résoudre ce problème:
- Une phase d'optimisation locale, qui permet une détermination fine et précise de l'optimum, dans le voisinage d'une prédiction grossière de cet optimum;
- Une phase d'optimisation globale, qui réalise une succession de couples prédiction-correction, permettant ainsi une convergence plus sûre vers le minimum globale.
La figure 3 illustre un exemple de dispositif DEMI, estimateur de mouvement de régions dans des séquences d'images numériques selon le procédé de l'invention, sous la forme d'un schéma bloc.
Le dispositif DEMI admet en entrée, dans un module 4 de calcul de pyramide image, des signaux représentant les paramètres afférents à deux images successives II et I2. Celui-ci fournit en sortie des signaux représentant deux pyramides d'images sources I" et I:. Le dispositif DEMI reçoit, également en entrée, la définition de la région 9R, par exemple sous la forme d'un masque binaire transmis à un module 2 de calcul de pyramide des masques, ainsi que des informations sur l'amplitude maximale du mouvement, fournies à un module 1 de détermination du nombre de niveaux des pyramides nS. Cette information est transmise aux modules 2 et 4.La définition de la région s est obtenue à l'aide d'une image d'étiquette L( > ) (avec L(x,;) = r, numéro de région s'il en existe plusieurs), ou de façon équivalente à l'aide d'un masque. Le dispositif DEMT peut enfin recevoir, sur une entrée d'un module 8 de conversion d'échelle, une éventuelle information d'initialisation, sous la forme d'un modèle initial Â0.
En sortie, le dispositif génère un jeu de paramètres calculés définit par un vecteur A.
Outre les modules précités, le dispositif DES comprend également un module 3 d'adaptation du polynôme à l'échelle courante s, qui reçoit les signaux de sortie du module 2, un module 5 de choix de prédiction, en cascade avec le module 3, un module 6 de correction des paramètres, en cascade avec le module 5 et un module 7 de contrôle de convergence, en cascade avec le module précédent. Les modules 5 et 6 reçoivent sur des entrées supplémentaires les signaux représentant les pyramides images sources calculées par le module 4. En outre, le module 7 de contrôle de convergence est rebouclé sur le module 6.La sortie du module 7 est transmise à un comparateur 9 qui détermine si s est supérieur à zéro, génère en sortie le vecteur A précité si la comparaison est positive ou dans le cas contraire transmet un vecteur A5 sur le module 8 de conversion d'échelle. Les signaux de sortie de ce module 8 sont transmis sur deux entrées supplémentaires du module 3 d'adaptation du polynôme à l'échelle courante.
Le fonctionnement des différents modules composant le dispositif DEMI seront explicités, de façon plus détaillée, ci-après.
Le procédé selon l'invention est basé sur une correction itérative du vecteur de paramètres, intégrée dans un processus multi-échelle pyramidal selon une "stratégie grossier vers fin", permettant d'obtenir dès les instant initiaux une approximation grossière du mouvement, même pour des amplitudes trés importantes, puis d'affiner la définition des images des pyramides de mouvement.
Le dispositif DEMI d'estimation de mouvement réalise les fonctions suivantes:
1. La construction de la pyramide multi-échelle du masque caractérisant la région S;
2. L'initialisation du modèle puis sa conversion à l'échelle la plus grossière,
3. La correction itérative du vecteur de paramètres, que l'on peut qualifier également d'optimisation locale du modèle, en fonction d'une initialisation arbitraire fournie au début du processus itératif;
4. La "stratégie" d'optimisation globale multi-échelle.
Bien que l'on ait représenté les modules correspondants, 1 et 4, comme faisant partie intégrante du dispositif DES, on peut estimer que le calcul des pyramides multi-échelle des images sources est un processus en amont de l'estimation de mouvement proprement dite.
L'analyse multi-résolution, ou multi-échelle, consiste à générer à partir d'une image donnée un ensemble d'images ayant différents niveaux de détail ou de résolution, c'est-à-dire plus ou moins de "hautes fréquences". Concrètement, on obtient les images de plus faible résolution par filtrage passe-bas, puis par souséchantillonnages successifs de l'image originale. Le plus souvent, ces filtrages sont du type demi-bande et le sous-échantillonnage est d'un facteur deux pour chaque direction (horizontale et verticale) de l'image, ce qui correspond à la construction de pyramides dyadiques, solution qui sera adoptée avantageusement dans le cadre de l'invention. Ce type de traitement facilite l'estimation de mouvements de grande amplitude, tout en réduisant la quantité de calculs nécessaires.Son couplage avec des procédés différentiels s'avère particulièrement efficace, car le lissage des images dû à un filtrage passe-bas augmente le domaine dans lequel l'approximation linéaire de la fonction luminance est valide. I1 est utile de noter que le choix des filtres utilisés pour construire la pyramide multirésolution peut avoir un impact important sur la convergence de l'estimation. La réduction de complexité de l'algorithme, essentiellement en termes de temps de calcul et de place de mémoire de stockage, résulte quant à elle du sous-échantillonnage qui réduit la volume de données à traiter.
De façon pratique, la génération de pyramides d'images source, peut s'effectuer avantageusement de la manière illustrée par la figure 4, pour des filtres séparables selon les deux variables x et y. Cette figure illustre schématiquement, sous la forme d'un bloc diagramme, un étage de construction d'une pyramide multirésolution passe-bas dyadique.
Cet étage comprend, en cascade, un premier filtre FH, pour le filtrage horizontal, un premier décimateur DH, pour la décimation horizontale, un second filtre Fv, pour le filtrage vertical, un second décimateur DV et pour la décimation verticale.
Partant d'une image originale 15(x,y), on construit une succession d'images 1''(Y, > ), de résolution inférieure par filtrage et décimation, d'abord horizontales puis verticales, selon le processus représenté sur la figure 4.
Les différentes valeurs intermédiaires et la valeur de sortie l+l(x,y) obéissent aux relations suivantes
Figure img00100001
Naturellement, la division des dimensions de l'image ne peut être
qu'entière. En outre, du fait de la décimation qui suit immédiatement le filtrage,
seuls les échantillons pour x pair ont besoin d'être calculés en ce qui concerne If (x,y). De même, seuls les échantillons pour y pair ont besoin d'être calculés en ce qui concerne If(X,Y).
La figure 5 représente symboliquement une pyramide d'images, pour r, et et
Le choix du filtre présente un caractère critique pour estimer des mouvements de forte amplitude, tout en restant fiable pour les petits mouvements.
Pour ce faire, il est souhaitable de réaliser un étalement des contours conséquent, tout en limitant le repliement du spectre. Un filtre moyenneur symétrique constitue généralement un bon compromis.
Un tel filtre est définit par l'ensemble de relations suivantes:
Mx =My =M
hx(m) = h;(m) = 1/(2.M+1) avec -M < m < M (12)
hÂm)=ft(m)=O sinon
hm) et hy(m) étant les réponses impulsionnelles des filtres en x et y, respectivement. Les valeurs de M comprises entre 2 et 4 donnent généralement satisfaction. On choisit avantageusement M= 2, dans le cadre de l'invention.
On doit bien réaliser que la construction des pyramides multi-échelle d'images source n'est réalisée qu'une seule fois pour l'estimation du mouvement, ce quelque soit le nombre de régions, s'il y en en a plusieurs.
En ce qui concerne l'image des étiquettes de région, on passe d'une représentation par étiquettes, dans laquelle peuvent être prises en compte plusieurs régions (L(x,y) = r U (x,y) # S), à une représentation par masque binaire (L#(x,y) = 1 # (x,y) # R, LR(x,y) = 0 # (x,y) # R). Pour limiter l'encombrement en mémoire, la taille du masque (qui est physiquement stocké dans des mémoires, non représentées, sous forme d'image) est limitée au strict minimum, soit en l'occurrence au rectangle circonscrivant la région #. Pour générer la pyramide correspondant à ce masque, on ne réalise que des décimations. Les calculs sont réalisés par le module 2.
Soit L (x, y) une telle image à l'échelle s, la relation entre deux échelles est alors donnée par:
Figure img00110001
Cependant, à mesure que l'échelle s augmente, la taille de la région S5 diminue et tend vers zéro pour une représentation discrète de cette région. Dans la réalité, deux problèmes apparaissent:
- Si pour une échelle donné, il existe une portion filaire au sein de la région, les points de celle-ci dont au moins une coordonnée est impaire disparaissent, conduisant à déconnecter, voire à supprimer la région. Il est nécessaire alors de procéder à une dilatation locale conditionnelle de la région, horizontalement ou verticalement, selon la nature du point, avant dilatation. La figure 6 est un diagramme illustrant ce processus.Par convention un "0" logique représente un point extérieur, un "1" logique un point intérieur et un "X" un "O" ou un "1" On a représenté des carrés de 3x3 pixels. La partie gauche de la figure illustre la dilatation d'un point filaire vertical. La séquence binaire (horizontale sur la figure) "010" devient "111" De même, on a représenté, sur la partie droite de la figure, la dilatation d'un point filaire horizontal. La séquence binaire (verticale sur la figure) "010" devient "1 il' Les séquences "XE" sont indifférentes.
- A partir d'un certain niveau, il peut ne plus subsister suffisamment de points dans la région 5 pour réaliser une estimation fiable des paramètres de mouvement. Pour remédier à ce problème, on réalise avantageusement une succession de dilatations morphologiques de la région 5 par un élément structurant carré de taille 3x3 jusqu'à ce que cette région 5 ait une taille minimale requise, soit k.
Une dilatation morphologique binaire d'une région St par un élément structurant B est la région SteB=U = us Bf, où BT désigne l'élément structurant centré au point 1 . La figure 7 illustre ce processus. Sur cette figure, on a représenté les deux régions par rapport à des axes XY orthonormés, ainsi que l'élément structurant B et le point de centrage T .
La figure 8 illustre schématiquement le fonctionnement du module 2 de construction binaire d'une pyramide multi-échelle de masques binaires d'une région, incluant la dilatation morphologique de région ainsi que la dilatation de portions filaires. Le module comprend deux étages principaux: un étage 20 effectuant la dilatation morphologique et un étage 21 effectuant la dilatation des portions filaires.
Le premier étage, 20, comprend essentiellement un comparateur 200 recevant en entrée les signaux véhiculant les vecteurs de masque L(x,y) et une boucle de rétroaction 201 effectuant la dilatation morphologique précitée à l'aide de l'élément structurant carré de taille 3x3 (voir figure 7) et réinjectant les signaux en entrée, tant que la condition |R5| > K n'est pas remplie. L'étage 21 comprend essentiellement un circuit de dilatation des portions filaires fonctionnant selon le processus décrit ci-dessus en regard de la figure 6, suivit d'un circuit 211 de décimation horizontal et vertical. Le module 2 délivre en sortie les signaux
L995+1 (x,y) permettant la construction de la pyramide de masque.
L'application du critère de taille est aussi réalisée sur le masque original à l'échelle 0. Cette façon de procéder est très importante pour une estimation robuste de mouvements de forte amplitude sur des petites régions.
La construction de la pyramide des masques doit être réalisée pour chaque région individuellement, s'il y en a plusieurs.
Pour une estimation autonome sur la région St, le processus est initialisé par un modèle identiquement nul A =0 =0 et %v.=o et aivy = 0 t(i,j), et la normalisation s'effectue selon les relations (6).
Le changement d'origine est caractérisé par la relation (14):
Figure img00120001
dans le cas séparable, x'0 et y'0 étant les nouvelles coordonnées, et par la relation (15) aijsep (x'o ,y'0) =
Figure img00130001

dans le cas non-séparable, avec n! = factorielle de l'entier, plus grand ou égal à zéro.
Le changement de normalisation, quant à lui obéit à la relation suivante (Ax' et #y' exprimant les coordonnées de nouvelle normalisation):
Figure img00130002
La technique d'optimisation utilisée exploite les caractéristiques avantageuse de la méthode de Gauss-Newton, permettant une convergence rapide prés de l'optimum, et de la méthode du gradient avec pas adaptatif, permettant une convergence globale vers un optimum local. Les corrections des vecteurs de paramètres OAr et iSAy à l'itération K ressortent des relations suivantes:
#Axk = -[Rffxx + &alpha;x . Id]-1 . Rdfx = -(Rffxx + &alpha;x.Id]-1.#AyE
#Ayk = -[Rffyy + &alpha;y . Id]-1 . Rdfy = -[Rffyy + &alpha;y.Id]-1.#AyE (17) dans laquelle Id est la matrice identité de dimension d = Dp(n). Les éléments des matrices Rff,ijkixx, Rffjikdyy, Rfdf,ijx et Rfdf.ijy ressortent des relations suivantes:
Figure img00130003

avec:
Figure img00130004
Les gains cet &alpha;y sont données par les relations suivantes
Figure img00130005

dans lesquelles
Figure img00140001

indique une norme fonctionnelle. Les deux normes les plus avantageuses sont
Figure img00140002

avec 1S1 le cardinal de la région discrète S. En effet, la seconde norme peut être aisément calculée en même temps que les matrices Rffi et la première peut être considérée approximativement égale à l'unité.L'adoption de ces gains permet de garantir que la contribution de chacun des coefficients polynomiaux au déplacement en chaque point de la région évolue de moins de un pixel en moyenne à chaque itération, ce qui limite les risques de divergence du processus. Ainsi, loin de l'optimum, si les courbures directionnelles (données par les valeurs propres de R et R", qui constituent des approximations du Hessien du critère E respectivement en Ax et Ay) sont faibles, la correction se fait dans la direction du gradient de E, avec une amplitude correspondant, en moyenne, à un déplacement de 1 pixel par coefficient, ce qui limite fortement le risques de s'échapper du domaine d'attraction de l'optimum. A mesure que la courbure augmente, le gradient diminue, ce qui accélère la convergence, et la rend plus précise.De ce fait, la convergence est plus robuste que pour l'algorithme enseigné par l'article de H. Sanson précité. Le surcoût en calculs est par contre négligeable.
Les différentes matrices à inverser R +ar Id et et R+ < 1yISOnt symétriques, positives (et, en général, définies positives) et pleines. Leur inversion peut s'effectuer en ayant recours à une méthode classique de l'analyse numérique, par exemple à partir de la factorisation de Cholesky.
La figure 9 illustre schématiquement, sous la forme de blocs diagrammes, le module 6 de correction du vecteur de paramètres, selon le processus qui vient d'être explicité.
I1 reçoit en entrée les signaux de pyramide image II et 14, le premier sur l'entrée d'un étage 61 d'interpolation de luminance et de gradient, le second sur un étage 62 de calcul de la fonction DFD. I1 reçoit également le signal AK de sortie du module 5 de choix de prédiction, sur l'entrée d'un étage 60 de calcul de la valeur p - d(,b, A" ).
Un étage 63 génère la valeur p E Ss. Cette valeur est distribuée aux étages 60, 62 et à un étage 64 de calcul des éléments de matrices. Une première sortie de l'étage 61 génère, à partir du premier signal de pyramide image et de la valeur calculée p - d(p, A" ), le signal de luminance Il(p), nécessaire au calcul de
DFD conformément aux relations (19), et les dérivées partielles (gradient) 11,x et 11,y' toujours conformément aux relations (19). L'étage 64 effectue le calcul des éléments de matrices conformément aux relations (18). I1 comporte trois sorties.La première sortie est connectée à un étage 66 effectuant le calcul des valeurs ax et conformément aux relations (20) et lui transmet les données nécessaires à ce calcul.
La seconde sortie est connectée à un étage de résolution du système linéaire d'équations matricielles, tel qu'il ressort des relations (17), et lui transmet les données nécessaires à cette résolution. Enfin, la troisième sortie, véhiculant la valeur E précitée, est transmise directement à un bus formant la sortie générale du module 6. Les valeurs calculées par l'étage 65 de résolution du système d'équations linéaires sont également transmise sur ce bus, en sortie de cet étage. Le bus est connecté à l'entrée du module 7 de contrôle de la convergence, dont le fonctionnement sera décrit ci-après.
Les déplacements engendrés par les différents modèles Ak sont réels et sont avantageusement calculés en virgule flottante ou en virgule fixe avec une précision importante. I1 est donc nécessaire de déterminer les valeurs de la luminance Il(p) et de ses dérivées partielles Il,x et II, y (gradient) en des points de coordonnées non-entières, ce qui nécessite donc une interpolation, interpolation effectuée par l'étage 61. Celle-ci est réalisé d'un filtre bi-cubique (donc séparable) dont chaque composante mono-dimensionnelle obéit à la relation suivante (21):
Figure img00150001
Le filtre interpolateur bi-dimensionnel est obtenu par produit tensoriel du filtre h avec lui-même.On en déduit donc la formule pratique d'interpolation de la luminance (22) en un point (X,Y)T de coordonnées réelles dans le plan image PI (figure 1):
Figure img00150002

02:f(r),f(y) < 1 1
relation dans laquelle e(x) désigne la partie entière par défaut de x, etft(x) = x - e(x)
la partie fractionnaire de x.
On peut en déduit aisément les dérivées partielles de I(x,y) comme suit:
Figure img00160001

0 # fr(x), fr(y) < 1 relation (23) dans laquelle h(x) = d (x) désigne la dérivée usuelle de h(r).
Les paramètres b et c définissent une famille de filtres possibles.
L'expérience a montré que le choix (b, c) = (0,1) s'avère particulièrement intéressant du point de vue de l'erreur de prédiction par compensation du mouvement, sur un ensemble de séquences testées. On retiendra avantageusement ce choix dans le cadre du procédé selon l'invention.
Pour la mise en ouvre pratique, par exemple dans un circuit intégré, et pour gagner du temps de calcul, il est préférable de fixer une précision donnée, en terme de fraction de pixel, puis de pré-calculer le banc ou la batterie de filtres numériques polyphases pour différents multiples de la fraction de pixel retenue. On évite ainsi le calcul des termes en x, et on se ramène à un calcul classique de convolution, avec filtre court, puisqu'il ne requiert qu'un voisinage de 4 points par direction x et y. Si Ai est la précision adoptée pour les interpolations, il est nécessaire d'utiliser une batterie de filtre hn(m) définie par hn(m) = h (m+ (n/Nft)), pour0 < ns:N- 1.
Le comportement de l'algorithme dépend des caractéristiques locales du critère à minimiser, et qui apparaissent au cours des itérations. Un contrôle de la convergence du processus itératif s'avère donc nécessaire, ce pour notamment pour deux raisons:
- éviter les divergences,
- détecter l'arrivée sur l'optimum ou sur un cycle limite autour de celuici, afin de gagner en temps de calcul, pour des applications où cela s'avère utile, c'est le cas des applications interactives, par exemple.
La détection d'une divergence ou d'un cycle limite est décidée sur détection de l'augmentation du critère E (voir relation (9)). Si E(S,A ) > pour une itération donnée de rang K 2 1, on arrête l'itération à l'échelle courante atteinte, et Ak-1 est retenu comme modèle optimal. Le calcul des matrices
Rdfx et Rtf implique déjà l'évaluation des fonctions DFD pour tous les points de la région S. Pour obtenir la valeur du critère E, il suffit de sommer les carrés de ces différentes valeurs.
L'arrivée sur l'optimum, ou en un point suffisamment proche de celuici, peut se détecter par une faible variation sur les paramètres entre deux itérations successives. Pour se prêter à une interprétation immédiate en termes de déplacement de pixels, on choisit avantageusement d'évaluer la contribution de chaque coefficient du polynôme à la variation du champ des déplacements des pixels. On utilise donc le critère suivant:
Figure img00170001

pour lequel E < < 1, puisque 1 pixel représente l'ordre de grandeur de la variation maximale du champ des déplacements due à la contribution de chaque paramètre. s peut être choisi en fonction de la précision retenue pour les calculs d'interpolation.
La figure 10 illustre schématiquement le module 7 de contrôle de convergence, sous la forme de schéma bloc, dont le fonctionnement est conforme à ce qui vient d'être décrit.
n reçoit en entrée d'un premier étage 70 comparateur les signaux successifs de corrections des vecteurs de paramètres calculées pour l'itération K, conformes à la relation (17), et du critère E, pour cette même itération. Le comparateur 70 effectue la comparaison de K par rapport à zéro. Pour une comparaison négative, les données de modèle A sont stockées dans une mémoire ou un registre 73. Pour une comparaison positive, les données de critère E sont transmises à un second comparateur 71 qui effectue une comparaison sur ce critère pour l'itération K par rapport à I'itération (K-1). Si le critère E est supérieur pour l'itération K, un signal est émis qui autorise l'écriture du modèle A du rang (K-1) dans un registre 72 et stoppe le processus d'itérations : signal de sortie "STOP".Les données afférentes au modèle précité sont lues en mémoire 73. Elles y avaient été stockées à l'itération précédente. Si la condition n'est pas remplie, les données afférentes au critère E sont stockées en mémoire 73. Les corrections des vecteurs de paramètres calculées pour l'itération K, sont ajoutées dans un registre 74, à la valeur du modèle A pour cette même itération, la nouvelle valeur obtenue formant le modèle pour l'itération (K+1). Un étage 75 supplémentaire de comparaison effectue les comparaisons conformes à la relation (24).Si les critères imposés par cette relation sont satisfaits, la valeur du modèle à l'itération (K+1) est écrite dans un registre 76 qui émet un signal d'arrêt "STOP" Dans le cas contraire la valeur courante de l'itération, soit K, est comparée à une valeur maximale Ksar, dans un étage comparateur 77. Si la comparaison est positive, le processus est arrêté également. La valeur courante du modèle est lue dans le registre 74 et écrite dans le registre 76, et le signal "STOP" est émis. Dans le cas contraire, le processus se poursuit. La valeur correspondante est transmise en rétroaction au module 6 de correction des paramètres, plus précisément en entrée de l'étage 60.Un compteur 78 incrémente d'une unité la valeur de K et les données représentatifs du modèle A pour l'itération de rang (K+1) sont transmises au module 6.
La stratégie d'optimisation globale va maintenant être explicitée. Elle comprend quatre volets distincts:
- l'initialisation du processus global,
- le choix entre la prédiction issue de l'échelle précédente et la prédiction initiale pour l'initialisation de la correction à une échelle donnée;
- l'adaptation du degré de polynôme en fonction du nombre de points disponibles pour les calculs et la normalisation pour l'échelle courante;
- la propagation du modèle d'une échelle à la suivante.
Pour différentes raisons, il peut arriver que l'estimation réalisée à l'échelle précédente, plus grossière, ne soit pas cohérente avec le modèle réel, pour l'échelle courante, par exemple, lorsque l'information photométrique de la région est essentiellement concentrée sur des hautes fréquences, éliminées par les filtrages passe-bas successifs lors du processus de construction de la pyramide d'images. On garde alors la possibilité dans ce cas de réinitialiser l'estimation des paramètres à partir de l'échelle courante.Pour ce faire, on compare les erreurs obtenues avec les deux modèles, As+1s, issu de l'échelle précédente, et ;0 prédiction initiale, aprés les avoir mis à l'échelle, conformément aux conditions de la relation (28) qui seront explicitées ci-après. Les erreurs sont données par la relation (9). On choisit naturellement la prédiction impliquant une erreur minimale.
La figure 11 illustre schématiquement le module 5 de choix de prédiction, sous forme d'un schéma bloc. I1 comprend deux étages, 50 et 51, de calcul d'erreur conformément à la relation (9), portant sur les deux modèles précités. En sortie, les vecteurs d'erreur,E(ÂS~,,,) ou E(405) respectivement, sont comparés dans un étage comparateur 52, l'un à l'autre. Si le premier est supérieur au second, le premier modèle, A005, est choisi. Dans le cas contraire, c'est le second modèle, s+los, qui est choisi. Les signaux de sortie, c'est-à-dire ceux correspondants au modèle sélectionné, sont transmis au module de correction de paramètres.
A priori, le nombre de niveaux à utiliser dépend de l'amplitude maximale du mouvement que l'on souhaite réussir à identifier, ce qui dépend donc essentiellement des contraintes de l'application précise. Cependant, il existe une limitation liée d'une part aux dimensions finies de l'image, et, surtout, à la taille finie elle aussi de la région concernée, cette taille étant réduite en même temps que l'échelle, pour le moins dans certaines proportions, puisque la génération des masques de la région S aux différentes échelles impose déjà une borne inférieure sur la taille de la région à ces échelles. Cependant, les formules de correction des paramètres de mouvement font intervenir des moyennes sur les pixels de la région, qui pour être significatives, supposent un nombre minimum de points à prendre en compte.Ce nombre de points dépend naturellement du modèle à identifier, puisqu'on cherche généralement à résoudre des systèmes surdimensionnés, et non l'inverse. On peut penser imposer un critère de taille minimale en fonction du degré du modèle à calculer. Cependant, cette façon de procéder risque d'imposer une taille minimale trop élevée, ce qui engendrerait des erreurs de segmentation trop importantes. En outre, un mouvement de forte amplitude consiste le plus souvent en un mouvement dont la partie translation (qui concerne aussi le déplacement du centre de gravité) est importante. Il convient donc de privilégier l'estimation des paramètres de plus bas degré dans ce cas. Il est donc nécessaire de satisfaire un critère du type lSSI > K'.Dp(n) (25); relation dans laquelle 19{51 désigne le cardinal de la région , considérée à l'échelle s.Afin de pouvoir tirer profit d'une estimation à base résolution, même si la taille de la région S ne satisfait pas cette relation pour un degré donné du polynôme, il est possible de se contenter de ne réaliser l'estimation que sur les termes de plus bas degré, tel que le polynôme correspondant vérifie cette relation.
Une façon de procéder avantageuse peut consister à satisfaire la relation suivante
n#nmax
n = max(n tel que K'Dp(n) <
(26)
Cette manière de procéder peut encore être affinée en mélangeant les polynômes non séparables et les polynômes séparables, les premiers constituant un sous-ensemble des seconds.
Pour être cohérent avec la construction de la pyramide des masques de région, il parait logique de choisir K' = K, puisque Dp(O) = 1. Ainsi, pour les petites régions, seule la translation est estimée aux premiers niveaux de résolution, ce qui rend l'identification nettement plus robuste. Comme un polynôme de degré n est aussi un polynôme de degré n + p pour lequel les coefficients correspondants aux termes de degrés supérieurs à n sont nuls, l'extension du degré du polynôme d'une échelle à l'autre s'effectue simplement en complétant les termes manquants par 0, avant l'estimation de ces termes.
Du fait des sous-échantillonages et des éventuelles dilatations, le rapport entre deux masques pour deux échelles consécutives n'est pas nécessairement homothétique. 1l est donc nécessaire d'opérer un éventuel changement de paramètres de normalisation des coordonnées, en les calculant directement conformément à la relation (6), à partir du rectangle circonscrivant la région # à l'échelle courante (voir figure 2). Celui-ci est déterminé directement à partir du masque de la région pour cette échelle. Le changement de paramètre est effectué conformément à ce qui est énoncé dans les relations (14), (15) et/ou (16).
La figure 12 illustre schématiquement le fonctionnement du module 3 d'adaptation du modèle polynomiale à l'échelle courante. I1 peut se subdiviser en deux sous-modules : un sous-module 30 d'adaptation du degré du polynôme et un sous-module 31 de changement de paramètres de normalisation.
Le premier sous-module 30 comprend un registre 300 stockant la valeur nmar. Un comparateur 301 effectue la double comparaison imposée par la relation (26). Si, pour une valeur inférieure ou égale à nmax, la comparaison est négative la valeur de n est décrémentée d'une unité par un soustracteur ou un décompteur 312.
Dans le cas contraire, la valeur de n est transmise à un étage 301 d'adaptation proprement dit du degré du polynôme. Celui-ci reçoit sur une seconde entrée les données successives correspondant au paramètre a',j(r' y'ç > Ax' Ay'). n effectue les calculs nécessaires pour que les relations suivantes soient satisfaites
aij = a'ij, i#n, j#n et a ij = 0, i > n, j > n (27)
Le sous-module 31 reçoit les signaux de sortie de l'étage 301 et effectue le changement de paramètres de normalisation pour passer de a'ij(x'0,y'0, #x', #y') à aij(x0,y0, Ar, Ay), conformément aux conditions énoncées dans les relations précitées.
Lors du passage d'un niveau de résolution à un niveau de résolution plus fine, les coefficients du polynôme aux deux échelles doivent satisfaire la contrainte suivante:
d5(x,y)=2.ds-1(x, y) (28)
2 2
En ce qui concerne les paramètres x0,y0, y Ar, Ay, pour la solution définie par la relation (6), ceux-ci subissent dans un premier temps les mêmes transformations que les unités pixels des axes de coordonnées XY, en supposant que la région # n'a pas subi de dilatation lors du sous-échantillonnage, selon ce qui a été indiqué précédemment, et la transformation à opérer sur les coefficients dans ce cas est particulièrement simple.Elle obéit aux relations suivantes g.=2 .+l
xo = 2.x05+1
y05 = 2.y05+1 (29)
#x5 = 2.#x5+1
Ay5 = 2.#y5+1
pour une conversion entre deux échelles quelconques s et s', la formule de conversion est donnée par ce qui suit:
aij5 = 25'-5'.aij5'
x05 = 25'-5.x05'
y05 = 25'-5.y05' (30)
#x5 = 25'-5'.#x5'
#y5 = 25'-5.#y5'
La figure 13 illustre schématiquement le module 8 de conversion d'échelle. Celui-ci réalise les calculs nécessités par la relation (30). Il s'agit essentiellement de multiplications. Les circuits permettant ces calculs sont bien connus. On peut utiliser, soit des circuits spécifiques à base d'une unité arithmétique et logique, de registres mémoires et de registres à décalages, soit une logique programmée (microprocesseur ou similaire).
En résumé, les différents paramètres à déterminer ou à fixer au préalable, dans le cadre du procédé selon l'invention, sont le suivants:
1/le type de polynômes, soit séparables, soit non-séparables;
2/ le degré de ces polynômes;
3/ le nombre de niveaux (d'échelles) des pyramides d'images;
4/ le support du filtre moyenneur utilisé pour la construction des pyramides d'images,
5/ le rapport minimal K entre le nombre de points de la région R à l'échelle s et le nombre de coefficients polynomiaux, qui constitue aussi la taille minimale de la région S à toutes les échelles;
6/ le nombre maximum d'itérations par niveau;
7/ la variation maximale sur les paramètres polynomiaux entre deux itérations consécutives, conduisant à stopper les itérations,
8/ et la précision pour les calculs d'interpolation sub-pixel.
Le choix des deux premiers paramètres dépend essentiellement du contexte de l'application précise.
Le nombre de niveaux nS à utiliser est fonction de l'amplitude maximale autorisée pour le mouvement
Figure img00220001
De façon pratique, l'évaluation suivante donne le rapport entre deux grandeurs:
Figure img00220002
Le filtre moyenneur de support [-2, 2] (M = 2) donne expérimentalement les meilleurs résultats, comme il a été indiqué, ce sur toutes les séquences testées.
Pour évaluer le minimum de points K de la région, il est possible de prendre comme référence celui contenu dans un bloc de 4x4, qui expérimentalement s'avère être le plus petit bloc pour lequel l'estimation d'un déplacement (translation) est réellement fiable. L'ordre de grandeur de K est donc 16.
La théorie indique qu'il serait nécessaire que les itérations se poursuivent jusqu'à ce que la convergence de chaque niveau de résolution soit atteinte. Cependant, cette condition n'est pas toujours réalisable, notamment pour des applications en temps réel. II est donc généralement nécessaire de borner le nombre d'itérations possibles. L'expérience montre qu'un nombre minimal satisfaisant est de 5 itérations par niveau de résolution.
En outre, on peut arrêter les itérations si le critère de la relation (24) est vérifié pour un nombre E < 0,1.
Enfin, sauf pour des raisons d'encombrement des moyens de mémorisation du dispositif d'estimation, il n'existe pas de raisons de limiter la précision des calculs d'interpolation. Cependant, dans la pratique, on peut se contenter d'une précision compatible avec la valeur E, par exemple 1/8 pixel, voire une valeur inférieure. Cette précision doit aussi tenir compte du nombre d'échelles utilisées, puisqu'un facteur d'amplification d'erreur de 2w-I est introduit par la stratégie multirésolution adoptée dans le cadre du procédé selon l'invention.
A la lecture de ce qui précède, on constate aisément que l'invention atteint bien les buts qu'elle s'était fixée.
Le procédé d'estimation de mouvement de régions dans des séquences d'images numériques selon l'invention qui vient d'être décrit, dans le cadre d'un mode de réalisation particulier, possède plusieurs degrés de liberté et, de ce fait, s'adapte de façon très souple à diverses applications.
11 présente également d'autres avantages:
Il permet notamment d'estimer les mouvements complexes, sans sévères limitation sur leur dynamique maximale, ni sur la précision avec laquelle les paramètres peuvent être obtenus.
I1 permet enfin de rendre peu dépendante la complexité des algorithmes mis en oeuvre, en terme de nombre d'opérations, de ces derniers paramètres.
I1 doit être clair, cependant, que le dispositif de mise en oeuvre de l'invention n'est pas limité aux seuls exemples de réalisations précisément décrits, notamment, en relation avec les figures 1 à 13. De même, les différents exemples numériques n'ont été donnés que pour fixer les idées et ne sauraient limiter, en quoi que ce soit, la portée de l'invention. Les valeurs précises, à adopter pour un grand nombre de paramètres, sont fortement liées au contexte de l'application envisagée.

Claims (19)

REVENDICATIONS
1. Procédé d'estimation de mouvement d'au moins une région (S) constituée de points et de forme quelconque entre deux images numériques (11 I2), caractérisé en ce qu'il comprend l'établissement d'un modèle (i) de représentation paramétrique polynomiale dudit mouvement correspondant à une base de polynômes déterminée;
en ce qu'il comprend, au moins, une estimation des paramètres de ladite représentation par une optimisation non-linéaire imbriquée dans un processus de génération d'images multirésolution pyramidal, définissant une pluralité d'échelles successives et comprenant au moins les étapes suivantes
- la correction itérative dudit modèle par un algorithme de type Newton modifié et Gradient combinés, à chacune desdites échelles;;
- la détermination desdits modèles à chaque échelle et leur propagation sélective d'une échelle à la suivante, le résultat obtenu à une échelle servant à initialiser ledit algorithme à l'échelle suivante;
en ce qu'il comprend la construction d'une pyramide de masques binaires associée à chacune desdites régions à toutes les échelles prises en compte pour l'estimation dudit mouvement de manière à imposer une taille minimale déterminée sur ces régions,
et en ce qu'il comprend une adaptation de la complexité dudit modèle en fonction de la taille de ladite région (S5) à l'échelle courante.
2. Procédé selon la revendication 1, caractérisé en ce qu'il comporte une étape préalable de génération d'un premier modèle (Ao ) initialisant ledit algorithme.
3. Procédé selon la revendication 2, caractérisé en ce qu'il comprend
- une étape de détermination des erreurs obtenues avec le modèle (4s+js) à l'échelle précédant l'échelle en cours et avec ledit premier modèle (ÂoO);
- une étape de comparaison de ces erreurs,
- une étape de sélection du modèle impliquant l'erreur la plus faible;
- et une étape de réinitialisation dudit algorithme avec ce modèle sélectionné, de manière à inhiber ladite propagation sélective d'une échelle à l'autre.
4. Procédé selon la revendication 1, caractérisé en ce que ladite adaptation de complexité du modèle de mouvement s'effectue sur le degré dudit polynôme.
5. Procédé selon la revendication 4, caractérisé en ce que ladite adaptation de complexité du modèle de mouvement est effectuée de manière à favoriser les termes de plus bas degré lorsque la taille de ladite région diminue.
6. Procédé selon la revendication 1, caractérisé en ce que, lesdites images étant disposées dans un plan image et repérées par des coordonnées orthonormées verticales (Y) et horizontales (X), ledit processus de génération d'images multirésolution pyramidal comprend les étapes successives suivantes:
- filtrage horizontal (FH) desdites images (Is(x,y));
- décimation horizontale (DH) desdites images;
- filtrage vertical (Fv) desdites images;
- et décimation verticale (Dv) desdites images.
7. Procédé selon la revendication 6, caractérisé en ce que ledit filtrage horizontal (FH) et ledit filtrage vertical (Fv) est réalisé par un filtre moyenneur symétrique de paramètres [-2, +2];
8. Procédé selon la revendication 1, caractérisé en ce que, lesdites images (ici, I2) étant disposées dans un plan image (PI) et repérées par des coordonnées orhthonormées verticales (Y) et horizontales (X), lesdits masques de la pyramide sont constitués de rectangles, de côtés parallèles aux coordonnées orthonormées circonscrivant lesdites régions (S5) et en ce qu'il comprend des étapes de décimations horizontales (221) successives desdits masques pour passer d'une des échelles de ladite pyramide de masques à la suivante.
9. Procédé selon la revendication 8, caractérisé en ce que lorsqu'il existe une portion filaire au sein d'une desdites régions, selon l'une desdites coordonnées, il comprend une étape supplémentaire de dilatation locale conditionnelle de la région (S), selon ladite coordonnée, avant ladite étape de décimation horizontale.
10. Procédé selon la revendication 8, caractérisé en ce que lorsque le nombre de points constituant ladite région est inférieur à un seuil déterminé, il comprend une étape supplémentaire de dilatation morphologique (S&commat;ss) de de la région (S) à l'aide d'un élément structurant de taille déterminée.
11. Procédé selon la revendication 10, caractérisé en ce que ledit seuil déterminé correspond au nombre de points d'un bloc carré de points de dimensions 4x4.
12. Procédé selon la revendication 1, caractérisé en ce que, un paramètre exprimant la luminance étant associé à chacune des dites images (II, 12) et celles-ci étant disposées dans un plan image (PI) et repérées par des coordonnées orhthonormées verticales et horizontales, lesdits masques de la pyramide sont constitués de rectangles, ladite étape de correction itérative comprend l'interpolation de la luminance et de son gradient, et en ce que cette étape est réalisée, pour chacune desdites coordonnées, à l'aide de filtre bi-cubique obéissant à la relation suivante:
Figure img00260001
avec z = x ou y, x et y représentant lesdites coordonnées; b = 0 et c = 1.
13. Procédé selon la revendication 1, caractérisé en ce que le nombre desdites itérations est limité inférieurement à cinq par échelle.
14. Procédé selon la revendication 1, caractérisé en ce que, I'amplitude maximale dudit mouvement étant égale à
Figure img00260002
le nombre n5 d'échelles distinctes obéit à la relation suivante:
Figure img00260003
15. Procédé selon la revendication 1, caractérisé en ce que lesdites itérations sont stoppées lorsque la contribution de chacun des coefficients desdits polynômes devient inférieur à un critère déterminé (E), de manière à retenir comme modèle de mouvement optimal ledit modèle de mouvement déterminé à l'échelle et à l'itération en cours.
16. Procédé selon la revendication 15, caractérisé en ce que ledit critère (E) est inférieur à 0,1.
17. Procédé selon la revendication 1, caractérisé en ce que que lesdites itérations sont stoppées lorsqu'il a détection d'une divergence, pour une itération déterminée, par rapport à l'itération précédente, de manière à retenir comme modèle de mouvement optimal ledit modèle de mouvement déterminé à l'échelle et à l'itération en cours.
18. Procédé selon la revendication 1, caractérisé en ce que ladite une base de polynômes déterminée est normée pour au moins une norme
19. Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce que, lesdites images (II, I2) comprenant plusieurs régions en mouvement, ladite estimation est réalisée de façon autonome sur chacune de ces régions.
FR9500826A 1995-01-25 1995-01-25 Procede d'estimation de mouvement de regions dans des sequences d'images numeriques Granted FR2729811A1 (fr)

Priority Applications (2)

Application Number Priority Date Filing Date Title
FR9500826A FR2729811A1 (fr) 1995-01-25 1995-01-25 Procede d'estimation de mouvement de regions dans des sequences d'images numeriques
PCT/FR1996/000118 WO1996023279A1 (fr) 1995-01-25 1996-01-24 Procede d'estimation de mouvement de regions dans des sequences d'images numeriques

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR9500826A FR2729811A1 (fr) 1995-01-25 1995-01-25 Procede d'estimation de mouvement de regions dans des sequences d'images numeriques

Publications (2)

Publication Number Publication Date
FR2729811A1 true FR2729811A1 (fr) 1996-07-26
FR2729811B1 FR2729811B1 (fr) 1997-02-28

Family

ID=9475472

Family Applications (1)

Application Number Title Priority Date Filing Date
FR9500826A Granted FR2729811A1 (fr) 1995-01-25 1995-01-25 Procede d'estimation de mouvement de regions dans des sequences d'images numeriques

Country Status (2)

Country Link
FR (1) FR2729811A1 (fr)
WO (1) WO1996023279A1 (fr)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000007375A1 (fr) * 1998-07-29 2000-02-10 Nokia Mobile Phones Limited Systeme de codage video

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69809920T2 (de) 1997-07-28 2003-10-09 Idt International Digital Technologies Deutschland Gmbh Verfahren und vorrichtung zur mehrfachauflösung objektorientierter bewegungsschätzung
CN112270643B (zh) * 2020-09-04 2024-06-14 深圳市菲森科技有限公司 一种三维成像数据拼接方法、装置、电子设备及存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
FRANŸOIS MEYER ET AL.: "Region-based tracking using affine models in long image sequences", CVGIP IMAGE UNDERSTANDING, vol. 60, no. 2, MA US, pages 119 - 140, XP000484198 *
PIERRE MOULIN ET AL.: "Application of a multiresolution otical-flow based method for motion estimation to Video Coding", PROCEEDINGS OF THE 1993 INTERNATIONAL SYMPOSIUM ON CIRCUITS AND SYSTEMS, CHICAGO (US) MAI 3-6,1993 ;IEEE ,NEW YORK (US), pages 1 - 4, XP000409920 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000007375A1 (fr) * 1998-07-29 2000-02-10 Nokia Mobile Phones Limited Systeme de codage video

Also Published As

Publication number Publication date
WO1996023279A1 (fr) 1996-08-01
FR2729811B1 (fr) 1997-02-28

Similar Documents

Publication Publication Date Title
Zheng et al. Ultra-high-definition image dehazing via multi-guided bilateral learning
Chaudhuri Super-resolution imaging
Lukac et al. A taxonomy of color image filtering and enhancement solutions
EP0286483B1 (fr) Procédé et dispositif d&#39;estimation de mouvement dans une séquence d&#39;images animées
Ren et al. Reinforced swin-convs transformer for simultaneous underwater sensing scene image enhancement and super-resolution
Dimitrievski et al. Learning morphological operators for depth completion
EP2294808B1 (fr) Procédé et système de traitement vidéo efficient
Valsesia et al. Permutation invariance and uncertainty in multitemporal image super-resolution
EP0369854B1 (fr) Procédé et circuit de traitement par bloc de signal bidimensionnel d&#39;images animées
EP0473476A1 (fr) Procédé et dispositif de localisation en temps réel de contours rectilignes dans une image numérisée, notamment pour la reconnaissance de formes dans un traitement d&#39;analyse de scène
Narayanan et al. A computationally efficient super-resolution algorithm for video processing using partition filters
Yamazaki et al. Image classification using spectral and spatial information based on MRF models
EP0717372B1 (fr) Procédé de sélection de vecteurs de mouvement et dispositif de traitement d&#39;images mettant en oeuvre ledit procédé
EP0722251B1 (fr) Procédé d&#39;interpolation d&#39;images
CN114841897A (zh) 基于自适应模糊核估计的深度去模糊方法
Nguyen et al. Self-supervised super-resolution for multi-exposure push-frame satellites
WO2001043446A1 (fr) Procede d&#39;estimation de mouvement entre deux images avec gestion des retournements de mailles et procede de codage correspondant
FR2729811A1 (fr) Procede d&#39;estimation de mouvement de regions dans des sequences d&#39;images numeriques
Seke et al. Multi‐frame super‐resolution algorithm using common vector approach
EP4302258A1 (fr) Reconstruction de bruit pour débruitage d&#39;image
EP3701492B1 (fr) Procede de restauration d&#39;images
GB2594970A (en) Three-dimensional motion estimation
Ye et al. A detail-preservation method of deep learning one-step phase unwrapping
Rahim et al. Improving the iterative back projection estimation through Lorentzian sharp infinite symmetrical filter
EP1197092B1 (fr) Decodeur video optimal base sur les standards de type mpeg

Legal Events

Date Code Title Description
ST Notification of lapse

Effective date: 20081029