FR3069689A1 - METHOD FOR ESTIMATING THE MOVEMENT OF A POINT IN AN IMAGE SEQUENCE - Google Patents

METHOD FOR ESTIMATING THE MOVEMENT OF A POINT IN AN IMAGE SEQUENCE Download PDF

Info

Publication number
FR3069689A1
FR3069689A1 FR1757138A FR1757138A FR3069689A1 FR 3069689 A1 FR3069689 A1 FR 3069689A1 FR 1757138 A FR1757138 A FR 1757138A FR 1757138 A FR1757138 A FR 1757138A FR 3069689 A1 FR3069689 A1 FR 3069689A1
Authority
FR
France
Prior art keywords
image
pixel area
area
point
sequence
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
FR1757138A
Other languages
French (fr)
Other versions
FR3069689B1 (en
Inventor
Lucien Garcia
Gatien Ferret
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.)
Continental Autonomous Mobility Germany GmbH
Continental Automotive France SAS
Original Assignee
Continental Automotive GmbH
Continental Automotive France SAS
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 Continental Automotive GmbH, Continental Automotive France SAS filed Critical Continental Automotive GmbH
Priority to FR1757138A priority Critical patent/FR3069689B1/en
Priority to PCT/FR2018/051803 priority patent/WO2019020902A1/en
Publication of FR3069689A1 publication Critical patent/FR3069689A1/en
Application granted granted Critical
Publication of FR3069689B1 publication Critical patent/FR3069689B1/en
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
    • G06T7/269Analysis of motion using gradient-based methods
    • 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/30Subject of image; Context of image processing
    • G06T2207/30248Vehicle exterior or interior
    • G06T2207/30252Vehicle exterior; Vicinity of vehicle

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)

Abstract

La présente invention a pour objet un procédé d'estimation du mouvement d'au moins un point dans une séquence d'images variant dans le temps, ladite séquence comprenant au moins une première image (t), une deuxième image (t+n-1) et une troisième image (t+n). Le procédé comprend une étape de détermination, dans la troisième image (t+n), d'une quatrième zone de pixels correspondant audit point en calculant le flot optique entre la première image (t) et la troisième image (t+n) à partir d'une première zone de pixels déterminée, et une étape de détermination, dans la troisième image (t+n), d'une cinquième zone de pixels, dite « zone affinée », à partir d'une troisième zone de pixels déterminée et de la quatrième zone de pixels déterminée.The present invention relates to a method for estimating the movement of at least one point in a sequence of images varying in time, said sequence comprising at least a first image (t), a second image (t + n- 1) and a third image (t + n). The method comprises a step of determining, in the third image (t + n), a fourth zone of pixels corresponding to said point by calculating the optical flow between the first image (t) and the third image (t + n) at from a determined first pixel area, and a step of determining, in the third image (t + n), a fifth pixel area, referred to as a "refined area", from a determined third pixel area and the determined fourth pixel area.

Description

La présente invention se rapporte au domaine du traitement d’images et concerne plus précisément un procédé d’estimation du mouvement d’un point dans une séquence d’images variant dans le temps.The present invention relates to the field of image processing and more specifically relates to a method of estimating the movement of a point in a sequence of images varying over time.

L’invention vise en particulier à suivre un point de manière fiable et précise dans une pluralité d’images consécutives. L’invention s’applique notamment à un véhicule automobile comprenant une caméra embarquée afin, par exemple, de reconstruire en trois dimensions des éléments de l’environnement du véhicule ou bien de déterminer la trajectoire du véhicule.The invention aims in particular to follow a point in a reliable and precise manner in a plurality of consecutive images. The invention applies in particular to a motor vehicle comprising an on-board camera in order, for example, to reconstruct in three dimensions elements of the environment of the vehicle or else to determine the trajectory of the vehicle.

En traitement d’images, le flot optique est une approximation du mouvement des pixels correspondant à un même objet observé dans une séquence d'images variant dans le temps. Le flot optique permet notamment de suivre un point représenté dans la séquence d’images afin, par exemple, de détecter le mouvement du point dans la séquence d’images, de réaliser une segmentation d’un objet associé au point suivi, de réaliser des calculs de temps de collision entre le véhicule et un objet associé au point suivi (par exemple un autre véhicule), etc.In image processing, the optical flow is an approximation of the movement of the pixels corresponding to the same object observed in a sequence of images varying over time. The optical flow makes it possible in particular to follow a point represented in the sequence of images in order, for example, to detect the movement of the point in the sequence of images, to carry out a segmentation of an object associated with the point followed, to carry out collision time calculations between the vehicle and an object associated with the tracked point (for example another vehicle), etc.

De manière connue, un flot optique correspond au mouvement d’un point entre deux images et s'exprime comme un vecteur de déplacement du point entre lesdites deux images.In known manner, an optical flow corresponds to the movement of a point between two images and is expressed as a vector of displacement of the point between said two images.

Dans un véhicule automobile, il est connu d’utiliser le flot optique pour suivre des points dans des images générées par une caméra vidéo montée dans le véhicule. Un tel suivi permet de reconstruire l’environnement tridimensionnel observé par le véhicule ou bien la trajectoire du véhicule afin notamment d’assister le conducteur dans sa conduite. Par exemple, la reconstruction de la trajectoire et/ou de l’environnement tridimensionnel du véhicule permettent respectivement le suivi des lignes de marquage au sol ou la détection d’un obstacle pouvant déclencher un freinage d’urgence du véhicule.In a motor vehicle, it is known to use the optical flow to follow points in images generated by a video camera mounted in the vehicle. Such monitoring makes it possible to reconstruct the three-dimensional environment observed by the vehicle or else the trajectory of the vehicle in order in particular to assist the driver in his driving. For example, the reconstruction of the trajectory and / or of the three-dimensional environment of the vehicle respectively allow the tracking of the marking lines on the ground or the detection of an obstacle that can trigger an emergency braking of the vehicle.

Plusieurs méthodes peuvent être utilisées pour déterminer le flot optique. Un exemple de méthode connue, intitulée méthode de Lukas-Kanade, est basée sur un algorithme de minimisation au sens des moindres carrés entre deux sections d’images consécutives de la séquence d’images.Several methods can be used to determine the optical flow. An example of a known method, called the Lukas-Kanade method, is based on a least squares minimization algorithm between two consecutive image sections of the image sequence.

De manière connue, on constate que le niveau d’erreur relatif à la valeur du flot associé à une telle estimation est d’autant plus élevé, c’est-à-dire que la qualité du flot optique est d’autant plus faible, que la vitesse du véhicule est faible ou que le point que l’on suit est éloigné, c’est-à-dire peu dynamique dans la séquence d’images. Aussi, dans ce cas, le suivi d’un point entre deux images peut conduire à déterminer une position erronée de l’objet. En effet, le flot optique d’un point étant estimé entre deux images consécutives, il en résulte que les erreurs sur les flots optiques de plusieurs images consécutives, dans lesquelles on suit un même point, se cumulent au fil des images, entraînant une dérive dans le suivi du point. Ainsi, la reconstruction 3D de l’environnement du véhicule ou la détermination de la trajectoire du véhicule peuvent être significativement erronées de sorte que cela présente un danger important lors de l’assistance à la conduite fournie au conducteur.In a known manner, it can be seen that the level of error relating to the value of the flow associated with such an estimate is all the higher, that is to say that the quality of the optical flow is all the lower, the vehicle speed is low or the point you are following is far away, that is to say not very dynamic in the sequence of images. Also, in this case, following a point between two images can lead to determining an erroneous position of the object. Indeed, the optical flow of a point being estimated between two consecutive images, it follows that the errors on the optical flows of several consecutive images, in which one follows the same point, accumulate over the images, causing a drift in tracking the point. Thus, the 3D reconstruction of the environment of the vehicle or the determination of the trajectory of the vehicle can be significantly wrong so that this presents a significant danger when assisting the driver provided to the driver.

