WO2017216473A1 - Procédé de réalisation d'une carte de profondeurs à partir d'images successives d'une caméra unique (mono) embarquée dans un véhicule automobile - Google Patents

Procédé de réalisation d'une carte de profondeurs à partir d'images successives d'une caméra unique (mono) embarquée dans un véhicule automobile Download PDF

Info

Publication number
WO2017216473A1
WO2017216473A1 PCT/FR2017/051520 FR2017051520W WO2017216473A1 WO 2017216473 A1 WO2017216473 A1 WO 2017216473A1 FR 2017051520 W FR2017051520 W FR 2017051520W WO 2017216473 A1 WO2017216473 A1 WO 2017216473A1
Authority
WO
WIPO (PCT)
Prior art keywords
image
point
previous
images
aligned
Prior art date
Application number
PCT/FR2017/051520
Other languages
English (en)
Inventor
Lucien Garcia
Original Assignee
Continental Automotive France
Continental Automotive Gmbh
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 France, Continental Automotive Gmbh filed Critical Continental Automotive France
Publication of WO2017216473A1 publication Critical patent/WO2017216473A1/fr

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • G06T7/579Depth or shape recovery from multiple images from motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30248Vehicle exterior or interior
    • G06T2207/30252Vehicle exterior; Vicinity of vehicle

