FR 3027144 A1 20160415 FR 1459675 A 20141009 1 Procédé et dispositif de détermination de mouvement entre des images vidéo successives Des modes de mise en oeuvre et de réalisation de l'invention concernent la détermination de mouvement entre des images vidéo successives capturées par un capteur d'images, par exemple une caméra vidéo, telle que par exemple celle incorporée dans une tablette numérique ou un téléphone mobile cellulaire. Les séquences d'images vidéo peuvent présenter de nombreux problèmes de qualité, en particulier lorsqu'elles sont traitées par des processeurs embarqués, tels que ceux présents au sein des tablettes numériques ou des téléphones mobiles cellulaires. Parmi ces problèmes de qualité, on peut citer la présence de contenus flous, de contenus instables, ou encore des déformations dues à l'effet dit du « rolling shutter » qui induit une déformation des images acquises lors d'un mouvement de la caméra dû au fait que l'acquisition d'une image par l'intermédiaire d'un capteur CMOS s'effectue séquentiellement ligne par ligne et non en une seule fois. Tous ces problèmes sont dus au mouvement entre images successives. Il est donc nécessaire d'en effectuer une estimation. Il est connu d'estimer le mouvement global entre deux images vidéo successives par un modèle homographique, typiquement une matrice d'homographie 3x3 modélisant un mouvement global plan. Typiquement, les matrices homographiques sont estimées entre des images successives en utilisant des correspondances de caractéristiques entre ces images. Des algorithmes permettant d'estimer de telles matrices entre des images successives sont bien connus de l'homme du métier et celui-ci pourra à toutes fins utiles se référer à l'essai de Elan Dubrofsky intitulé « Homography Estimation », B. Sc., Carleton University, 2007, THE UNIVERSITY OF BRITISH COLUMBIA (Vancouver), mars 2009. L'algorithme RANSAC, abréviation de « Random Sample Consensus », bien connu de l'homme du métier et décrit notamment 3027144 2 dans l'article de Fischler et autres intitulé « Random Sample Consensus : A Paradigm for Model Fitting with Applications to Image Analysis and Automated Cartography », communications of the ACM, juin 1981, Volume 24, n°6, est un algorithme robuste d'estimation de 5 paramètres utilisé notamment dans les applications de traitement d'images, pour estimer le mouvement global entre deux images en testant un certain nombre de modèles homographiques. Plus précisément, dans une première étape, on sélectionne aléatoirement parmi tous les points (pixels) disponibles d'une image 10 courante, un ensemble, généralement minimal, de points de l'image courante, par exemple un triplet de points. On extrait le triplet de points présumé correspondant dans l'image suivante et on estime à partir de ces deux triplets une matrice homographique représentant une hypothèse de modèle de mouvement. 15 Cette hypothèse de modèle ainsi obtenue est ensuite testée sur le jeu complet de points de l'image. Plus précisément, pour certains au moins des points de l'image, on calcule un point estimé en utilisant l'hypothèse de modèle testée et on détermine l'erreur de rétroprojection entre ce point estimé et le 20 point présumé correspondant dans l'image suivante. Les points ne suivant pas le modèle, c'est-à-dire dont l'erreur de rétroprojection est supérieure à un seuil T sont appelés des « outliers ». A l'inverse, les points proches de l'hypothèse de modèle sont appelés des « inliers » et font partie de l'« ensemble de 25 consensus ». Leur nombre est représentatif de la qualité de l'hypothèse de modèle estimée. Les deux étapes précédentes (choix d'une hypothèse de modèle et test sur l'ensemble des points) sont réitérées tant que le nombre d'itérations n'a pas atteint un seuil définie par une formule prenant en 30 compte le pourcentage « d'inliers » souhaité et une valeur de confiance désirée. Lorsque cette condition est vérifiée, l'hypothèse de modèle ayant conduit à cette condition est alors considérée comme étant le modèle du mouvement global entre les deux images. 3027144 3 Cela étant, le temps de calcul de l'algorithme de type RANSAC est très variable et dépend notamment du nombre de points testés et de la qualité des points. En effet, dans une image dite « facile », présentant notamment de nombreux points d'intérêt caractéristiques de 5 l'image, on trouvera facilement les points présumés correspondants dans l'image suivante mais cela ne sera pas le cas dans une image dite « difficile ». Cette variabilité du temps de calcul n'est généralement pas compatible avec l'utilisation d'un tel algorithme dans des processeurs 10 embarqués par exemple au sein de téléphones mobiles cellulaires ou de tablettes numériques. Aussi, dans de telles applications embarquées, on utilise préférentiellement un algorithme de type RANSAC préemptif (Preemptive RANSAC) bien connu de l'homme du métier et décrit par 15 exemple dans l'article de David Nistér, intitulé « Preemptive RANSAC for Live Structure and Motion Estimation », Proceedings of the Ninth IEEE International Conference on Computer Vision (ICCV 2003) 2 Volume Set. Dans l'algorithme RANSAC préemptif, on définit au préalable 20 à partir d'un ensemble de points de l'image courante (dit « ensemble de points générateur d'hypothèses ») et de leur correspondances dans l'image précédente, un jeu de K modèles homographiques, qui constitue K hypothèses de modèles à tester. Typiquement, K peut être compris entre 300 et 500. 25 Puis, on teste tous ces modèles, d'une façon analogue à ce qui a été effectué dans l'algorithme RANSAC classique, sur un premier bloc de points de l'image, par exemple 20 points. A l'issue de ce test, on ne garde qu'une partie des hypothèses de modèles testées, typiquement celles qui ont réalisé les scores les 30 plus élevés. On peut par exemple effectuer une dichotomie, c'est-à-dire ne garder que la moitié des hypothèses de modèles testées. Puis, on teste les hypothèses de modèles restantes en utilisant un autre bloc de points et, là encore, on ne garde par exemple que la 3027144 4 moitié des hypothèses de modèles testées ayant obtenu les scores les plus élevés. On réitère ces opérations jusqu'à épuisement de tous les points ou obtention au final d'une seule hypothèse de modèle. 5 Dans ce dernier cas, cette unique hypothèse de modèle restante forme le modèle global du mouvement entre les deux images. Dans le cas où il reste plusieurs hypothèses de modèles mais plus de points à tester, l'hypothèse retenue est celle présentant le meilleur score. Cela étant, même si l'algorithme RANSAC préemptif présente 10 des avantages certains notamment en termes de temps de calcul, ce qui le rend particulièrement bien adapté pour des applications embarquées, et en outre pour des traitements effectués en parallèle, l'estimation de mouvement est moins flexible et parfois pas vraiment adaptée pour des cas extrêmes. Ainsi, par exemple, si une personne ou un objet bouge 15 dans le champ d'une image, il peut arriver que l'estimateur de mouvement se concentre sur la personne, produisant un résultat qui ne correspond pas au déplacement de la caméra, ce qui pourrait par exemple fournir une stabilisation de vidéo erronée. Selon un mode de mise en oeuvre et de réalisation, il est 20 proposé une amélioration de l'estimation de mouvement entre des images vidéo successives permettant une amélioration de la qualité de la séquence d'images, en particulier dans certaines situations particulières. Selon un aspect, il est proposé un procédé de détermination de 25 mouvement entre des images vidéo successives capturées par un capteur d'images, le procédé comprenant pour chaque paire courante de première et de deuxième images vidéo successives (les première et deuxième images vidéo successives d'une paire peuvent être typiquement l' image précédente et l'image courante), une 30 détermination de mouvement entre ces deux images, cette détermination de mouvement comportant une phase de test de plusieurs hypothèses de modèles homographiques dudit mouvement par un algorithme de type RANSAC opérant sur un ensemble de premiers points (de test) de la première image et de premiers points (de test) 3027144 5 présumés correspondants de la deuxième image de façon à délivrer la meilleure hypothèse de modèles homographiques, cette meilleure hypothèse de modèles homographiques définissant ledit mouvement. Selon une caractéristique générale de cet aspect, la phase de 5 test comprend un test de plusieurs premières hypothèses de modèles homographiques dudit mouvement obtenues à partir d'un ensemble de deuxièmes points de la première image et deuxièmes points présumés correspondants de la deuxième image (points générateurs d'hypothèses), et d'au moins une deuxième hypothèse de modèle 10 homographique obtenue à partir d'informations auxiliaires fournies par au moins un capteur inertiel et représentatives d'un mouvement dudit capteur d'images entre les captures des deux images successives de ladite paire. Ainsi, selon cet aspect, on utilise des informations provenant 15 d'au moins un capteur inertiel, par exemple au moins un gyroscope, en combinaison avec les informations visuelles pour améliorer l'estimation du mouvement entre deux images successives. Et, pour cela, on rajoute dans les hypothèses de modèles testées par l'algorithme de type RANSAC, une hypothèse de modèle 20 homographique que l'on peut qualifier « d'inertiel » et qui est directement déterminée à partir des informations fournies par le ou les capteurs inertiels et qui sont représentatives d'un mouvement dudit capteur d'images entre les captures des deux images successives. Ainsi, par exemple, le ou les capteurs inertiels peuvent être 25 incorporés dans le téléphone mobile cellulaire ou dans la tablette qui incorporent également le capteur d'images. Par ailleurs, le test de chaque hypothèse de modèle homographique va prendre avantageusement en compte une distance entre ladite hypothèse de modèle homographique testée et ladite au 30 moins une deuxième hypothèse de modèle homographique (c'est-à-dire l'hypothèse de modèle homographique « inertiel »). En fait, chaque hypothèse de modèle, que ce soit une première hypothèse de modèle (c'est-à-dire une hypothèse de modèle « visuel ») 3027144 6 ou la deuxième hypothèse de modèle (« inertiel ») est avantageusement traitée de la même façon par l'algorithme de type RANSAC. En d'autres termes, comme on le verra plus en détail ci-après, on va affecter un score à chaque hypothèse de modèle et ce score va 5 être avantageusement corrigé en prenant en compte ladite distance. Bien entendu, lorsqu'il s'agit de tester la deuxième hypothèse de modèle (l'hypothèse de modèle inertiel), ladite distance est nulle, et par conséquent le score obtenu par ce modèle inertiel sur la base de la correspondance de points entre la première image et la deuxième 10 image est corrigé avec une correction nulle ce qui revient à ne pas le corriger. Bien que l'on puisse utiliser un algorithme de type RANSAC classique, il est particulièrement avantageux d'utiliser un algorithme de type RANSAC préemptif, notamment pour des applications 15 embarquées ayant des contraintes en termes de temps de calcul. L'ensemble de premiers points (de test) sur lequel on va appliquer la phase de test de l'algorithme de type RANSAC et l'ensemble de deuxièmes points (générateurs d'hypothèses) à partir desquels on détermine les premières hypothèses de modèles 20 homographiques, peuvent ou non se recouper. Les points de ces deux ensembles peuvent être avantageusement des points d'intérêt de cette image c'est-à-dire des points caractéristiques facilement reconnaissables d'une image à une autre. 25 En pratique, selon un mode de mise en oeuvre dans lequel on applique l'algorithme de type RANSAC préemptif, de l'ensemble de deuxièmes points on tire au hasard des triplets pour générer un certain nombre de candidats (hypothèses) d'homographies, et on organise l'ensemble des premiers points (de test) groupés par « blocs » qui 30 seront testés progressivement par l'algorithme de type RANSAC préemptif. Comme indiqué ci-avant l'ensemble de deuxièmes points (générateurs d'hypothèses) peut ou non se recouper avec l'ensemble des points de test, ces ensembles de points étant avantageusement obtenus par des tirages au hasard. 3027144 7 Même s'il peut être suffisant d'utiliser uniquement un gyroscope pour fournir des informations auxiliaires de type inertielles, il peut être préférable d'utiliser outre un gyroscope au moins un autre capteur inertiel pris dans le groupe formé par un ou plusieurs 5 accéléromètres et un magnétomètre. L'accéléromètre peut être un accéléromètre à trois axes ou bien trois accéléromètres placés selon des axes perpendiculaires. L'accéléromètre peut ainsi donner une indication sur la gravité tandis que le magnétomètre permet d'obtenir une indication d'orientation puisqu'il fournit une direction estimée du 10 nord. Selon un mode de mise en oeuvre, le test de chaque hypothèse de modèle homographique, que ce soit une première hypothèse de modèle homographique (hypothèse « visuelle ») ou bien une deuxième hypothèse de modèle homographique (hypothèse « inertielle ») 15 comprend pour chaque premier point d'au moins un bloc dudit ensemble de premiers points de la première image - une détermination d'un premier point estimé dans ladite deuxième image à partir de l'hypothèse de modèle homographique testée, 20 - une détermination d'un écart de position entre le premier point estimé et ledit premier point présumé correspondant dans ladite deuxième image, - une détermination d'une première information de score à partir des écarts de position obtenus et d'une tolérance d'erreur, et 25 - une correction de ladite première information de score avec un élément correctif comportant un premier coefficient prenant en compte la distance entre l'hypothèse de modèle testée et la deuxième hypothèse de modèle, de façon à obtenir une deuxième information de score, cette deuxième information de score étant utilisée pour la 30 détermination de ladite meilleure hypothèse de modèle homographique. La détermination dudit élément correctif peut comprendre également une pondération dudit premier coefficient par un coefficient de pondération représentatif d'un poids de la première information de 3027144 8 score associée à ladite au moins une deuxième hypothèse de modèle homographique par rapport à la première information de score associée à ladite hypothèse de modèle homographique testée. Ce coefficient de pondération peut avoir une valeur fixe et 5 identique pour toutes les hypothèses de modèles homographiques testées de toutes les paires d'images. Si la valeur de ce coefficient de pondération est trop élevée, alors on donnera trop d'importance au modèle inertiel mais pas assez d'importance si le coefficient de pondération est trop bas. 10 Une valeur fixe et constante égale à 1 peut être un bon compromis. Cela étant, en variante, le coefficient de pondération peut avoir une valeur fixe et identique pour toutes les hypothèses de modèles homographiques testées de ladite paire courant d'images, mais cette 15 valeur peut être calculée à chaque nouvelle paire courante d'images. Et, le calcul de cette valeur peut être effectué à partir de toutes les valeurs de distances respectives entre les hypothèses de modèles homographiques testées de la paire courante d'images et la deuxième hypothèse de modèles homographiques. 20 La détermination dudit élément correctif peut également prendre en compte le nombre deuxièmes points. Selon un autre aspect, il est proposé un dispositif de détermination de mouvement entre des images vidéo successives, comprenant des moyens d'entrée configurés pour recevoir des signaux 25 d'images relatifs à des images vidéo successivement capturées par un capteur d'images, des moyens de traitement configurés pour effectuer, pour chaque paire courante de première et de deuxième images vidéo successives, une détermination de mouvement entre ces deux images, les moyens de traitement comportant des moyens de test configurés 30 pour tester plusieurs hypothèses de modèles homographiques dudit mouvement par un algorithme de type RANSAC opérant sur un ensemble de premiers points de la première image et de premiers points présumés correspondants de la deuxième image de façon à délivrer la meilleure hypothèse de modèle homographique, cette 3027144 9 meilleure hypothèse de modèle homographique définissant ledit mouvement. Selon une caractéristique générale de cet autre aspect, le dispositif comprend des moyens d'entrée auxiliaires configurés pour 5 recevoir des informations auxiliaires d'au moins un capteur inertiel et représentatives d'un mouvement dudit capteur d'images entre les captures des deux images successives de ladite paire, les moyens de test étant configurés pour tester plusieurs premières hypothèses de modèles homographiques dudit mouvement obtenues à partir d'un 10 ensemble de deuxièmes points de la première image et de deuxièmes points présumés correspondants de la deuxième image et au moins une deuxième hypothèse de modèle homographique obtenue à partir desdites informations auxiliaires. Selon un mode de réalisation, les moyens d'entrée auxiliaires 15 sont configurés pour recevoir lesdites informations auxiliaires d'au moins un gyroscope. Selon un autre mode de réalisation possible, les moyens d'entrée auxiliaires sont configurés pour recevoir lesdites informations auxiliaires d'un gyroscope et d'au moins un autre capteur pris dans le 20 groupe formé par un ou plusieurs accéléromètres et un magnétomètre. L'algorithme de type RANSAC peut être un algorithme de type RANSAC préemptif. Selon un mode de réalisation, les moyens de test sont en outre configurés pour, lors du test de chaque hypothèse de modèle 25 homographique, prendre en compte une distance entre ladite hypothèse de modèle homographique et ladite au moins une deuxième hypothèse de modèle homographique. Selon un mode de réalisation, les moyens de test comportent un module de test configuré pour tester chaque hypothèse de modèle 30 homographique testée, ledit module de test comprenant des premiers moyens de détermination configurés pour déterminer, pour chaque premier point d'au moins un bloc dudit ensemble de premiers points de la première image, un premier point 3027144 10 estimé dans ladite deuxième image à partir de l'hypothèse de modèle homographique testée, des deuxièmes moyens de détermination configurés pour déterminer un écart de position entre le premier point estimé et ledit 5 premier point présumé correspondant dans la deuxième image, des troisièmes moyens de détermination configurés pour déterminer une première information de score à partir des écarts de positions obtenus et d'une tolérance d'erreur, des moyens de calcul configurés pour calculer un élément 10 correctif comportant un premier coefficient prenant en compte ladite distance, et des moyens de correction configurés pour effectuer une correction de ladite première information de score avec ledit élément correctif de façon à obtenir une deuxième information de score, 15 cette deuxième information de score étant utilisée pour la détermination de ladite meilleure hypothèse de modèle homographique. Selon un mode de réalisation, les moyens de calcul sont en outre configurés pour effectuer une pondération dudit premier 20 coefficient par un coefficient de pondération représentatif d'un poids de la première information de score associée à ladite au moins une deuxième hypothèse de modèle homographique par rapport à la première information de score associée à ladite hypothèse de modèle homographique testée. 25 Selon un mode de réalisation, le coefficient de pondération a une valeur fixe et identique pour toutes les hypothèses de modèles homographiques testées de toutes les paires d'images. Selon un autre mode de réalisation possible, le coefficient de pondération a une valeur fixe et identique pour toutes les hypothèses 30 de modèles homographiques testées de ladite paire courante d'images, les moyens de calcul étant configurés pour calculer cette valeur à partir de toutes les valeurs de distances respectives entre les hypothèses de modèles homographiques testées de ladite paire courante d'images et la deuxième hypothèse de modèle 3027144 11 homographique, et pour recalculer cette valeur à chaque nouvelle paire courante d'images. Les moyens de calcul sont en outre avantageusement configurés pour prendre également en compte le nombre de deuxièmes points. 5 Selon un autre aspect, il est proposé une unité de traitement, par exemple un microprocesseur ou un microcontrôleur, incorporant un dispositif de détermination de mouvement tel que défini ci-avant. Selon un autre aspect, il est proposé un appareil, par exemple un téléphone mobile cellulaire ou une tablette numérique, incorporant 10 un capteur d'images, au moins un capteur inertiel, et une unité de traitement telle que définie ci-avant, couplée audit capteur d'images et audit au moins un capteur inertiel de façon à pouvoir recevoir lesdits signaux d'images et lesdites informations auxiliaires. D' autres avantages et caractéristiques de l' invention 15 apparaîtront à l'examen de la description détaillée de modes de mise en oeuvre et de réalisation, nullement limitatifs, et des dessins annexés sur lesquels : - les figures 1 à 5 illustrent schématiquement des modes de mise en oeuvre et de réalisation de l'invention. 20 Sur la figure 1, la référence APP désigne un appareil tel que par exemple un téléphone mobile cellulaire ou une tablette numérique, sans que ces exemples ne soient limitatifs, comportant un capteur d'images 2, par exemple une caméra embarquée, destinée à filmer une scène SC. 25 L'appareil APP comporte également un dispositif 1 de détermination de mouvement entre des images vidéo successives capturées par le capteur d'images 2. Ce dispositif 1 peut être par exemple incorporé au sein d'un microprocesseur. Le dispositif 1 comporte des moyens d'entrée 10 destinés à 30 recevoir des signaux d'images relatifs aux images vidéo de la scène SC successivement capturées par le capteur d'images 2 et des moyens d'entrée auxiliaires 11 destinés à recevoir des informations auxiliaires provenant par exemple d'un gyroscope 30 et éventuellement d'un ou de plusieurs accéléromètres 31 et/ou d'un magnétomètre 32. 3027144 12 Les capteurs inertiels 30, 31 et 32 sont par exemple solidaires de l'appareil APP au même titre que le capteur d'images. Les capteurs inertiels suivent par conséquent le mouvement éventuel dans l'espace du capteur d'images 2. 5 De ce fait, ces informations auxiliaires sont représentatives d'un mouvement du capteur d'images entre les captures de deux images vidéo successives. Le dispositif 1 comporte des moyens de traitement 10 configurés pour, comme on va le voir plus en détail ci-après, effectuer, 10 pour chaque paire courante de premières et de deuxièmes images vidéo successives, une détermination de mouvement entre ces deux images. A cet égard, les moyens de traitement comportent des moyens de test 100 configurés pour tester plusieurs premières hypothèses de modèles homographiques de ce mouvement, obtenues à partir d'un 15 ensemble de points de la première image et de points présumés correspondants de la deuxième image, et au moins une deuxième hypothèse de modèle homographique obtenue à partir des informations auxiliaires. Le module de test 100 comporte à cet égard différents moyens 20 référencés 1001-1005 dont on reviendra plus en détail ci-après sur la fonction. Matériellement, les moyens de traitement 10 ainsi que les moyens qui le composent peuvent être réalisés de façon logicielle au sein du microprocesseur. 25 Les différentes hypothèses de modèles homographiques du mouvement vont être traitées par un algorithme de type RANSAC. Et, bien que l'on puisse utiliser l'algorithme de type RANSAC classique, on va maintenant décrire un mode de mise en oeuvre de l'invention utilisant l'algorithme de type RANSAC préemptif mieux 30 adapté pour des applications embarquées, comme c'est le cas décrit ici en référence à la figure 1. D'une façon générale, l'algorithme RANSAC préemptif opère sur des blocs successifs d'un ensemble de premiers points de la première image et de premiers points présumés correspondants de la 3027144 13 deuxième image d'une paire et teste notamment des hypothèses de modèles homographiques, dits « visuels », obtenues à partir d'un ensemble de deuxièmes points de la première image et de deuxièmes points présumés correspondants de la deuxième image. 5 Cela étant, en général, ces deuxièmes points sont des points d'intérêt de l'image et l'ensemble de premiers points (de tests) peut se recouper ou non avec l'ensemble de deuxièmes points (générateurs d' hypothèses). On se réfère maintenant plus particulièrement à la figure 2 pour 10 décrire un mode de mise en oeuvre du procédé de détermination de mouvement entre des images vidéo successives. Dans l'étape 20, on capture des images vidéo successives et l'on suppose ici que l'on a capturé une première image vidéo IM1 et une deuxième image vidéo IM2 d'une paire courante d'images PPS. 15 La première image IM1 est typiquement l'image précédente et la deuxième image IM2 l'image courante. On procède ensuite à une extraction dans la première image IM1 de N points ou pixels Pli, j=1 à N, et à une extraction de N points ou pixels présumés correspondants P2i dans la deuxième image IM2. 20 Cette extraction de points d'intérêt dans une image et de points présumés correspondants dans l'image vidéo suivante peut être effectuée avec tous algorithmes connus de l'homme du métier, par exemple l'algorithme connu par l'homme du métier sous l'acronyme 25 « Fast » et décrit par exemple dans l'article de Edward Rosten et Tom Drummond intitulé « Machine learning for high-speed corner detection », ECCV'06 Proceedings of the 9th European conference on Computer Vision, Volume 1, Part 1, pages 430-443, et l'algorithme connu par l'homme du métier sous l'acronyme 30 « Brief » et décrit par exemple dans l'article de Michael Calonder et autres intitulé « Brief : binary robust independent elementary features », ECCV'10 Proceedings of the llth European conference on Computer Vision : Part IV, pages 778-792. 3027144 14 A partir de ces points Pli et P2i, on forme des triplets de points de la première image et des triplets de points présumés correspondants de la deuxième image, et l'on élabore à partir de ces triplets (étape 25) K premières hypothèses de modèles homographiques Hlk, k=1 à K, du 5 mouvement global entre les deux images IM1 et IM2. Ces premières hypothèses de modèles homographiques sont des matrices d'homographie 3x3 obtenues par exemple en utilisant l'algorithme DLT (Direct Linear Transform) décrit par exemple dans l'essai de Elan Dubrofsky précité. 10 Ces premières hypothèses de modèles Hlk peuvent être considérées comme des hypothèses de modèles « visuels » puisqu'elles sont obtenues à partir des pixels des deux images successives IM1 et IM2. A titre indicatif, le nombre K de premières hypothèses de 15 modèles Hlk peut être compris entre 300 et 500. Par ailleurs, les moyens de traitement 10 vont élaborer à partir des informations auxiliaires fournies par le gyroscope 30, et éventuellement le ou les accéléromètres 31 et/ou magnétomètres 32, une deuxième hypothèse de modèle homographique H2 que l'on peut 20 désigner sous le vocable d'hypothèse de modèle « inertiel » étant qu'elle est obtenue directement à partir des informations auxiliaires délivrées par le ou les capteurs inertiels. Les types de téléphones mobiles cellulaires connus sous la dénomination anglosaxonne de « smartphone » peuvent être équipés de 25 gyroscope, accéléromètre et magnétomètre. Il en est de même pour les tablettes numériques actuelles. On suppose ici que seul un gyroscope est présent. Le gyroscope intègre les vitesses de rotation sur les trois axes entre la capture des deux images et fournit les informations auxiliaires 30 ex, ey et Oz qui sont les angles de rotation correspondants autour des axes x, y et z et qui représentent respectivement le lacet (« yaw ») le tangage (« pitch ») et le roulis (« roll »). Pour élaborer la matrice homographique 3x3 inertielle, les moyens de traitement doivent déterminer la translation horizontale 4T,, et verticale 4Ty ainsi que 3027144 15 l'angle de rotation dans le plan résultant du mouvement des capteurs entre les deux images capturées IM1 et IM2. A cet égard, 4Tx est donné par la formule (1) ci-dessous : 5 AT' =0' - p' (1) dans laquelle Px est un facteur d'échelle défini par la formule (2) ci-dessous : 10 px =Lx /2tan-1(4/2fx) (2) De même, 4Ty est défini par la formule (3) ci-dessous : ATy = y - py (3) 15 dans laquelle py est un facteur d'échelle défini par la formule (4) ci-dessous : py = Ly 12 tan -1(Ly /2fy) (4) 20 Dans les formules (2) et (4) Lx et Ly représentent la résolution de l'image, fx et fy la longueur focale et x et y se réfèrent respectivement aux directions horizontale et verticale de l'image. L'utilisation de tels facteurs d'échelle est bien connue de l'homme du métier et celui-ci pourra à toutes fins utiles se référer à 25 l'article de Suya You et autres intitulé « Hybrid inertial and vision tracking for augmented reality registration », Virtual Reality, 1999, Proceedings, IEEE 13-17 mars 1999 pages 260-267. L'angle de roulis Oz fournit directement l'angle de rotation planaire sans nécessiter de facteur d'échelle. 30 La deuxième hypothèse de modèle homographique (« inertiel ») peut alors être représentée par la matrice 3x3 H2 définie par la formule (5) ci-dessous : 3027144 16 "cos O.sin O 4T), H2 = - sin O cosO AT, (5) 0 0 1 Si le téléphone est également équipé d'accéléromètre(s) et/ou d'un magnétomètre, les informations fournies par le gyroscope sont 5 corrigées, par exemple par filtrage, de façon connue pour fournir lesdites informations auxiliaires. A partir de là, des moyens de calcul 1004 (figure 1) appartenant au module de test 100 calculent (étape 24, figure 2) un élément correctif CORRk pour chaque première hypothèse de modèle 10 Hlk prenant en compte une distance entre ladite hypothèse Hlk et la deuxième hypothèse H2. On reviendra plus en détail ci-après sur le calcul de ces coefficients de correction. Le module de test 100 va ensuite procéder aux tests des 15 différentes hypothèses de modèles homographiques, en l'espèce les premières hypothèses Hlk et la deuxième hypothèse H2. Pour cela, étant donné que l'algorithme de type RANSAC préemptif est utilisé, le module de test extrait au hasard de l'ensemble des points Pli un bloc de points de test BL1Ai et extrait de l'ensemble 20 des points P2j le bloc de points présumés correspondants BL2Ai, avec i variant de 1 à I. A titre indicatif, I peut être égal à 20. En d'autres termes, on procède, dans cette première itération, aux tests des différentes hypothèses de modèles homographiques sur 25 un bloc de 20 points pris au hasard dans l'image IM1 et sur le bloc de points présumés correspondants dans l'image IM2. Certains au moins de ces points de tests peuvent ou non être pris parmi les points ayant servi à l'élaboration des différentes hypothèses de modèles. Pour effectuer ce test, des premiers moyens de détermination 30 1001 (figure 1) déterminent, pour chaque point BL1Ai du bloc, un point estimé BL1ASi dans la deuxième image IM2, à l'aide de l'hypothèse de modèle homographique testée. 3027144 17 Puis, des deuxièmes moyens de détermination 1002 (figure 1) déterminent l'écart de position ei,k entre le point estimé BL1AS et le point présumé correspondant dans la deuxième image BL2A,. A titre indicatif, cet écart de position ei,k qui correspond au 5 nombre de pixels entre les deux points peut être normalisé suivant la formule (6) ci-dessous : = BL1AS - (6) 10 dans laquelle la notation 11 11 représente la fonction norme. Par ailleurs, des troisièmes moyens de détermination 1003 (figure 1) sont configurés pour déterminer une première information de score SCV1k pour les premières hypothèses Hlk et une première information de score SCV2 pour la deuxième hypothèse de modèle 15 homographique H2, à partir des écarts de position obtenus et d'une tolérance d'erreur. Plus précisément, au début du test, les informations de score SCV1k et SCV2 sont initialisées à 0. Et, à chaque fois que l'écart de position ei,k (pour i=1 à I) 20 associé à une hypothèse Hlk est supérieur à une erreur prédéfinie ERR, l'information de score correspondante SCV1k reste inchangée tandis qu'elle est mise à jour par la formule (7) : SCVL, = SCVL, +1 (7) 25 si l'écart de position e k est inférieur ou égal à ladite erreur ERR. L'actualisation de l'information de score SCV2 associée à l'hypothèse de modèle H2 est effectuée d'une façon identique. 30 Une fois que les I points BL1Ai ont été traités, on obtient donc pour chaque première hypothèse de modèle homographique Hlk et pour la deuxième hypothèse de modèle homographique H2 les premières informations de score actualisées SCV1k et SCV2 que l'on peut qualifier ici d'informations de score « visuelles » puisqu'elles ont été 3027144 18 obtenues en utilisant les points contenus dans les deux images IM1 et IM2. Puis, les moyens de correction 1005 (figure 1) effectuent une correction de ces informations de score visuelles à l'aide des 5 coefficients de correction CORRk. Plus précisément, on obtient, pour chaque première hypothèse de modèle Hlk une deuxième information de score SCV1Ck obtenue par la formule (8) ci-dessous : 10 SCV1Ck = SCV1k - CORRk (8) Quant à la deuxième information de score SCV2C associée à l'hypothèse de modèle inertiel H2, elle est tout simplement égale à l'information de score visuelle correspondante SCV2 puisque le 15 coefficient de correction qui lui est appliqué est nul. Dans une étape suivante 28, le module de test effectue par exemple une dichotomie sur les hypothèses de modèles Hlk et H2 qui viennent d'êtres testées. Plus précisément, le module de test ne garde que la moitié des 20 hypothèses de modèles testées qui ont eu les deuxièmes informations de score les plus élevées. Puis, le module de test effectue à nouveau un test 29 sur ces hypothèses de modèles restantes en utilisant un nouveau bloc de points BL113, de la première image, tirés au hasard parmi les points non déjà 25 testés, et le bloc présumé correspondant de points BL213, de la deuxième image IM2. On réitère les opérations qui viennent d'être effectuées soit jusqu'à obtention d'une seule hypothèse de modèle restante HF, soit jusqu'à épuisement des points testés. 30 Dans le premier cas, l'hypothèse de modèle restante HF représente alors le modèle de mouvement global entre les deux images IM1 et IM2. Dans le deuxième cas, on retiendra en tant qu'hypothèse HF, celle qui présente la deuxième information de score la plus élevée. 3027144 19 On se réfère maintenant plus particulièrement aux figures 3 à 5 pour décrire plus en détail des exemples de calcul des coefficients de correction CORRk. Plus précisément, si l'on se réfère tout d'abord à la figure 3, on 5 voit que les moyens de calcul 1004 (figure 1) calculent tout d'abord (étape 240) la distance entre la première hypothèse de modèle homographique considérée Hlk et la deuxième hypothèse de modèle homographique H2. On rappelle ici que la première hypothèse de modèle 10 homographique Hlk est une matrice 3x3 telle que définie par l'expression (9) ci-dessous : (a1 a2 a3 Hlk = a4 a5 a6 (9) a7 a8 a9 15 La matrice H2 est celle illustrée par la formule (5) ci-avant. Les deux matrices étant de même structure, les coefficients a3 et a6 de la matrice Hlk représentent respectivement des translations en x et en y tandis que le coefficient a2 représente le sinus de l'angle de rotation dans le plan. 20 En conséquence, une façon particulièrement simple de déterminer la distance dk(Hlk,H2) entre les deux hypothèses de modèles est d'utiliser la formule (10) ci-dessous : dk (Hlk , H2) = ka3 - AT x )2 ± (a6 - ATy (arcsin(a2)- Oz )2 /2 (10) 25 On remarque bien entendu que la distance d(H2,H2) est bien évidemment nulle. Les moyens de calcul déterminent ensuite (étape 241) un premier coefficient (clk) défini par la formule (11) ci-dessous : 30 clk =1- e61k(1111-112) 3027144 20 dans laquelle e désigne la fonction exponentielle. Bien entendu, le premier coefficient associé à la deuxième hypothèse de modèle H2 est nul. Les moyens de calcul déterminent ensuite (étape 242) un 5 coefficient de pondération X représentatif d'un poids de l'information de score associée à ladite deuxième hypothèse de modèle homographique H2 par rapport à l'information de score associée à l'hypothèse de modèle homographique testée Hlk ou H2. On reviendra plus en détail ci-après sur la façon de déterminer 10 ce coefficient de pondération. Les moyens de calcul déterminent ensuite (étape 243) l'élément correctif CORRk par la formule (12) ci-dessous : CORRk = N.2 .C1k (12) 15 dans laquelle N désigne le nombre de points testés c'est-à-dire le nombre de points Pli et le nombre de points P2i (j=1 à N), (figure 2). Plus le coefficient de pondération X est faible, plus le score 20 visuel des premières hypothèses de modèles Hlk aura de poids par rapport au score inertiel de l'hypothèse de modèle inertiel H2. A l'inverse, plus ce coefficient de pondération X est élevé, moins le score visuel des premières hypothèses de modèles Hlk aura de poids par rapport au score inertiel de l'hypothèse de modèle inertiel 25 H2. L'homme du métier pourra déterminer le coefficient de pondération X en fonction de l'application envisagée. Cela étant, une valeur fixe et constante X égale à 1 pour toutes les hypothèses de modèles homographiques est un bon compromis. 30 Il est tout à fait possible de conserver cette valeur fixe et constante X également pour toutes les paires d'images successives. Cela étant, en variante, afin d'améliorer encore la qualité de la séquence vidéo filmée, il est possible, comme illustré schématiquement sur la figure 4, que la détermination 242 du 3027144 21 coefficient de pondération X soit recalculée pour chaque paire PPp d'images successives IM1p, IM2p. Plus précisément, pour chaque paire courante d'images PPp, les moyens de calcul déterminent (étape 2420) la valeur du coefficient de 5 pondération X.p qui restera toutefois le même pour toutes les hypothèses de modèles testées associées à ces deux images de la paire courante PPp. Un exemple de calcul du coefficient de pondération X.p est illustré sur la figure 5. 10 Plus précisément, les moyens de calcul calculent dans une étape S10 toutes les distances dk(Hlk,H2) pour k=1 à K, entre les premières hypothèses de modèles H1 et la deuxième hypothèse de modèle H2. Puis, les moyens de calcul calculent dans l'étape S20 les 15 premiers coefficients correspondants clk (voir étape 241 de la figure 3). Les moyens de calcul extraient alors de tous les premiers coefficients clk le coefficient médian référencé cm (étape S30). Le coefficient de pondération X.p est alors défini par la formule 20 (13) ci-dessous : 2 = 2e' (13) Un tel coefficient X.p variable entre les différentes images 25 permet de ne pas rendre trop prépondérant le mouvement interne d'un objet au sein de l'image par rapport à l'arrière plan. Ainsi, par exemple, lorsqu'un camion traverse le champ de la caméra et occupe quasiment tout ce champ, on minimise la stabilisation de l'image sur le camion et on minimise ainsi le déplacement de l'arrière plan. 30 Dans sa généralité, l'invention permet également, par exemple lorsque l'on filme un point noir au centre d'un mur blanc, d'avoir uniquement une légère oscillation du point noir due à l'imprécision du ou des capteurs inertiels. REVENDICATIONS1. Procédé de détermination de mouvement entre des images vidéo successives capturées par un capteur d'images, comprenant pour chaque paire courante (PPS) de première (IM1) et de deuxième (IM2) images vidéo successives, une détermination de mouvement entre ces deux images comportant une phase de test de plusieurs hypothèses de modèles homographiques dudit mouvement par un algorithme de type RANSAC opérant sur un ensemble de premiers points (Pli) de la première image et de premiers points présumés correspondants (P2i) de la deuxième image de façon à délivrer la meilleure hypothèse de modèle homographique, cette meilleure hypothèse de modèle homographique définissant ledit mouvement, caractérisé en ce que ladite phase de test comprend un test de plusieurs premières hypothèses de modèles homographiques (Hlk) dudit mouvement obtenues à partir d'un ensemble de deuxièmes points (Pli) de la première image et de deuxièmes points présumés correspondants (P2i) de la deuxième image et d'au moins une deuxième hypothèse de modèle homographique (H2) obtenue à partir d'informations auxiliaires (Ox, Oy, Oz) fournies par au moins un capteur inertiel (30) et représentatives d'un mouvement dudit capteur d'images entre les captures des deux images successives (IM1, IM2) de ladite paire. 2. Procédé selon la revendication 1, dans lequel lesdites informations auxiliaires sont fournies par au moins un gyroscope (30). 3. Procédé selon la revendication 2, dans lequel lesdites informations auxiliaires sont fournies par un gyroscope (30) et au moins un autre capteur pris dans le groupe formé par un ou plusieurs accéléromètres (31) et un magnétomètre (32). 4. Procédé selon l'une des revendications précédentes, dans lequel on utilise un algorithme de type RANSAC préemptif. 5. Procédé selon l'une des revendications précédentes, dans lequel le test de chaque hypothèse de modèle homographique prend en 3027144 23 compte une distance dk(Hlk, H2) entre ladite hypothèse de modèle homographique et ladite au moins une deuxième hypothèse de modèle homographique (H2). 6. Procédé selon la revendication 5, dans lequel le test de 5 chaque hypothèse de modèle homographique comprend pour chaque premier point (BL1A,) d'au moins un bloc dudit ensemble de premiers points de la première image, une détermination d'un premier point estimé dans ladite deuxième image à partir de l'hypothèse de modèle 10 homographique testée, une détermination d'un écart de position entre le premier point estimé et ledit premier point présumé correspondant (BL2A,) dans la deuxième image, une détermination d'une première information de score (SCV1k, 15 SCV2) à partir des écarts de positions obtenus et d'une tolérance d'erreur (ERR), et une correction (27) de ladite première information de score avec un élément correctif (CORR) comportant un premier coefficient (clk) prenant en compte ladite distance, de façon à obtenir une deuxième 20 information de score (SCV1Ck, SCV2C), cette deuxième information de score étant utilisée pour la détermination de ladite meilleure hypothèse de modèle homographique. 7. Procédé selon la revendication 6, dans lequel la détermination dudit élément correctif comprend également une 25 pondération dudit premier coefficient (clk) par un coefficient de pondération (X) représentatif d'un poids de la première information de score associée à ladite au moins une deuxième hypothèse de modèle homographique par rapport à la première information de score associée à ladite hypothèse de modèle homographique testée. 30 8. Procédé selon la revendication 7, dans lequel le coefficient de pondération (X) a une valeur fixe et identique pour toutes les hypothèses de modèles homographiques testées de toutes les paires d'images. 3027144 24 9. Procédé selon la revendication 7, dans lequel le coefficient de pondération (X) a une valeur fixe et identique pour toutes les hypothèses de modèles homographiques testées de ladite paire courante d'images, cette valeur étant calculée à partir de toutes 5 les valeurs de distances respectives entre les hypothèses de modèles homographiques testées de ladite paire courante d'images et la deuxième hypothèse de modèle homographique, cette valeur (Xp) étant recalculée à chaque nouvelle paire courante d'images. 10. Procédé selon l'une des revendications 6 à 9, dans lequel 10 la détermination dudit élément correctif prend également en compte le nombre (N) de deuxièmes points. 11. Dispositif de détermination de mouvement entre des images vidéo successives, comprenant des moyens d'entrée (10) configurés pour recevoir des signaux d'images relatifs à des images 15 vidéo successivement capturées par un capteur d'images, des moyens (10) de traitement configurés pour effectuer, pour chaque paire courante de première et de deuxième images vidéo successives, une détermination de mouvement entre ces deux images, les moyens de traitement comportant des moyens de test (100) configurés pour tester 20 plusieurs hypothèses de modèles homographiques dudit mouvement par un algorithme de type RANSAC opérant sur un ensemble de premiers points de la première image et de premiers points présumés correspondants de la deuxième image de façon à délivrer la meilleure hypothèse de modèle homographique, cette meilleure hypothèse de 25 modèle homographique définissant ledit mouvement, caractérisé en ce qu'il comprend des moyens d'entrée auxiliaires (11) configurés pour recevoir des informations auxiliaires d'au moins un capteur inertiel (30) et représentatives d'un mouvement dudit capteur d'images entre les captures des deux images successives de ladite paire, les moyens 30 (100) de test étant configurés pour tester plusieurs premières hypothèses de modèles homographiques dudit mouvement obtenues à partir d'un ensemble de deuxièmes points de la première image et de deuxièmes points présumés correspondants de la deuxième image et au 3027144 25 moins une deuxième hypothèse de modèle homographique obtenue à partir desdites informations auxiliaires. 12. Dispositif selon la revendication 11, dans lequel les moyens d'entrée auxiliaires (11) sont configurés pour recevoir lesdites 5 informations auxiliaires d'au moins un gyroscope (30). 13. Dispositif selon la revendication 12, dans lequel les moyens d'entrée auxiliaires (11) sont configurés pour recevoir lesdites informations auxiliaires d'un gyroscope (30) et d'au moins un autre capteur pris dans le groupe formé par un ou plusieurs accéléromètres 10 (31) et un magnétomètre (32). 14. Dispositif selon l'une des revendications 11 à 13, dans lequel l'algorithme de type RANSAC est un algorithme de type RANSAC préemptif. 15. Dispositif selon l'une des revendications 11 à 14, dans 15 lequel les moyens de test (100) sont en outre configurés pour, lors du test de chaque hypothèse de modèle homographique, prendre en compte une distance dk(Hlk, H2) entre ladite hypothèse de modèle homographique et ladite au moins une deuxième hypothèse de modèle homographique. 20 16. Dispositif selon la revendication 15, dans lequel les moyens de test comportent un module de test (100) configuré pour tester chaque hypothèse de modèle homographique testée, ledit module de test comprenant des premiers moyens de détermination (1001) configurés pour 25 déterminer, pour chaque premier point d'au moins un bloc dudit ensemble de premiers points de la première image, un premier point estimé dans ladite deuxième image à partir de l'hypothèse de modèle homographique testée, des deuxièmes moyens de détermination (1002) configurés pour 30 déterminer un écart de position entre le premier point estimé et ledit premier point présumé correspondant dans la deuxième image, 3027144 26 des troisièmes moyens de détermination (1003) configurés pour déterminer une première information de score à partir des écarts de positions obtenus et d'une tolérance d'erreur, des moyens de calcul (1004) configurés pour calculer un 5 élément correctif comportant un premier coefficient prenant en compte ladite distance, et des moyens de correction (1005) configurés pour effectuer une correction de ladite première information de score avec ledit élément correctif de façon à obtenir une deuxième information 10 de score, cette deuxième information de score étant utilisée pour la détermination de ladite meilleure hypothèse de modèle homographique. 17. Dispositif selon la revendication 16, dans lequel les moyens de calcul (1004) sont en outre configurés pour effectuer une 15 pondération dudit premier coefficient par un coefficient de pondération représentatif d'un poids de la première information de score associée à ladite au moins une deuxième hypothèse de modèle homographique par rapport à la première information de score associée à ladite hypothèse de modèle homographique testée. 20 18. Dispositif selon la revendication 17, dans lequel le coefficient de pondération (X) a une valeur fixe et identique pour toutes les hypothèses de modèles homographiques testées de toutes les paires d'images. 19. Dispositif selon la revendication 17, dans lequel le 25 coefficient de pondération (Xp) a une valeur fixe et identique pour toutes les hypothèses de modèles homographiques testées de ladite paire courante d'images, les moyens de calcul étant configurés pour calculer cette valeur à partir de toutes les valeurs de distances respectives entre les hypothèses de modèles homographiques testées de 30 ladite paire courante d'images et la deuxième hypothèse de modèle homographique, et pour recalculer cette valeur à chaque nouvelle paire courante d'images. 3027144 27 20. Dispositif selon l'une des revendications 16 à 19, dans lequel les moyens de calcul (1004) sont en outre configurés pour prendre également en compte le nombre de deuxièmes points. 21. Unité de traitement, par exemple un microprocesseur, 5 incorporant un dispositif selon l'une des revendications 11 à 20. 22. Appareil, par exemple un téléphone mobile cellulaire ou une tablette numérique, incorporant un capteur d'images (12), au moins un capteur inertiel (30), et une unité de traitement (1) selon la revendication 21, couplée audit capteur d'images et audit au moins un 10 capteur inertiel, de façon à pouvoir recevoir lesdits signaux d'images et lesdites informations auxiliaires.