La présente invention vise à remédier en partie à ces inconvénients en proposant une solution fiable et efficace pour réduire la dérive générée par l’accumulation d’erreurs sur les flots optiques calculés pour une séquence d’images et augmenter la précision dans le suivi d’un point dans une séquence d’images.The present invention aims to partially remedy these drawbacks by proposing a reliable and effective solution to reduce the drift generated by the accumulation of errors on the optical flows calculated for a sequence of images and to increase the precision in the tracking of a point in a sequence of images.

A cette fin, l’invention a tout d’abord pour objet un procédé d’estimation du mouvement d’au moins un point dans une séquence d’images variant dans le temps, ladite séquence comprenant au moins une première image, une deuxième image et une troisième image, la deuxième image étant postérieure à la première image et la troisième image étant postérieure à la deuxième image, le procédé comprenant :To this end, the invention firstly relates to a method of estimating the movement of at least one point in a sequence of images varying over time, said sequence comprising at least a first image, a second image and a third image, the second image being after the first image and the third image being after the second image, the method comprising:

• une étape de détermination, dans la première image, d’au moins une première zone de pixels correspondant à un point à suivre, • une étape de détermination, dans la deuxième image, d’une deuxième zone de pixels correspondant audit point en calculant le flot optique entre la première image et la deuxième image à partir de la première zone de pixels déterminée, • une étape de détermination, dans la troisième image, d’une troisième zone de pixels correspondant audit point en calculant le flot optique entre la deuxième image et la troisième image à partir de la deuxième zone de pixels déterminée. Le procédé est remarquable en ce qu’il comprend en outre :• a step of determining, in the first image, at least a first area of pixels corresponding to a point to be followed, • a step of determining, in the second image, of a second area of pixels corresponding to said point by calculating the optical flow between the first image and the second image from the first determined pixel area, • a step of determining, in the third image, a third pixel area corresponding to said point by calculating the optical flow between the second image and the third image from the second determined pixel area. The process is remarkable in that it further comprises:

• une étape de détermination, dans la troisième image, d’une quatrième zone de pixels correspondant audit point en calculant le flot optique entre la première image et la troisième image à partir de la première zone de pixels déterminée et • une étape de détermination, dans la troisième image, d’une cinquième zone de pixels, dite « zone affinée », à partir de la troisième zone de pixels déterminée et de la quatrième zone de pixels déterminée.A step of determining, in the third image, a fourth area of pixels corresponding to said point by calculating the optical flow between the first image and the third image from the first determined area of pixels and • a step of determining, in the third image, a fifth area of pixels, called "refined area", from the third determined area of pixels and the fourth determined area of pixels.

Ainsi, en utilisant une pluralité de flots optiques calculés au moins à partir de trois images différentes pour déterminer la position du point dans la troisième image, le procédé selon l’invention permet d’éviter le cumul des erreurs d’estimation de flots optiques successifs qui est obtenu lors du suivi seulement basé sur des estimations de flots optiques entre paires d’images successives.Thus, by using a plurality of optical streams calculated at least from three different images to determine the position of the point in the third image, the method according to the invention makes it possible to avoid the accumulation of estimation errors of successive optical streams which is obtained during monitoring only based on estimates of optical flows between pairs of successive images.

De préférence, la détermination de la cinquième zone de pixels est réalisée en moyennant la troisième zone de pixels déterminée et la quatrième zone de pixels déterminée.Preferably, the determination of the fifth pixel zone is carried out by averaging the third determined pixel zone and the fourth determined pixel zone.

Dans un mode de réalisation, les trois images sont consécutives dans la séquence d’images.In one embodiment, the three images are consecutive in the image sequence.

En variante, des images intermédiaires peuvent exister entre la première et/ou la deuxième image et/ou la troisième image et le procédé peut alors comprendre une étape supplémentaire d’estimation du flot optique entre cette image supplémentaire et au moins deux des trois images mentionnées précédemment, donnant ainsi une nouvelle mesure de la position du point dans la troisième image.As a variant, intermediate images can exist between the first and / or the second image and / or the third image and the method can then comprise an additional step of estimating the optical flow between this additional image and at least two of the three images mentioned. previously, thus giving a new measure of the position of the point in the third image.

De manière avantageuse, la deuxième image et la troisième image sont consécutives dans la séquence d’images.Advantageously, the second image and the third image are consecutive in the image sequence.

Dans un mode de réalisation, la première image, la deuxième image et la troisième image sont consécutives dans la séquence d’images.In one embodiment, the first image, the second image and the third image are consecutive in the image sequence.

Selon un aspect de l’invention, le procédé comprend de la première zone de pixels.According to one aspect of the invention, the method comprises of the first area of pixels.

Selon un aspect de l’invention, le procédé comprend de la deuxième zone de pixels,According to one aspect of the invention, the method comprises of the second area of pixels,

Selon un aspect de l’invention, le procédé comprend de la troisième zone de pixels.According to one aspect of the invention, the method comprises of the third area of pixels.

Selon un aspect de l’invention, le procédé comprend de la quatrième zone de pixels.According to one aspect of the invention, the method includes the fourth pixel area.

Selon un aspect de l’invention, le procédé comprend de la cinquième zone de pixels.According to one aspect of the invention, the method comprises of the fifth pixel area.

Dans un mode de réalisation, la première zone de pixels constitue une zone de pixels de référence servant de base à la détermination d’une pluralité de troisièmes zones de pixels et de quatrièmes zones de pixels différentes à partir d’une pluralité de deuxièmes images et de troisièmes images différentes.In one embodiment, the first pixel area constitutes a reference pixel area serving as a basis for determining a plurality of third pixel areas and fourth different pixel areas from a plurality of second images and of third different images.

Avantageusement, la zone de pixels de référence est utilisée tant que la distance entre la troisième zone de pixels et la quatrième zone de pixels est inférieure à un seuil de distance prédéterminé.Advantageously, the reference pixel area is used as long as the distance between the third pixel area and the fourth pixel area is less than a predetermined distance threshold.

De préférence, le seuil de distance prédéterminé correspond au niveau de bruit de la troisième image.Preferably, the predetermined distance threshold corresponds to the noise level of the third image.

La distance entre la troisième zone de pixels et la quatrième zone de pixels peut être déterminée en utilisant une distance de Mahalanobis (distance normalisée par une une une une une étape de stockage étape de stockage étape de stockage étape de stockage étape de stockage les variances) comparée à une valeur d’incertitude donnée par une distribution dite de chi-2 (« chi carré ») à 2 degrés de liberté.The distance between the third pixel zone and the fourth pixel zone can be determined using a Mahalanobis distance (distance standardized by one one one one storage step storage step storage step storage step storage step storage variances) compared to an uncertainty value given by a so-called chi-2 distribution (“chi square”) with 2 degrees of freedom.

Avantageusement encore, la distance entre la troisième zone de pixels et la quatrième zone de pixels étant inférieure au seuil prédéterminé, la zone de pixels de référence est utilisée tant que l’apparence entre la première zone de pixels et la quatrième zone de pixels est similaire.Advantageously also, the distance between the third pixel area and the fourth pixel area being less than the predetermined threshold, the reference pixel area is used as long as the appearance between the first pixel area and the fourth pixel area is similar .

Par le terme « similaire », on entend que les pixels de la première zone de pixels et les pixels de la quatrième zone de pixels sont proches en termes de valeurs.By the term "similar" is meant that the pixels of the first pixel area and the pixels of the fourth pixel area are close in terms of values.

Dans un mode de réalisation, la similarité entre l’apparence de la première zone de pixels et l’apparence de la quatrième zone de pixels est estimée en calculant des signatures basées sur des ondelettes de Haar sur la première zone de pixels et sur la quatrième zone de pixels, et en comparant respectivement lesdites signatures des pixels de chacune des zones entre elles pour déterminer si les deux zones de pixels se ressemblent suffisamment ou non. En variante, tout autre moyen adapté pour déterminer et comparer l’apparence de la première zone de pixels et l’apparence de la quatrième zone de pixels pourrait être utilisé.In one embodiment, the similarity between the appearance of the first pixel area and the appearance of the fourth pixel area is estimated by calculating signatures based on Haar wavelets on the first pixel area and on the fourth pixel area, and respectively comparing said pixel signatures of each of the areas with each other to determine whether the two pixel areas are sufficiently similar or not. Alternatively, any other suitable means for determining and comparing the appearance of the first pixel area and the appearance of the fourth pixel area could be used.