Definitions

  • a method of producing a depth map from successive images of a single camera (mono) embedded in a motor vehicle is a method of producing a depth map from successive images of a single camera (mono) embedded in a motor vehicle.
  • the images captured by these cameras can be analyzed to detect, for example, the crossing of a white line by the vehicle or to detect various obstacles (pedestrian, vehicle stopped on the roadside, etc.) or to assess the distance with the previous vehicle and, if necessary, issue alarms to the driver, slow down (in case of driving with a cruise control), or even trigger an emergency braking, control the steering or control the suspensions of the vehicle in function of the road profile.
  • An important piece of data taken from the images captured by the on-board cameras is the distance (or depth) between the vehicle and an observed object.
  • Epipolar geometry is a mathematical model of geometry, which describes the geometric relationships of different images of the same object, taken simultaneously from different observation points. Epipolar geometry makes it possible to describe the relations between the pixels in correspondence - that is to say those formed on each of the images by one and the same point of the observed object.
  • the plane that contains the two projection centers and the object point is called the epipolar plane.
  • This one cuts each one of the two images according to a line, the epipolar right.
  • the corresponding point is on the epipolar line of the other image.
  • This relation, called epipolar constraint makes it possible, when searching in a second image for the "second" point corresponding to a "first" point of a first image, to limit the search to a line (the epipolar right).
  • a major disadvantage of this known technique is that it requires the use of two cameras, which burden both the cost and the mass of the vehicle, and whose size poses integration problems.
  • it has the advantage of allowing an evaluation of the depth without the vehicle being in motion and of providing very precise results: the depth is then calculated to the nearest cm.
  • matching image points or "corresponding image points” means a first point of a first image of an observed scene and a second point of a second image of this same scene. first and second points being the images of the same object point of the observed scene.
  • the invention aims to overcome these drawbacks by proposing a method for producing a depth chart as reliable and accurate as the known methods, which can be implemented in a less expensive, less bulky and more expensive driving assistance system. lightweight.
  • the method according to the invention furthermore responds to a global approach in that it makes it possible to obtain a complete depth map, even when the observed scene comprises low-contrast objects for which the obtaining of optical fluxes is impossible. .
  • Another object of the invention is to provide a method requiring little computing time and few computer resources for its execution.
  • the invention proposes a method of producing a depth map from a first image and a second image captured by a camera embedded in a motor vehicle, comprising the following steps:
  • calculating a depth of the corresponding observed object point (that is to say of the observed object point whose corresponding points considered are the images) from at least one datum relating to the position on the first aligned image of the first image point and at least one data item relating to the position of the corresponding second image point on the second aligned image.
  • the first and second images are captured by a single camera at different times, the second image being a current image captured at a time t, the first image being a previous image captured at a time t-1, the first image aligned therefore being a previous aligned image and the second aligned image being an aligned current image;
  • the translation vector is the vector connecting the optical center of the single camera at time t-1 and the optical center of the single camera at time t; consequently, the norm of the translation vector corresponds to the distance traveled as the crow flies by the vehicle between the two images, that is to say between the instants t and t-1;
  • the relative alignment of the two images is parallel to a reference line ⁇ corresponding to a global direction of movement of the vehicle passing through the optical center of the single camera at time t-1 and by the optical center of the camera unique at time t (in other words, the reference line ⁇ is the direction of the translation vector); "aligning an image parallel to the reference line” means modifying this image in a computerized manner so that the optical axis of the modified image is parallel to the reference line; the relative alignment of the two images also comprises a roll alignment of the two images, that is to say a modification of the rotational images around the reference line (or their optical axes previously aligned on this reference line) of to remove a possible angular offset
  • the method comprises a step of transforming the previous aligned image, established in Cartesian coordinates, into a corrected previous image, established in polar coordinates with the epipolar point of the preceding aligned image as center (that is to say the intersection between the image aligned at time t-1 and the reference line ⁇ ); it likewise includes a step of transforming the current image aligned, established in Cartesian coordinates, into a corrected current image, established in polar coordinates with the epipole point of the current aligned image as the center (that is to say the intersection between the image aligned at time t and the reference line ⁇ );
  • the invention extends to a driving assistance system comprising on the one hand a camera adapted to be embedded in a motor vehicle for capturing images of an external scene, for example at the front of the vehicle and on the other hand a processing computer unit for processing the images captured by the camera for the purpose of evaluating a distance between the vehicle and an observed object point.
  • the system according to the invention is remarkable in that it comprises a single camera and in that the processing unit is configured to execute a method according to the invention, as defined above and as specified hereinafter .
  • the basic idea behind the design of the invention is therefore to apply, according to a defined method, the epipolar constraint to two images captured by the same onboard camera (mono) at different times, whereas the stereoscopic systems apply this constraint on images taken simultaneously since Laterally translated views using planar rectification with epipoles at infinity and known mono systems only work with flow techniques (and therefore are not able to provide depth maps complete).
  • the use of a single camera makes it possible to reduce the cost price of the driving assistance system and of the vehicle equipped with it and to facilitate the integration of said system into the vehicle.
  • the relative alignment of the two images consists in correcting, on the one hand, the direction of the optical axis of each of the cameras so that it is orthogonal to the direction of translation. which is the straight line connecting the two cameras and on the other hand the three angles of each camera (roll, pitch and yaw).
  • the optical axis of each of the two cameras undergoes a correction so as to be parallel (and not orthogonal) to the translation direction (reference line connecting the optical center of the camera between times t-1 and t, and which corresponds to the overall direction of movement of the vehicle between the two shots) and only the roll must also be corrected, the pitch and the yaw being corrected by the alignment of the two optical axes on the reference line.
  • This correction has the effect of facilitating the matching: the points at infinity are indeed in the same place on both images.
  • Another difference between the invention and the state of the art consists in correcting the images in polar coordinates.
  • This rectification is made possible by the fact that the epipoles are located in the immediate vicinity of the optical axis of the camera at t as at t-1 (indeed, a car moves mainly along its longitudinal axis so the epipoles remain close of the image plane).
  • the epipoles are located at infinity, very far from the optical axes of the cameras, and only a planar rectification is performed.
  • This passage in polar coordinates facilitates the matching of the image points by reducing searches to a single coordinate.
  • the passage from disparity to depth is also simplified: it is then a simple product cross. This provides a system and a process faster and less greedy computing resources.
  • the rotation matrix and the translation vector between the two images can, in the method according to the invention, be obtained in various ways, for example:
  • GPS Global Positionning System
  • inertial sensor an inertial sensor present in the vehicle
  • the search for a second point corresponding to a first distinctive point is limited to a neighborhood of points around a search starting point situated in the same place, in the second image, as the first point. on the first image, this neighborhood being for example limited to a radius of 100 pixels.
  • the search for matching points according to the invention, for non-distinctive points, after obtaining the rotation matrix and the translation vector, is limited to a line segment, in particular by virtue of the correction of the images in polar coordinates.
  • the method according to the invention preferably comprises:
  • determining a linear search zone of the corresponding second image point P a on the corrected current image by applying a predetermined disparity filter, which disparity filter is delimited by a DISP limit disparity chosen between a minimum disparity DISPmin (which can be expressed in number of pixels) given by a maximum depth of interest D ma x, and a maximum disparity DISPmax given by a minimum depth of interest D m in, the minimum interest depths D m in and maximum D ma x being chosen according to the driving assistance function to be implemented and / or chosen according to the location of the first image point on the image previous rectified and / or being deduced from a pair of prior images and a calculation of previous depth relative to the same object point; note that the term "depth” denotes the distance between the optical center of the single camera at time t (current image) and the projection on the reference line ⁇ of the observed object point (object point whose first point Pb considered is the image point on the previous image
  • l a denotes a pixel intensity of any point of the search area and its vicinity on the rectified current image
  • lb denotes the pixel intensity of the first image point Pb and its neighborhood on the previous image rectified.
  • neighborhborhood of a point designates a portion-preferably square of 10 pixels for example (ie a portion of 100 pixels in total) - of the image, and whose point in question is the center or a summit.
  • the "function representative of a difference between pixel intensities l a and lb" is for example the sum on the neighborhood of the first point Pb of the squares of the intensity differences between a point of this neighborhood and the associated point in the neighborhood.
  • the second point Pa considered.
  • the second image point P is searched corresponding to the first point considered Pb image is precisely the point of the search area for which the representative function of a difference in pixel intensities is minimal. Searching, for each first image point Pb, of the difference minimum of pixel intensities between this first image point and its neighborhood (on the previous rectified image) on the one hand and any point of the corresponding search zone and its neighborhood (on the current rectified image) on the other hand is performed by any suitable known minimum search method.
  • a denotes the distance (which can be expressed in number of pixels) on the current image aligned between the second image point P a and the reference line ⁇ ; in other words, a corresponds to the abscissa of the second image point on the current rectified (polar) image.
  • And b denotes the distance (which can be expressed in number of pixels) on the preceding aligned image, between the first point Pb and the reference line ⁇ ; it is therefore the abscissa of the first image point Pb on the previous image rectified (polar);
  • T denotes the norm of the translation vector between the preceding image and the current image, which, according to the invention, corresponds to the distance traveled by the vehicle as the crow flies between the two images, that is to say say between t and t-1.
  • a map of the depths can be established.
  • This step can be done in three stages, namely the establishment of a map of polar disparities representing the variable (a - b) in polar coordinates, then the establishment of a virtual map of the depths representing the depth D in coordinates polar and then the transformation in Cartesian coordinates of this virtual map of the depths established in polar coordinates.
  • the interest of the intermediate step of establishing a disparities map is to be able to have a map which, once transposed into Cartesian coordinates, makes it possible to track the object in the image.
  • D m in can for example be chosen equal to 1 00 m and D ma x equal to 500 m (or even 1000 m). If it is desired to detect objects at a short distance (for example when the assistance function to be implemented is emergency braking in the city), D m in may for example be chosen equal to 5 m and D ma x equal to 1 00m.
  • D m in and D ma x Another way of choosing D m in and D ma x is to consider the results of an earlier depth calculation for the object point considered, for example the depth calculation performed from the two immediately preceding images captured, respectively, at t -2 and t-3.
  • D ma x can be 100 meters or more (or infinity) for points in the middle or top of the image.
  • D ma x can be limited between 10 and 30 meters; this can also be the case depending on the scene observed for example if the vehicle is in a tunnel (information that can be given by the GPS).
  • D m in is advantageously equal to or greater than 5 meters because below 5 m the image is anyway fuzzy or the bonnet of the car gene the observation of the object (at least in one direction vehicle and in the case of a camera installed on the windshield of the vehicle).
  • Dmin and Dmax chosen, a minimum and maximum disparity are deduced, for example from the following equations:
  • T designates, as previously explained, the norm of the translation vector between the previous and current images.
  • the computation of the rotation uses at least one temporal flow deduced from the previous and current images as well as intrinsic calibration data from the single camera.
  • the standard of the translation vector T is deduced from the speed of the vehicle, provided by an odometer of the vehicle.
  • the method according to the invention further comprises an initial step of reducing the distortion of the previous and current images.
  • FIG. 1 is a logic diagram representing a method according to the invention in its entirety.
  • FIG. 2 is a logic diagram representing a calculation of the rotation and the translation between a first image and a second image in a method according to the invention.
  • FIG. 3 is a diagram illustrating the epipolar constraint with rotation and translation between two images.
  • FIG. 4 illustrates the epipolar constraint without rotation between two images and with a translation parallel to the reference line ⁇ .
  • FIG. 5 is a view from above of a motor vehicle equipped with a driving assistance system according to the invention, respectively at a time t (left part of the figure) and at a time t-1 ( right part of the figure).
  • FIG. 6 represents the camera, with its optical center O and its image plane at time t-1 and at time t, before and after alignment of the image planes.
  • FIG. 7 is a current image captured at a time t by a single camera of a driving assistance system according to the invention.
  • FIG. 8 is a previous image taken at a time t-1 by the single camera of the driver assistance system of FIG. 6.
  • FIG. 9 is a corrected current image resulting from the transformation into polar coordinates of the current image of FIG. 7.
  • FIG. 10 is a corrected previous image resulting from the transformation into polar coordinates of the preceding image of FIG. 8.
  • FIG. 11 is a diagram illustrating the correspondence between two image points of a corrected current image and of a corrected previous image and the observed object point.
  • FIG. 12 is a polar coordinate disparity map from the current and previous rectified images of FIGS. 8 and 9.
  • FIG. 13 is a virtual map of depths in polar coordinates coming from the disparity map of FIG. 11.
  • FIG. 14 is a depth map resulting from the transformation in Cartesian coordinates of the virtual depth map of FIG. 13.
  • the method according to the invention uses a single camera 1 embedded in a motor vehicle. It is advantageously a camera at a fixed rate, capturing for example 16 frames per second.
  • this single camera 1 can, for example, be fixed to a support disposed on the upper part of the windshield 2 of the vehicle and the single camera 1 is connected to a computer processing unit 100.
  • the intrinsic OXYZ mark of the camera 1 respectively at a time t (FIG. 5, drawing on the left) and at a time t-1 (FIG. 5, drawing on the right).
  • O designates the optical center of the camera 1
  • Z designates the optical axis thereof. This marker is only linked to camera 1.
  • the camera mark may coincide with a vehicle mark in which the Z axis corresponds to the roll axis (longitudinal axis) of the vehicle, the X axis corresponds to the pitch axis (or transverse axis) of the vehicle. vehicle, the Y axis corresponds to the yaw axis of the vehicle.
  • the camera is slightly oriented towards the road, that is to say that the axis X of the camera and the axis of pitch of the vehicle are merged but that this is not the case of the Z axis of the camera and the axis of yaw of the vehicle, the camera frame having undergone a small rotation around the pitch axis (or X-axis), 1 0, for example for a light vehicle until at 13 ° for a heavy weight, depending on the height of the camera relative to the road and therefore with respect to the tread of the tires.
  • the method according to the invention illustrated in FIG. 1 comprises a first step 10 for reducing the distortion of the previous 7 and current 8 images captured by the single camera 1. Distortion reduction can use radial, tangential and prismatic parameters. Such a step is known per se and will not be detailed here. In practice, undistorted images are not generated; only the calculations are done.
  • the method of FIG. 1 then comprises a second step 12 for calculating the epipolar constraint between a current image 8 picked up at time t by the single camera 1 and a previous image 7 picked up at time t-1 by the camera. unique.
  • This step 12 makes it possible to obtain the translation and the rotation between the previous image 7 and the current image 8.
  • the detail of this step 12 is illustrated in FIG. 2.
  • a temporal flow 120 is firstly deduced from the images previous 7 and current 8, which flow makes it possible to establish a fundamental matrix F, step122.
  • Intrinsic calibration data, step 124, of the single camera 1 are then used to calculate an essential matrix E, step 126, from which are then deduced, in step 128, the rotation R and a multiple aT of the translation.
  • step 130 of the vehicle provided by an odometer embedded in the vehicle makes it possible to deduce, during step 132, the translation T.
  • a change of reference and unit links the fundamental matrix F, which "works” in pixels, and the essential matrix E, which "works” in meters.
  • This reference change provides the rotation R and the velocity vector T [t x , t y , t z ].
  • FIG. 3 illustrates the epipolar constraint in the case where a rotation occurs between the two images to be compared.
  • an image point A of the current image it is possible to limit searches of the corresponding image point B of the preceding image to the epipolar line 30.
  • This epipolar line is referenced 32 in FIG. 4 which represents the case where no rotation occurs between the two images or when the rotation is corrected by aligning the two images. Taking account of the translation also makes it possible to limit the search area to a segment 34 of this epipolar line 32.
  • the index 2 refers to the optical axis of the camera and to the (previous) image 7 captured at time t-1
  • index 4 refers to to the aligned optical axis of the camera at time t-1 and at the previous aligned image T (or first aligned image)
  • the index 1 refers to the optical axis of the camera and to the (current) image 8 captured at time t
  • the index 3 refers to the aligned optical axis of the camera at time t and the current image aligned 8 '(or second aligned image).
  • the letter R refers to the rotation.
  • R_21 denotes the rotation of the vector 1 in the reference 2
  • R 42 the rotation of the vector 2 in the reference 4, etc.
  • T refers to the translation, so that T 21 denotes the translation of 1 in the reference 2, T 42 the translation of 2 in the reference 4, etc.
  • P designates any point of the space, P1 denoting this point in the reference 1, P2 this point in the reference 2, and so on.
  • RX 42 translates the rotation of the mark 2 in the mark 4 around the X axis, RY_42 around the Y axis, etc.
  • RY_42 [cos (ry_42) 0 sin (ry_42)
  • R_42 RY_42 * RX_42
  • rx_42 atan (ty_21 / tz_21)
  • ry_42 atan (- tx_21 / (tz_21 * cos (rx_42) + ty_21 * sin (rx_42)))
  • rx_31 atan (ty_12 / tz_12)
  • ry_31 atan (- tx_12 / (tz_12 * cos (rx_31) + ty_12 * sin (rx_31)))
  • R_34 R_31 * R_12 * R_24;
  • rz_31 rz_43 / 2;
  • rz_42 -rz_43 / 2;
  • the undistorted preceding and current images from step 10 can then be transformed, in step 14 (see FIG. 1), into images in the previous aligned 7 'and current aligned 8'.
  • the method then comprises a step 16 of generating a corrected previous image 7 "(visible in FIG. 9) by transforming, in polar coordinates, the previous image (FIG. 7) aligned 7 'established in Cartesian coordinates.
  • step 14 comprises generating a corrected current image 8 "(FIG. 8) by transformation into polar coordinates of the current image (FIG. 6) aligned 8 'provided in Cartesian coordinates.
  • the method then comprises the search 18 for correspondence between image points of the corrected current image 8 "and the corrected preceding image 7", this search consisting in searching for the minimum of at least one function representative of a difference (for for example, the sum, on the neighborhood of the point considered, of the differences squared) between the intensities of pixels Ia and Ib, denoting a pixel (otherwise called image point P a ) of the current image situated on the epipolar line of point Pb of the previous image and on a segment of this line limited by a disparity filter defined by:
  • the method then comprises a step 20 of producing a polar disparity map (FIG. 12) which corresponds to the subtraction (a-b) of the abscissa in polar coordinates of the points in correspondence. From this map of polar disparity can be deduced, in step 22 a virtual map of depths D in polar coordinates ( Figure 13), thanks to the equation:
  • step 23 of this virtual map of depths into Cartesian coordinates provides the desired depth map that can be observed in FIG.
  • the method for producing the depth map D is performed by a computer processing unit 100 connected to the single camera 1.

Landscapes

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

Abstract

L'invention concerne un procédé de réalisation d'une carte de profondeurs à partir d'images captées par une unique caméra embarquée dans un véhicule automobile, comprenant les étapes suivantes : • calcul (12) de la rotation et de la translation entre une image précédente (7) captée par la caméra à l'instant t-1 et une image actuelle (8) captée par la caméra à l'instant t; • alignement relatif (14) des deux images parallèlement à une ligne de référence (Δ) passant par le centre optique (OM) de la caméra à l'instant t-1 et par le centre optique (Ot) de la caméra à l'instant t; et alignement relatif en roulis autour de la ligne de référence (Δ); • transformation (16) de l'image précédente alignée (7'), établie en coordonnées cartésiennes, en une image précédente rectifiée (7") établie en coordonnées polaires avec pour centre le point épipôle de l'image précédente alignée (7'), transformation analogue de l'image actuelle alignée (8') en une image actuelle rectifiée (8"); • recherche de correspondance entre points images de l'image précédente rectifiée (7") et l'image actuelle rectifiée (8") et calcul d'une profondeur (D) d'un point objet observé correspondant aux points images ainsi mis en correspondance.

Description

Procédé de réalisation d'une carte de profondeurs à partir d'images successives d'une caméra unique (mono) embarquée dans un véhicule automobile.
Il est connu d'équiper les véhicules automobiles d'une ou plusieurs caméras pointées vers l'avant du véhicule aux fins d'offrir diverses fonctions d'aide à la conduite. Les images captées par ces caméras peuvent être ainsi analysées pour détecter, par exemple, le franchissement d'une ligne blanche par le véhicule ou détecter divers obstacles (piéton, véhicule arrêté sur le bas-côté, etc.) ou encore pour évaluer la distance avec le véhicule précédent et, le cas échéant, émettre des alarmes à destination du conducteur, ralentir (en cas de conduite avec un régulateur de vitesse), voire déclencher un freinage d'urgence, piloter la direction ou encore piloter les suspensions du véhicule en fonction du profil de la route. Une donnée importante tirée des images captées par les caméras embarquées est la distance (ou profondeur) entre le véhicule et un objet observé.
Pour cela, il est connu d'utiliser deux caméras (système stéréoscopique) écartées l'une de l'autre et dont les axes optiques sont orthogonaux à la droite reliant les centres optiques des deux caméras (cette droite peut être un axe transversal du véhicule) et de mettre en application les règles de la géométrie épipolaire après rectification planaire (épipôles à l'infini).
La géométrie épipolaire est un modèle mathématique de géométrie, qui décrit les relations géométriques de différentes images du même objet, prises simultanément de différents points d'observation. La géométrie épipolaire permet de décrire les relations entre les pixels en correspondance - c'est-à-dire ceux formés sur chacune des images par un seul et même point de l'objet observé.
Le plan qui contient les deux centres de projection et le point objet s'appelle plan épipolaire. Celui-ci coupe chacune des deux images selon une droite, la droite épipolaire. Ainsi, pour un point donné sur une image, le point en correspondance se trouve sur la droite épipolaire de l'autre image. Cette relation, appelée contrainte épipolaire permet, lorsque l'on recherche dans une deuxième image le « deuxième » point correspondant à un « premier » point d'une première image, de limiter la recherche à une droite (la droite épipolaire).
Il est connu d'utiliser la contrainte épipolaire pour établir les relations entre deux images captées au même instant par deux caméras indépendantes (stéréo) observant la même scène, afin de restituer l'information tridimensionnelle à partir d'images (2D). En d'autres termes, il est connu d'utiliser la parallaxe entre deux caméras pour la génération d'images en trois dimensions ou pour le calcul de profondeur entre un objet et un observateur. Dans le secteur automobile, l'analyse épipolaire de deux images stéréo d'une scène à l'avant d'un véhicule permet, par exemple, de déterminer la distance entre le véhicule et un obstacle présent dans ladite scène. Les deux caméras font alors partie d'un système global appelé système d'aide à la conduite.
Un inconvénient majeur de cette technique connue est qu'elle nécessite l'utilisation de deux caméras, qui grèvent à la fois le prix de revient et la masse du véhicule, et dont l'encombrement pose des problèmes d'intégration. Elle présente en revanche l'avantage de permettre une évaluation de la profondeur sans que le véhicule soit en mouvement et de fournir des résultats très précis : la profondeur est alors calculée au cm près.
Dans toute la description, on entend par « points images en correspondance » ou par « points images correspondants », un premier point d'une première image d'une scène observée et un deuxième point d'une deuxième image de cette même scène, les premier et deuxième points étant les images d'un même point objet de la scène observée.
II est aussi connu, tant en stéréo (c'est-à-dire dans un système utilisant deux caméras qui prennent et comparent des images simultanées d'une même scène) qu'en mono (c'est-à-dire dans un système n'utilisant qu'une seule caméra qui prend et compare des images successives d'une même scène), d'établir des correspondances éparses entre des points images distinctifs de deux images. On parle alors de flux optiques spatiaux pour un système stéréo, et de flux optiques temporels dans le cas d'un système mono. L'inconvénient des techniques de flux connues est que ces flux optiques ne peuvent être obtenus que pour certains points, qui sont distinctifs (points à fort contraste). La mise en correspondance de certains points images non distinctifs peut être très difficile, notamment lorsque les points objets correspondants sont situés sur une droite ou un plan uniforme et uniformément éclairé. Ainsi par exemple, il est malaisé voire impossible de repérer deux points en correspondance qui correspondent à un point objet quelconque situé sur la tranche uniforme du tablier d'un pont enjambant la route et sous lequel le véhicule s'apprête à passer (non unicité du point et de son voisinage).
Pour certains objets, il est ainsi très difficile d'obtenir un flux optique temporel et la carte de flux générée pour une scène contenant de tels objets est très clairsemée. Les techniques connues de flux optiques ne permettent pas d'obtenir une carte de flux complète. Généralement, rarement plus de 2 % de la scène observée est couverte par une carte de flux dans un système mono. Ces techniques ne peuvent donc pas être utilisées dans une approche globale, c'est-à-dire pour établir une carte de flux ou une carte de profondeur complète. Elles servent essentiellement à faire du traçage d'objet, c'est-à-dire à suivre un objet dont les points images sont distinctifs. D'autres solutions pour obtenir la distance entre le véhicule et un obstacle ont été proposées, comme l'intégration d'un radar dans le pare-choc du véhicule. Un équipement supplémentaire est alors nécessaire, qui entraîne un surcoût, une augmentation de masse et la nécessité d'ajouter au moins deux briques de programmation au calculateur principal du véhicule.
L'invention vise à pallier ces inconvénients en proposant un procédé de réalisation d'une carte de profondeurs aussi fiable et précis que les procédé connus, pouvant être mis en œuvre dans un système d'aide à la conduite moins onéreux, moins encombrant et plus léger. Le procédé selon l'invention répond en outre à une approche globale en ce qu'il permet d'obtenir une carte de profondeurs complète, y compris lorsque la scène observée comprend des objets à faible contraste pour lesquels l'obtention de flux optiques est impossible.
Un autre objectif de l'invention est de fournir un procédé nécessitant peu de temps de calcul et peu de ressources informatiques pour son exécution.
A cette fin, l'invention propose un procédé de réalisation d'une carte de profondeurs à partir d'une première image et d'une deuxième image captées par une caméra embarquée dans un véhicule automobile, comprenant les étapes suivantes :
• obtention d'une matrice rotation et d'un vecteur translation entre les deux images, et alignement relatif des deux images de façon à obtenir une première image alignée et une deuxième image alignée ;
• recherche de correspondance de points images entre la première image alignée et la deuxième image alignée ;
• pour chaque paire de points images en correspondance, calcul d'une profondeur du point objet observé correspondant (c'est-à-dire du point objet observé dont les points en correspondance considérés sont les images) à partir d'au moins une donnée relative à la position sur la première image alignée du premier point image et d'au moins une donnée relative à la position du deuxième point image correspondant sur la deuxième image alignée.
Le procédé selon l'invention est remarquable en ce que :
• la première et la deuxième image sont captées par une caméra unique à des instants différents, la deuxième image étant une image actuelle captée à un instant t, la première image étant une image précédente captée à un instant t-1 , la première image alignée étant par conséquent une image précédente alignée et la deuxième image alignée étant une image actuelle alignée ;
• le vecteur translation est le vecteur reliant le centre optique de la caméra unique à l'instant t-1 et le centre optique de la caméra unique à l'instant t ; en conséquence, la norme du vecteur translation correspond à la distance parcourue à vol d'oiseau par le véhicule entre les deux images c'est-à-dire entre les instants t et t-1 ; • l'alignement relatif des deux images se fait parallèlement à une ligne de référence Δ correspondant à une direction globale de déplacement du véhicule passant par le centre optique de la caméra unique à l'instant t-1 et par le centre optique de la caméra unique à l'instant t (autrement dit, la ligne de référence Δ est la direction du vecteur translation) ; on entend par « aligner une image parallèlement à la ligne de référence » le fait de modifier de façon informatique cette image de façon à ce que l'axe optique de l'image modifiée soit parallèle à la ligne de référence ; l'alignement relatif des deux images comprend également un alignement en roulis des deux images c'est-à-dire une modification des images en rotation autour de la ligne de référence (ou de leurs axes optiques préalablement alignés sur cette ligne de référence) de façon à supprimer un éventuel décalage angulaire entre les deux images autour de cette ligne de référence ;
• le procédé comprend une étape de transformation de l'image précédente alignée, établie en coordonnées cartésiennes, en une image précédente rectifiée, établie en coordonnées polaires avec pour centre le point épipôle de l'image précédente alignée (c'est-à-dire l'intersection entre l'image alignée à l'instant t-1 et la ligne de référence Δ) ; il comprend de même une étape de transformation de l'image actuelle alignée, établie en coordonnées cartésiennes, en une image actuelle rectifiée, établie en coordonnées polaires avec pour centre le point épipôle de l'image actuelle alignée (c'est-à-dire l'intersection entre l'image alignée à l'instant t et la ligne de référence Δ) ;
• la recherche de correspondance de points images et le calcul de profondeur s'effectuent sur les images actuelle et précédente rectifiées, c'est-à-dire en coordonnées polaires.
L'invention s'étend à un système d'aide à la conduite comprenant d'une part une caméra adaptée pour être embarquée dans un véhicule automobile pour la capture d'images d'une scène extérieure, par exemple à l'avant du véhicule, et d'autre part une unité informatique de traitement pour le traitement des images captées par la caméra aux fins d'évaluation d'une distance entre le véhicule et un point objet observé. Le système selon l'invention est remarquable en ce qu'il comprend une unique caméra et en ce que l'unité de traitement est configurée pour exécuter un procédé selon l'invention, tel que défini ci-avant et tel que précisé ci-après.
L'idée de base ayant présidé à la conception de l'invention est donc d'appliquer selon un procédé défini la contrainte épipolaire à deux images captées par une même caméra embarquée (mono) à des instants différents, alors que les systèmes stéréoscopiques appliquent cette contrainte sur des images prises simultanément depuis des points de vue latéralement translatés à l'aide d'une rectification planaire avec des épipôles à l'infini et que les systèmes mono connus ne fonctionnent qu'avec des techniques de flux (et ne sont donc pas capables de fournir des cartes de profondeurs complètes). L'utilisation d'une seule caméra permet de réduire le prix de revient du système d'aide à la conduite et du véhicule qui en est équipé et de faciliter l'intégration dudit système dans le véhicule.
A noter que dans les procédés antérieurs utilisant des techniques de flux (en mono), seuls les points distinctifs sont mis en correspondance et l'étape de recherche de correspondance entre points images est limitée à la recherche de flux, alors que dans l'invention, cette étape utilise la rotation et la translation préalablement obtenues pour rechercher des correspondances entre points images non distinctifs.
Une autre différence entre l'invention et l'état de la technique intervient dans l'étape d'alignement relatif des première et deuxième images. Dans les procédés connus utilisant un système stéréoscopique, l'alignement relatif des deux images consiste à corriger, d'une part la direction de l'axe optique de chacune des caméras de façon à ce que celui-ci soit orthogonal à la direction de translation qui est la droite reliant les deux caméras et d'autre part les trois angles de chaque caméra (roulis, tangage et lacet). Dans l'invention, l'axe optique de chacune des deux caméras subit une correction de façon à être parallèle (et non orthogonal) à la direction de translation (ligne de référence reliant le centre optique de la caméra entre les instants t-1 et t, et qui correspond à la direction globale de déplacement du véhicule entre les deux prises de vue) et seul le roulis doit également être corrigé, le tangage et le lacet étant corrigés par l'alignement des deux axes optiques sur la ligne de référence.
Cette correction a pour effet de faciliter la mise en correspondance : les points à l'infini sont en effet au même endroit sur les deux images.
Une autre différence entre l'invention et l'état de la technique consiste à rectifier les images en coordonnées polaires. Cette rectification est rendue possible par le fait que les épipôles sont situés à proximité immédiate de l'axe optique de la caméra à t comme à t-1 (en effet, une voiture se déplace principalement selon son axe longitudinal donc les épipôles restent à proximité du plan image). A l'inverse, dans les systèmes stéréoscopiques connus, les épipôles sont situés à l'infini, très loin des axes optiques des caméras, et seule une rectification planaire est effectuée.
Ce passage en coordonnées polaires, selon l'invention, permet de faciliter la mise en correspondance des points images en réduisant les recherches à une seule coordonnée. Le passage de la disparité à la profondeur est aussi simplifié : il s'agit alors d'un simple produit en croix. On dispose ainsi d'un système et d'un procédé plus rapide et moins gourmand en ressources informatiques. La matrice rotation et le vecteur translation entre les deux images peuvent, dans le procédé selon l'invention, être obtenus de diverses façons, par exemple :
• par analyse de données fournies par un autre capteur, tel qu'un capteur GPS (« Geo Positionning System » en anglais, ou système de localisation géographique) ou un capteur inertiel, présent dans le véhicule ; ou
• par application des principes de la géométrie épipolaire à une pluralité de couples (en pratique, huit couples) de points distinctifs correspondants pour lequel un flux temporel peut être préalablement obtenu.
Dans les techniques de flux classiques, la recherche d'un deuxième point correspondant à un premier point distinctif est limitée à un voisinage de points autour d'un point de départ de recherche situé au même endroit, sur la deuxième image, que le premier point sur la première image, ce voisinage étant par exemple limité à un rayon de 100 pixels. La recherche de points en correspondance selon l'invention, pour des points non distinctifs, après obtention de la matrice rotation et du vecteur translation, est limitée à un segment de droite, notamment grâce à la rectification des images en coordonnées polaires.
Plus particulièrement concernant la recherche de correspondance sur les images rectifiées (hors points distinctifs pour chacun desquels un flux temporel peut être obtenu), le procédé selon l'invention comprend de préférence :
· pour chaque premier point image Pb de l'image précédente rectifiée, détermination d'une zone de recherche linéaire du deuxième point image Pa correspondant sur l'image actuelle rectifiée, par application d'un filtre de disparité prédéterminé, lequel filtre de disparité est délimité par une disparité limite DISP choisie entre une disparité minimale DISPmin (qui peut être exprimée en nombre de pixels) donnée par une profondeur d'intérêt maximale Dmax, et une disparité maximale DISPmax donnée par une profondeur d'intérêt minimale Dmin, les profondeurs d'intérêts minimale Dmin et maximale Dmax étant choisies selon la fonction d'aide à la conduite à mettre en œuvre et/ou étant choisies en fonction de l'emplacement du premier point image sur l'image précédente rectifiée et/ou étant déduites d'une paire d'images antérieures et d'un calcul de profondeur antérieur relatif au même point objet ; à noter que le terme « profondeur », désigne la distance entre le centre optique de la caméra unique à l'instant t (image actuelle) et la projection sur la ligne de référence Δ du point objet observé (point objet dont le premier point Pb considéré est le point image sur l'image précédente) ; les profondeurs d'intérêt minimale et maximale définissent donc des plans d'intérêt orthogonaux à la ligne de référence Δ et situés à la distance Dmin ou Dmax, respectivement, du centre optique de la caméra à l'instant t ;
• pour chaque premier point image Pb et un voisinage dudit premier point Pb, recherche sur la zone de recherche linéaire précédemment déterminée, d'un minimum d'au moins une fonction représentative d'une différence entre des intensités de pixel la et lb, où la désigne une intensité de pixel d'un point quelconque de la zone de recherche et de son voisinage sur l'image actuelle rectifiée et lb désigne l'intensité de pixel du premier point image Pb et de son voisinage sur l'image précédente rectifiée. L'expression « voisinage d'un point » désigne une portion -de préférence carrée de 10 pixels de côté par exemple (soit une portion de 100 pixels au total)- de l'image, et dont le point en question est le centre ou un sommet. La « fonction représentative d'une différence entre des intensités de pixel la et lb » est par exemple la somme sur le voisinage du premier point Pb des carrés des différences d'intensités entre un point de ce voisinage et le point associé dans le voisinage du deuxième point Pa considéré. Le deuxième point image Pa recherché correspondant au premier point image Pb considéré est justement le point de la zone de recherche pour lequel la fonction représentative d'une différence d'intensités de pixel est minimale. La recherche, pour chaque premier point image Pb, du minimum de différence d'intensités de pixels entre ce premier point image et son voisinage (sur l'image précédente rectifiée) d'une part et tout point de la zone de recherche correspondante et son voisinage (sur l'image actuelle rectifiée) d'autre part est effectuée par toute méthode connue appropriée de recherche de minimum.
La correspondance entre les points images des deux images rectifiées étant alors établie, on peut en déduire la profondeur D entre le véhicule et le point objet observé, D étant plus précisément la distance entre le centre optique de la caméra unique à l'instant t (au moment de l'image actuelle) et une projection sur la ligne de référence Δ du point objet observé (point objet dont les points images en correspondance considérés sont les images à t et t-1 ). Cette profondeur D est par exemple donnée par l'équation :
D = b x T ÷ a - b)
Où a désigne la distance (qui peut être exprimée en nombre de pixels) sur l'image actuelle alignée, entre le deuxième point image Pa et la ligne de référence Δ ; autrement dit a correspond à l'abscisse du deuxième point image sur l'image actuelle rectifiée (polaire).
Et b désigne la distance (qui peut être exprimée en nombre de pixels) sur l'image précédente alignée, entre le premier point Pb et la ligne de référence Δ ; il s'agit donc de l'abscisse du premier point image Pb sur l'image précédente rectifiée (polaire) ; Et T désigne la norme du vecteur translation entre l'image précédente et l'image actuelle, qui, selon l'invention, correspond à la distance parcourue par le véhicule à vol d'oiseau entre les deux images, c'est-à-dire entre t et t-1 .
En d'autres termes, comme suite à l'étape de recherche des minima de la différence d'intensités de pixel pour tout premier point Pb, qui permet d'établir des correspondances entre les deux images (et donne donc a et b pour chaque point objet observé), on peut établir une carte des profondeurs. Cette étape peut être réalisée en trois temps, à savoir l'établissement d'une carte des disparités polaires représentant la variable (a - b) en coordonnées polaires, puis l'établissement d'une carte virtuelle des profondeurs représentant la profondeur D en coordonnées polaires puis la transformation en coordonnées cartésiennes de cette carte virtuelle des profondeurs établie en coordonnées polaires. L'intérêt de l'étape intermédiaire d'établissement d'une carte des disparités est de pouvoir disposer d'une carte qui, une fois transposée en coordonnées cartésiennes, permet de faire du suivi d'objet dans l'image.
Concernant la détermination préalable du filtre de disparité, selon la fonction d'aide à la conduite concernée, il peut être intéressant de détecter des objets à grande distance (par exemple lorsque la fonction d'aide à implémenter est le freinage d'urgence sur autoroute). Dans ce cas, Dmin peut par exemple être choisi égal à 1 00 m et Dmax égal à 500 m (voire 1 000 m). Si l'on souhaite détecter des objets à courte distance (par exemple lorsque la fonction d'aide à implémenter est le freinage d'urgence en ville), Dmin peut par exemple être choisi égal à 5 m et Dmax égal à 1 00m. Ces exemples sont donnés à titre purement indicatif et non limitatif.
Une autre façon de choisir Dmin et Dmax est de considérer les résultats d'un calcul de profondeur antérieur pour le point objet considéré, par exemple le calcul de profondeur effectué à partir des deux images immédiatement précédentes captées, respectivement, à t-2 et t-3.
Une autre façon de choisir Dmin et Dmax est de tenir compte de l'emplacement des points considérés sur l'image. Dmax peut être de 100 mètres ou plus (voire l'infini) pour des points situés au milieu ou en haut de l'image. Pour des points situés en bas de l'image (au niveau de la route) Dmax peut être limité entre 10 et 30 mètres ; tel peut aussi être le cas selon la scène observée par exemple si le véhicule est dans un tunnel (information qui peut être donnée par le GPS). Par ailleurs Dmin est avantageusement égal ou supérieur à 5 mètres car en-dessous de 5 m l'image est de toutes façons floue ou le capot de la voiture gène l'observation de l'objet (à tout le moins dans une direction longitudinale du véhicule et dans le cas d'une caméra installée sur le pare-brise du véhicule). Dmin et Dmax choisis, une disparité minimale et maximale sont déduites, par exemple des équations suivantes :
DISPmin = b x T /Dmax
DISPmax = b x T /Dmin
Où b désigne, comme précédemment expliqué, la distance sur l'image précédente alignée, du premier point image Pb par rapport à la ligne de référence Δ, soit l'abscisse du premier point image sur l'image précédente rectifiée ;
Et T désigne, comme précédemment expliqué, la norme du vecteur translation entre les images précédente et actuelle.
Avantageusement et selon l'invention, le calcul de la rotation utilise au moins un flux temporel déduit des images précédente et actuelle ainsi que des données de calibration intrinsèque de la caméra unique. Avantageusement et selon l'invention, la norme du vecteur translation T est déduite de la vitesse du véhicule, fournie par un odomètre du véhicule.
De préférence, le procédé selon l'invention comprend de plus une étape initiale de réduction de la distorsion des images précédente et actuelle.
D'autres détails et avantages de la présente invention apparaîtront à la lecture de la description suivante, qui se réfère aux dessins schématiques annexés et porte sur des modes de réalisation préférentiels, fournis à titre d'exemples non limitatifs. Sur ces dessins :
- La figure 1 est un logigramme représentant un procédé selon invention dans son intégralité.
- La figure 2 est un logigramme représentant un calcul de la rotation et de la translation entre une première image et une deuxième image dans un procédé selon invention.
- La figure 3 est un schéma illustrant la contrainte épipolaire avec rotation et translation entre deux images.
- La figure 4 illustre la contrainte épipolaire sans rotation entre deux images et avec une translation parallèle à la ligne de référence Δ.
- La figure 5 est une vue de dessus d'un véhicule automobile équipé d'un système d'aide à la conduite selon l'invention, respectivement à un instant t (partie gauche de la figure) et à un instant t-1 (partie droite de la figure).
- La figure 6 représente la caméra, avec son centre optique O et son plan image à l'instant t-1 et à l'instant t, avant et après alignement des plans images. - La figure 7 est une image actuelle captée à un instant t par une caméra unique d'un système d'aide à la conduite selon invention.
- La figure 8 est une vue image précédente captée à un instant t-1 par la caméra unique du système d'aide à la conduite de la figure 6.
- La figure 9 est une image actuelle rectifiée résultant de la transformation en coordonnées polaires de l'image actuelle de la figure 7.
- La figure 10 est une image précédente rectifiée résultant de la transformation en coordonnées polaires de l'image précédente de la figure 8.
- La figure 11 est un schéma illustrant la correspondance entre deux points images d'une image actuelle rectifiée et d'une image précédente rectifiée et le point objet observé.
- La figure 12 est une carte de disparité en coordonnées polaires issue des images rectifiées actuelle et précédente des figures 8 et 9.
- La figure 13 est une carte virtuelle de profondeurs en coordonnées polaires issue de la carte de disparité de la figure 11 .
- La figure 14 est une carte de profondeurs issue de la transformation en coordonnées cartésiennes de la carte de profondeur virtuelle de la figure 13.
Le procédé selon invention utilise une caméra unique 1 embarquée dans un véhicule automobile. Il s'agit avantageusement d'une caméra à une cadence fixe, captant par exemple 16 images par seconde. Comme on peut le constater à la figure 5, cette caméra unique 1 peut, par exemple, être fixée à un support disposé sur la partie supérieure du pare-brise 2 du véhicule et la caméra unique 1 est reliée à une unité de traitement informatique 100. Est également représenté à la figure 5, le repère OXYZ intrinsèque de la caméra 1 , respectivement à un instant t (figure 5, dessin de gauche) et à un instant t-1 (figure 5, dessin de droite). Dans ce repère, O désigne le centre optique de la caméra 1 et Z désigne l'axe optique de celle-ci. Ce repère n'est lié qu'à la caméra 1 . Le repère de la caméra peut se confondre avec un repère du véhicule dans lequel l'axe Z correspond à l'axe de roulis (axe longitudinal) du véhicule, l'axe X correspond à l'axe de tangage (ou axe transversal) du véhicule, l'axe Y correspond à l'axe de lacet du véhicule. En variante et de préférence, la caméra est légèrement orientée vers la route, c'est-à-dire que l'axe X de la caméra et l'axe de tangage du véhicule sont confondus mais que ce n'est pas le cas de l'axe Z de la caméra et de l'axe de lacet du véhicule, le repère de la caméra ayant subi une petite rotation autour de l'axe de tangage (ou axe X), de 1 0 par exemple pour un véhicule léger jusqu'à 13° pour un poids lourds, selon la hauteur de la caméra par rapport à la route et donc par rapport à la bande de roulement des pneus. Le procédé selon l'invention illustré à la figure 1 comprend une première étape 10 de réduction de la distorsion des images précédentes 7 et actuelles 8 captées par la caméra unique 1 . La réduction de la distorsion peut utiliser des paramètres radiaux, tangentiels et prismatiques. Une telle étape est connue en soi et ne sera donc pas détaillée ici. En pratique, les images non distordues ne sont pas générées ; seuls les calculs sont effectués.
Le procédé de la figure 1 comprend ensuite une deuxième étape 12 de calcul de la contrainte épipolaire entre une image actuelle 8 captée à l'instant t par la caméra unique 1 et une image précédente 7 captée à l'instant t-1 par la caméra unique. Cette étape 12 permet d'obtenir la translation et la rotation entre l'image précédente 7 et l'image actuelle 8. Le détail de cette étape 12 est illustré à la figure 2. Un flux temporel 120 est tout d'abord déduit des images précédente 7 et actuelle 8, lequel flux permet d'établir une matrice fondamentale F, étape122. Des données de calibration intrinsèque, étape 124, de la caméra unique 1 sont alors utilisées pour calculer une matrice essentielle E, étape 126, dont sont ensuite déduits, lors de l'étape 128, la rotation R et un multiple aT de la translation. L'utilisation de la vitesse, étape 130 du véhicule fournie par un odomètre embarqué dans le véhicule permet de déduire, lors de l'étape 132, la translation T. En d'autres termes, un changement de repère et d'unité lie la matrice fondamentale F, laquelle « travaille » en pixels, et la matrice essentielle E, qui « travaille » en mètre. Ce changement de repère fournit la rotation R et le vecteur vitesse T[tx, ty, tz].
La figure 3 illustre la contrainte épipolaire dans le cas où une rotation se produit entre les deux images à comparer. Considérant un point image A de l'image actuelle, on peut limiter les recherches du point image B correspondant de l'image précédente à la ligne épipolaire 30. Cette ligne épipolaire est référencée 32 à la figure 4 qui représente le cas où aucune rotation ne se produit entre les deux images ou lorsque la rotation est corrigée par alignement des deux images. La prise en compte de la translation permet de surcroît de limiter la zone de recherche à un segment 34 de cette ligne épipolaire 32.
Dans toute la suite et comme illustré à la figure 5, l'indice 2 fait référence à l'axe optique de la caméra et à l'image (précédente) 7 captée à l'instant t-1 , l'indice 4 fait référence à l'axe optique aligné de la caméra à l'instant t-1 et à l'image précédente alignée T (ou première image alignée) ; l'indice 1 fait référence à l'axe optique de la caméra et à l'image (actuelle) 8 captée à l'instant t, l'indice 3 fait référence à l'axe optique aligné de la caméra à l'instant t et à l'image actuelle alignée 8' (ou deuxième image alignée). La lettre R fait référence à la rotation. Ainsi R_21 désigne la rotation du vecteur 1 dans le repère 2, R 42 la rotation du vecteur 2 dans le repère 4, etc. La lettre T fait référence à la translation, de sorte que T 21 désigne la translation de 1 dans le repère 2, T 42 la translation de 2 dans le repère 4, etc. La lettre P désigne un point quelconque de l'espace, P1 désignant ce point dans le repère 1, P2 ce point dans le repère 2, etc.
P2 = (R_21 * P1) + T_21
P4 = (R_42 * P2) + T_42, avec T_42 = 0
P3 = (R_31 * P1) + T_31 avec T_31 = 0
P4 = (R_43 * P3) + T 43 avec R_43 = 1 car les images sont alors alignées et T_43 = [0;0 ;norm(T_21)]
Ce qui donne :
P2 = (R_21 * P1) + T_21
P4 = R_42 * P2
P3 = R_31 * P1
P4 = P3 + [0;0 ;norm(T_21)]
Puis
R_24 * P4 = (R_21 * R_13 * P3) + T_21
P4 = P3 + [0;0 ;norm(T_21)]
Puis
P4 = (R_42 * R_21 * R_13 * P3) + R_42*T_21
P4 = P3 + [0;0 ;norm(T_21)]
Et pour finir:
R_42*T_21 = [ 0; 0 ; norm(T_21)]
La matrice de passage R_42 (du repère 2 vers le repère 4) s'écrit : R_42 = RX_42 RY_42 RZ_42
où RX 42 traduit la rotation du repère 2 dans le repère 4 autour de l'axe X, RY_42 autour de l'axe Y, etc.
Considérons rz_42 = 0 (pas de rotation autour de l'axe Z entre 2 et 4) RX_42 = [ 1 , 0 0
0 cos(rx_42), -sin(rx_42)
0 sin(rx_42), cos(rx_42) ] ;
RY_42 = [ cos(ry_42) 0 sin(ry_42)
0 1 0
-sin(ry_42) 0 cos(ry_42) ] ;
R_42 = RY_42*RX_42
(R_42*T_21) = [0;0;norm(T_21)] ;
EQ1 :
tx_21*cos(ry_31) + tz_21*cos(rx_42)*sin(ry_42) + ty_21*sin(rx_42)*sin(ry_42) EQ2 : ty_21 *cos(rx_42) - tz_21 *sin(rx_42) EQ3 : tz_21 *cos(rx_42)*cos(ry_42) - tx_21 *sin(ry_42) - (abs(tx_21 )A2 + abs(ty_21 )A2 + abs(tz_21 )A2)A(1 /2) + ty_21 *cos(ry_42)*sin(rx_42)
EQ2 : ty_21 *cos(rx_42) - tz_21 *sin(rx_42) = 0
sin(rx_42)/cos(rx_42) = ty_21/tz_21 = tan(rx_42)
rx_42 = atan (ty_21 /tz_21 )
EQ1 :
tx_21 *cos(ry_42) + tz_21 *cos(rx_42)*sin(ry_42) + ty_21 *sin(rx_42)*sin(ry_42)= 0 sin(ry_42)/cos(ry_42) = - tx_21 / (tz_21 *cos(rx_42)+ ty_21 *sin(rx_42)) = tan(ry_42) tan(ry_42) = - tx_21 / (tz_21 *cos(rx_42)+ ty_21 *sin(rx_42))
ry_42 = atan(- tx_21 / (tz_21 *cos(rx_42)+ ty_21 *sin(rx_42)))
On peut faire de même pour R 31
rx_31 = atan(ty_12/tz_12)
ry_31 = atan(- tx_12 / (tz_12*cos(rx_31 )+ ty_12*sin(rx_31 )))
Pour le roulis, on applique la moitié du roulis restant à chaque image rectifiée 3 et 4.
R_34 = R_31 *R_12*R_24 ;
On peut trouver rz_43 à partir de la matrice de rotation R 43
rz_31 = rz_43/2;
rz_42 = -rz_43/2;
Les images précédente et actuelle non distordues issues de l'étape 10 peuvent alors être transformées, à l'étape 14 (voir figure 1 ), en images précédente alignée 7' et actuelle alignées 8'.
Le procédé comprend ensuite une étape 16 de génération d'une image précédente rectifiée 7" (visible à la figure 9) par transformation, en coordonnées polaires, de l'image précédente (figure 7) alignée 7' établie en coordonnées cartésiennes. De même, l'étape 14 comprend la génération d'une image actuelle rectifiée 8" (figure 8) par transformation en coordonnées polaires de l'image actuelle (figure 6) alignée 8' fournies en coordonnées cartésiennes.
Le procédé comporte ensuite la recherche 18 de correspondance entre points images de l'image actuelle rectifiée 8" et de l'image précédente rectifiée 7", cette recherche consistant à rechercher le minimum d'au moins une fonction représentative d'une différence (par exemple la somme, sur le voisinage du point considéré, des différences au carré) entre les intensités de pixels la et Ib, a désignant un pixel (autrement appelé point image Pa) de l'image actuelle situé sur la ligne épipolaire du point Pb de l'image précédente et sur un segment de cette ligne limité par un filtre de disparité défini par :
filtre = [DISPmin ; DISPmax] DISP étant choisi entre : DISPmin = b x T/Dmax
DISPmax = b x T /Drain
avec, par exemple, Dmax 100m et D min = 5m.
A chaque point Pt, de l'image précédente ayant un rayon b (abscisse du point Pb sur l'image précédente rectifiée en coordonnées polaires) et pour lequel aucun flux temporel n'est disponible, est alors associé un point image Pa correspondant de l'image actuelle, ayant une abscisse a sur l'image actuelle rectifiée.
Le procédé comprend alors une étape 20 de réalisation d'une carte de disparité polaire (figure 12) qui correspond à la soustraction (a-b) des abscisses en coordonnées polaires des points en correspondance. De cette carte de disparité polaire peut être déduit, à l'étape 22 une carte virtuelle de profondeurs D en coordonnées polaires (figure 13), grâce à l'équation :
D = b x T ÷ disparité
avec disparité = a— b
La transformation, à l'étape 23, de cette carte virtuelle de profondeurs en coordonnées cartésiennes fournit la carte de profondeurs recherchée que l'on peut observer à la figure 14.
Le procédé de réalisation de la carte de profondeurs D est réalisé par une unité de traitement informatique 100 reliée à la caméra unique 1 .

Claims

REVENDICATIONS
1. Procédé de réalisation d'une carte de profondeurs (D) à partir d'une première image (7) et d'une deuxième image (8) captées par une caméra (1 ) embarquée dans un véhicule automobile, comprenant les étapes suivantes :
• obtention d'une matrice rotation (R) et d'un vecteur translation (T) entre les première (7) et deuxième images (8), et alignement relatif des deux images de façon à obtenir une première image alignée (7') et une deuxième image alignée (8') ;
• recherche de correspondance de points image entre la première image alignée (7') et la deuxième image alignée (8') ;
· pour chaque paire de points images en correspondance, calcul d'une profondeur d'un point objet observé correspondant, à partir d'au moins une donnée relative à la position sur la première image alignée (7') du premier point image et d'au moins une donnée relative à la position du deuxième point image correspondant sur la deuxième image alignée (8'), les profondeurs calculées permettant d'établir une carte des profondeurs d'une scène observée ;
• la première (7) et la deuxième image (8) sont captées par une caméra unique (1 ) à des instants différents, la deuxième image étant une image actuelle (8) captée à un instant t, la première image étant une image précédente (7) captée à un instant t-1 ,
· le vecteur translation (T) est le vecteur reliant le centre optique de la caméra unique (1 ) à l'instant t-1 et le centre optique de la caméra unique (1 ) à l'instant t ; le procédé étant caractérisé en ce que :
• l'alignement relatif (14) des première (7) et deuxième images (8) se fait, d'une part parallèlement à une ligne de référence (Δ) correspondant à une direction globale de déplacement du véhicule passant par un centre optique (Ot-i) de la caméra unique (1 ) à l'instant t-1 et par le centre optique (Ot) de la caméra unique (1 ) à l'instant t, et d'autre part en roulis autour de cette ligne de référence (Δ) ;
• le procédé comprend une étape de transformation (16) de l'image précédente alignée (7') -respectivement l'image actuelle alignée (8')-, établie en coordonnées cartésiennes, en une image précédente rectifiée (7") - respectivement une image actuelle rectifiée (8"), établie en coordonnées polaires avec pour centre le point épipôle de l'image précédente alignée (7') - respectivement de l'image actuelle alignée (8')-,
• la recherche de correspondance de points images (18) et le calcul de profondeurs (D) s'effectuent sur les images précédente (7") et actuelle rectifiées (8"), c'est-à-dire en coordonnées polaires.
2. Procédé selon la revendication 1 , caractérisé en ce que la matrice rotation (R) et le vecteur translation (T) entre l'image précédente (7) et l'image actuelle (8) sont obtenus (12) par application des principes de la géométrie épipolaire à une pluralité de couples de points distinctifs correspondants pour lequel un flux temporel a pu être préalablement obtenu.
3. Procédé selon l'une des revendications précédentes, caractérisé en ce qu'il comprend, pour un premier point image Pb de l'image précédente rectifiée (7"), une étape de détermination d'une zone de recherche linéaire sur l'image actuelle rectifiée (8") par application d'un filtre de disparité prédéterminé, lequel filtre de disparité est compris entre une disparité minimale DISPmin donnée par une distance maximale Dmax, et une disparité maximale DISPmax donnée par une distance minimale Dmin, lesquelles distances minimale Dmin et maximale Dmax sont choisies en fonction de l'emplacement du premier point image sur l'image précédente rectifiée (7") et/ou selon une fonction d'aide à la conduite à mettre en œuvre et/ou sont déduites d'une profondeur calculée à partir d'une paire d'images antérieures.
4. Procédé selon la revendication 3, caractérisé en ce que, pour la détermination du filtre de disparité, on utilise les équations :
DISPmin = b x T ÷ Dmax
DISPmax = b x T ÷ Dmin
où b désigne la distance sur l'image précédente alignée (7'), entre le premier point image et la ligne de référence (Δ), c'est-à-dire l'abscisse du premier point image Pb sur l'image précédente rectifiée (7"),
et T désigne la norme du vecteur translation entre l'image précédente (7) et l'image actuelle (8), qui correspond à la distance parcourue par le véhicule à vol d'oiseau entre les instants t-1 et t.
5. Procédé selon la revendication 3 ou 4, caractérisé en ce qu'il comprend, pour chaque premier point image Pb de l'image précédente rectifiée (7"), une recherche sur la zone de recherche linéaire précédemment déterminée, d'un minimum d'au moins une fonction représentative d'une différence entre des intensités de pixel la et lb, où la désigne l'intensité de pixel d'un point quelconque Pa de la zone de recherche linéaire et de son voisinage sur l'image actuelle rectifiée (8") et lb désigne l'intensité de pixel du premier point image Pb et de son voisinage sur l'image précédente (7) ou sur l'image précédente rectifiée (7").
6. Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce que l'établissement de la carte des profondeurs (D) comprend :
• l'établissement d'une carte des disparités polaires représentant la variable (a - b) en coordonnées polaires,
où a désigne la distance sur l'image actuelle alignée (8'), entre le deuxième point image et la ligne de référence (Δ), c'est-à-dire l'abscisse du deuxième point image Pa sur l'image actuelle rectifiée (8"), et b désigne la distance sur l'image précédente alignée (7"), entre le premier point image et la ligne de référence (Δ), c'est-à-dire l'abscisse du premier point image Pb sur l'image actuelle rectifiée (8"), les points Pa et Pb étant des points en correspondance.
7. Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce qu'il comprend l'établissement d'une carte virtuelle des profondeurs (22) représentant la profondeur (D) en coordonnées polaires, et la transformation (23) en coordonnées cartésiennes de cette carte virtuelle des profondeurs établie en coordonnées polaires.
8. Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce que, dans l'étape d'établissement de la carte des profondeurs, la profondeur (D) est donnée par l'équation D= bxT÷(a-b),
où a désigne une distance sur l'image actuelle alignée (8'), entre un deuxième point image et la ligne de référence Δ, b désigne une distance sur l'image précédente alignée (7'), entre un premier point image et la ligne de référence Δ, les premier et deuxième points images étant des points en correspondance, et T désigne la norme du vecteur translation entre les première et deuxième images.
9. Système d'aide à la conduite permettant d'établir une carte des profondeurs (d) d'une scène observée, le système comprenant d'une part une caméra adaptée pour être embarquée dans un véhicule automobile pour la capture d'images d'une scène extérieure et d'autre part une unité de traitement informatique (100) pour le traitement des images captées par la caméra aux fins d'évaluation d'une profondeur entre le véhicule et un point objet observé, caractérisé en ce qu'il comprend une unique caméra (1 ) et en ce que l'unité de traitement informatique (100) est configurée pour exécuter un procédé selon l'une quelconque des revendications précédentes.
PCT/FR2017/051520 2016-06-14 2017-06-13 Procédé de réalisation d'une carte de profondeurs à partir d'images successives d'une caméra unique (mono) embarquée dans un véhicule automobile WO2017216473A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1655508 2016-06-14
FR1655508A FR3052581B1 (fr) 2016-06-14 2016-06-14 Procede de realisation d'une carte de profondeurs a partir d'images successives d'une camera unique (mono) embarquee dans un vehicule automobile

