FR3090969A1 - Dispositif et procédé d’estimation de mouvement d’un capteur d’images entre deux images, programme d’ordinateur associé - Google Patents

Dispositif et procédé d’estimation de mouvement d’un capteur d’images entre deux images, programme d’ordinateur associé Download PDF

Info

Publication number
FR3090969A1
FR3090969A1 FR1873758A FR1873758A FR3090969A1 FR 3090969 A1 FR3090969 A1 FR 3090969A1 FR 1873758 A FR1873758 A FR 1873758A FR 1873758 A FR1873758 A FR 1873758A FR 3090969 A1 FR3090969 A1 FR 3090969A1
Authority
FR
France
Prior art keywords
images
image
displacement
movement
displacement vector
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
FR1873758A
Other languages
English (en)
Other versions
FR3090969B1 (fr
Inventor
Félix ALVAREZ
Dann LANEUVILLE
Adrien NEGRE
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.)
Naval Group SA
Original Assignee
Naval Group 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 Naval Group SA filed Critical Naval Group SA
Priority to FR1873758A priority Critical patent/FR3090969B1/fr
Priority to PCT/EP2019/086366 priority patent/WO2020127774A1/fr
Priority to SG11202106379SA priority patent/SG11202106379SA/en
Priority to EP19821130.2A priority patent/EP3899867A1/fr
Priority to US17/312,892 priority patent/US12020441B2/en
Publication of FR3090969A1 publication Critical patent/FR3090969A1/fr
Priority to IL283974A priority patent/IL283974A/en
Application granted granted Critical
Publication of FR3090969B1 publication Critical patent/FR3090969B1/fr
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20016Hierarchical, coarse-to-fine, multiscale or multiresolution image processing; Pyramid transform
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30244Camera pose

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Analysis (AREA)
  • Studio Devices (AREA)
  • User Interface Of Digital Computer (AREA)
  • Length Measuring Devices By Optical Means (AREA)

Abstract

Dispositif et procédé d’estimation de mouvement d’un capteur d’images entre deux images, programme d’ordinateur associé Procédé d’estimation de mouvement entre deux images ( , ) comprenant les étapes de : - déterminer un vecteur d’initialisation de déplacement entre les deux images par projection, dans le plan image de l’appareil de capture d’image, du déplacement entre les deux images calculé en fonction d’informations recueillies définissant le mouvement de l’appareil de capture d’images entre les deux images et en fonction de la valeur de paramètre(s) de capture d’images utilisé(s) parmi une ouverture angulaire, un facteur de zoom et la résolution des images ; - mettre en œuvre, à partir du vecteur d’initialisation de déplacement, un algorithme itératif délivrant un vecteur de déplacement en fonction d’une fonction d’erreur à minimiser entre l’une des deux images et la transformée de l’autre image par le vecteur de déplacement. Figure pour l'abrégé : Figure 1

Description