Selon un aspect de l’invention, le procédé comprend en outre une étape de détection d’un défaut d’estimation du point entre deux images de la séquence, un tel défaut pouvant notamment correspondre à une occultation du point réel par un objet ou une disparition temporaire dudit point.According to one aspect of the invention, the method further comprises a step of detecting a point estimation defect between two images of the sequence, such a defect possibly notably corresponding to an occultation of the real point by an object or a temporary disappearance of said point.

L’invention concerne également un calculateur pour véhicule automobile, destiné à estimer le mouvement d’au moins un point dans une séquence d’images variant dans le temps générée par une caméra montée dans ledit véhicule, ladite séquence comprenant au moins une première image, une deuxième image et une troisième image, la deuxième image étant postérieure à la première image et la troisième image étant postérieure à la deuxième image. Le calculateur est configuré pour déterminer :The invention also relates to a computer for a motor vehicle, intended to estimate the movement of at least one point in a sequence of images varying in time generated by a camera mounted in said vehicle, said sequence comprising at least a first image, a second image and a third image, the second image being posterior to the first image and the third image being posterior to the second image. The computer is configured to determine:

• dans la première image, au moins une première zone de pixels correspondant à un point à suivre, • dans la deuxième image, une deuxième zone de pixels correspondant audit point en calculant le flot optique entre la première image et la deuxième image à partir de la première zone de pixels déterminée, • dans la troisième image, une troisième zone de pixels correspondant audit point en calculant le flot optique entre la deuxième image et la troisième image à partir de la deuxième zone de pixels déterminée. Le calculateur est remarquable en ce qu’il est en outre configuré pour déterminer :• in the first image, at least a first area of pixels corresponding to a point to be followed, • in the second image, a second area of pixels corresponding to said point by calculating the optical flow between the first image and the second image from the first determined pixel area, • in the third image, a third pixel area corresponding to said point by calculating the optical flow between the second image and the third image from the second determined pixel area. The calculator is remarkable in that it is further configured to determine:

• dans la troisième image, une quatrième zone de pixels correspondant audit point en calculant le flot optique entre la première image et la troisième image à partir de la première zone de pixels déterminée, et • dans la troisième image, une cinquième zone de pixels, dite « zone affinée », à partir de la troisième zone de pixels déterminée et de la quatrième zone de pixels déterminée.• in the third image, a fourth pixel area corresponding to said point by calculating the optical flow between the first image and the third image from the first determined pixel area, and • in the third image, a fifth pixel area, called "refined area", from the third determined pixel area and from the fourth determined pixel area.

L’invention concerne enfin un véhicule automobile comprenant une caméra et un calculateur, tel que présenté précédemment, relié à ladite caméra de manière à recevoir au moins une séquence d’images capturée par la caméra afin d’estimer le mouvement d’au moins un point dans ladite séquence et permettre une assistance à la conduite du véhicule.The invention finally relates to a motor vehicle comprising a camera and a computer, as presented above, connected to said camera so as to receive at least one sequence of images captured by the camera in order to estimate the movement of at least one point in said sequence and allow assistance in driving the vehicle.

La figure 1 illustre schématiquement un exemple de véhicule selon l’invention.FIG. 1 schematically illustrates an example of a vehicle according to the invention.

La figure 2 illustre schématiquement un mode de réalisation du procédé selon l’invention.FIG. 2 schematically illustrates an embodiment of the method according to the invention.

La figure 3 illustre schématiquement un exemple de mise en œuvre du procédé selon l’invention à trois images consécutives.FIG. 3 schematically illustrates an example of implementation of the method according to the invention with three consecutive images.

La figure 4 illustre schématiquement un exemple de mise en œuvre du procédé selon l’invention à trois images non-consécutives.FIG. 4 schematically illustrates an example of implementation of the method according to the invention with three non-consecutive images.

La figure 5 illustre schématiquement des estimations de flot optique successives entre une image t et une image t+n.FIG. 5 schematically illustrates successive optical flow estimates between an image t and an image t + n.

La figure 6A illustre un premier exemple d’application.FIG. 6A illustrates a first example of application.

La figure 6B illustre un deuxième exemple d’application.FIG. 6B illustrates a second example of application.

La figure 6C illustre un troisième exemple d’application.Figure 6C illustrates a third application example.

La figure 6D illustre un quatrième exemple d’application.Figure 6D illustrates a fourth example application.

La figure 6E illustre un cinquième exemple d’application.FIG. 6E illustrates a fifth example of application.

La figure 6F illustre un sixième exemple d’application.Figure 6F illustrates a sixth example application.

La figure 6G illustre un septième exemple d’application.Figure 6G illustrates a seventh example application.

La figure 7 illustre schématiquement les estimations de tous les flots optiques successives entre une image t et une image t+n.FIG. 7 schematically illustrates the estimates of all the successive optical flows between an image t and an image t + n.

La figure 8 illustre un huitième exemple d’application.Figure 8 illustrates an eighth example application.

On a représenté à la figure 1 un exemple de véhicule V selon l’invention.FIG. 1 shows an example of a vehicle V according to the invention.

Le véhicule V comprend un système 10 d’aide à la conduite comportant une caméra 100 montée dans le véhicule V et un calculateur 200 permettant le traitement des images capturées par ladite caméra 100.Vehicle V comprises a driving aid system 10 comprising a camera 100 mounted in vehicle V and a computer 200 allowing the processing of the images captured by said camera 100.

La caméra 100 peut par exemple être une caméra de type monoculaire qui peut être montée sur la partie supérieure du pare-brise avant 1A du véhicule V de manière à filmer la route 2A sur laquelle circule le véhicule V ainsi que l’environnement E du véhicule situé dans le champ de vision de la caméra 100. On notera cependant que la caméra 100 pourrait être montée à n’importe quel autre endroit adapté du véhicule 1.The camera 100 can for example be a monocular type camera which can be mounted on the upper part of the front windshield 1A of the vehicle V so as to film the road 2A on which the vehicle V travels as well as the environment E of the vehicle located in the field of vision of the camera 100. It will however be noted that the camera 100 could be mounted at any other suitable location on the vehicle 1.

De préférence, la caméra 100 et le calculateur 200 sont mis en oeuvre par une même entité physique. En variante, ils pourraient constituer deux entités physiques distinctes reliées via un lien ou un réseau de communication du véhicule 1.Preferably, the camera 100 and the computer 200 are implemented by the same physical entity. As a variant, they could constitute two separate physical entities linked via a link or a communication network of the vehicle 1.

Le calculateur 200 est notamment destiné à estimer le mouvement d’un point dans une séquence d’images capturée par la caméra 100 afin par exemple de reconstruire l’environnement tridimensionnel observé par le véhicule V ou bien la trajectoire du véhicule V pour assister le conducteur dans sa conduite.The computer 200 is in particular intended to estimate the movement of a point in a sequence of images captured by the camera 100 in order, for example, to reconstruct the three-dimensional environment observed by the vehicle V or else the trajectory of the vehicle V to assist the driver in his conduct.

Une séquence d’images comprend une succession d’images variant dans le temps, générées par exemple à un nombre d’au moins 16 images par seconde, par exemple 16, 24, 25, 30, 50 ou 100.A sequence of images comprises a succession of images varying in time, generated for example at a number of at least 16 images per second, for example 16, 24, 25, 30, 50 or 100.

En référence aux figures 3 à 5, la séquence d’images comprend au moins une première image, une deuxième image et une troisième image. La deuxième image est postérieure à la première image et la troisième image est postérieure à la deuxième image.Referring to Figures 3 to 5, the image sequence includes at least a first image, a second image and a third image. The second image is after the first image and the third image is after the second image.

Dans l’exemple de la figure 3, les trois images (t, t+1, t+2) sont consécutives. Dans l’exemple plus général des figures 4 et 5, où n est un entier naturel strictement supérieur à 1, les trois images (t, t+n-1, t+n) sont consécutives lorsque n=2 et nonconsécutives lorsque n est strictement supérieur à 2.In the example in Figure 3, the three images (t, t + 1, t + 2) are consecutive. In the more general example of Figures 4 and 5, where n is a natural integer strictly greater than 1, the three images (t, t + n-1, t + n) are consecutive when n = 2 and nonconsecutive when n is strictly greater than 2.

