Brevet FR3025325A1 — publié le 20160304

Dispositif et procédé de localisation et de cartographie DOMAINE TECHNIQUE AUQUEL SE RAPPORTE L'INVENTION La présente invention concerne les techniques de localisation et de 5 cartographie utilisées par un engin mobile dans un environnement. Elle concerne plus particulièrement un dispositif et un procédé de localisation et de cartographie destiné à équiper un tel engin mobile. L'invention s'applique particulièrement avantageusement dans le cas où un capteur délivre des données de positionnement d'obstacles relativement à 10 l'engin mobile. ARRIERE-PLAN TECHNOLOGIQUE On connaît des dispositifs de localisation et de cartographie conçus pour équiper un engin mobile (par exemple un robot) afin à la fois de localiser l'engin mobile dans son environnement et de produire une cartographie de cet 15 environnement. De tels dispositifs sont couramment dénommés SLAM, en référence à l'acronyme anglo-saxon pour "Simultaneous Localization And Mapping". Ils sont en général basés sur une approche probabiliste. Dans certaines solutions par exemple, on détermine, en fonction de données fournies par un 20 capteur, la probabilité d'occupation de chacune des cellules d'une grille qui recouvre l'environnement. On peut se référer à ce sujet à l'article "Online localization and mapping with moving objects detection in dynamic outdoor environments", in IEEE 5th Internation Conference on Intelligent Computer Communication and Processing, 2009, ICCP 2009, 2009, pp. 410-408. 25 OBJET DE L'INVENTION Dans ce contexte, la présente invention propose un dispositif de localisation et de cartographie destiné à équiper un engin mobile dans un environnement comprenant une pluralité de zones, avec un module de réception conçu pour recevoir des données de positionnement d'obstacles relativement à 30 l'engin ; un module de traitement conçu pour déterminer, en fonction des données reçues et pour une pluralité de zones positionnées par rapport à l'engin, des valeurs de mesure respectivement représentatives d'une vraisemblance d'occupation de la zone concernée, d'une vraisemblance de non-occupation de la 3025325 2 zone concernée et d'une vraisemblance de non-connaissance de la zone concernée ; un module de cartographie conçu pour construire, pour chaque zone de ladite pluralité de zones de l'environnement, des valeurs respectivement représentatives d'une vraisemblance d'occupation de la zone concernée, d'une vraisemblance de non-occupation de la zone concernée et d'une vraisemblance de non-connaissance de la zone concernée ; et un module de localisation conçu pour déterminer le positionnement de l'engin dans l'environnement qui maximise une mesure de correspondance entre les valeurs de mesure et les valeurs construites. Ainsi, la position de l'engin mobile est déterminée par recherche de la meilleure correspondance entre les valeurs de mesure, générées sur la base des données de positionnement reçues d'un capteur à un instant donné, et les valeurs construites, qui décrivent la cartographie élaborée par le dispositif aux itérations précédentes. Ces valeurs ne se limitent pas toutefois à évaluer, comme les approches probabilistes classiques, la probabilité de présence ou d'absence d'un obstacle dans les différentes zones de l'environnement, mais tiennent compte en outre de l'absence d'information pour certaines zones, grâce aux valeurs représentatives de la vraisemblance de non-connaissance de ces zones. On remarque d'ailleurs que les valeurs représentatives de la vraisemblance d'occupation d'une zone et de la vraisemblance de non-occupation d'une zone sont elles aussi influencées par l'absence d'information pour la zone concernée puisqu'on prévoit en général que les trois valeurs représentatives précitées (vraisemblance d'occupation, vraisemblance de non-occupation et vraisemblance de non-connaissance), dénommées "masses" dans la description qui suit, ont une somme fixe (en général égale à 1). Selon d'autres caractéristiques optionnelles (et donc non limitatives) : - le module de localisation est conçu pour déterminer la mesure de correspondance en utilisant une mesure de conflit entre les valeurs de mesure et les valeurs construites ; - la mesure de correspondance est indicative d'une correspondance entre une répartition spatiale des valeurs de mesure représentatives de la vraisemblance d'occupation et une répartition spatiale des valeurs construites représentatives de la vraisemblance d'occupation ; 3025325 3 - le module de localisation est conçu pour déterminer la mesure de correspondance pour un positionnement donné de l'engin mobile en utilisant une somme de termes associés chacun à une zone donnée de l'environnement, et pour calculer chaque terme en utilisant le produit de la valeur de mesure 5 représentative de la vraisemblance d'occupation de la zone correspondant à la zone donnée pour le positionnement donné de l'engin et de la valeur construite représentative de la vraisemblance d'occupation de la zone donnée ; - le module de localisation est conçu pour calculer chaque terme en divisant le produit précité par un facteur de conflit utilisant une somme de la valeur 10 de mesure représentative de la vraisemblance d'occupation de la zone correspondant à la zone donnée pour le positionnement donné de l'engin, multipliée par la valeur construite représentative de la vraisemblance de non-occupation de la zone donnée, et de la valeur de mesure représentative de la vraisemblance de non-occupation de la zone correspondant à la zone donnée 15 pour le positionnement donné de l'engin, multipliée par la valeur construite représentative de la vraisemblance d'occupation de la zone donnée ; - le module de cartographie comprend un module de combinaison conçu pour déterminer pour chaque zone, en combinant lesdites valeurs de mesure relatives à la zone concernée et des valeurs construites par le module de 20 cartographie pour la zone concernée lors d'une précédente itération, des valeurs brutes respectivement représentatives d'une vraisemblance d'occupation de la zone concernée, d'une vraisemblance de non-occupation de la zone concernée, d'une vraisemblance de non-connaissance de la zone concernée et d'une vraisemblance de conflit sur la zone concernée ; 25 - le module de cartographie comprend un module de normalisation conçu pour déterminer lesdites valeurs construites en fonction desdites valeurs brutes ; - le module de traitement comprend un module de conversion conçu pour déterminer, pour chaque zone de la pluralité de zones positionnées par rapport à l'engin, lesdites valeurs de mesure relatives à la zone concernée en fonction de 30 valeurs correspondantes attribuées, dans une grille polaire, à une cellule correspondant à la zone concernée. L'invention propose également un système comprenant un dispositif de localisation et de cartographie comme mentionné ci-dessus et un capteur conçu pour générer lesdites données de positionnement. Ce capteur est par exemple un 3025325 4 lidar, mais il pourrait s'agir d'un autre type de capteur, par exemple un radar. L'invention propose de façon corrélative un procédé de localisation et de cartographie utilisé par un engin mobile dans un environnement comprenant une pluralité de zones, comprenant les étapes suivantes : 5 - réception de données de positionnement d'obstacles relativement à l'engin ; - détermination, en fonction des données reçues et pour une pluralité de zones positionnées par rapport à l'engin, de valeurs de mesure respectivement représentatives d'une vraisemblance d'occupation de la zone concernée, d'une 10- vraisemblance de non-occupation de la zone concernée et d'une vraisemblance de non-connaissance de la zone concernée ; - construction, pour chaque zone de ladite pluralité de zones de l'environnement, de valeurs respectivement représentatives d'une vraisemblance d'occupation de la zone concernée, d'une vraisemblance de non-occupation de la 15 zone concernée et d'une vraisemblance de non-connaissance de la zone concernée ; - localisation de l'engin par détermination du positionnement de l'engin dans l'environnement qui maximise une mesure de correspondance entre les valeurs de mesure et les valeurs construites. 20 Ce procédé peut éventuellement comprendre en outre une étape de combinaison desdites valeurs de mesure relatives à la zone concernée et de valeurs construites par le module de cartographie pour la zone concernée lors d'une précédente itération afin de générer des valeurs brutes respectivement représentatives d'une vraisemblance d'occupation de la zone concernée, d'une 25 vraisemblance de non-occupation de la zone concernée, d'une vraisemblance de non-connaissance de la zone concernée et d'une vraisemblance de conflit sur la zone concernée. Les caractéristiques optionnelles présentées ci-dessus relative au dispositif de localisation et de cartographie peuvent également s'appliquer à de 30 tels procédés. DESCRIPTION DETAILLEE D'UN EXEMPLE DE REALISATION La description qui va suivre en regard des dessins annexés, donnés à titre d'exemples non limitatifs, fera bien comprendre en quoi consiste l'invention et comment elle peut être réalisée. 3025325 5 Sur les dessins annexés : - la figure 1 représente un système comprenant un capteur et un exemple de dispositif de localisation et de cartographie conforme à l'invention ; - la figure 2 représente sous forme fonctionnelle les traitements effectués 5 par le dispositif de localisation et de cartographie de la figure 1 ; - la figure 3 représente une grille polaire construite à partir des données de positionnement reçues du capteur. La figure 1 représente schématiquement les éléments principaux d'un système incluant un dispositif de localisation et de cartographie 10. 10 Un tel système équipe un engin mobile dans un environnement, par exemple un véhicule automobile ou un robot. Comme cela ressortira de la description qui suit, un système équipé d'un dispositif de localisation et de cartographie, parfois dénommé SLAM (acronyme anglo-saxon signifiant "Simultaneous Localisation And Mapping"), permet à la fois la localisation du 15 système (et donc de l'engin mobile) dans l'environnement et la découverte de la cartographie de l'environnement. Le système de la figure 1 comprend un capteur 2 qui génère des données de positionnement (relativement au système) d'obstacles présents dans l'environnement. Le capteur 2 est par exemple de type lidar ; dans ce cas, les 20 données de positionnement sont représentatives, pour une pluralité d'orientations a par rapport à une direction de référence du système, de la distance d(a) (par rapport au système) du premier obstacle rencontré dans la direction associé à cette orientation a. On pourrait en variante utiliser un capteur d'un autre type, par exemple 25 un radar. Le système de la figure 1 comprend également le dispositif de localisation et de cartographie 10, qui reçoit en entrée les données de positionnement générées par le capteur 2 et génère en sortie des informations de localisation Xt du système (et donc de l'engin mobile équipé du système) à chaque 30 instant t et des informations de cartographie GRI. Ces informations de cartographie GRI sont par exemple une grille d'occupation (en anglais "occupancy grill") qui décrit, sous forme de grille, les lieux de l'environnement dans lesquels un obstacle a été détecté. Dans le cas décrit ici où l'environnement est cartographié en 2 3025325 6 dimensions, les informations de localisation Xt comprennent par exemple les coordonnées x,y du système dans le plan de cartographie (précisément son abscisse x et son ordonnée y) et son cap e (en anglais "heading"). Ces informations de localisation X sont déterminées comme décrit ci-dessous par 5 rapport à des coordonnées initiales xo,yo et un cap initial e0 définis par convention (on prend par exemple xo = 0 ; yo = 0 ; e0 = 0). Afin de mettre en oeuvre les traitements décrits ci-dessous, le dispositif de localisation et de cartographie 10 comprend ici un processeur 4 (par exemple un microprocesseur) et un moyen de mémorisation 6 (par exemple un disque dur). 10 Le processeur 4 est conçu pour mettre en oeuvre les traitements décrits ci-dessous, notamment en référence à la figure 2, par exemple du fait de l'exécution d'instructions de programme d'ordinateur mémorisées dans les moyens de mémorisation 6. En variante, ces traitements pourraient être effectués par un circuit intégré à application spécifique (ou ASIC de l'anglais "Application 15 Specific Integrated Circuit") implanté dans le dispositif de localisation et de cartographie 10. Les moyens de mémorisation 6 permettent par ailleurs la mémorisation des données utilisées lors du traitement décrit ci-après, notamment les données représentatives de vraisemblances ou crédibilités, dénommées "masses" dans la 20 suite. La figure 2 représente sous forme fonctionnelle les traitements effectués par le dispositif de localisation et de cartographie 10 afin de déterminer les informations de localisation Xt et les informations de cartographie GRI à partir des données de positionnement d(a) générées par le capteur 2. 25 Ainsi, les différents traitements réalisés par le dispositif de localisation et de cartographie 10 sont représentés sur la figure 2 mis en oeuvre par différents modules 11, 12, 14, 16, 18, 20, 22 bien que ceux-ci puissent être mis en oeuvre en pratique du fait de l'exécution d'instructions par le même processeur 4. Le dispositif de localisation et de cartographie 10 comprend un module 30 de réception 11 connecté au capteur 2 et qui reçoit ainsi les données de positionnement d(a) générées par le capteur 2 et les transmet à un module de construction de grille polaire 12. En fonction des données de positionnement d(a) qu'il reçoit en entrée à un instant t, le module de construction de grille polaire 12 détermine, pour 3025325 7 chacune des cellules j d'une grille polaire, les trois paramètres suivants : - une masse d'occupation M_POLt,i(0) (en anglais "occupation mass") ; - une masse de non-occupation M_POLt,i(F) (en anglais "free mass") ; - une masse de non-connaissance M POLt,i(U) (en anglais "unknown 5 mass"). Pour chaque cellule j, la somme des différentes masses relatives à cette cellule est égale à 1. Comme représenté en figure 3, une grille polaire est un ensemble de cellules de l'environnement (ici représenté en deux dimensions) dans lequel 10 chaque cellule correspond à une plage donnée de distances au système (précisément au capteur 2) et à un secteur angulaire donné (les angles étant mesurés par rapport à la direction de référence du système déjà mentionnée). La masse d'occupation M_POLt,i(0) représente la possibilité que la cellule j concernée dans la grille polaire soit occupée, d'après certaines 15 informations, ici les données de positionnement reçues du capteur 2 à l'instant t. La masse d'occupation M_POLt,i(0) est donc représentative d'une vraisemblance ou crédibilité d'occupation de cette cellule j. La masse de non-occupation M_POLt,i(F) représente la possibilité que la cellule j concernée dans la grille polaire soit vide, d'après certaines informations, 20 ici les données de positionnement reçues du capteur 2 à l'instant t. La masse de non-occupation M_POLt,i(F) est donc représentative d'une vraisemblance ou crédibilité de non-occupation de cette cellule j. La masse de non-connaissance M_POLt,i(U) représente la possibilité que la cellule j concernée n'ait pas été explorée, c'est-à-dire qu'aucune connaissance 25 ne soit disponible pour cette cellule j d'après les informations disponibles (ici les données de positionnement). La masse de non-connaissance M_POLt,i(U) est donc représentative d'une vraisemblance ou crédibilité de non-connaissance de la cellule j. Pour les cellules j situées dans le secteur angulaire correspondant à une 30 direction 8, on détermine par exemple comme suit les différentes masses : - pour la cellule j (noircie en figure 3) située à une distance d(8) du système (c'est-à-dire, dans le cas où le capteur 2 est un lidar, celle où un objet a été impacté par le laser représenté en pointillés en figure 3), M_POLt,i(0) = ICONF,M_POLt~(F)= 0, M_POLt,i(U) = 1- IcoNF, où ICONF est 3025325 8 un indice de confiance du capteur 2 (par exemple prédéfini ou délivré par le capteur 2), typiquement compris entre 0,5 et 1 ; - pour les cellules j situées à une distance inférieure à la distance d(8) (c'est-à-dire celles traversées par le laser dans le cas du lidar), 5 M_POLtà(0) = 0, M_POLt,i(F) = IcoNF, M_POLt,i(U) = 1- ICONF ; - pour les cellules j situées à une distance supérieure à la distance d(8) (c'est-à-dire celles situées au-delà de l'impact du laser dans le cas du lidar, représentées hachurées en figure 3), M_POLt,i(0) = 0, M_POLt,i(F) = 0, M_POLt,i(U) = 1. 10 Lorsque le capteur délivre plusieurs données de positionnement d(8) pour un même secteur angulaire de la grille polaire (par exemple lorsque le lidar délivre des données pour plusieurs altitudes ou couches, ou lorsque la résolution du lidar est plus fine que celle de la grille polaire), on retient par exemple la distance d(8) la plus faible pour la détermination des masses telle que décrite ci- 15 dessus. Le module de construction de grille polaire 12 transmet l'ensemble des paramètres de masse M_POLti ainsi déterminés à un module de conversion 14 qui attribue, pour chaque cellule j de la grille polaire, les masses déterminées pour cette cellule j à une (ou plusieurs) cellule(s) correspondante(s) i d'une grille de 20 mesure en coordonnées cartésiennes (exprimées relativement à la position actuelle du système à l'instant t). Autrement dit, pour tout AE{O,F,U}, M_SCANIti (A) = M_POLt,i(A) lorsque la cellule i de la grille de mesure correspond à la cellule j de la grille polaire. On définit ainsi pour chaque cellule i de la grille de mesure : 25 - une masse d'occupation M_SCANt,,(0) pour la cellule i, représentant la vraisemblance (ou crédibilité) d'occupation de la cellule i (d'après les données de positionnement fournies par le capteur 2 à l'instant t) ; - une masse de non-occupation M_SCANt,i(F) pour la cellule i, représentant la vraisemblance de non-occupation de la cellule i (d'après les 30 données de positionnement fournies par le capteur 2 à l'instant t) ; - une masse de non-connaissance M_SCANt,i(U) pour la cellule i, représentant la vraisemblance de non-connaissance de la cellule i (d'après les données de positionnement fournies par le capteur 2 à l'instant t). Pour chaque cellule i, la somme des différentes masses relatives à cette 3025325 9 cellule est égale à 1. On dénomme ici "module de traitement' l'ensemble formé par le module de construction de grille polaire 12 et le module de conversion 14. Le module de traitement permet ainsi de déterminer les masses M_SCANt,i(A) à partir des 5 données de positionnement d(8). Comme visible en figure 2, les différentes masses M_SCANt,,(A) (avec AE{O,F,U}) produites par le module de conversion 16 pour les différentes cellules i de la grille de mesure sont transmises d'une part à un module de localisation 16 et d'autre part à un module de combinaison 18. 10 Le module de localisation 16 reçoit également en entrée les informations suivantes, produites par le module de combinaison 18 et le module de normalisation 20 à l'itération précédente t-1 (comme expliqué ci-après pour l'itération courante t) et relatives aux cellules k d'une grille représentant l'environnement (en coordonnées cartésiennes par rapport à une référence fixe, 15 telle que la position initiale du système) : - pour chaque cellule k, une masse d'occupation M_GRIt_i,k(0), représentant la vraisemblance d'occupation de la cellule k, construite par le dispositif 10 du fait du traitement effectué jusqu'à l'instant t-1 ; - pour chaque cellule k, une masse de non-occupation M_GRIt_i,k(F), 20 représentant la vraisemblance de non-occupation de la cellule k, construite par le dispositif 10 du fait du traitement effectué jusqu'à l'instant t-1 ; - pour chaque cellule k, une masse de non-connaissance M_GRIt_i,k(U), représentant la vraisemblance de non-connaissance de la cellule k, construite par le dispositif 10 du fait du traitement effectué jusqu'à l'instant t-1. 25 On remarque que ces informations ne sont pas disponibles lors de la première itération. Aucun traitement n'est toutefois nécessaire lors de cette première itération : le module de localisation 16 indique seulement alors que la position courante (définie par les coordonnées x,y et le cap 8) est égale à la position initiale déjà mentionnée (définie par les coordonnées x0, yo et par le cap 30 130). Pour les autres itérations, le module de localisation 16 détermine la position Xt du système (et donc de l'engin mobile), définie ici par les coordonnées x, y et le cap 8, qui maximise une mesure de correspondance entre les valeurs associées à la grille de mesure (localisée par rapport à la position du système) et 3025325 10 les valeurs associées à la grille fixe représentant l'environnement. On utilise par exemple la mesure suivante pour ce faire, définie pour une position Z par : M_GRIt_i,k (0). M_SCANt,i(k,z) (0) N(Z) - 1 - (C) où i(k,Z) est la cellule de la grille de mesure (positionnée relativement au 5 système, c'est-à-dire à l'engin mobile comme déjà indiqué) correspondant à la cellule k de la grille fixe lorsque le système a la position Z et où Mt,k,z(C) mesure le conflit entre les informations utilisées au numérateur : Mt,k,z(C) = M_GRIt_i,k(F).M_SCANtAk,z)(0) + M_GRIt_1,k(0).M_SCANt,e,z)(F). On utilise ainsi une mesure de correspondance qui quantifie une 10 correspondance entre une répartition spatiale (au sein des cellules) des vraisemblances d'occupation dans la grille de mesure et une répartition spatiale des vraisemblances d'occupation dans la grille fixe. L'utilisation du dénominateur (1 - Mt,k,z(C)) permet de pondérer dans la somme des cellules pour lesquelles les informations utilisées au numérateur sont 15 contradictoires afin d'en tenir compte à bon escient. En variante, on pourrait utiliser, pour chaque terme de la somme mentionnée ci-dessus, un autre opérateur de fusion afin de combiner les masses M GRIt_tx reçues du module de combinaison 18 (via le module de normalisation 20) et les masses M SCANt,i(k,z) reçues du module de conversion 14, par exemple 20 un opérateur de fusion tel que ceux utilisés dans le cadre de la théorie de l'évidence (également dénommée théorie de Dempster-Shafer). La valeur Xt délivrée par le module de localisation 16 est donc dans ce cas la valeur de Z qui maximise la mesure N(Z) : X est tel que N(X) = maxz N(Z). Ceci est par exemple déterminé en pratique en calculant la mesure N(Z) 25 pour une pluralité de positions Z. On note dans la suite zx, z,, ze respectivement l'abscisse, l'ordonnée et le cap définissant une position Z. Selon une première possibilité de réalisation, on calcule la mesure N(Z) pour un ensemble (discret) de positions Z vérifiant : zX - xt_i I 5 Sx, I zy - yt-i I É Sr, I ze - I 5 Se 30 où xt-i, yt-t, et-1 sont l'abscisse, l'ordonnée et le cap définissant la position Xt..1 déterminée à l'itération précédente (ou l'abscisse, l'ordonnée et le cap initiaux lors de l'itération t=1) et où Sx, S,, Se sont des seuils prédéterminés. 3025325 11 En exprimant les coordonnées en nombre de pas de la grille fixe (les cellules étant ici de même taille dans la grille fixe et dans la grille de mesure) - ou en degrés pour le cap, on utilise par exemple Sx = Sy = 5 et Se = 10° et : zx-E{ xt4-5 ; xt_1-4 ; xt_1-3 ; xt_1-2 ; )4_1-1 ; xt_1 ; xt_1+1 ; xt_1+2 ; xt_1+3 ; xt_1+4 ; xt_1+5 } 5 zyE{ yt_1-5 ; yt-1-4 ; Yt-1-3 ; Yt-1-2 ; yt-1-1 ; yt-i ; yt-i+1 ; yt-i+2 ; yt-1+3 ; Yt-1+4 ; yt-1-F5 zeE{ Ot_1-10° ; 13t_1-8° ; et-1-6° ; et-1-4° ; 8t_1-2° ; et-1 ; et_1+2° ; et_1+4° ; et_1+6° ; et-1+8° ; et_i+io° soit un calcul de la mesure N(Z) pour 1331 positions possibles Z. Selon une seconde possibilité de réalisation, on utilise une position a 10 priori Xtit_1 = , Otit-i) dérivée de la position Xt_1 déterminée à l'itération précédente sur la base d'un modèle à vitesse constante : (X) (01 tilt) (pt_i où it_, est la dérivée de la position Xt_i à l'instant t-1 : )4_1 =(ac, ÿ,6)t-1' On peut alors calculer la mesure N(Z) pour un ensemble (discret) de positions Z vérifiant : 15 J zx - xt1t-1 J 5 Sx, I Zy - Ytit-i I 5- Sy, I ze - 5 Se OÙ Sx, Sy, Se sont des seuils prédéterminés. En exprimant les coordonnées en nombre de pas de la grille fixe (les cellules étant ici de même taille dans la grille fixe et dans la grille de mesure), on utilise par exemple Sx = Sy = 5 et Se = 10° et : 20 zx-E{ xtit_1-5 ; xtit_1-4 ; xtit_1-3 ; xtit_1-2 ; xtit_1-1 ; xtit_i ; xtit_1+1 ; xtit_1+2 ; ; xtit-1+4 ; xtim +5 } zyE{ ytit-1-5 ; ytit-1-4 ; ; ytit-1-2 ; ytit-i-1 ; ytit-i ; ytit-1+1 ; Ytit-i+2 ; Ytit-i+3 ; ytit_1+4 ; Ytit-1+5 zeE{ etit_rio° ; etit_1-8° ; etit_1-6° ; etit_1-4° ; etit_1-2° ; ; etit_i+2° ; etIt_11-4° ; etit_1+6° ; 25 etit_1+8° ; etit_1÷10° }, soit un calcul de la mesure N(Z) pour 1331 positions possibles Z autour de la position a priori )(lm déterminée sur la base d'un modèle à vitesse constante. On pourra se référer à ce sujet à l'article "A real-time robust SLAM for large-scale outdoor environments", de J. Xie, F. Nashashibi, M. N. Parent et O. 30 Garcia-Favrot in ITS World Congr. 2010. La position Xt déterminée par le module de localisation 16 est transmise au module de combinaison 18, qui reçoit également en entrée comme déjà 3025325 12 indiqué les différentes masses M_SCANt,,(A) (avec AE{O,F,U}) produites par le module de conversion 14 pour les différentes cellules i de la grille de mesure, ainsi que les différentes masses M_GRIt_i,k(A) (avec AE{O,F,U}) produites comme expliqué ci-dessus par le module de normalisation 20 à l'itération précédente t-1 5 pour les cellules k de la grille fixe. Le module de combinaison 18 combine alors les informations fournies par le capteur 2 à l'instant t (représentées par les masses M_SCANtj(A)) et les informations construites par le dispositif 10 jusqu'à l'instant t-1 (représentées par les masses M GRIt_i,k(A)) afin d'en déduire des masses brutes M COMBt,k(A) 10 représentatives de l'état de la connaissance de la grille fixe à l'instant t, par exemple en appliquant à chaque cellule k de la grille fixe une formule du type : m comBt,k = m_GRIt_tk n m_scANt,i(k,xt) où i(k,Xt) est la cellule de la grille de mesure qui correspond à la cellule k de la grille fixe lorsque le système est à la position Xt et où 121 est un opérateur de 15 conjonction défini par exemple dans l'article "Credibilist occupancy grids for vehicle perception in dynamic environments", de J. Moras, V. Cherfaoui et P. Bonnifait in IEEE Int. Conf. Robot. Automat. (ICRA2011), pages 84-89, 2011. En explicitant les calculs effectués du fait de cet opérateur n, on obtient ainsi pour chaque cellule k : 20 - une masse brute d'occupation M_COMBt,k(0), représentant la vraisemblance d'occupation de la cellule k, ici par : M COMBt,k(0) = M_GRIt_1,k(0).M_SCANt«,xt)(0) + M_GRIt_1,k(U).M_SCANt,e,xt)(0) + M GRIt_i,k(0).M_SCANt,e,xt)(U) ; - une masse brute de non-occupation M_COMBt,k(F), représentant la 25 vraisemblance de non-occupation de la cellule k, ici par : M COMBt,k(F) = M_GRIt_i,k(F).M_SCANtick,n(F) + M_GRIt_i,k(U).M_SCANt,i(k,xt)(F) + M GRIt_tk (F). M SCANt,i(k,xt)(U) ; - une masse brute de non-connaissance M_COMBt,k(U), représentant la vraisemblance de non-connaissance de la cellule k, ici par : 30 M_COMBt,k(U) = M_GRIt_i,k(U).M_SCANt,i(k,xt)(U) ; - une masse brute de conflit M_COMBt,k(C), représentant une vraisemblance de conflit à propos de cette cellule k (entre l'information délivrée par le capteur 2 et l'information construite par le dispositif 10 jusqu'à l'instant t-1), 3025325 13 ici par : M_COMBt,k(C) = M_GRIt_1,k(F).M_SCANt,e,x0(0) + M_GRIt_1,k(0).M_SCANt,;(k,x0(F). Pour chaque cellule k, la somme des différentes masses brutes relatives à cette cellule est égale à 1. 5 Les masses brutes M COMBt,k produites par le module de combinaison 18 sont transmises au module de normalisation 20 qui conserve (dans chaque cellule) la répartition des masses d'occupation, de non-occupation et de non-connaissance mais fait disparaître la notion de masse de conflit, ce qui permet de s'affranchir des obstacles mobiles. Selon un mode de réalisation envisageable, les 10 masses brutes de conflit M_COMBt,k(C) pour les différentes cellules k peuvent être mémorisées afin d'être utilisées en vue de la détection des obstacles mobiles. Le module de normalisation 20 calcule ainsi les masses suivantes (après normalisation) : M_GRIt,k(A) = M_COMBt,k(A)/(1 - M_COMBt,k(C)) pour tout AE{O,F,U} et 15 pour toutes les cellules k. On obtient ainsi pour chaque cellule k une masse d'occupation M_GRIt,k(0), une masse de non-occupation M_GRIt,k(F) et une masse de non-connaissance M_GRIt,k(U), qui constituent ici les informations de cartographie GRI délivrées par le dispositif 10. Grâce à la normalisation, pour chaque cellule k, la 20 somme des différentes masses M_GRlt,k(0), M_GRIt,k(F), M_GRIt,k(U) relatives à cette cellule est égale à 1. On dénomme ici "module de cartographie" l'ensemble formé par le module de combinaison 18 et le module de normalisation 20. On peut alors par exemple représenter ces informations sur une carte 25 (affichée par exemple sur un écran de l'engin mobile), éventuellement en faisant apparaître chaque cellule k dans une couleur définie en fonction des masses M_GRIt,k(0), M_GRIt,k(F), M_GRIt,k(U) relatives à cette cellule k ; on utilise par exemple pour une cellule k une couleur dont les coordonnées trichromatiques dans le repère RVB sont : M_GRIt,k(0), M_GRIt,k(F), M_GRIt,k(U). 30 Comme déjà indiqué, les masses M_GRlt,k produites en sortie du module de normalisation 20 sont transmises (à travers un retardateur d'une itération 22) au module de localisation 16 et au module de combinaison 18 afin d'y être utilisées à l'itération suivante. REVENDICATIONS1. Dispositif de localisation et de cartographie (10) destiné à équiper un engin mobile dans un environnement comprenant une pluralité de zones, avec : - un module de réception (11) conçu pour recevoir des données de positionnement (d(a)) d'obstacles relativement à l'engin ; - un module de traitement (12, 14) conçu pour déterminer, en fonction des données reçues (d(a)) et pour une pluralité de zones positionnées par rapport à l'engin, des valeurs de mesure (M_SCANt,,) respectivement représentatives d'une vraisemblance d'occupation de la zone concernée, d'une vraisemblance de non-occupation de la zone concernée et d'une vraisemblance de non-connaissance de la zone concernée ; - un module de cartographie (18, 20) conçu pour construire, pour chaque zone de ladite pluralité de zones de l'environnement, des valeurs (M_GRIt,k) respectivement représentatives d'une vraisemblance d'occupation de la zone concernée, d'une vraisemblance de non-occupation de la zone concernée et d'une vraisemblance de non-connaissance de la zone concernée ; et - un module de localisation (16) conçu pour déterminer le positionnement de l'engin dans l'environnement qui maximise une mesure de correspondance 20 entre les valeurs de mesure (M_SCANt,,) et les valeurs construites (M_GRIt,k). 2. Dispositif de localisation et de cartographie selon la revendication 1, dans lequel le module de localisation (16) est conçu pour déterminer la mesure de correspondance en utilisant une mesure de conflit entre les valeurs de mesure 25 (M_SCANt,i) et les valeurs construites (M_GRIt,k). 3. Dispositif de localisation et de cartographie selon la revendication 1 ou 2, dans lequel la mesure de correspondance est indicative d'une correspondance entre une répartition spatiale des valeurs de mesure (M_SCANt,i) représentatives 30 de la vraisemblance d'occupation et une répartition spatiale des valeurs construites (M _ GRIt ,k) représentatives de la vraisemblance d'occupation. 4. Dispositif de localisation et de cartographie selon l'une des revendications 1 à 3, dans lequel le module de localisation (16) est conçu pour 3025325 15 déterminer la mesure de correspondance pour un positionnement donné de l'engin mobile en utilisant une somme de termes associés chacun à une zone donnée de l'environnement, et pour calculer chaque terme en utilisant le produit de la valeur de mesure (M_SCANtj) représentative de la vraisemblance 5 d'occupation de la zone correspondant à la zone donnée pour le positionnement donné de l'engin et de la valeur construite (M_GRIt,k) représentative de la vraisemblance d'occupation de la zone donnée. 5. Dispositif de localisation et de cartographie selon la revendication 4, 10 dans lequel le module de localisation (16) est conçu pour calculer chaque terme en divisant le produit précité par un facteur de conflit utilisant une somme de la valeur de mesure (M_SCANtj) représentative de la vraisemblance d'occupation de la zone correspondant à la zone donnée pour le positionnement donné de l'engin, multipliée par la valeur construite (M_GRIt,k) représentative de la vraisemblance de 15 non-occupation de la zone donnée, et de la valeur de mesure (M_SCANt,i) représentative de la vraisemblance de non-occupation de la zone correspondant à la zone donnée pour le positionnement donné de l'engin, multipliée par la valeur construite (M_GRIt,k) représentative de la vraisemblance d'occupation de la zone donnée. 6. Dispositif de localisation et de cartographie selon l'une des revendications 1 à 5, dans lequel le module de cartographie (18, 20) comprend un module de combinaison (18) conçu pour déterminer pour chaque zone, en combinant lesdites valeurs de mesure (M SCANt,i) relatives à la zone concernée et des valeurs construites (M GRIt_i,k) par le module de cartographie (18, 20) pour la zone concernée lors d'une précédente itération, des valeurs brutes (M COMBt,k) respectivement représentatives d'une vraisemblance d'occupation de la zone concernée, d'une vraisemblance de non-occupation de la zone concernée, d'une vraisemblance de non-connaissance de la zone concernée et d'une vraisemblance de conflit sur la zone concernée. 7. Dispositif de localisation et de cartographie selon la revendication 6, dans lequel le module de cartographie (18, 20) comprend un module de normalisation (20) conçu pour déterminer lesdites valeurs construites (M_GRIt,k) 3025325 16 en fonction desdites valeurs brutes (M_COMBt,k). 8. Dispositif de localisation et de cartographie selon l'une des revendications 1 à 7, dans lequel le module de traitement (12, 14) comprend un 5 module de conversion (14) conçu pour déterminer, pour chaque zone de la pluralité de zones positionnées par rapport à l'engin, lesdites valeurs de mesure (M_SCANt,,) relatives à la zone concernée en fonction de valeurs correspondantes (M_POLt,i) attribuées, dans une grille polaire, à une cellule correspondant à la zone concernée. 10 9. Système comprenant un dispositif de localisation et de cartographie (10) selon l'une des revendications 1 à 8 et un capteur (2) conçu pour générer lesdites données de positionnement (d(a)). 15 10. Système selon la revendication 9, dans lequel le capteur (2) est un lidar. 11. Procédé de localisation et de cartographie utilisé par un engin mobile dans un environnement comprenant une pluralité de zones, comprenant les 20 étapes suivantes : - réception de données de positionnement (d(a)) d'obstacles relativement à l'engin ; - détermination, en fonction des données reçues (d(a)) et pour une pluralité de zones positionnées par rapport à l'engin, de valeurs de mesure 25 (M_SCAN0) respectivement représentatives d'une vraisemblance d'occupation de la zone concernée, d'une vraisemblance de non-occupation de la zone concernée et d'une vraisemblance de non-connaissance de la zone concernée ; - construction, pour chaque zone de ladite pluralité de zones de l'environnement, de valeurs (M_GRIt,k) respectivement représentatives d'une 30 vraisemblance d'occupation de la zone concernée, d'une vraisemblance de non-occupation de la zone concernée et d'une vraisemblance de non-connaissance de la zone concernée ; - localisation de l'engin par détermination du positionnement de l'engin dans l'environnement qui maximise une mesure de correspondance entre les 3025325 17 valeurs de mesure (M SCANt,,) et les valeurs construites (M_GRIt,k). 12. Procédé selon la revendication 11, comprenant une étape de combinaison, pour chaque zone de l'environnement, desdites valeurs de mesure 5 (M_SCANt,i) relatives à la zone concernée et de valeurs (M_GRIt_i,k) construites par le module de cartographie pour la zone concernée lors d'une précédente itération afin de générer des valeurs brutes (M_COMBt,k) respectivement représentatives d'une vraisemblance d'occupation de la zone concernée, d'une vraisemblance de non-occupation de la zone concernée, d'une vraisemblance de 10 non-connaissance de la zone concernée et d'une vraisemblance de conflit sur la zone concernée.