Description
Titre de l'invention : Dispositif et procédé d’estimation de mouvement d’un capteur d’images entre deux images, programme d’ordinateur associé
[0001] La présente invention concerne un procédé d’estimation de mouvement d’un capteur d’images entre deux images capturées par ce capteur.
[0002] Dans le domaine du traitement vidéo, de nombreuses méthodes de stabilisation numérique d’images, de détections d’objets mobiles en caméra embarquée, de construction de bandeaux, de détermination de trajectoire d’objets ... utilisent de tels procédés d’estimation de mouvement entre deux images, comprenant généralement l’estimation d’un vecteur, dit vecteur de déplacement, définissant le mouvement de la caméra entre deux images consécutives ; un tel vecteur est par exemple composé des paramètres d’un modèle de déplacement entre les deux images.
[0003] Bien souvent, ces méthodes de calculs de flux de déplacement minimisent une fonction d’erreur de manière itérative en partant d’un vecteur de déplacement de valeur d’initialisation donnée et proposent ainsi, au fil des itérations, des vecteurs de déplacement de plus en plus proches d’un minimum de cette fonction d’erreurs (en supposant que ce minimum local corresponde au vecteur de déplacement vrai). Les méthodes itératives utilisées sont typiquement celles de type Newton ou Gauss-Newton ou encore de descente de gradient.
[0004] Ces méthodes présentent plusieurs problèmes. Si le vecteur initial de déplacement est trop éloigné, au sens de la norme euclidienne, du déplacement vrai, la méthode ne converge pas et produit un résultat inexploitable. Un deuxième problème, conséquence directe du premier est que, comme le vecteur initial ne doit pas être trop éloigné du vecteur vrai, les amplitudes des déplacements entre images qui peuvent être estimées s’en trouvent limitées. Un troisième problème est que rien ne garantit, dans le cas général, que la fonction d’erreur à minimiser soit convexe : l’algorithme peut donc converger vers un minimum local éloigné de la solution vraie. Enfin, la convergence de ces méthodes peut nécessiter de nombreuses itérations, coûteuses en temps (et ressources) de calcul, ce qui est problématique dans des applications temps réel.
[0005] Le but de l’invention est alors de proposer une solution qui contribue à réduire ces problèmes.
[0006] A cet effet, suivant un premier aspect, l’invention propose un procédé d’estimation de mouvement entre deux images mis en œuvre par un dispositif de traitement électronique, lesdites images étant capturées à l’aide d’un appareil de capture d’images, ledit procédé comprenant les étapes consistant à :
[0007] - recueillir les données définissant chacune des deux images ;
[0008] - déterminer un vecteur de déplacement d’initialisation caractérisant un déplacement entre lesdites deux images ;
[0009] - mettre en œuvre, à partir du vecteur de déplacement d’initialisation, un algorithme itératif délivrant à chaque itération un vecteur de déplacement actualisé en fonction d’une fonction d’erreur à minimiser entre l’une des deux images et la transformée de l’autre image par un déplacement défini par le vecteur de déplacement actualisé,
[0010] - ledit procédé étant caractérisé en ce qu’il comprend les étapes consistant à :
[0011] * recueillir des informations définissant le mouvement de l’appareil de capture d’images entre les deux images ;
[0012] * recueillir la valeur de paramètre(s) de capture de l’appareil de capture d’images utilisé(s) pour la capture des deux images parmi une ouverture angulaire, un facteur de zoom et la résolution des images ;
[0013] * déterminer le vecteur de déplacement d’initialisation par projection, dans le plan image de l’appareil de capture d’image, du déplacement entre les deux images calculés en fonction des informations recueillies définissant le mouvement de l’appareil de capture d’images entre les deux images et en fonction de la valeur de chaque paramètre de capture.
[0014] L’invention permet ainsi d’utiliser les informations de paramétrage de la caméra ainsi que les informations de position et d’orientation de la caméra issues d’une centrale inertielle couplée à la caméra afin de proposer un premier vecteur de déplacement Xo proche du vecteur vrai. Cela permet d’améliorer globalement les performances en accroissant la probabilité de converger vers le déplacement vrai. En particulier, cela améliore la précision de la solution fournie et permet d’estimer des déplacements plus grands entre images. De plus, utiliser un premier vecteur de déplacement Xo proche du vrai a pour conséquence une diminution du nombre d’itérations et accélérera aussi la convergence tout en réduisant naturellement les temps et ressources de calcul.
[0015] Dans des modes de réalisation, le procédé d’estimation de mouvement suivant l’invention comporte en outre une ou plusieurs des caractéristiques suivantes :
[0016] - les informations définissant le mouvement de l’appareil de capture d’images entre les deux images sont fournies par un dispositif de détermination de mouvement attaché à l’appareil de capture d’images ;
- le vecteur de déplacement d’initialisation est pris égal à YOf,t_inopt opt opt opt opt opt}1',où Λ 0 — ( (2 j , , U 3 , 4 , d 5 > 6 /
[0017]
[Math.l] / W- 1/ ,. t WkO ,ο χ I . s -1 . < χ
.......V I X '* ,ν s » eo&e< s T-Vsxw) \ 4 * taRH /
...-:;·; \ y \ 2 ?
% œ.----------------------------------------«. “-c.* rs>» <£. - I δΓ' ” ”s x ί ™ x mWTWlF’:* '. ÎM;a r........ .........-........... .
? ;
î ... :
: a,/' ~ s :X.§Mss) \ - Y < C'S»x'X -i \
i “ Y» — i . M “ 1 .
j--~sj—~ if x sm(si) + ----.^-2 (X -sx ixs/i/j}
J ;
ΤΓ-ί--------------------------------------------------------------------------------.......
[0018] où L est le nombre de niveaux d’une pyramide de réduction successive de résolution d’image dans le cas d’un procédé d’estimation de mouvement multi-résolution ou est égal à 1 sinon ; (ψ , 0, φ,) sont les angles d’Euler indiqués par les informations recueillies, Φ représentant en outre la rotation de la caméra autour de sa ligne de visée, les images ayant W pixels en largeur et H pixels en hauteur.
[0019] Suivant un deuxième aspect, la présente invention propose un dispositif électronique d’estimation de mouvement entre deux images comprenant une entrée pour recueillir les données définissant chacune des deux images et étant adapté pour déterminer un vecteur de déplacement d’initialisation caractérisant un déplacement entre lesdites deux images et pour mettre en œuvre, à partir du vecteur de déplacement d’initialisation, un algorithme itératif délivrant à chaque itération un vecteur de déplacement actualisé en fonction d’une fonction d’erreur à minimiser entre l’une des deux images et la transformée de l’autre image par un déplacement défini par le vecteur de déplacement actualisé, ledit dispositif étant caractérisé en ce qu’il est adapté pour recueillir des informations définissant le mouvement de l’appareil de capture d’images entre les deux images, pour recueillir la valeur de paramètre(s) de capture d’un appareil de capture d’images utilisé(s) pour la capture des deux images parmi une ouverture angulaire, un facteur de zoom et la résolution des images et pour déterminer le vecteur de déplacement d’initialisation par projection, dans le plan image de l’appareil de capture d’image, du déplacement entre les deux images calculé en fonction des informations recueillies définissant le mouvement de l’appareil de capture d’images entre les deux images et en fonction de la valeur de chaque paramètre de capture.
[0020] Dans un mode de réalisation, ledit dispositif est adapté pour prendre le vecteur de déplacement d’initialisation égal à opt, opr opt opt opt opt ορΐχ ί',οά A 0 — ( Î71 , Cl 2 , a 3 5 > )
[0021] [Math.2]
Figure FR3090969A1_D0001
\ -—- χκ Λ· χ-.·\>ν\φ·..- A
[0022] où L est le nombre de niveaux d’une pyramide de réduction successive de résolution d’image dans le cas d’un procédé d’estimation de mouvement multi-résolution ou est égal à 1 sinon ; (ψ , θ, φ,) sont les angles d’Euler indiqués par les informations recueillies, Φ représentant en outre la rotation de la caméra autour de sa ligne de visée, les images ayant FE pixels en largeur et H pixels en hauteur.
[0023] Suivant un troisième aspect, la présente invention propose un programme d’ordinateur comportant des instructions logicielles qui, lorsqu’elles sont exécutées par un ordinateur, mettent en œuvre un procédé tel que défini ci-dessus
[0024] Ces caractéristiques et avantages de l’invention apparaîtront à la lecture de la description qui va suivre, donnée uniquement à titre d’exemple, et faite en référence aux dessins annexés, sur lesquels :
[0025] [fig-1] la figure 1 représente deux images successives II, 12 capturées par une caméra dans un mode de réalisation de l’invention ;
[0026] [fig.2] la figure 2 est une vue d’un système de traitement d’images dans un mode de réalisation de l’invention ;
[0027] [fig.3] la figure 3 est une vue de pyramides d’images dans un mode de réalisation en multi-résolution de l’invention ;
[0028] [fig.4] la figure 4 illustre les angles d’Euler utilisés dans un mode de réalisation de l’invention ;
[0029] [fig.5] la figure 5,
[0030] [fig.6] la figure 6 et
[0031] [fig.7] la figure 7 illustrent les transformations par rapport au plan image dans un mode de réalisation de l’invention ;
[0032] [fig.8] la figure 8 est un organigramme d’étapes mises en œuvre dans un mode de réalisation de l’invention.
[0033] La figure 2 est une vue schématique d’un système de traitement d’images 1 dans un mode de réalisation de l’invention. Le système de traitement d’images 1 comprend un dispositif électronique d’estimation de mouvement 10, un bloc de capture d’images 2 et un bloc de détermination de mouvement 3, adapté pour déterminer les mouvements de la caméra.
[0034] Dans le cas considéré, le bloc de capture d’images 2 est une caméra 2 et le bloc de détermination de mouvement 3 est une centrale inertielle 3 solidaire de la caméra 2 (par exemple une mini-centrale inertielle).
[0035] La caméra 2 comporte des moyens de réglage de paramètres de capture d’image, pour régler la valeur des paramètres pour la capture de chaque image (le réglage d’un paramètre donné à une valeur parmi plusieurs valeurs proposées est par exemple effectué automatiquement et/ou en fonction de valeurs saisies par un opérateur depuis une interface homme-machine de la caméra). Parmi ces paramètres figurent par exemple un ou des paramètres d’ouverture angulaire de caméra et/ou un facteur de zoom utilisé pour la capture et la résolution des images.
[0036] La caméra 2 est adaptée pour délivrer à destination du dispositif électronique d’estimation de mouvement 10 chaque image capturée, sous la forme de données d’images (par exemple une valeur d’intensité associée à chaque pixel d’une matrice de pixels), associée à la valeur prise par chaque paramètre de capture d’image lors de la capture de cette image.
[0037] La centrale inertielle 3 comporte :
[0038] - trois gyromètres mesurant les trois composantes du vecteur vitesse angulaire (vitesses de variation des angles de roulis, de tangage et de lacet) ; et
- trois accéléromètres mesurant les trois composantes du vecteur force spécifique (la force spécifique est la somme des forces extérieures autres que gravitationnelles divisée par la masse)
[0039] La centrale inertielle 3 comporte en outre un calculateur (non représenté) adapté pour déterminer par intégration en temps réel, à partir des mesures successives de ces six capteurs, la position de la caméra 2 (par exemple la position d’un point particulier de caméra 2) et son orientation (par exemple les angles d’Euler donnant l'attitude : roulis, tangage et cap) par rapport à un repère de référence. La centrale inertielle 3 est adaptée pour délivrer ces informations de position et orientation à destination du dispositif électronique d’estimation de mouvement 10.
[0040] Pour rappel, l’attitude d’un corps rigide, ici de la caméra 2, est définie par la façon dont ce dernier est orienté. En général, pour exprimer une attitude, on considère deux repères : un repère de référence fixe, noté N, d’axes X , Y , Z, et un repère mobile, attaché au corps, noté B, d’axes XG, YG, ZG.
[0041] Pour exprimer convenablement l’attitude, les axes du repère B sont choisis alignés avec les axes principaux d’inertie du corps rigide définissant sa rotation. Un repère de référence fixe souvent utilisé, est celui qui est tangent à la surface de la terre et défini selon la convention NED (North, East, Down), selon laquelle les vecteurs unitaires (X , Y , Z) pointent respectivement vers les directions Nord, Est et la pesanteur (la gravité). L’orientation, correspondant au passage du repère N au repère B lié au corps, peut être décrite à l’aide d’une succession de trois rotations élémentaires autour des trois axes du repère, respectivement X, Y, Z et définies par les angles d’Euler respectivement ψ, θ, φ.
[0042] Dans le mode de réalisation considéré, la caméra 2, respectivement la centrale inertielle 3, est reliée au dispositif d’estimation de mouvement 10, par une liaison de télécommunication, par exemple une liaison de radiocommunication dans un mode de réalisation.
[0043] Le dispositif d’estimation de mouvement 10 est adapté pour estimer le déplacement de la caméra 3 entre deux images Ib I2 telles que capturées par la caméra 2 et représentées en figure 1, en mettant en œuvre une méthode itérative.
[0044] On notera ici que les imprécisions des informations sur les informations de position et d’orientation fournies par la centrale inertielle 3 ne permettent pas de traiter le problème directement et que l’étape de traitement d’images itérative est nécessaire pour obtenir le niveau de précision souhaitée quant à l’estimation du déplacement, niveau de précision supérieur à celui fourni par les informations de position et d’orientation fournies par la centrale inertielle 3.
[0045] La méthode itérative d’estimation est par exemple (dans les solutions existantes) insérée dans un schéma multi-résolution où les dimensions des images sont réduites par 2x2 (on obtient une pyramide inversée d’images), à L-l reprises, jusqu’à obtenir de petites images où le choix (encore une fois dans les méthodes standards) d’un premier vecteur de déplacement Xo égal au vecteur nul est supposé se trouver proche du vecteur vrai, où L est un nombre entier supérieur ou égal à 1. La figure 3 illustre une pyramide d’images à 4 niveaux.
[0046] Dans le mode de réalisation considéré, le dispositif électronique d’estimation de mouvement 10 comporte une interface de collecte 11 et un bloc électronique de traitement 12.
[0047] L’interface de collecte 11 est adaptée pour collecter les données de chaque image, par exemple Ib I2, ainsi que pour chaque image, les valeurs des paramètres de la caméra 2 délivrées par la caméra 2 ainsi que les informations de position et orientation délivrées par la centrale inertielle 3 correspondant au temps de capture de cette image. Sont ainsi fournis dans le cas considéré notamment les trois angles d’Euler (ψ , θ , φ )de déplacement de la caméra entre les prises des images 1 χ et 12 comme représenté en figure 4.
[0048] Dans un mode de réalisation, le dispositif d’estimation de mouvement 10 est adapté pour mettre en œuvre les étapes décrites en référence à la figure 8.
[0049] Dans un mode de réalisation, le bloc de traitement 12 comporte une mémoire et un microcalculateur (non représentés), la mémoire stockant des instructions logicielles qui, lorsqu’elles sont exécutées sur le microcalculateur, mettent en œuvre les étapes décrites en référence à la figure 8.
[0050] Ainsi, lorsqu’une nouvelle image est collectée, le bloc de traitement 12 récupère les informations de la caméra 2 (ouvertures angulaires, facteur de zoom, ...) et les informations correspondantes de la centrale inertielle 3. Ces informations, comparées avec celles de l’image précédente permettent d’estimer quel est le déplacement de la caméra entre les instants de capture des deux images, de projeter dans le plan image de la caméra 2 (et au niveau le plus bas de la pyramide inversée dans le cas d’un schéma multi-résolution) ce déplacement et d’obtenir ainsi un vecteur de déplacement d’initialisation, Xq. Ces opérations sont décrites plus en détail ci-après.
[0051] En référence à la figure 8, dans une étape 100 de collecte, l’interface de collecte 11 collecte les données de l’image Ib puis I2, ainsi que pour chaque image, les valeurs des paramètres de la caméra 2 et les informations de position et orientation et les fournit au bloc de traitement 12.
[0052] Dans une étape 101 de mise en œuvre du schéma multi-résolution, deux pyramides gaussiennes, chacune de niveau maximum égal à L (L dans le cas considéré égal à 4) vont donc être calculées pour les deux images Ιχ et I2, comme le montre la figure 3. Le choix du niveau L dépend principalement de la résolution des deux images (identiques dans le cas présent).
[0053] Afin de comprendre l’apport de la solution proposée, commençons par rappeler comment fonctionne une méthode d’estimation de mouvement entre deux images (de même résolution).
[0054] Soient donc deux image Ιχ et I?, le but est d’estimer le déplacement entre ces deux images comme le montre la figure 1.
[0055] Pour estimer ce mouvement de déplacement, un modèle de déplacement ou transformation 7 entre ces deux images est utilisé et l’objectif est d’estimer les paramètres de ce modèle de déplacement. Ce modèle de déplacement ou transformation va donner pour chaque pixel i μ J’ j de l’image Ιχ le vecteur de déplacement ou flux de déplacement ( U, V ) à appliquer pour atteindre le pixel correspondant ( Z 2, J υ l’image 12. Le modèle de déplacement utilisé est défini par :
[0056] [Math.3]
Figure FR3090969A1_D0002
(Formule 1)
[0057] Il s’agit d’une transformation affine de vecteur de coefficients
X = ( a !, a 2, a 3, a 4, a 5, a 6 ) τ permettant de prendre en compte des transformations entre images de type translation, zoom, rotation, ...
[0058] Les coordonnées du pixel ( ï 2> J 2 ) dans ’'maSe ^2 correspondant au pixel ( Ù) J £ ) dans l’image Ij sont obtenues par les formules suivantes.
[0059] [Math.4] (b ~ b F JU lù ™ A F '7.4 jO
[0060] L’objectif va être à chaque niveau n considéré successivement en partant du niveau le plus grand (correspondant aux images les plus petites, i.e. à n = L-l) jusqu’au niveau le plus petit (n = 0), d’estimer les paramètres de transformation
X = ( a !, a 2, a 3, a 4, a 5, a G )T entre les deux imaêes considérées dans leur résolution correspondant au niveau n, en minimisant (i.e. en faisant descendre sous un seuil pré-défini d’erreur maximum acceptable) une somme d’erreurs aux carrés de la forme suivante, où p est une certaine fonction pouvant être l’identité ou une fonction rendant l’estimation robuste aux données aberrantes, cette somme représentant une erreur globale entre le déplacement « vrai » et le déplacement estimé entre les deux images :
[0061] [Math.5] / ; ‘F ’F'WvJi).)) * (1)
[0062] La résolution de ce problème de minimisation est faite en utilisant une méthode récursive, par exemple de type Gauss-Newton, à partir, selon l’invention, d’une valeur initiale du vecteur de coefficients. Cette valeur initiale du vecteur de coefficients, ou valeur d’initialisation, est notée χ°Ρ1 pour le niveau n le plus grand (n= L-l) et notée Xo_npour chacun des autres niveaux n.
[0063] Un ensemble itératif 102 d’étapes est mis en œuvre, pour chaque niveau n de pyramide, en commençant au niveau le plus haut de la pyramide inversée (là où les images sont les plus petites : i.e. on considère la plus petite image de la pyramide de Ιχ et la plus petite image de la pyramide de I2), dans le cas présent correspondant au niveau n=3 : pour chaque niveau n, les calculs récursifs, par exemple selon la méthode de Gauss Newton, vont ainsi être lancés, avec une estimée initiale respective pour le niveau n pour estimer le déplacement entre l’image de niveau n de la pyramide de Ιχ et l’image de niveau n de de la pyramide de 12.
[0064] Dans la mise en œuvre de l’ensemble 102 d’étape pour n= L-l, i.e. pour estimer le déplacement entre la plus petite image de la pyramide de /χ et la plus petite image de la pyramide de 12 les paramètres de la caméra 2 et les informations de la centrale inertielle 3 associée à celle-ci sont utilisés pour calculer la valeur d’initialisation du vecteur de coefficients V°P t.
A0
[0065] Il est également considéré dans le mode de réalisation particulier que le repère de la centrale inertielle 3 est calé avec l’axe de visée de la caméra 2 de telle sorte que la rotation Φ corresponde à la rotation du plan image autour de son centre.
[0066] Considérons que les valeurs de paramètres fournies par la caméra 2 indiquent entre les deux images Ιχ et I2 un facteur de zoom noté 5 . Notons Œ ψ l’ouverture angulaire en azimut de la caméra et & θ l’ouverture en site, qui indiquent les variations d’ouverture entre les deux images. Ces informations d’ouvertures angulaires sont fournies par la caméra 2 à l’étape 100. Les images produites ont FL pixels en largeur et H pixels en hauteur.
[0067] Les translations 11et f ; engendrées dans le plan image PI par les rotations Ψ et Θ de la caméra 2 sont représentées en figures 5 à 7.
[0068] En référence à la figure 5, on a
[0069] [Math.6] ™ fentes} x
[0070] où f est la focale de la caméra 2. Or,
[0071] [Math.7]
Figure FR3090969A1_D0003
[0072] où l est la distance horizontale entre le centre de l'image et le bord de droite (voir figure 5)
[0073] d’où
[0074] [Math. 8]
[0075] en passant dans le plan image avec des longueurs en pixels, il est finalement obtenu : [0076] [Math.9]
Figure FR3090969A1_D0004
[0077] t j, en référence aux figures 6 et 7, peut être calculé ainsi (voir également figure 5) : [0078] [Math. 10] h sæ x f# tsnCf) if2 4- tf.
[0079] Or
[0080] [Math. 11]
[0081] ainsi, [0082] [Math. 12]
î.........a t y « t» I ——.
i·· * . -·Μ···&&ί
V \ .<V .<·
[0083] En passant dans le plan image avec des longueurs en pixels, il en résulte que :
[0084] [Math. 13]
Figure FR3090969A1_D0005
[0085] Il sera détaillé par la suite comment cette translation générée par les angles Ψ et Θ est prise en compte dans le calcul de opt
[0086] Regardons maintenant quelle est la transformation générée dans le plan image par le dernier angle d’Euler Φ et le changement de zoom de la caméra 2.
[0087] La ligne de visée de la caméra 2 et la centrale inertielle 3 sont supposées calées de telle sorte que représente la rotation de la caméra 2 autour de sa ligne de visée. Dans ces conditions, la rotation dans le plan image engendrée par Ψ est représentée par la matrice suivante :
[0088] [Math. 14]
[0089] Le changement d’échelle créé par le zoom de la caméra 2 est quant à lui représenté par la matrice suivante :
[0090]
[Math. 15]
Figure FR3090969A1_D0006
[0091] La transformation générée par Ψ et le changement de zoom s est représentée par la composition des deux précédentes matrices.
[0092] [Math. 16] p x x x: s x Z
[0093] Il s’agit ici de la transformation géométrique et non d’un flux de déplacement. Pour obtenir le flux de déplacement affine à partir de cette transformation, il faut soustraire la position i, j, qui est la position de chaque pixel considéré, de l’image L avec i entier compris entre 0 et W-l et j compris entre 0 et H-1. Le flux engendré par la transformation précédente qui est une composition d’une rotation et d’un zoom vaut alors :
[0094] [Math. 17]
Figure FR3090969A1_D0007
[0095] On ajoute ( W - 1 ) / 2 et ( H - 1 ) / 2 et on soustrait ( TV - 1 ) / 2 à I et (ff-1) / 2 à j dans les deux premiers termes car la rotation et le zoom sont exprimés par rapport au centre de l’image qui se trouve au point de coordonnées ( (IV - 1) / 2, (H - 1) / 2 ) . En développant l’expression précédente, il vient :
[0096] [Math. 18]
Figure FR3090969A1_D0008
[0097] En réorganisant les termes, il vient alors : [0098] [Math. 19]
Figure FR3090969A1_D0009
[0099] En ajoutant à ce flux de déplacement la translation engendrée par les deux angles de rotation Ψ et Θ , le flux de déplacement total suivant est obtenu.
[0100]
[Math.20]
Figure FR3090969A1_D0010
[0101] Par identification et sans oublier la transformation P à appliquer à chaque changement de niveau dans la pyramide, on a alors :
[0102] [Math.21]
Figure FR3090969A1_D0011
Figure FR3090969A1_D0012
(Formule 2)
[0103] Ces principes étant exposés, les étapes 102_l et 102_2 de l’ensemble d’étapes 102 sont maintenant décrites.
[0104] Pour le niveau L-l, dans une sous-étape 102_l de détermination de vecteur initial, le vecteur initial v°Pf est pris égal à
Ai) V°P1 _ / .opt opt _opt -.opt opt -.opt \ 1 avec les valeurs
Λ o — [ « 1 , Cl 2 , u 3 ,11^ , a 5 , îaq J de ces coefficients définies ci-dessus, en formule 2.
[0105] Dans une sous-étape 102_2, pour le niveau L-l, les calculs récursifs, par exemple selon Gauss Newton sont mis en œuvre, à partir du vecteur initial déterminé en A0 étape 102_l.
[0106] Lorsque les calculs récursifs de Gauss-Newton sont terminés, l’algorithme dispose, à ce niveau n=L-l de la pyramide, d’une estimation λ f du vecteur de déplacement entre les deux images courantes des deux pyramides.
[0107] Ensuite, pour descendre dans les pyramides et ainsi affiner et converger vers une es13 λ f afin de la faire passer « au niveau inférieur » dans les pyramides.
[0108] La transformation P à appliquer à λ 2 / Λ L Λ L Λ L Λ L AL Λ L \ 7 eS{ ia suivante :
X = \fll> a2> 3 > a4’ 03 5 « a6 /
[0109] [Math.22]
Figure FR3090969A1_D0013
[0110] Une fois cette transformation P faite, il faut recommencer au niveau inférieur, i.e. au niveau L-2 (avec donc des images plus résolues), l’ensemble d’étapes 102, c’est-à-dire les calculs récursifs de type Gauss Newton (étape 102_2 pour le niveau L-2), mais en prenant cette fois dans l’étape 102_l pour le niveau L-2, pour estimée initiale X0_L-2=P(
Figure FR3090969A1_D0014
[0111] Ce processus (102_l puis 102_2) est répété jusqu’au niveau le plus bas de la pyramide correspondant à n=0 (qui correspond aux images 11 et I2 originales), en prenant pour chaque niveau comme estimée initiale du vecteur de coefficients la transformée par P de l’estimation du vecteur de coefficients résultant du niveau précédent.
[0112] L’estimation finale du mouvement χ entre les deux images est alors obtenue, en sortant de l’ensemble d’étapes 102 mis en œuvre pour le niveau 0.
[0113] La présente invention permet ainsi d’utiliser les paramètres de la caméra (ouvertures angulaires, facteur de zoom, ...) et les informations d’attitude d’une (par exemple mini-)centrale inertielle couplée à la caméra afin de proposer un premier vecteur de déplacement d’initialisation plus proche de la solution vraie.
[0114] Dans un autre mode de réalisation, le bloc électronique de traitement 12 est réalisé sous forme d’un composant logique programmable, tel qu’un EPGA (de l’anglais Field Programmable Gate Array), ou encore sous forme d’un circuit intégré dédié, tel qu’un ASIC (de l’anglais Applications Specific Integrated Circuit).
[0115] La présente invention s’applique à tout algorithme itératif d’estimation de mouvement entre images partant d’une estimation initiale du mouvement : typiquement celles de type Newton ou Gauss-Newton ou encore de descente de gradient etc.
[0116] Dans d’autres modes de réalisation, le bloc de détermination de mouvement 3, n’est pas solidaire de la caméra 2 et/ou n’est pas une (mini-)centrale inertielle, mais par exemple un déplacement donné par un moteur pas à pas ou tout autre système capable de fournir une estimation physique du déplacement de la caméra.

Claims (5)

  1. Revendications [Revendication 1] Procédé d’estimation de mouvement entre deux images (Ιχ, I2) mis en œuvre par un dispositif de traitement électronique (10), lesdites images étant capturées à l’aide d’un appareil de capture d’images (2), ledit procédé comprenant les étapes consistant à : - recueillir les données définissant chacune des deux images ; - déterminer un vecteur de déplacement d’initialisation caractérisant un déplacement entre lesdites deux images ; - mettre en œuvre, à partir du vecteur de déplacement d’initialisation, un algorithme itératif délivrant à chaque itération un vecteur de déplacement actualisé en fonction d’une fonction d’erreur à minimiser entre l’une des deux images et la transformée de l’autre image par un déplacement défini par le vecteur de déplacement actualisé, - ledit procédé étant caractérisé en ce qu’il comprend les étapes consistant à : * recueillir des informations définissant le mouvement de l’appareil de capture d’images entre les deux images ; * recueillir la valeur de paramètre(s) de capture de l’appareil de capture d’images utilisé(s) pour la capture des deux images parmi une ouverture angulaire, un facteur de zoom et la résolution des images ; * déterminer le vecteur de déplacement d’initialisation par projection, dans le plan image de l’appareil de capture d’image, du déplacement entre les deux images calculé en fonction des informations recueillies définissant le mouvement de l’appareil de capture d’images entre les deux images et en fonction de la valeur de chaque paramètre de capture. [Revendication 2] Procédé d’estimation de mouvement entre deux images (Ιχ, I2) selon la revendication 1, selon lequel les informations définissant le mouvement de l’appareil de capture d’images entre les deux images sont fournies par un dispositif de détermination de mouvement attaché à l’appareil de capture d’images. [Revendication 3] Procédé d’estimation de mouvement entre deux images (Ιχ, I2) selon la revendication 1, selon lequel le vecteur de déplacement d’initialisation est pris égal à vopt _ ( opt opt opt opt opt nopt\f Χ() ~ \ & 1 » 2 > 3 > & 4 > 5 > 6 / où
    Figure FR3090969A1_C0001
    [Revendication 4] [Revendication 5] où L est le nombre de niveaux d’une pyramide de réduction successive de résolution d’image dans le cas d’un procédé d’estimation de mouvement multi-résolution ou est égal à 1 sinon ; (ψ , θ, φ,) sont les angles d’Euler indiqués par les informations recueillies, Φ représentant en outre la rotation de la caméra autour de sa ligne de visée, les images ayant FF pixels en largeur et H pixels en hauteur.
    Programme d’ordinateur comportant des instructions logicielles qui, lorsqu’elles sont exécutées par un ordinateur, mettent en œuvre un procédé selon l’une quelconque des revendications précédentes. Dispositif électronique d’estimation de mouvement entre deux images ( /1,/
  2. 2) comprenant une entrée pour recueillir les données définissant chacune des deux images et étant adapté pour déterminer un vecteur de déplacement d’initialisation caractérisant un déplacement entre lesdites deux images et pour mettre en œuvre, à partir du vecteur de déplacement d’initialisation, un algorithme itératif délivrant à chaque itération un vecteur de déplacement actualisé en fonction d’une fonction d’erreur à minimiser entre l’une des deux images et la transformée de l’autre image par un déplacement défini par le vecteur de déplacement actualisé, - ledit dispositif étant caractérisé en ce qu’il est adapté pour recueillir des informations définissant le mouvement de l’appareil de capture d’images entre les deux images, pour recueillir la valeur de paramètre(s) de capture d’un appareil de capture d’images utilisé(s) pour la capture des deux images parmi une ouverture angulaire, un facteur de zoom et la résolution des images et pour déterminer le vecteur de déplacement d’initialisation par projection, dans le plan image de l’appareil de capture d’image, du déplacement entre les deux images calculé en fonction des informations recueillies définissant le mouvement de l’appareil de capture d’images entre les deux images et en fonction de la [Revendication 6] valeur de chaque paramètre de capture.
    Dispositif électronique d’estimation de mouvement entre deux images ( II, 1-2) selon la revendication 5, adapté pour prendre le vecteur de déplacement d’initialisation égal à
    VOp,r— i
    A Q — [ fl 1 , M 2 , û
  3. 3 , Ll
  4. 4 > d 5 > 6 !
    Figure FR3090969A1_C0002
  5. 5 :-p S, -SXW*
    Vs© ~ s- x ~ 1 où L est le nombre de niveaux d’une pyramide de réduction successive de résolution d’image dans le cas d’un procédé d’estimation de mouvement multi-résolution ou est égal à 1 sinon ; (ψ , θ, φ,) sont les angles d’Euler indiqués par les informations recueillies, Φ représentant en outre la rotation de la caméra autour de sa ligne de visée, les images ayant TF pixels en largeur et H pixels en hauteur.
FR1873758A 2018-12-21 2018-12-21 Dispositif et procédé d’estimation de mouvement d’un capteur d’images entre deux images, programme d’ordinateur associé Active FR3090969B1 (fr)

Priority Applications (6)

Application Number Priority Date Filing Date Title
FR1873758A FR3090969B1 (fr) 2018-12-21 2018-12-21 Dispositif et procédé d’estimation de mouvement d’un capteur d’images entre deux images, programme d’ordinateur associé
PCT/EP2019/086366 WO2020127774A1 (fr) 2018-12-21 2019-12-19 Dispositif et procédé d'estimation de mouvement d'un capteur d'images entre deux images, programme d'ordinateur associé
SG11202106379SA SG11202106379SA (en) 2018-12-21 2019-12-19 Device and method for estimating the movement of an image sensor between two images, and associated computer program
EP19821130.2A EP3899867A1 (fr) 2018-12-21 2019-12-19 Dispositif et procédé d'estimation de mouvement d'un capteur d'images entre deux images, programme d'ordinateur associé
US17/312,892 US12020441B2 (en) 2018-12-21 2019-12-19 Device and method for estimating the movement of an image sensor between two images, and associated computer program
IL283974A IL283974A (en) 2018-12-21 2021-06-14 Apparatus and method for estimating motion of an image sensor between two images and associated computer program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR1873758A FR3090969B1 (fr) 2018-12-21 2018-12-21 Dispositif et procédé d’estimation de mouvement d’un capteur d’images entre deux images, programme d’ordinateur associé

Publications (2)

Publication Number Publication Date
FR3090969A1 true FR3090969A1 (fr) 2020-06-26
FR3090969B1 FR3090969B1 (fr) 2022-06-03

Family

ID=67514686

Family Applications (1)

Application Number Title Priority Date Filing Date
FR1873758A Active FR3090969B1 (fr) 2018-12-21 2018-12-21 Dispositif et procédé d’estimation de mouvement d’un capteur d’images entre deux images, programme d’ordinateur associé

Country Status (6)

Country Link
US (1) US12020441B2 (fr)
EP (1) EP3899867A1 (fr)
FR (1) FR3090969B1 (fr)
IL (1) IL283974A (fr)
SG (1) SG11202106379SA (fr)
WO (1) WO2020127774A1 (fr)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2940492A1 (fr) * 2008-12-19 2010-06-25 Thomson Licensing Procede d'estimation de mouvement multi-resolutions

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7292711B2 (en) * 2002-06-06 2007-11-06 Wintriss Engineering Corporation Flight parameter measurement system
JP4623111B2 (ja) * 2008-03-13 2011-02-02 ソニー株式会社 画像処理装置、画像処理方法及びプログラム

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2940492A1 (fr) * 2008-12-19 2010-06-25 Thomson Licensing Procede d'estimation de mouvement multi-resolutions

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
KEHUA JIANG ET AL: "Motion-Compensated Frame Prediction with Global Motion Estimation for Image Sequence Compression", ELECTRICAL AND COMPUTER ENGINEERING, 2007. CCECE 2007. CANADIAN CONFER ENCE ON, IEEE, PI, 1 April 2007 (2007-04-01), pages 1468 - 1471, XP031176809, ISBN: 978-1-4244-1020-0 *
MERZBAN MOHAMED H ET AL: "Toward multi-stage decoupled visual SLAM system", 2013 IEEE INTERNATIONAL SYMPOSIUM ON ROBOTIC AND SENSORS ENVIRONMENTS (ROSE), IEEE, 21 October 2013 (2013-10-21), pages 172 - 177, XP032546280, DOI: 10.1109/ROSE.2013.6698438 *
YUWEN HE ET AL: "Fast global motion estimation for global motion compensation coding", CONFERENCE PROCEEDINGS / ISCAS 2001, THE 2001 IEEE INTERNATIONAL SYMPOSIUM ON CIRCUITS AND SYSTEMS : 06 - 09 MAY 2001, SYDNEY CONVENTION AND EXHIBITION CENTRE, DARLING HARBOUR, SYDNEY, AUSTRALIA, IEEE SERVICE CENTER, PISCATAWAY, NJ, vol. 2, 6 May 2001 (2001-05-06), pages 233 - 236, XP010540621, ISBN: 978-0-7803-6685-5, DOI: 10.1109/ISCAS.2001.921050 *

Also Published As

Publication number Publication date
SG11202106379SA (en) 2021-07-29
IL283974A (en) 2021-07-29
US20220067947A1 (en) 2022-03-03
US12020441B2 (en) 2024-06-25
WO2020127774A1 (fr) 2020-06-25
FR3090969B1 (fr) 2022-06-03
EP3899867A1 (fr) 2021-10-27

Similar Documents

Publication Publication Date Title
EP2400460B1 (fr) Procédé d&#39;évaluation de la vitesse horizontale d&#39;un drone, notamment d&#39;un drone apte au vol stationnaire autopiloté
EP3658921B1 (fr) Procédé de calibration d&#39;un magnetometre
EP2572319B1 (fr) Procede et systeme pour fusionner des donnees issues de capteurs d&#39;images et de capteurs de mouvement ou de position
EP3213033B1 (fr) Procédé d&#39;estimation d&#39;un état de navigation contraint en observabilité
US8264553B2 (en) Hardware assisted image deblurring
CN110660098B (zh) 基于单目视觉的定位方法和装置
CN105069753B (zh) 一种面向移动终端的抖动模糊图像复原方法
FR2882160A1 (fr) Procede de capture d&#39;images comprenant une mesure de mouvements locaux
FR2899344A1 (fr) Procede de restitution de mouvements de la ligne de visee d&#39;un instrument optique
EP1298592B1 (fr) Stabilisation des images d&#39;une scène, correction des offsets de niveaux de gris, détection d&#39;objets mobiles et harmonisation de deux appareils de prise de vues fondés sur la stabilisation des images
WO2014076294A1 (fr) Procédé de détermination, dans un référentiel fixe 3d, de la localisation d&#39;un engin en mouvement, dispositif et programme d&#39;ordinateur associés
EP2724203A1 (fr) Génération de données de carte
CN110708465B (zh) 视频抖动校正方法、装置、可读存储介质及电子设备
CN109029425A (zh) 一种采用区域滤波的模糊星图复原方法
Zhang et al. Combining inertial measurements with blind image deblurring using distance transform
CN116597168B (zh) 车载激光点云与全景影像的匹配方法、装置、设备及介质
FR2952743A3 (fr) Procede d&#39;estimation du mouvement d&#39;un instrument d&#39;observation a defilement survolant un corps celeste
FR3027144A1 (fr) Procede et dispositif de determination de mouvement entre des images video successives
EP4221181A1 (fr) Procédé pour générer la direction de rotation d&#39;un gyroscope, et dispositif informatique
EP3070643B1 (fr) Procédé et système de reconnaissance d&#39;objets par analyse de signaux d&#39;image numérique d&#39;une scène
FR3090969A1 (fr) Dispositif et procédé d’estimation de mouvement d’un capteur d’images entre deux images, programme d’ordinateur associé
Critchley-Marrows et al. Investigation into star tracker algorithms using smartphones with application to high-precision pointing CubeSats
Rajakaruna et al. Image deblurring for navigation systems of vision impaired people using sensor fusion data
Presnov et al. Robust range camera pose estimation for mobile online scene reconstruction
Huai Collaborative slam with crowdsourced data

Legal Events

Date Code Title Description
PLFP Fee payment

Year of fee payment: 2

PLSC Publication of the preliminary search report

Effective date: 20200626

PLFP Fee payment

Year of fee payment: 3

PLFP Fee payment

Year of fee payment: 4

PLFP Fee payment

Year of fee payment: 5

PLFP Fee payment

Year of fee payment: 6