Le calculateur 200 est configuré pour réaliser une pluralité de tâches permettant d’estimer le mouvement de points représentés dans la séquence d’images. A cette fin, le calculateur 200 comprend par exemple un ou plusieurs processeurs ou un ou plusieurs microcontrôleurs ainsi que des composants électroniques permettant de mettre en oeuvre différentes fonctions, par exemple de filtrage de signaux, notamment des signaux reçus de la caméra 100.The computer 200 is configured to perform a plurality of tasks making it possible to estimate the movement of points represented in the sequence of images. To this end, the computer 200 comprises for example one or more processors or one or more microcontrollers as well as electronic components making it possible to implement various functions, for example of filtering signals, in particular signals received from camera 100.

Un point correspond à un élément réel de l’environnement du véhicule filmé par la caméra 100. Un point est représenté dans les images sous la forme d’un pixel ou d’une pluralité de pixels. Par exemple, dans le cadre de l’assistance à la conduite du véhicule 1, il peut être utile de suivre des points situés sur un panneau de signalisation, sur un feu de signalisation, une route 2A, un accotement, un pont, etc.A point corresponds to a real element of the environment of the vehicle filmed by the camera 100. A point is represented in the images in the form of a pixel or a plurality of pixels. For example, as part of driving assistance for vehicle 1, it may be useful to follow points located on a traffic sign, on a traffic light, on a road 2A, on a shoulder, a bridge, etc.

Dans la suite on présentera le suivi du mouvement d’un point dans une séquence d’images, mais il va de soi que plusieurs points pourraient être suivis en même temps en dupliquant la méthode décrite ci-après.In the following we will present the tracking of the movement of a point in a sequence of images, but it goes without saying that several points could be followed at the same time by duplicating the method described below.

Un point est suivi dans la séquence d’image en utilisant un algorithme de flot optique. Plusieurs méthodes peuvent être utilisées pour déterminer le flot optique. Un exemple de méthode connue, intitulée méthode de Lukas-Kanade, est basée sur un algorithme de minimisation au sens des moindres carrés entre deux sections d’images consécutives de la séquence d’images. Toutefois, il va de soi que toute autre méthode de suivi du mouvement d’un point dans une séquence d’images pourrait être utilisée dans le cadre de la présente invention.A point is followed in the image sequence using an optical flow algorithm. Several methods can be used to determine the optical flow. An example of a known method, called the Lukas-Kanade method, is based on a least squares minimization algorithm between two consecutive image sections of the image sequence. However, it goes without saying that any other method of tracking the movement of a point in a sequence of images could be used in the context of the present invention.

Afin de suivre le mouvement d’un point dans une séquence d’images, le calculateur 200 est tout d’abord configuré pour déterminer dans la première image au moins une première zone de pixels correspondant à un point à suivre, pour déterminer dans la deuxième image une deuxième zone de pixels correspondant audit point en calculant le flot optique entre la première image et la deuxième image à partir de la première zone de pixels déterminée, et pour déterminer dans la troisième image une troisième zone de pixels correspondant audit point en calculant le flot optique entre la deuxième image et la troisième image à partir de la deuxième zone de pixels déterminée.In order to follow the movement of a point in a sequence of images, the computer 200 is firstly configured to determine in the first image at least one first area of pixels corresponding to a point to follow, to determine in the second image a second area of pixels corresponding to said point by calculating the optical flow between the first image and the second image from the first determined area of pixels, and to determine in the third image a third area of pixels corresponding to said point by calculating the optical flow between the second image and the third image from the second determined pixel area.

De manière remarquable, le calculateur 200 est également configuré pour déterminer dans la troisième image une quatrième zone de pixels correspondant audit point en calculant le flot optique entre la première image et la troisième image à partir de la première zone de pixels déterminée, et pour déterminer dans la troisième image une cinquième zone de pixels, dite « zone affinée », à partir de la troisième zone de pixels déterminée et de la quatrième zone de pixels déterminée.Remarkably, the computer 200 is also configured to determine in the third image a fourth area of pixels corresponding to said point by calculating the optical flow between the first image and the third image from the first determined area of pixels, and to determine in the third image, a fifth pixel area, called the "refined area", from the third determined pixel area and from the fourth determined pixel area.

L’invention va maintenant être décrite dans sa mise en oeuvre en référence à la figure 2.The invention will now be described in its implementation with reference to Figure 2.

Dans une étape E0, la caméra 100 génère tout d’abord une séquence d’images représentant l’environnement du véhicule 1, qu’elle transmet au calculateur 200.In a step E0, the camera 100 firstly generates a sequence of images representing the environment of the vehicle 1, which it transmits to the computer 200.

Le bruit, dit d’extraction, généré lors du calcul de flot optique, peut être modélisé selon une distribution Gaussienne où « mu » correspond à la moyenne de la distribution et « sigma » correspond à l’écart-type de la distribution. En pratique, « mu » correspond à la position du point dans l’image selon ses coordonnées (u, v) et « sigma » correspond au bruit généré lors du calcul de flot optique (du, dv).The so-called extraction noise generated during the optical flow calculation can be modeled according to a Gaussian distribution where "mu" corresponds to the mean of the distribution and "sigma" corresponds to the standard deviation of the distribution. In practice, "mu" corresponds to the position of the point in the image according to its coordinates (u, v) and "sigma" corresponds to the noise generated during the calculation of optical flow (du, dv).

On note ainsi, en référence aux figures 3 et 4 :We thus note, with reference to Figures 3 and 4:

• (mu01, sigma01) le couple de moyenne et d’écart-type calculé entre une image 0 et une image 1, • (mm 2, sigmai 2) le couple de moyenne et d’écart-type calculé entre une image 1 et une image 2, • (mu(n-i)_n, sigma(n-i)_n) le couple de moyenne et d’écart-type calculé entre une image (t+n-1 ) et une image (t+n), etc.• (mu 0 1, sigma 0 1) the couple of mean and standard deviation calculated between an image 0 and an image 1, • (mm 2, sigmai 2 ) the couple of mean and standard deviation calculated between an image 1 and an image 2, • (mu ( n -i) _n, sigma (ni) _n) the couple of mean and standard deviation calculated between an image (t + n-1) and an image (t + n), etc.

On note alors :We then note:

(mu, sigma(mu, sigma

le couple de moyenne et d’écart-type calculé entre une image (t) et une image (t-n).the couple of mean and standard deviation calculated between an image (t) and an image (t-n).

Dans une étape E1, le calculateur 200 détermine (ou sélectionne), dans la première image, une première zone de pixels correspondant à un point à suivre.In a step E1, the computer 200 determines (or selects), in the first image, a first area of pixels corresponding to a point to follow.

Dans une étape E2, le calculateur 200 détermine, dans la deuxième image, une deuxième zone de pixels correspondant audit point en calculant le flot optique entre la première image et la deuxième image à partir de la première zone de pixels déterminée.In a step E2, the computer 200 determines, in the second image, a second area of pixels corresponding to said point by calculating the optical flow between the first image and the second image from the first determined area of pixels.

Dans une étape E3, le calculateur 200 détermine, dans la troisième image, une troisième zone de pixels correspondant audit point en calculant le flot optique entre la deuxième image et la troisième image à partir de la deuxième zone de pixels déterminée.In a step E3, the computer 200 determines, in the third image, a third area of pixels corresponding to said point by calculating the optical flow between the second image and the third image from the second determined area of pixels.

Dans une étape E4, le calculateur 200 détermine, dans la troisième image, une quatrième zone de pixels correspondant audit point en calculant le flot optique entre la première image et la troisième image à partir de la première zone de pixels déterminée.In a step E4, the computer 200 determines, in the third image, a fourth area of pixels corresponding to said point by calculating the optical flow between the first image and the third image from the first determined area of pixels.

Enfin, dans une étape E5, le calculateur 200 détermine, dans la troisième image, une cinquième zone de pixels, dite « zone affinée >>, à partir de la troisième zone de pixels déterminée et de la quatrième zone de pixels déterminée, de préférence en moyennant la troisième zone de pixels et la quatrième zone de pixels comme cela sera décrit ci-après.Finally, in a step E5, the computer 200 determines, in the third image, a fifth area of pixels, called “refined area”, from the third determined area of pixels and from the fourth determined area of pixels, preferably by averaging the third pixel area and the fourth pixel area as will be described below.

Mise en oeuvre 1 : trois images consécutives dans la séquence d’imagesImplementation 1: three consecutive images in the image sequence

Dans un premier exemple de mise en oeuvre, la première image 0, la deuxième image 1 et la troisième image 2 sont consécutives dans la séquence d’images.In a first example of implementation, the first image 0, the second image 1 and the third image 2 are consecutive in the sequence of images.

En référence à la figure 3, on a alors :Referring to Figure 3, we then have:

qui représente la troisième zone de pixels et l’écart-type correspondant, et :which represents the third pixel area and the corresponding standard deviation, and:

(mu0^,stgma02) qui représente la quatrième zone de pixels et l’écart-type correspondant.(mu 0 ^, stgma 0 2) which represents the fourth area of pixels and the corresponding standard deviation.

On en déduit alors :We then deduce:

mu 11 i f rames _s ig m a0 2 | 1 sigma^f sigma0_2 2 multtframes_mu0 2 = multifra.mes_sigm.a0 2 1 2 sigma012 2 mu0_2 sigma02 2 qui représentent la cinquième zone de pixels et l’écart-type correspondant.mu 11 if rames _s ig ma 0 2 | 1 sigma ^ f sigma 0 _ 2 2 multtframes_mu 0 2 = multifra.mes_sigm.a 0 2 1 2 sigma 012 2 mu 0 _2 sigma 02 2 which represent the fifth pixel area and the corresponding standard deviation.

Mise en œuvre 2 : trois images non nécessairement consécutives dans la séquence d’imagesImplementation 2: three images not necessarily consecutive in the image sequence

Dans un deuxième exemple de mise en œuvre, on considère que la première image t et la deuxième image (t+n-1) ne sont pas consécutives dans la séquence d’images (n étant alors strictement supérieur à 2).In a second implementation example, we consider that the first image t and the second image (t + n-1) are not consecutive in the image sequence (n then being strictly greater than 2).

En référence à la figure 4, on a alors :With reference to FIG. 4, we then have:

miiojn-i) n = (multif ramesjnu0 + mu^.^ ) sïgma^jn-ign = l i multiframes_sigm.ao_ljl_1f + sîgm.a0_n 2 multiframe s _sigmaOn =miiojn-i) n = (multif ramesjnu 0 + mu ^. ^) sïgma ^ jn-ign = li multiframes_sigm.a o _ ljl _ 1 f + sîgm.a 0 _ n 2 multiframe s _sigma On =

1 1 1 1 a + a + 1 o 1 o

—:-------------2 4—:-------sigmaOn multif rames_mu0 n = multi fr âmes _sigm.a0 n sigmaOn -: ------------- 2 4 -: ------- sigma On multif rames_mu 0 n = multi fr souls _sigm.a 0 n sigma On

Dans ce mode de réalisation, l’image 0 constitue une image de référence et n peut être modifié pour utiliser successivement une pluralité de couples d’images consécutives [(t+n-1), (t+n)] différentes afin d’affiner le procédé et réduire le niveau de bruit tout en permettant un suivi efficace du point.In this embodiment, image 0 constitutes a reference image and n can be modified to successively use a plurality of pairs of consecutive [[t + n-1), (t + n)] images in order to refine the process and reduce the noise level while allowing efficient point tracking.

Notamment, l’image 0 peut être choisie comme étant très ancienne dans la chronologie de la séquence par rapport au couple d’images consécutives [(t+n-1), (t+n)] tout en présentant une similarité élevée avec l’image courante utilisée (t+n), c’est-à-dire (en référence à la figure 5) que l’écart Δ de position entre la troisième zone de pixels et la quatrième zone de pixels est faible.In particular, image 0 can be chosen as being very old in the chronology of the sequence with respect to the pair of consecutive images [(t + n-1), (t + n)] while having a high similarity with l current image used (t + n), that is to say (with reference to FIG. 5) that the position difference Δ between the third pixel area and the fourth pixel area is small.

Lorsque l’écart Δ1 de position entre la troisième zone de pixels et la quatrième zone de pixels dépasse un seuil de distance prédéterminé ou que l’écart d’apparence Δ2 entre la première zone de pixels et la quatrième zone de pixels dépasse un seuil d’apparence prédéterminé, une autre image de la séquence peut être choisie comme image de référence.When the position difference Δ1 between the third pixel area and the fourth pixel area exceeds a predetermined distance threshold or when the appearance difference Δ2 between the first pixel area and the fourth pixel area exceeds a threshold d 'predetermined appearance, another image of the sequence can be chosen as a reference image.

L’écart Δ1 de position entre la troisième zone de pixels et la quatrième zone de pixels peut être déterminé en utilisant par exemple, de manière connue en soi, une distance de Mahalanobis (distance normalisée par les variances) comparée à une valeur d’incertitude donnée par une distribution dite de chi-2 à 2 degrés de liberté.The position difference Δ1 between the third pixel area and the fourth pixel area can be determined by using, for example, in a manner known per se, a Mahalanobis distance (distance normalized by the variances) compared to an uncertainty value given by a so-called chi-2 distribution with 2 degrees of freedom.

L’écart Δ2 d’apparence entre la première zone de pixels et la quatrième zone de pixels peut être calculé en déterminant une signature de chaque pixel d’une zone, par exemple en utilisant des ondelettes de Haar, et en comparant les signatures des pixels de chacune des zones entre elles pour déterminer si les deux zones de pixels se ressemblent suffisamment ou non.The difference Δ2 in appearance between the first pixel area and the fourth pixel area can be calculated by determining a signature of each pixel in an area, for example using Haar wavelets, and by comparing the pixel signatures of each of the areas together to determine whether the two pixel areas are sufficiently similar or not.

Cas d’applicationApplication cases

Dans les exemples donnés ci-après, le numéro de l’image de référence est annoté avec la lettre K, l’image courante est notée n et les images intermédiaires sont notées 2, ..., n-1.In the examples given below, the number of the reference image is annotated with the letter K, the current image is noted n and the intermediate images are noted 2, ..., n-1.

On note M (Match) le cas où une zone de pixels dans une image postérieure de la séquence, déterminée en utilisant le flot optique, correspond à une zone de pixels d’une image antérieure à partir de laquelle a été calculé ledit flot optique. Par exemple, la quatrième zone de pixels déterminée dans la troisième image correspond à la première zone de pixels déterminée dans la première image lorsque l’algorithme utilisé pour le flot optique donne une correspondance valide, ce qui par exemple, dans le cas du Lukas Kanade, correspond à un résidu des moindre carrés inférieur à un seuil prédéterminé.We denote by M (Match) the case where a pixel area in a posterior image of the sequence, determined using the optical flow, corresponds to a pixel area of an earlier image from which said optical flow was calculated. For example, the fourth pixel area determined in the third image corresponds to the first pixel area determined in the first image when the algorithm used for the optical flow gives a valid match, which for example in the case of Lukas Kanade , corresponds to a residual of the least squares below a predetermined threshold.

On note F (Fail) le cas où une zone de pixels dans une image postérieure de la séquence, déterminée en utilisant le flot optique, ne correspond pas à une zone de pixels d’une image antérieure à partir de laquelle a été calculé ledit flot optique. Par exemple, la première zone de pixels déterminée et la quatrième zone de pixels déterminée ne correspondent pas lorsque l’algorithme utilisé pour le flot optique donne une correspondance invalide, ce qui par exemple, dans le cas du Lukas Kanade, correspond à un résidu des moindre carrés supérieur à un seuil prédéterminé.We denote by F (Fail) the case where an area of pixels in a posterior image of the sequence, determined using the optical flow, does not correspond to an area of pixels of an earlier image from which said flow was calculated. optical. For example, the first determined pixel zone and the fourth determined pixel zone do not correspond when the algorithm used for the optical flow gives an invalid correspondence, which for example, in the case of Lukas Kanade, corresponds to a residue of least squares above a predetermined threshold.