Publications (1)

Publication Number Publication Date
WO2017216473A1 true WO2017216473A1 (fr) 2017-12-21

Family

ID=56943693

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/FR2017/051520 WO2017216473A1 (fr) 2016-06-14 2017-06-13 Procédé de réalisation d'une carte de profondeurs à partir d'images successives d'une caméra unique (mono) embarquée dans un véhicule automobile

Country Status (2)

Country Link
FR (1) FR3052581B1 (fr)
WO (1) WO2017216473A1 (fr)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111086521A (zh) * 2018-10-23 2020-05-01 三星电子株式会社 校准方法、校准装置以及非暂时性计算机记录媒体

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR3084864B1 (fr) * 2018-08-07 2020-09-04 Continental Automotive France Procede de densification d'une carte de profondeurs

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080273751A1 (en) * 2006-10-16 2008-11-06 Chang Yuan Detection and Tracking of Moving Objects from a Moving Platform in Presence of Strong Parallax
WO2009043923A1 (fr) * 2007-10-05 2009-04-09 Thales Procede de synchronisation de flux video
US20140037136A1 (en) * 2012-08-01 2014-02-06 Srikumar Ramalingam Method and System for Determining Poses of Vehicle-Mounted Cameras for In-Road Obstacle Detection

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080273751A1 (en) * 2006-10-16 2008-11-06 Chang Yuan Detection and Tracking of Moving Objects from a Moving Platform in Presence of Strong Parallax
WO2009043923A1 (fr) * 2007-10-05 2009-04-09 Thales Procede de synchronisation de flux video
US20140037136A1 (en) * 2012-08-01 2014-02-06 Srikumar Ramalingam Method and System for Determining Poses of Vehicle-Mounted Cameras for In-Road Obstacle Detection

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
LIONEL MARCE ET AL: "DETERMINATION D'UNE CARTE DE PROFONDEUR A PARTIR D'UNE SEQUENCE D'IMAGES", ONZIEME COLLOQUE GRETSI NICE DU 1<ER> AU 5 JUIN 1987<PUBATTR/>,, 1 June 1987 (1987-06-01), pages 571 - 574, XP001375468 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111086521A (zh) * 2018-10-23 2020-05-01 三星电子株式会社 校准方法、校准装置以及非暂时性计算机记录媒体

