FR 3095858 A1 20201113 FR 1904762 A 20190507 Description Titre de l'invention : Procédé de consolidation d'une trajectoire à partir de fragments de trajectoire. Domaine technique [0001] L'invention appartient au domaine de la génération de cartes haute-définition d'un réseau routier. Elle concerne en particulier un procédé pour consolider des trajectoires ou des données relatives au marquage au sol des limites de voies sur un réseau routier, dans le but de créer des cartes haute-définitions utilisables par des véhicules autonomes. Art antérieur [0002] Pour évoluer de manière sécurisée sur un réseau routier, les véhicules autonomes doivent se baser sur des cartes haute-définition. La précision des systèmes de navigation GNSS et les cartes classiques n'apportent pas la précision suffisante. Dans ce but, on s'intéresse aujourd'hui à établir des cartes routières numériques particulièrement précises, comprenant par exemple des limites de voies de circulations. La collecte et le traitement de ces données est une tâche complexe car des relevés concernant la configuration des voies de circulation doivent être effectués sur un réseau routier particulièrement étendu. Ces relevés sont souvent réalisés par des véhicules équipés de capteurs, tels que des Lidar ou des caméras, qui parcourent le réseau routier. Les données collectées sont alors traitées pour constituer des cartes haute-définition utilisables par des véhicules autonomes. [0003] Les capteurs utilisés pour la collecte sont par exemple des radars, des lidars ou des caméras. Les caméras sont particulièrement adaptées pour capturer les informations de marquage au sol. Ainsi, on connaît des techniques permettant d'obtenir une configuration des voies de circulations à partir d'une image capturée par une caméra embarquée sur un véhicule. Ainsi, à partir d'une position connue d'un véhicule et d'une image capturée à cette position, il est possible d'analyser les images pour en extraire les lignes de marquage au sol et reconstruire la configuration des voies sur une certaine distance depuis la position du véhicule. [0004] Par exemple, la figure 1 illustre une image 100 capturée par une caméra embarquée sur un véhicule à une position P. La position P du véhicule est par exemple une localisation géodésique obtenue par un système de navigation GNSS. L'image capturée est traitée par un algorithme configuré pour détecter des éléments de marquage au sol pour produire une image 101. L'image 101 montre des points ayant été détectés comme appartenant à des éléments de marquage au sol. A partir des points détectés, connaissant des caractéristiques de la caméra et la position P à laquelle l'image a été capturée, il est 2 possible d'obtenir les coordonnées de points 102 identifiés dans l'image 101, par rapport à la position de référence 103 du véhicule. Ainsi, un tel fragment comporte une donnée de localisation géographique, une direction ou une orientation, et une série de points dont les coordonnées sont relatives à la position du véhicule. Le champ de vision de la caméra étant nécessairement limité, les données obtenues ne concernent qu'un fragment de ligne de marquage au sol. Ce fragment doit alors être combiné à d'autres fragments obtenus pour d'autres positions de véhicules pour construire une carte précise. [0005] Toutefois, combiner différents fragments en un unique tracé précis et fiable n'est pas une opération triviale. Un premier problème réside dans le fait que le marquage au sol peut être partiellement effacé ou obstrué par d'autres véhicules. Les données sont alors incomplètes et il est difficile de faire correspondre un premier fragment avec un fragment suivant. En outre, la position géographique à laquelle a été obtenu un fragment est souvent imprécise, notamment lorsqu'elle est obtenue via un système de navigation GNSS. Ainsi, bien qu'obtenus à partir d'une image capturée à même emplacement, deux fragments pourront avoir une position de référence différente, cc qui complique encore la mise en correspondance des fragments. Il convient ainsi de consolider les lignes de marquage reconstituées à partir de nombreuses observations réalisées par d'autres véhicules sur le même itinéraire. [0006] Tl existe donc un besoin pour une technique permettant de combiner des relevés cor- respondant à des fragments de marquage au sol afin de produire une représentation haute définition des voies de circulation d'un réseau routier. Résumé de l'invention [0007] A cet effet, il est proposé un procédé de détermination d'une trajectoire consolidée à partir d'un premier fragment de trajectoire et d'au moins un second fragment de trajectoire, les fragments étant tels qu'ils comprennent une pluralité de coordonnées de points successifs relatifs à une même partie d'un segment routier. [0008] Le procédé est remarquable en ce qu'il comprend les étapes suivantes : Pour chaque fragment, association d'un point suivant à chaque point courant du fragment tel que le point suivant est le successeur du point courant dans une liste des points du fragment ordonnée selon un critère de distance des points par rapport à un point de départ, Partitionnement, selon un critère de densité, de l'ensemble de points résultant de l'union des premiers et seconds fragments et détermination d'un centroïde pour chaque partition, Génération d'un graphe tel que : - Chaque noeud est associé à un centroïde calculé, 3 - Un lien est établi depuis un premier noeud vers un second noeud lorsqu'un point courant appartenant à la partition dont le centroïde est associé au premier noeud est associé à un point suivant appartenant à une partition dont le centroïde est associé au second noeud, - Chaque lien entre un premier noeud et un second noeud du graphe est affecté d'un poids dont la valeur est fonction du nombre de points courants appartenant à la partition dont le centroïde est associé au premier noeud qui sont associés à un point suivant appartenant à une partition dont le centroïde est associé au second noeud. Détermination d'un chemin optimal dans le graphe généré selon les poids associés à chaque lien, et Calcul d'une trajectoire consolidée par interpolation d'une courbe entre les centroïdes associés aux noeuds compris sur le chemin déterminé. [0009] Au sens de l'invention, les ternies « fragments de trajectoire » désignent un ensemble de coordonnées de points successivement occupés par un véhicule, ou bien un ensemble de coordonnées de points successifs représentatif de la géométrie d'un marquage au sol détecté par un système d'assistance à la conduite, par exemple les coordonnées de points correspondant à une ligne de limite de voie de circulation, ou encore un ensemble de coordonnées de points successifs correspondant à une bordure de la chaussée. Plus généralement, un fragment de trajectoire désigne, dans la description qui va suivre, un ensemble de coordonnées dans un repère à deux ou trois dimensions, permettant de rendre compte de la géométrie d'un élément longitudinal caractéristique de la configuration d'une voie de circulation, ou de la trajectoire suivie par un véhicule en déplacement. [0010] 11 est ainsi proposé de regrouper les points issus de différentes observations en « clusters » pour chacun desquels un point, dit « centroïde », représentatif d'une position moyenne des points composant le cluster, est déterminé. [0011] Les coordonnées des points de trajectoires des premiers et seconds fragments comportant des imprécisions, une telle disposition permet de lisser les incertitudes liées à la position de ces différents points. [0012] Ces centroïdes constituent les noeuds d'un graphe dont les liens sont pondérés selon un nombre d'observations sous-jacentes permettant de relier un cluster à un autre. En mettant en oeuvre un algorithme de détermination d'un plus court chemin dans le graphe, le procédé permet d'obtenir des points représentatifs de la trajectoire la plus probable à partir d'une pluralité de fragments de trajectoire. [0013] En représentant les différents fragments trajectoire sous la forme d'un graphe pondéré, et en identifiant un chemin dans ce graphe, le procédé permet une conso- lidation peu coûteuse et fiable d'une trajectoire. Les noeuds du graphe étant établis sur la hase de centroïdes calculés à partir de groupement de points, sa complexité n'est pas proportionnelle au nombre de fragments utilisés pour la consolidation. [0014] Selon un mode de réalisation particulier, le procédé est tel que le poids affecté à un lien entre un noeud courant et un noeud suivant du graphe est en outre pondéré selon une différence entre l'azimut d'un centroïde associé au noeud courant par rapport au centroïde associé au noeud précédent le noeud courant, et l'azimut du centroïde associé au noeud suivant le noeud courant par rapport au centroïde associé au noeud courant. [0015] Ainsi, en comparant la direction du point suivant par rapport au point courant pour deux points courants successifs, le procédé permet de réduire l'impact de points potentiellement aberrants. Autrement dit, la pondération d'un lien entre un premier et un second noeud consécutif du graphe dépend d'un degré d'alignement du centroïde associé au second noeud avec les centroïdes associés aux noeuds qui le précède dans le graphe. En effet, un changement soudain et important d'orientation peut être caractéristique d'une valeur aberrante. [0016] Selon un mode de réalisation particulier, le procédé est tel qu'il comporte une étape préalable de transposition dans un repère commun des coordonnées des points composant les premiers et seconds fragments. [0017] Les fragments peuvent comprendre des points dont les coordonnées sont exprimées dans différents repères, comme par exemple dans un repère local au fragment, et/ou des points dont les coordonnées sont exprimées dans un système global, par exemple des coordonnées géodésiques. Lorsque les coordonnées des points sont exprimées dans un repère local au fragment, celui-ci est par exemple défini par la première position et l'orientation de la voiture au début de la détection du fragment. Par conséquent, des fragments provenant de différents véhicules utilisent des repères différents. La transposition des coordonnées dans un même système de référence permet d'établir des correspondances entre différents fragments. [0018] Selon une réalisation particulière, le procédé est tel que la détermination d'un centroïde pour une partition courante comprend des étapes de : Détermination d'un indice de confiance pour chacun des points de la partition, Calcul d'un barycentre à partir des points de la partition, un point étant pondéré dans le calcul du barycentre selon l'indice de confiance qui lui est associé. [0019] [0020] Ainsi, un point d'un fragment associé à un indice de confiance faible aura moins d'impact sur la position d'un centroïde qu'un point associé à un indice de confiance fort. De cette façon, la probabilité que le centroïde calculé appartienne à la trajectoire réelle à consolider est augmentée. Un indice de confiance est par exemple associé à un point par le système de détection, selon la fiabilité de la détection. [0021] Dans une réalisation particulière, l'indice de confiance associé à un point d'un fragment est fonction d'un degré d'alignement dudit point avec au moins deux points qui le précèdent dans une liste des points du fragment ordonnée selon un critère de distance des points par rapport à un point de départ. [0022] Ainsi, étant donné trois points A, B, C consécutifs d'un fragment, l'indice de confiance du point C est fonction de l'alignement de C avec les points A et B. De cette manière, le procédé permet d'associer un indice de confiance à chacun des points d'un fragment permettant de déterminer un centroïde de manière plus fiable. [0023] Selon un mode particulier de réalisation, l'étape de regroupement comprend la mise en oeuvre d'un algorithme de type mcan-shift. [0024] L'algorithme « mcan -shift » permet d'associer de manière itérative chaque point d'un ensemble au centroïde le plus proche, un centroïde étant déterminé par l'emplacement des points situés à proximité. L'algorithme effectue une partition de l'ensemble des points, car à la fin de son exécution, tous les points sont affectés à un groupe. Contrairement à d'autres algorithmes de partitionnement, l'algorithme mcanshift est avantageux car il ne nécessite pas que soit spécifié à l'avance le nombre de partitions. [0025] Selon une réalisation particulière, l'étape de détermination d'un chemin dans le graphe orienté met en oeuvre un algorithme de type Dijkstra. [0026] Les données des différents fragments étant représentées sous la forme d'un graphe orienté dont les liens sont pondérés par un nombre d'observations sous-jacentes, la mise en oeuvre d'un algorithme de détermination d'un chemin optimal de type Dijkstra permet d'obtenir rapidement et avec une faible complexité une liste ordonnée des points les plus susceptibles d'appartenir à la trajectoire à consolider. [0027] Selon un mode de réalisation particulier, l'étape d'interpolation d'une courbe comprend une interpolation polynomiale à partir des centroïdes compris sur le chemin déterminé dans le graphe. [0028] L'interpolation polynomiale permet d'obtenir des points intermédiaires entre les centroïdes. Lorsqu'il s'agit de représenter des trajectoires, des éléments longitudinaux de marquage au sol ou des bordures de chaussée, une interpolation polynomiale produit des résultats plus réalistes qu'une simple ligne brisée comprenant les points déterminés dans le graphe. [0029] Selon un autre aspect, l'invention concerne un dispositif de détermination d'une tra- jectoire consolidée à partir d'un premier fragment de trajectoire et d'au moins un second fragment de trajectoire correspondant à une même zone géographique, un fragment comprenant une pluralité de coordonnées de points successifs, le dispositif comprenant: 6 Un module d'association adapté pour associer, dans chaque fragment, un point suivant à chaque point courant du fragment tel que le point suivant est le successeur du point courant dans une liste des points du fragment ordonnée selon un critère de distance des points par rapport à un point de départ, Un module de partitionnement adapté pour partitionncr, selon un critère de densité, l'ensemble de points résultant de l'union des premiers et seconds fragments selon un critère de proximité et pour déterminer un centroïde pour chaque partition. Un module de génération d'un graphe tel que : - Chaque noeud est associé à un centroïde calculé, - Un lien est établi depuis un premier noeud vers un second noeud lorsqu'un point courant appartenant à la partition dont le centroïde est associé au premier noeud est associé à un point suivant appartenant à une partition dont le centroïde est associé au second noeud, - Chaque lien entre un premier noeud et un second noeud du graphe est affecté d'un poids dont la valeur est fonction du nombre de points courants appartenant à la partition dont le centroïde est associé au premier noeud qui sont associés à un point suivant appartenant à une partition dont le centroïde est associé au second noeud. Un module de détermination d'un chemin optimal dans le graphe généré selon les poids associés aux liens, et Un module de calcul d'une trajectoire consolidée par interpolation d'une courbe entre les centroïdes associés aux noeuds compris sur le chemin déterminé. [0030] Selon une réalisation particulière, le dispositif est tel que le module de génération d'un graphe est en outre configuré pour pondérer un lien entre un noeud courant et un noeud suivant du graphe selon une différence entre l'azimut d'un centroïde associé au noeud courant par rapport au centroïde associé au noeud précédent le noeud courant, et l'azimut du centroïde associé au noeud suivant le noeud courant par rapport au centroïde associé au noeud courant. [0031] L'invention concerne aussi un serveur comprenant un dispositif de consolidation tel que décrit ci-dessus. [0032] Selon encore un autre aspect, l'invention concerne un support d'information comportant des instructions de programme d'ordinateur configurées pour mettre en oeuvre les étapes d'un procédé de consolidation tel que décrit précédemment, lorsque les instructions sont exécutées par un processeur. [0033] Le support d'information peut être un support d'information non transitoire tel qu'un disque dur, une mémoire flash, ou un disque optique par exemple. 7 100341 Le support d'informations peut être n'importe quelle entité ou dispositif capable de stocker des instructions. Par exemple, le support peut comporter un moyen de stockage, tel qu'une ROM, RAM, PROM, EPROM, un CD ROM ou encore un moyen d'enregistrement magnétique, par exemple un disque dur. [0035] D'autre part, le support d'informations peut être un support transmissible tel qu'un signal électrique ou optique, qui peut être acheminé via un câble électrique ou optique, par radio ou par d'autres moyens. [0036] Alternativement, le support d'informations peut être un circuit intégré dans lequel le programme est incorporé, le circuit étant adapté pour exécuter ou pour être utilisé dans l'exécution du procédé en question. [0037] Selon encore un autre aspect, l'invention vise une carte haute-définition comportant au moins une représentation d'une limite de voie de circulation générée et/ou mise à jour selon le procédé en question. [0038] Les différents modes ou caractéristiques de réalisation précités peuvent être ajoutés indépendamment ou en combinaison les uns avec les autres, aux étapes du procédé de consolidation. Les serveurs, dispositifs et supports d'informations présentent au moins des avantages analogues à ceux conférés par le procédé auquel ils se rapportent. Brève description des dessins [0039] D'autres caractéristiques, détails et avantages de l'invention apparaîtront à la lecture de la description détaillée ci-après, et à l'analyse des dessins annexés, sur lesquels : [0040] [fig.1] La figure I illustre une méthode pour obtenir un fragment de trajectoire à partir d'une image capturée par une caméra embarquée dans un véhicule, [0041] [fig.24 La figure 2a représentes quatre fragments de trajectoires associés à une même zone géographique, [0042] [fig.211] La figure 2h représentes les quatre fragments de la figure la dont les co- ordonnées des points sont transposées dans un même repère, [0043] [fig.2c] La figure 2e est un exemple de partitionnernent des points appartenant à quatre fragments de trajectoire, [0044] [fig.2d] La figure 2d montre les groupements de la figure 2e pour lesquels des centroïdes ont été calculés, [0045] [fig.2e] la figure 2e est un graphe orienté construit à partir des fragments et des centroïdes calculés, [0046] [fig.2f] La figure 2f représente une trajectoire consolidée à partir du graphe de la figure 2e. [0047] [fig.3] La figure 3 illustre les principales étapes du procédé de consolidation, selon une réalisation particulière, et [0048] [fig.4] la figure 4 représente l'architecture d'un dispositif adapté pour mettre en 8 oeuvre le procédé de consolidation selon un mode particulier de réalisation. Description détaillée [0049] La figure 2a représente 4 fragments de trajectoire 200 à 203 comprenant chacun une pluralité de points. [0050] Dans un mode de réalisation particulier, un fragment de trajectoire est un fichier comprenant une structure de données JSON (JavaScript Object Notation) comprenant : Au moins un ensemble de points définis par des coordonnées. Les points d'un ensemble correspondent à un élément particulier détecté sur une route, comme par exemple une ligne de séparation de voies de circulation. Lorsque plusieurs éléments distincts sont détectés, le fichier peut comprendre plusieurs ensembles de points. Ainsi, chaque point du fragment peut être associé à un élément particulier détecté sur la route, et Au moins une position GNSS de référence du fragment, les coordonnées des points du fragment étant relatives à cette position de référence, [0051] Ces fragments sont par exemple obtenus selon la technique exposée en introduction en référence à la figure I et correspondent par exemple à différents relevés d'un même marquage au sol de limite de voie de circulation. Ils peuvent avoir été établis par un même véhicule à partir de plusieurs images capturées de façon consécutives, ou bien par différents véhicules circulant dans une même direction sur un segment routier. [0052] Les fragments sont générés par un véhicule équipé d'un système ADAS (Advanced driver-assistance systems) et transmis à un serveur de traitement mettant en oeuvre le procédé de consolidation selon un mode particulier de réalisation. Pour cela, le serveur comprend un processeur et une mémoire dans laquelle sont enregistrées des instructions configurécs pour mettre en oeuvre les étapes du procédé de consolidation lorsqu'elles sont exécutées par le processeur. Le serveur comprend en outre une interface de communication pour recevoir les fragments transmis par des véhicules et une base de données pour mémoriser les fragments en attente de consolidation [0053] Afin de pouvoir transmettre les fragments collectés, les véhicules sont équipés d'une interface de communication, par exemple une interface leur permettant de se connecter à un réseau d'accès cellulaire de type 3G, 4G ou LTE (Long Terni Evolution). Lorsqu'au moins deux fragments relatifs à une même zone géographique sont collectés par le serveur, le procédé de consolidation est mis en oeuvre selon les instructions enregistrées dans la mémoire du serveur afin de produire une trajectoire consolidée à partir des au moins deux fragments collectés, pouvant être utilisée pour mettre à jour ou construire une représentation haute définition du segment routier en question. [0054] Le procédé de consolidation va maintenant être décrit en référence à la figure 3. [0055] Lors d'une première étape 300, le serveur obtient au moins deux fragments de tra- 9 jectoircs correspondant à une même zone d'un segment routier. Pour cela, le serveur sélectionne un premier fragment à consolider et obtient sa localisation. Comme indiqué précédemment, un fragment peut comprendre une localisation GNSS correspondant à la position occupée par le véhicule à l'instant de capture de l'image à partir de laquelle le fragment a été obtenu. Cette information de localisation est utilisée par le serveur pour rechercher d'autres fragments de trajectoire relevés pour la même zone géographique. Par exemple, le serveur recherche des fragments associés à un même segment routier donné, ou une même partie d'un segment routier. [0056] Lorsqu'au moins deux fragments de trajectoire correspondant à une même zone géo- graphique ont été sélectionnés, le serveur transpose si nécessaire les coordonnées des points des fragments dans un repère commun. Pour cela, le serveur utilise les coordonnées d'au moins un point du fragment, données à la fois dans le repère local, grâce à l'analyse réalisée par le système ADAS et dans un repère global, grâce à un système de navigation de type GNSS, vers lequel on souhaite transposer les coordonnées. La transposition peut en outre prendre en compte une orientation du véhicule au début du fragment. Par exemple, lorsqu'un fragment comprend des points dont les coordonnées sont relatives à une position GNSS particulière, le serveur effectue un changement de repère afin que les coordonnées des points soient exprimées dans un système de coordonnées global, par exemple un système géodésique WGS84. [0057] De cette façon, il est possible de comparer entre elles les positions des points ap- partenant aux différents fragments, et en particulier d'aligner les fragments. La figure 2b montre les quatre fragments 200-203 de la figure 2a après que les différents points qui les composent aient été transposés dans un même repère. On constate que ces fragments, bien que correspondant à des relevés d'une même ligne de séparation de voie, ne se superposent pas exactement. Ceci est principalement dû au fait que chaque fragment est exprimé dans un repère local défini au début de la génération du fragment et associé à un véhicule particulier. A cela s'ajoute des imprécisions du système de positionnement GNSS utilisé par le véhicule lors de la génération du fragment, aux imprécisions de positionnement de la caméra sur le véhicule, aux imprécisions ou aux erreurs propres aux algorithmes de détection de marquage au sol dans les images capturées par la caméra. [0058] Lors d'une étape 301, le serveur procède pour chaque fragment sélectionné, à un chaînage des points composant le fragment. Autrement dit, pour chaque point d'un fragment, le serveur détermine et associe un point suivant. Sur les figures la, un tel chaînage est matérialisé par une flèche reliant des points consécutifs. [0059] Dans un mode de réalisation, chaque ensemble de points d'un fragment est ordonné par le système ADAS du véhicule. Ainsi, le point suivant un point courant est déterminé à partir de la structure de données JSON comprise dans le fragment, et en particulier à partir de l'ordre dans lequel sont listés dans la structure de données JSON les points appartenant à un objet détecté. [0060] Dans un autre mode de réalisation particulier, la détermination du point suivant pour un point courant comprend, pour chaque point d'un ensemble de points correspondant à un élément détecté, un calcul d'une distance entre ledit point et la position de référence du fragment. Il est ainsi possible d'associer un point courant avec le point suivant immédiatement le point courant dans une liste des points triées selon la distance calculée. [0061] Une telle association peut être mémorisée de manière classique dans une structure de donnée telle qu'une liste chainéc, ou bien dans une base de données. [0062] A l'étape 302, le serveur agrège les données des différents fragment sélectionnés de façon à obtenir un unique ensemble comprenant les points issus des fragments sélectionnés et partitionne cet ensemble selon un critère de proximité. Le partitionnement (« clustering » en anglais) est de préférence effectué selon un algorithme de type meanshift. [0063] A partir de cette représentation agrégée des fragments sélectionnés, le serveur détermine différents groupes de points. Les points sont regroupés selon un critère de densité prédéterminé, de façon à former des « clusters ». Par exemple, le serveur peut mettre en oeuvre un algorithme de type mean-shift pour déterminer des groupes de points. D'autres algorithmes de regroupement, par exemple HDBSCAN ou K-MEANS peuvent également être envisagés. La figure 2c représente les quatre fragments 200-203 alignés après l'application d'un algorithme de partitionnement. Les groupements déterminés par le serveur sont matérialisés par des ellipses. On note qu'une partition comprend normalement des points appartenant à différent fragments. [0064] Les groupes étant déterminés selon un critère de proximité, ils définissent une zone géographique de taille réduite comprise sur la trajectoire à consolider. [0065] Pour chaque groupe ainsi déterminé, le serveur calcule ensuite un centroïde. Selon une réalisation particulière, le centroïde correspond à l'isobarycentre de l'ensemble des points appartenant au groupe considéré, c'est-à-dire à une position moyenne des différents points composant un groupe. Ainsi, un centroïde représente la position probable, selon deux ou trois composantes, d'un point sur la trajectoire consolidée. Par exemple, pour 3 points pi 22 et 23, avec 2= (xi, yi, zi), le centroïde de ces trois points pc = ((x1-Fx2+x3)/3, (y1-Fy2-Fy,)/3, (z1-Fz2-Fz,)/3). Sur la figure 2d, les centroïdes calculés pour les différents groupes de points sont représentés par le symbole « + ». [0066] Selon un mode particulier de réalisation, un indice de confiance est associé à au moins un point d'au moins un fragment de trajectoire. L'indice de confiance correspondant à une probabilité d'erreur sur la position du point considéré. Un tel indice de confiance peut être renseigné dans un fragment par un système de ADAS lorsqu'il 11 existe une incertitude de la détection d'une position d'un point. [0067] Selon un autre mode particulier de réalisation, l'indice de confiance est calculé par le serveur mettant en oeuvre le procédé. Par exemple, l'indice de confiance associé à un point particulier d'un fragment est déterminé selon le degré d'alignement du point avec au moins deux points qui le précèdent dans le fragment. Par exemple, lorsqu'un point diverge de plus de 60° par rapport à une ligne passant par les deux points précédent, l'indice de confiance est positionné à une valeur basse. [0068] Selon une réalisation particulière, le centroïde est un barycentre calculé à partir des points de la partition, un point étant pondéré dans le calcul du barycentre selon l'indice de confiance qui lui est associé. De cette manière, la position du centroïde tient moins compte de la position d'un point dont la position est susceptible d'être erroné. [0069] L'étape 302 permet ainsi de déterminer, à partir de différents fragments, un nouvel ensemble de points. Dans cc nouvel ensemble, la position de chaque point est déterminée par consolidation à partir de plusieurs observations. Par conséquent, plus le nombre d'observations, c'est-à-dire plus le nombre de fragment disponibles pour la zone est important, plus la position des points ainsi déterminés sera précise. [0070] A l'étape 303, le serveur génère un graphe ayant pour noeuds les centroïdes dé- terminés. Pour chaque noeud courant de l'arbre, le serveur établi un lien avec un noeud suivant lorsque le groupe de point à partir duquel le centroïde courant a été calculé comprend au moins un point ayant été chaîné avec un point appartenant au groupe de points à partir duquel le centroïde du noeud suivant a été calculé. Par exemple, en référence à la figure 2c, le groupement 204 comprend deux points chaînés avec des points appartenant au groupement 205, et un point chaîné avec un point appartenant au groupement 206. Par conséquent, le noeud généré pour le centroïde du groupe 204 sera relié par un premier lien au noeud généré pour le centroïde correspondant au groupe 205 et par un second lien au noeud généré pour le centroïde correspondant au groupement 206. [0071] En outre, le serveur associe un poids aux liens du graphe de telle sorte que le poids d'un lien entre un noeud associé au centroïde d'un premier groupe et un noeud associé au centroïde d'un second groupe soit déterminé au moins par le nombre de points du premier groupe chaînés à un point du second groupe. Par exemple, en référence à la figure 2c, le serveur va affecter un poids de « 2» au lien entre le noeud généré pour le centroïde du groupe 204 et le noeud généré pour le centroïde correspondant au groupe 205, et un poids de « 1 » au lien entre le noeud généré pour le centroïde du groupe 204 et le noeud généré pour le centroïde correspondant au groupe 206. En effet, le groupement 204 comprend deux points chaînés avec des points appartenant au groupement 205, et un point chaîné avec un point appartenant au groupement 206. [0072] Selon une réalisation particulière, le poids affecté à un lien dans le graphe à l'étape 12 303 est altéré selon une différence entre l'azimut d'un centroïde courant par rapport au centroïde précédent le centroïde courant, et l'azimut du centroïde suivant le centroïde courant. Pour cela, la détermination d'un poids affecté à un lien entre un noeud correspondant à un centroïde courant et un noeud correspondant à un centroïde suivant comprend des étapes de: détermination d'un premier azimut du centroïde suivant par rapport au centroïde courant, détermination d'un second azimut du centroïde précédent le noeud par apport au centroïde courant, et réduction du poids associé au lien entre un noeud correspondant à un centroïde courant et un noeud correspondant à un centroïde suivant lorsque la différence entre le premier azimut et le second azimut est supérieure à un seuil. [0073] Une telle disposition permet de réduire l'impact d'une valeur aberrante dans un ensemble de points. En effet, lorsqu'un ensemble de points d'un fragment de trajectoire décrit par exemple le tracé d'une ligne de séparation de voie détectée sur une route, ces points sont sensiblement alignés. Ainsi, lorsque l'orientation du point suivant par rapport au point courant est sensiblement différente de l'orientation du point courant par rapport au point précédent, il est probable que le point suivant soit mal positionné. En réduisant le poids du lien entre le centroïde courant et le centroïde suivant lorsque cet écart d'azimut est supérieur à un seuil, par exemple supérieur à 60', le procédé donne plus de poids aux valeurs cohérentes et moins de poids aux points aberrants. La consolidation est ainsi améliorée. [0074] La figure 2e montre un tel graphe généré à partir des fragments 200 à 203. Les symboles «+ » représentent les noeuds du graphe, chaque noeud correspondant à un groupe de points déterminé à l'étape 302 et comprenant en particulier le centroïde calculé pour chaque groupe. Les noeuds sont reliés entre eux par des liens affectés d'un poids selon le principe décrit ci-dessus. [0075] On constate que plusieurs chemins sont possibles entre la racine et les feuilles du graphe représenté sur la figure 2e. Afin de déterminer la trajectoire la plus probable, le serveur met en oeuvre lors d'une étape 304 un algorithme de recherche du plus court chemin prenant en compte les poids affectés aux liens. Les liens ayant les poids les plus importants sont privilégiés, car le poids est fonction du nombre d'observations. Pour cela, le serveur met par exemple en oeuvre un algorithme de type Dijkstra ou A*, ou tout autre algorithme de calcul d'un meilleur chemin dans un graphe. Le procédé permet ainsi d'obtenir une succession des centroïdes compris sur la trajectoire la plus probable de la trajectoire à consolider afin d'en déterminer la géométrie. Une telle géométrie est représentée sur la figure 2f. [0076] Lors d'une étape 305, le serveur effectue une interpolation polynomiale à partir des 13 points déterminés à l'étape 304 de façon à obtenir une courbe représentative de la trajectoire la plus probable. [0077] La figure 4 représente l'architecture d'un dispositif 400 adapté pour mettre en oeuvre le procédé de consolidation selon un mode de réalisation particulier. [0078] Le dispositif 400 comprend un espace de stockage 402, par exemple une mémoire MEM, une unité de traitement 401 équipée par exemple d'un processeur FROC. L'unité de traitement peut être pilotée par un programme 403, par exemple un programme d'ordinateur PGR, mettant en oeuvre le procédé de consolidation tel que décrit précédemment en référence à la figure 3, et notamment les étapes suivantes : Obtention au moins un premier et un second fragments de trajectoires cor- respondant à une même zone géographique, Association, pour chaque point courant d'un fragment de trajectoire, d'un point suivant appartenant au même fragment, Partitionnement de l'ensemble de points résultant de l'union des premiers et seconds fragments selon un critère de proximité et calcul d'un centroïde pour chaque partition. Génération d'un graphe orienté tel que : - Chaque noeud est associé à un centroïde calculé, - Un lien est établi depuis un premier noeud vers un second noeud lorsqu'un point courant appartenant à la partition dont le centroïde est associé au premier noeud est associé à un point suivant appartenant à une partition dont le centroïde est associé au second noeud, - Chaque lien entre un premier noeud et un second noeud du graphe est affecté d'un poids dont la valeur est fonction du nombre de points courants appartenant à la partition dont le centroïde est associé au premier noeud qui sont associés à un point suivant appartenant à une partition dont le centroïde est associé au second noeud, Détermination d'un chemin dans le graphe généré tenant compte des poids associés à chaque lien, et Calcul d'une trajectoire consolidée par interpolation d'une courbe entre les centroïdes compris sur le chemin déterminé. [0079] À l'initialisation, les instructions du programme d'ordinateur 403 sont par exemple chargées dans une mémoire RAM (Random Access Memory en anglais) avant d'être exécutées par le processeur de l'unité de traitement 401. Le processeur de l'unité de traitement 401 met en oeuvre les étapes du procédé de consolidation selon les instructions du programme d'ordinateur 403. [0080] Pour cela, le dispositif 400 comprend, outre la mémoire 402, des moyens de corminu- 14 nication 404 (COM) permettant au dispositif de se connecter à un réseau de télécommunication et d'échanger des données avec d'autres dispositifs par l'intermédiaire du réseau de télécommunications, et en particulier de recevoir des fragments de trajectoires. L'interface de communication est par exemple une interface réseau Ethernet adaptée pour échanger des messages conformes au protocole TCP/IP. [0081] Le dispositif 400 comprend un module d'association 405 adapté pour associer chaque point courant d'un fragment de trajectoire à d'un point suivant appartenant au même fragment. Un tel module est par exemple mis en oeuvre par des instructions de programme d'ordinateur configurées pour itérer sur chaque point du fragment et pour mémoriser dans une structure de données une association entre chaque point courant et un point suivant, le point suivant étant déterminé selon un critère de distance par rapport à une position dc référence. La structure de données est par exemple une liste chaînée mémorisée dans la mémoire 402 du dispositif, ou encore une base de données. [0082] Le dispositif 400 comprend aussi un module de partitionnement 406 adapté pour par- titionner l'ensemble de points résultant de l'union des premiers et seconds fragments selon un critère de proximité et pour calculer un centroïde pour chaque partition. Dans un mode de réalisation particulier, le module est mis en oeuvre par des instructions de programme d'ordinateur mémorisées dans la mémoire 402 du dispositif pour être exécutées par le processeur 401. Le module 406 comprend des instructions configurées pour appliquer un algorithme dc clustering à l'ensemble des points compris dans les fragments considérés, c'est-à-dire un algorithme configuré pour affecter chaque point appartenant au premier ou au second fragment de trajectoire à un groupe de points, l'affectation d'un point à un groupe étant réalisée selon un critère de proximité et/ou de densité locale. Par exemple, les instructions mettent en oeuvre un algorithme de clustering de type « mean-shift ». Le module 406 est en outre configuré pour calculer un centroïde pour chaque groupe de points déterminé. Un tel calcul de centroïde peut, dans un mode de réalisation particulier, être réalisé par l'algorithme de partitionnement. [0083] Le dispositif 400 comprend également un module 407 de génération d'un graphe orienté. Dans une réalisation particulière, le module 407 est mis en oeuvre par des instructions de programme d'ordinateur mémorisées dans la mémoire 402 en vue d'être exécutées par le processeur 401. De telles instructions sont configurées pour manipuler une structure de données mémorisée dans la mémoire 402 du dispositif 400 et adaptée pour représenter un graphe orienté, et en particulier, pour générer un graphe dont chaque noeud a pour attribut un centroïde calculé par le module 406, et dans lequel un lien est établi depuis un premier noeud vers un second noeud lorsqu'un point courant appartenant à la partition dont le centroïde est associé au premier noeud a été associé par le module 405 à un point suivant appartenant à une partition dont le centroïde est associé au second noeud, et dont chaque lien entre un premier noeud et un second noeud du graphe est affecté d'un poids dont la valeur est fonction du nombre de points courants appartenant à la partition dont le centroïde est associé au premier noeud qui sont associés à un point suivant appartenant à une partition dont le centroïde est associé au second noeud. [0084] Le dispositif 400 comprend en outre un module 408 de détermination d'un chemin dans le graphe généré tenant compte des poids associés à chaque lien. Pour cela, le module 408 peut mettre en oeuvre, par des instructions mémorisées dans la mémoire 401, un algorithme de calcul d'un chemin optimal dans un graphe, par exemple un algorithme de type Dijkstra. Le module 408 applique un tel algorithme au graphe généré par le module 407 afin d'établir une liste ordonnée des centroïdes correspondant aux noeuds compris sur le chemin déterminé. [0085] Le dispositif 400 comprend enfin un module 409 de détermination d'une trajectoire consolidée par interpolation d'une courbe entre les centroïdes compris sur le chemin déterminé. Pour cela, le module comprend des instructions de programme d'ordinateur mémorisées dans la mémoire 402 et configurées pour mettre en oeuvre, lorsqu'elles sont exécutées par le processeur 401, une interpolation polynomiale à partir des coordonnées des centroïdes sélectionnés par le module 408. [0086] Dans un mode de réalisation particulier, le dispositif comprend un module 410 adapté pour transposer les coordonnées de points compris dans les fragments considérés dans un repère commun. Le module 410 est par exemple mis en oeuvre par des instructions de programme d'ordinateur configurées pour convertir des coordonnées de points données relativement à une position initiale du fragment, en coordonnées absolue, par exemple en coordonnées dans un système de coordonnées W0S84. La conversion consiste en un changement de repère réalisé grâce à une donnée de localisation du véhicule ayant généré le fragment dans le système de coordonnées absolue. [0087] Selon un mode particulier de réalisation, le module 407 de génération d'un graphe est en outre configuré pour pondérer un lien entre un noeud courant et un noeud suivant du graphe selon une différence entre l'azimut d'un centroïde associé au noeud courant par rapport au centroïde associé au noeud précédent le noeud courant, et l'azimut du centroïde associé au noeud suivant le noeud courant par rapport au centroïde associé au noeud courant. Pour cela, le module peut comprendre des instructions de programme d'ordinateur configurées pour calculer la pente d'une droite passant par le centroïde associé à un noeud courant et le centroïde associé au noeud précédent le noeud courant, et pour calculer la pente d'une droite passant par le centroïde associé au noeud courant et le centroïde associé au noeud suivant, pour comparer les pentes calculées, et pour déterminer un poids selon la différence des pentes. 16 [0088] Selon une réalisation particulière, le dispositif de consolidation est compris dans un serveur de traitement. Le serveur de traitement peut mettre en oeuvre le procédé de consolidation pour mettre à jour et/ou construire une carte haute-résolution comprenant au moins une représentation d'une limite de voie de circulation consolidée à partir de fragments de trajectoire collectées par des véhicules circulant sur le réseau routier à cartographier. 17 [Revendication 1] REVENDICATIONSProcédé de détermination d'une trajectoire consolidée à partir d'un premier fragment de trajectoire et d'au moins un second fragment de trajectoire, les fragments étant tels qu'ils comprennent une pluralité de coordonnées de points successifs relatifs à une même partie d'un segment routier, le procédé étant caractérisé en ce qu'il comprend les étapes suivantes : Pour chaque fragment, association (301) d'un point suivant à chaque point courant du fragment tel que le point suivant est le successeur du point courant dans une liste des points du fragment ordonnée selon un critère de distance des points par rapport à un point de départ, Partitionnement (302), selon un critère de densité, de l'ensemble de points résultant de l'union des premiers et seconds fragments et détermination d'un centroïde pour chaque partition, Génération (303) d'un graphe tel que : - Chaque noeud est associé à un centroïde calculé, - Un lien est établi depuis un premier noeud vers un second noeud lorsqu'un point courant appartenant à la partition dont le centroïde est associé au premier noeud est associé à un point suivant appartenant à une partition dont le centroïde est associé au second noeud, - Chaque lien entre un premier noeud et un second noeud du graphe est affecté d'un poids dont la valeur est fonction du nombre de points courants appartenant à la partition dont le centroïde est associé au premier noeud qui sont associés à un point suivant appartenant à une partition dont le centroïde est associé au second noeud, Détermination (304) d'un chemin optimal dans le graphe généré selon les poids associés à chaque lien, et Calcul (305) d'une trajectoire consolidée par interpolation d'une courbe entre les centroïdes associés aux noeuds compris sur le chemin déterminé. 18 [Revendication 2] Procédé selon la revendication 1 dans lequel un lien entre un noeud courant et un noeud suivant du graphe est en outre pondéré selon une différence entre l'azimut d'un centroïde associé au noeud courant par rapport au centroïde associé au noeud précédent le noeud courant, et l'azimut du centroïde associé au noeud suivant le noeud courant par rapport au centroïde associé au noeud courant. [Revendication 3] Procédé selon l'un quelconque des revendications précédentes dans lequel la détermination d'un centroïde pour une partition courante comprend des étapes de : Détermination d'un indice de confiance pour chacun des points de la partition, Calcul d'un barycentre à partir des points de la partition, un point étant pondéré dans le calcul du barycentre selon l'indice de confiance qui lui est associé. [Revendication 4] Procédé selon la revendication 3 dans lequel la valeur de l'indice de confiance associé à un point d'un fragment est fonction d'un degré d'alignement dudit point avec au moins deux points qui le précèdent dans une liste des points du fragment ordonnée selon un critère de distance des points par rapport à un point de départ. [Revendication 5] Procédé selon l'une quelconque des revendications précédentes dans lequel l'étape de partitionnement comprend la mise en oeuvre d'un algorithme de type « mean-shift ». [Revendication 6] Procédé selon l'une quelconque des revendications précédentes dans lequel l'étape de détermination d'un chemin clans le graphe met en oeuvre un algorithme de type Dijkstra. [Revendication 7] Procédé selon l'une quelconque des revendications précédentes dans lequel l'étape d'interpolation d'une courbe comprend une interpolation polynomiale. [Revendication 8] Dispositif de détermination d'une trajectoire consolidée à partir d'un premier fragment de trajectoire et d'au moins un second fragment de trajectoire correspondant à une même zone géographique, un fragment comprenant une pluralité de coordonnées de points successifs, le dispositif comprenant: Un module (405) d'association adapté pour associer, dans chaque fragment, un point suivant à chaque point courant du fragment tel que le point suivant est le successeur du point 19 courant dans une liste des points du fragment ordonnée selon un critère de distance des points par rapport à un point de départ, Un module (406) dc partitionnement adapté pour partitionncr, selon un critère de densité, l'ensemble de points résultant de l'union des premiers et seconds fragments selon un critère de proximité et pour déterminer un centroïde pour chaque partition, Un module (407) de génération d'un graphe tel que : - Chaque noeud est associé à un centroïde calculé, - Un lien est établi depuis un premier noeud vers un second noeud lorsqu'un point courant appartenant à la partition dont le centroïde est associé au premier noeud est associé à un point suivant appartenant à une partition dont le centroïde est associé au second noeud, - Chaque lien entre un premier noeud et un second noeud du graphe est affecté d'un poids dont la valeur est fonction du nombre de points courants appartenant à la partition dont le centroïde est associé au premier noeud qui sont associés à un point suivant appartenant à une partition dont le centroïde est associé au second noeud, Un module (408) de détermination d'un chemin optimal dans le graphe généré selon les poids associés aux liens, et Un module (409) de calcul d'une trajectoire consolidée par in- terpolation d'une courbe entre les centroïdes associés aux noeuds compris sur le chemin déterminé. [Revendication 9] [Revendication 10] Dispositif selon la revendication 8 dans lequel le module de génération d'un graphe est en outre configuré pour pondérer un lien entre un noeud courant et un noeud suivant du graphe selon une différence entre l'azimut d'un centroïde associé au noeud courant par rapport au centroïde associé au noeud précédent le noeud courant, et l'azimut du centroïde associé au noeud suivant le noeud courant par rapport au centroïde associé au noeud courant. Serveur comprenant un dispositif de consolidation selon l'une 20 quelconque des revendication 8 ou 9.