On note FP (Fail but Predicted) le cas où la première zone de pixels déterminée et la quatrième zone de pixels déterminée ne correspondent pas, mais qu’un indice extérieur, par exemple la reconstruction tridimensionnelle à partir d’une image antérieure à la quatrième image, permet d’établir une prédiction de la quatrième zone de pixels.We note FP (Fail but Predicted) the case where the first determined pixel area and the fourth determined pixel area do not correspond, but an external index, for example the three-dimensional reconstruction from an image prior to the fourth image, allows to establish a prediction of the fourth pixel area.

Exemple AExample A

Le cas d’application illustré à la figure 6A correspond au cas pour lequel l’écart Δ1 de position entre la troisième zone de pixels de l’image n obtenue à partir des images 1K à n-1 et la quatrième zone de pixels de l’image n obtenue directement à partir de l’image de référence 1K est inférieur ou égal au seuil prédéterminé.The application case illustrated in FIG. 6A corresponds to the case for which the position difference Δ1 between the third pixel area of image n obtained from images 1K to n-1 and the fourth pixel area of l image n obtained directly from the reference image 1K is less than or equal to the predetermined threshold.

Dans ce cas, la première zone de pixels (image 1 K) et la quatrième zone de pixels (image n) correspondent entre elles (M) d’une part, et la deuxième zone de pixels (image n-1) et la troisième zone de pixels (image n) correspondent entre elles (M) d’autre part.In this case, the first pixel area (image 1 K) and the fourth pixel area (image n) correspond to one another (M), and the second pixel area (image n-1) and the third pixel area (image n) correspond to each other (M) on the other hand.

Exemple BExample B

Dans le cas d’application illustré à la figure 6B :In the case of application illustrated in Figure 6B:

• la première zone de pixels de l’image 1 et la quatrième zone de pixels de l’image n ne correspondent pas entre elles (F) ;• the first pixel zone of image 1 and the fourth pixel zone of image do not correspond to each other (F);

• la première zone de pixels de l’image 2K et la quatrième zone de pixels (image n) correspondent entre elles (M) et dans ce cas, la deuxième image 2K constitue l’image de référence ;• the first pixel area of the 2K image and the fourth pixel area (image n) correspond to each other (M) and in this case, the second 2K image constitutes the reference image;

• la deuxième zone de pixels de l’image n-1 et la troisième zone de pixels de l’image n correspondent entre elles (M).• the second pixel area of image n-1 and the third pixel area of image n correspond to each other (M).

Exemple CExample C

Dans le cas d’application illustré à la figure 6C :In the case of application illustrated in Figure 6C:

• la première zone de pixels de l’image 1K et la quatrième zone de pixels de l’image n correspondent entre elles (M) ;• the first pixel area of the 1K image and the fourth pixel area of the image n correspond to each other (M);

• la deuxième zone de pixels de l’image n-1 et la troisième zone de pixels de l’image n ne correspondent pas entre elles mais une prédiction de la troisième zone de pixels existe (FP). Par le terme « prédiction », on entend ici que, grâce aux acquisitions précédentes, il est possible de faire une prédiction de la troisième zone de pixels, par exemple à l’aide d’un modèle dans lequel on considère que la vitesse de la caméra est constante et que l’objet observé est statique dans la scène (modèle connu sous le nom de « base prédiction »).• the second pixel zone of image n-1 and the third pixel zone of image n do not correspond to each other but a prediction of the third pixel zone exists (FP). By the term “prediction”, it is meant here that, thanks to the preceding acquisitions, it is possible to make a prediction of the third pixel area, for example using a model in which it is considered that the speed of the camera is constant and the object observed is static in the scene (model known as “base prediction”).

Exemple DExample D

Dans le cas d’application illustré à la figure 6D :In the case of application illustrated in Figure 6D:

• la première zone de pixels de l’image 1 et la quatrième zone de pixels de l’image n ne correspondent pas entre elles (F) ;• the first pixel zone of image 1 and the fourth pixel zone of image do not correspond to each other (F);

• la deuxième zone de pixels de l’image n-1 et la troisième zone de pixels de l’image n ne correspondent pas entre elles (F).• the second pixel area of image n-1 and the third pixel area of image n do not correspond to each other (F).

Dans ce cas, on peut soit arrêter de suivre le point, soit faire de la prédiction 2D (c’est-à-dire en utilisant un modèle basé sur l’image) ou 3D (c’est-àdire utilisant un modèle considérant l’objet dans son espace réel).In this case, we can either stop following the point, or make 2D prediction (i.e. using an image-based model) or 3D (i.e. using a model considering l object in its real space).

Exemple EExample E

Dans le cas d’application illustré à la figure 6E, il n’est pas possible de déterminer la quatrième zone de pixels dans l’image n à partir de la première zone de pixels de l’image 1, par exemple parce que la quatrième zone de pixels apparaît hors de l’image n. Dans ce cas, la deuxième image 2K peut être choisie comme image de référence.In the case of application illustrated in FIG. 6E, it is not possible to determine the fourth pixel area in image n from the first pixel area in image 1, for example because the fourth pixel area appears outside of image n. In this case, the second 2K image can be chosen as the reference image.

Dans cet exemple :In this example:

• la première zone de pixels de l’image 2K et la quatrième zone de pixels de l’image n ne correspondent pas entre elles (F) ;• the first pixel area of the 2K image and the fourth pixel area of the image do not correspond to each other (F);

• la deuxième zone de pixels de l’image n-1 et la troisième zone de pixels de l’image n ne correspondent pas entre elles (F) car l’objet a quitté l’image n donc il n’est plus possible de continuer à réaliser des correspondances entre l’image n et les précédentes.• the second pixel zone of image n-1 and the third pixel zone of image n do not correspond to each other (F) because the object has left image n therefore it is no longer possible to continue to make correspondences between image n and the previous ones.

Exemple FExample F

Dans le cas d’application illustré à la figure 6F, il n’est pas possible de déterminer la quatrième zone de pixels dans l’image n à partir de la première zone de pixels de l’image 1, ni la troisième zone de pixels de l’image n à partir de la deuxième zone de pixels de l’image n-1, par exemple parce que les troisième et quatrième zones de pixels apparaissent hors de l’image n.In the case of application illustrated in FIG. 6F, it is not possible to determine the fourth pixel area in image n from the first pixel area of image 1, nor the third pixel area of image n from the second pixel area of image n-1, for example because the third and fourth pixel areas appear outside of image n.

Dans ce cas, on peut arrêter de suivre le point à partir de l’image n.In this case, we can stop following the point from image n.

Exemple GExample G

Dans le cas d’application illustré à la figure 6G, il n’est pas possible de déterminer la quatrième zone de pixels dans l’image n à partir de la première zone de pixels de l’image 1 (cases grisées) car le bruit généré par le calcul du flot optique entre l’image 1K et l’image n est supérieur à la différence de position entre la première zone de pixels et la quatrième zone de pixels.In the case of application illustrated in FIG. 6G, it is not possible to determine the fourth area of pixels in image n from the first area of pixels in image 1 (shaded boxes) because the noise generated by the calculation of the optical flow between the image 1K and the image n is greater than the difference in position between the first area of pixels and the fourth area of pixels.

Dans ce cas, l’image n peut être écartée pour suivre le point considéré et le procédé est poursuivi en utilisant l’image suivante n+1.In this case, the image n can be discarded to follow the point considered and the process is continued using the following image n + 1.

Dans un exemple de mise en œuvre, en référence à la figure 7, on peut utiliser l’ensemble des flots optiques calculés entre toutes les images de la séquence afin d’affiner davantage la précision du suivi du point.In an exemplary implementation, with reference to FIG. 7, one can use the set of optical flows calculated between all the images of the sequence in order to further refine the precision of the tracking of the point.