Also Published As

Publication number Publication date
FR3052581A1 (fr) 2017-12-15
FR3052581B1 (fr) 2019-07-12

Similar Documents

Publication Publication Date Title
US10466714B2 (en) Depth map estimation with stereo images
US8369577B2 (en) Vehicle position recognition system
US9171225B2 (en) Device, method, and recording medium for detecting and removing mistracked points in visual odometry systems
CN111060094A (zh) 车辆定位方法和装置
US20100045448A1 (en) Obstacle detection apparatus
WO2016045764A1 (fr) Procédé de calibration extrinsèque de caméras d&#39;un système de formation d&#39;images stéréos embarqué
EP2984625B1 (fr) Procede d&#39;estimation de la deviation angulaire d&#39;un element mobile relativement a une direction de reference
US10187630B2 (en) Egomotion estimation system and method
EP1999484B1 (fr) Detection d&#39;obstacle
US10832428B2 (en) Method and apparatus for estimating a range of a moving object
CN112781582A (zh) 卫星弱观测条件下的多传感器融合高精度位姿估计算法
CN113781562A (zh) 一种基于道路模型的车道线虚实配准和自车定位方法
FR3052581B1 (fr) Procede de realisation d&#39;une carte de profondeurs a partir d&#39;images successives d&#39;une camera unique (mono) embarquee dans un vehicule automobile
EP2432660B1 (fr) Procede et dispositif pour etendre une zone de visibilite
EP2043044B1 (fr) Procédé et dispositif d&#39;assistance au parcage d&#39;un véhicule automobile
FR2899363A1 (fr) Procede et dispositif de detection de mouvement d&#39;objets sur des images d&#39;une scene
FR3054673B1 (fr) Fusion de donnees de detection et de suivi d&#39;objets pour vehicule automobile
KR101868898B1 (ko) 자율주행을 위한 차선 인식 방법 및 장치
EP1756688A1 (fr) Procede d&#39;estimation de l&#39;ecart evalue entre la position d&#39;un vehicule et une trajectoire theorique
Choi et al. Radar-based lane estimation with deep neural network for lane-keeping system of autonomous highway driving
Shan et al. Probabilistic egocentric motion correction of lidar point cloud and projection to camera images for moving platforms
FR3047589A1 (fr) Procede et dispositif d&#39;estimation de la position laterale d&#39;un vehicule dans une voie de circulation
FR3054672B1 (fr) Procede et systeme d&#39;association de donnees de detection et de suivi d&#39;objets mobile pour vehicule automobile
FR2938228A1 (fr) Procede de mesure de distance au moyen d&#39;une camera embarquee dans un vehicule automobile
FR3078183A1 (fr) Procede de detection d&#39;un objet a partir d&#39;une camera embarquee dans un vehicule automobile

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 17745373

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 17745373

Country of ref document: EP

Kind code of ref document: A1