En référence à la figure 8, les correspondances (M) entre les images peuvent être utilisées pour détecter une occlusion. En effet, lorsque le point est caché temporairement par un autre objet, l'algorithme de correspondance ne fonctionnera plus. Toutefois, il est possible de continuer à prédire le point suivi afin de le retrouver plus tard. Une occlusion affichera quelques images pour lesquelles le procédé n’a pas pu faire de correspondances. Il y a eu une occlusion de la caractéristique pendant les trames n-2 et n-1 (cases F sur la figure 8). Ensuite, dès que le point réapparaît (images n et n+1), la correspondance peut de nouveau être réalisée.With reference to FIG. 8, the correspondences (M) between the images can be used to detect an occlusion. When the point is temporarily hidden by another object, the matching algorithm will no longer work. However, it is possible to continue to predict the point followed in order to find it later. An occlusion will display some images for which the process could not match. There was an occlusion of the characteristic during frames n-2 and n-1 (boxes F in Figure 8). Then, as soon as the point reappears (images n and n + 1), the correspondence can again be carried out.

En combinant des flots optiques de différentes images pour suivre un même point de différentes manières, le procédé selon l’invention permet de réduire l’impact du bruit sur le suivi de point, ce qui améliore notamment la précision du suivi et donc de l’assistance à la conduite.By combining optical streams of different images to follow the same point in different ways, the method according to the invention makes it possible to reduce the impact of noise on point tracking, which in particular improves the accuracy of tracking and therefore of the driving assistance.

Le procédé selon l’invention est particulièrement adapté au suivi de points utilisé dans un système d’assistance à la conduite d’un véhicule automobile. Il est 5 également applicable avantageusement au suivi de points utilisé dans les systèmes de type radar ou lidar.The method according to the invention is particularly suitable for tracking points used in a driving assistance system for a motor vehicle. It is also advantageously applicable to point tracking used in radar or lidar type systems.

Claims (10)

REVENDICATIONS 1. Procédé d’estimation du mouvement d’au moins un point dans une séquence d’images variant dans le temps, ladite séquence comprenant au moins une première image (t), une deuxième image (t+n-1) et une troisième image (t+n), la deuxième image (t+n-1) étant postérieure à la première image (t) et la troisième image (t+n) étant postérieure à la deuxième image (t+n-1), le procédé comprenant :1. Method for estimating the movement of at least one point in a sequence of images varying over time, said sequence comprising at least a first image (t), a second image (t + n-1) and a third image (t + n), the second image (t + n-1) being posterior to the first image (t) and the third image (t + n) being posterior to the second image (t + n-1), the process comprising: • une étape de détermination, dans la première image (t), d’au moins une première zone de pixels correspondant à un point à suivre, • une étape de détermination, dans la deuxième image (t+n-1), d’une deuxième zone de pixels correspondant audit point en calculant le flot optique entre la première image (t) et la deuxième image (t+n-1) à partir de la première zone de pixels déterminée, • une étape de détermination, dans la troisième image (t+n), d’une troisième zone de pixels correspondant audit point en calculant le flot optique entre la deuxième image (t+n-1) et la troisième image (t+n) à partir de la deuxième zone de pixels déterminée, ledit procédé étant caractérisé en ce qu’il comprend en outre :• a step of determining, in the first image (t), at least a first area of pixels corresponding to a point to follow, • a step of determining, in the second image (t + n-1), of a second pixel area corresponding to said point by calculating the optical flow between the first image (t) and the second image (t + n-1) from the first determined pixel area, • a determination step, in the third image (t + n), of a third pixel area corresponding to said point by calculating the optical flow between the second image (t + n-1) and the third image (t + n) from the second pixel area determined, said method being characterized in that it further comprises: • une étape de détermination, dans la troisième image (t+n), d’une quatrième zone de pixels correspondant audit point en calculant le flot optique entre la première image (t) et la troisième image (t+n) à partir de la première zone de pixels déterminée, • une étape de détermination, dans la troisième image (t+n), d’une cinquième zone de pixels, dite « zone affinée », à partir de la troisième zone de pixels déterminée et de la quatrième zone de pixels déterminée.A step of determining, in the third image (t + n), of a fourth area of pixels corresponding to said point by calculating the optical flow between the first image (t) and the third image (t + n) from the first determined pixel area, • a step of determining, in the third image (t + n), a fifth pixel area, called the "refined area", from the third determined pixel area and from the fourth determined pixel area. 2. Procédé selon la revendication précédente, dans lequel la deuxième image (t+n-1) et la troisième image (t+n) sont consécutives dans la séquence d’images.2. Method according to the preceding claim, in which the second image (t + n-1) and the third image (t + n) are consecutive in the image sequence. 3. Procédé selon la revendication précédente, dans lequel la première image (t), la deuxième image (t+n-1) et la troisième image (t+n) sont consécutives dans la séquence d’images.3. Method according to the preceding claim, wherein the first image (t), the second image (t + n-1) and the third image (t + n) are consecutive in the image sequence. 4. Procédé selon l’une des revendications précédentes, comprenant une étape de stockage de la première zone de pixels, de la deuxième zone de pixels, de la troisième zone de pixels et de la quatrième zone de pixels.4. Method according to one of the preceding claims, comprising a step of storing the first pixel area, the second pixel area, the third pixel area and the fourth pixel area. 5. Procédé selon la revendication précédente, comprenant une étape de stockage de la cinquième zone de pixels.5. Method according to the preceding claim, comprising a step of storing the fifth area of pixels. 6. Procédé selon l’une des revendications précédentes, dans lequel la première zone de pixels constitue une zone de pixels de référence servant de base à la détermination d’une pluralité de troisièmes zones de pixels et de quatrièmes zones de pixels différentes à partir d’une pluralité de deuxièmes images (t+n-1) et de troisièmes images (t+n) différentes.6. Method according to one of the preceding claims, in which the first pixel area constitutes a reference pixel area serving as a basis for determining a plurality of third pixel areas and fourth different pixel areas from 'a plurality of second images (t + n-1) and third images (t + n) different. 7. Procédé selon la revendication précédente, dans lequel la zone de pixels de référence est utilisée tant que la distance entre la troisième zone de pixels et la quatrième zone de pixels est inférieure à un seuil prédéterminé.7. Method according to the preceding claim, in which the reference pixel area is used as long as the distance between the third pixel area and the fourth pixel area is less than a predetermined threshold. 8. Procédé selon la revendication précédente, dans lequel le seuil prédéterminé correspond au niveau de bruit de la troisième image (t+n).8. Method according to the preceding claim, wherein the predetermined threshold corresponds to the noise level of the third image (t + n). 9. Calculateur pour véhicule automobile, destiné à estimer le mouvement d’au moins un point dans une séquence d’images variant dans le temps générée par une caméra montée dans ledit véhicule, ladite séquence comprenant au moins une première image (t), une deuxième image (t+n-1) et une troisième image (t+n), la deuxième image (t+n-1) étant postérieure à la première image (t) et la troisième image (t+n) étant postérieure à la deuxième image (t+n-1), le calculateur étant configuré pour :9. Motor vehicle computer, intended to estimate the movement of at least one point in a time-varying sequence of images generated by a camera mounted in said vehicle, said sequence comprising at least a first image (t), a second image (t + n-1) and a third image (t + n), the second image (t + n-1) being after the first image (t) and the third image (t + n) being after the second image (t + n-1), the computer being configured for: • déterminer, dans la première image (t), au moins une première zone de pixels correspondant à un point à suivre, • déterminer, dans la deuxième image (t+n-1), une deuxième zone de pixels correspondant audit point en calculant le flot optique entre la première image (t) et la deuxième image (t+n-1) à partir de la première zone de pixels déterminée, • déterminer, dans la troisième image (t+n), une troisième zone de pixels correspondant audit point en calculant le flot optique entre la deuxième image (t+n-1) et la troisième image (t+n) à partir de la deuxième zone de pixels déterminée, ledit calculateur étant caractérisé en ce qu’il est en outre configuré pour :• determine, in the first image (t), at least a first area of pixels corresponding to a point to be followed, • determine, in the second image (t + n-1), a second area of pixels corresponding to said point by calculating the optical flow between the first image (t) and the second image (t + n-1) from the first determined pixel area, • determining, in the third image (t + n), a third corresponding pixel area at said point by calculating the optical flow between the second image (t + n-1) and the third image (t + n) from the second determined pixel area, said computer being characterized in that it is further configured for : • déterminer, dans la troisième image (t+n), une quatrième zone de pixels correspondant audit point en calculant le flot optique entre la première image (t) et la troisième image (t+n) à partir de la première zone de pixels déterminée, • déterminer, dans la troisième image (t+n), une cinquième zone de pixels, dite « zone affinée >>, à partir de la troisième zone de pixels déterminée et de la quatrième zone de pixels déterminée.• determine, in the third image (t + n), a fourth area of pixels corresponding to said point by calculating the optical flow between the first image (t) and the third image (t + n) from the first area of pixels determined, • determine, in the third image (t + n), a fifth pixel area, called the "refined area", from the third determined pixel area and from the fourth determined pixel area. 10. Véhicule automobile comprenant une caméra et un calculateur, selon la revendication précédente, relié à ladite caméra de manière à recevoir au moins une séquence d’images capturée par la caméra afin d’estimer le mouvement d’au moins un point dans ladite séquence et permettre une assistance à la conduite du véhicule.10. Motor vehicle comprising a camera and a computer, according to the preceding claim, connected to said camera so as to receive at least one sequence of images captured by the camera in order to estimate the movement of at least one point in said sequence and allow assistance in driving the vehicle.
FR1757138A 2017-07-27 2017-07-27 METHOD FOR ESTIMATING THE MOVEMENT OF A POINT IN AN IMAGE SEQUENCE Active FR3069689B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
FR1757138A FR3069689B1 (en) 2017-07-27 2017-07-27 METHOD FOR ESTIMATING THE MOVEMENT OF A POINT IN AN IMAGE SEQUENCE
PCT/FR2018/051803 WO2019020902A1 (en) 2017-07-27 2018-07-16 Method for estimating the movement of a point in a sequence of images

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1757138A FR3069689B1 (en) 2017-07-27 2017-07-27 METHOD FOR ESTIMATING THE MOVEMENT OF A POINT IN AN IMAGE SEQUENCE
FR1757138 2017-07-27

Publications (2)

Publication Number Publication Date
FR3069689A1 true FR3069689A1 (en) 2019-02-01
FR3069689B1 FR3069689B1 (en) 2019-08-02

Family

ID=59974654

Family Applications (1)

Application Number Title Priority Date Filing Date
FR1757138A Active FR3069689B1 (en) 2017-07-27 2017-07-27 METHOD FOR ESTIMATING THE MOVEMENT OF A POINT IN AN IMAGE SEQUENCE

Country Status (2)

Country Link
FR (1) FR3069689B1 (en)
WO (1) WO2019020902A1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130076915A1 (en) * 2011-09-28 2013-03-28 Qualcomm Incorporated Framework for reference-free drift-corrected planar tracking using lucas-kanade optical flow

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130076915A1 (en) * 2011-09-28 2013-03-28 Qualcomm Incorporated Framework for reference-free drift-corrected planar tracking using lucas-kanade optical flow

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
CONZE PIERRE-HENRI ET AL: "Multi-reference combinatorial strategy towards longer long-term dense motion estimation", COMPUTER VISION AND IMAGE UNDERSTANDING, ACADEMIC PRESS, US, vol. 150, 20 May 2016 (2016-05-20), pages 66 - 80, XP029628348, ISSN: 1077-3142, DOI: 10.1016/J.CVIU.2016.04.013 *
H. BADINO ET AL: "STEREO VISION-BASED DETECTION OF MOVING OBJECTS UNDER STRONG CAMERA MOTION", 1ST INTERNATIONAL CONFERENCE ON COMPUTER VISION THEORY AND APPLICATIONS (VISAPP), 25 February 2006 (2006-02-25), pages 1 - 8, XP055460608, Retrieved from the Internet <URL:https://www.researchgate.net/profile/Uwe_Franke2/publication/238325371_Stereo_Vision-Based_Detection_of_Moving_Objects_underStrong_Camera_Motion/links/0deec52e62cfdb2e1c000000.pdf> [retrieved on 20180319] *
TOMAS CRIVELLI ET AL: "From optical flow to dense long term correspondences", IMAGE PROCESSING (ICIP), 2012 19TH IEEE INTERNATIONAL CONFERENCE ON, IEEE, 30 September 2012 (2012-09-30), pages 61 - 64, XP032333116, ISBN: 978-1-4673-2534-9, DOI: 10.1109/ICIP.2012.6466795 *

Also Published As

Publication number Publication date
WO2019020902A1 (en) 2019-01-31
FR3069689B1 (en) 2019-08-02

Similar Documents

Publication Publication Date Title
FR3014553A1 (en) METHOD FOR ANGULAR CALIBRATION OF THE POSITION OF AN ON-BOARD VIDEO CAMERA IN A MOTOR VEHICLE
US10559084B2 (en) Reflection determining apparatus
EP2572319A1 (en) Method and system for fusing data arising from image sensors and from motion or position sensors
FR3026591A1 (en) EXTRINSE CALIBRATION METHOD OF CAMERAS OF A TRAINING STEREO IMAGE TRAINING SYSTEM
FR3019359A1 (en) METHOD FOR DETERMINING A STATE OF OBSTRUCTION OF AT LEAST ONE CAMERA EMBARKED IN A STEREOSCOPIC SYSTEM
EP1785966B1 (en) Evaluation process, by a motor vehicle, of the characteristics of a frontal element
FR3030091A1 (en) METHOD AND SYSTEM FOR AUTOMATICALLY DETECTING A DISALLIATION IN OPERATION OF A MONITORING SENSOR OF AN AIRCRAFT.
EP3126864A1 (en) Method for geolocating the environment of a carrier
FR3069689B1 (en) METHOD FOR ESTIMATING THE MOVEMENT OF A POINT IN AN IMAGE SEQUENCE
EP2174268B1 (en) Method, device and system for merging information from several sensors
FR3054673B1 (en) MERGING DETECTION DATA AND FOLLOWING OBJECTS FOR MOTOR VEHICLE
FR3053554A1 (en) METHOD FOR RAPID CALIBRATION OF A MOTOR VEHICLE CAMERA
FR3047589A1 (en) METHOD AND DEVICE FOR ESTIMATING THE LATERAL POSITION OF A VEHICLE IN A CIRCULATION PATH
FR3052581B1 (en) METHOD FOR MAKING A DEPTH CARD FROM SUCCESSIVE IMAGES OF A SINGLE CAMERA (MONO) EMBARKED IN A MOTOR VEHICLE
EP4100696A1 (en) Navigation assistance method for a mobile carrier
WO2018069060A1 (en) Locating device and device for producing integrity data
US11995855B2 (en) Method for detecting occlusions in an image, corresponding device and computer program product
FR3078183A1 (en) METHOD FOR DETECTING AN OBJECT FROM AN INBOARD CAMERA IN A MOTOR VEHICLE
WO2017216465A1 (en) Method and device for processing images acquired by a camera of a motor vehicle
FR3034555A1 (en) METHOD FOR DETERMINING THE DIRECTION OF THE MOVEMENT OF A MOTOR VEHICLE
FR3103301A1 (en) Method for detecting specularly reflected light beam intensity peaks
FR3062943A1 (en) METHOD OF PROCESSING IMAGES FOR DETECTION OF AN OBJECT ALONG A ROAD
FR3141763A1 (en) System and method for aiding navigation of a mobile system
FR3131777A1 (en) method of aligning a camera on a road
FR3084864A1 (en) METHOD FOR DENSIFYING A DEPTH MAP

Legal Events

Date Code Title Description
PLSC Publication of the preliminary search report

Effective date: 20190201

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

TQ Partial transmission of property

Owner name: CONTINENTAL AUTONOMOUS MOBILITY GERMANY GMBH, DE

Effective date: 20230424

Owner name: CONTINENTAL AUTOMOTIVE FRANCE, FR

Effective date: 20230424

PLFP Fee payment

Year of fee payment: 7