Brevet FR3024699A1 — publié le 20160212

DOMAINE TECHNIQUE AUQUEL SE RAPPORTE L'INVENTION La présente invention concerne de manière générale l'aide à la conduite des véhicules automobiles. Elle concerne plus particulièrement un système d'aide à la conduite et un procédé mis en oeuvre dans un tel système. L'invention s'applique particulièrement avantageusement dans le cas où différents modules délivrent des données de perception de l'environnement du véhicule. ARRIERE-PLAN TECHNOLOGIQUE On connait les systèmes d'aide à la conduite comprenant au moins un module de réception conçu pour recevoir des données de perception d'un environnement routier et un module de commande conçu pour commander un système embarqué, par exemple un avertisseur visuel ou sonore, ou un actionneur (tel qu'un régulateur de vitesse ou un système de freinage automatique d'urgence). Le module de commande agit sur le système embarqué en fonction des données de perception reçues, générées par exemple par un capteur tel qu'une 20 caméra vidéo. On prévoit en général à cet égard de surveiller, à l'aide des données de perception, un élément précis de l'environnement rencontré par le véhicule : par exemple, dans le cas des systèmes de freinage automatique d'urgence, on surveille la distance du prochain obstacle rencontré par le véhicule. 25 OBJET DE L'INVENTION Dans ce contexte, la présente invention propose un système d'aide à la conduite comprenant au moins un module de réception conçu pour recevoir des données de perception d'un environnement routier et un module de commande conçu pour commander un système embarqué, caractérisé par un module de 30 conversion conçu pour générer, à partir des données de perception, une pluralité d'instances de classes d'une ontologie mémorisée par le système d'aide à la conduite et définissant des relations entre classes, et un outil de raisonnement conçu pour déduire, sur la base de l'ontologie, au moins une propriété d'une instance de ladite pluralité, dans lequel le module de commande est conçu pour 3024699 2 commander le système embarqué sur la base de la propriété déduite. L'utilisation de l'ontologie et des relations entre classes définies dans l'ontologie permet de tenir compte des interactions susceptibles de se produire entre les différents objets de l'environnement routier et d'en déduire (voire de 5 prédire) des informations qui ne ressortent pas de l'observation séparée des différents objets. D'autres caractéristiques avantageuses et non limitatives du système d'aide à la conduite conforme à l'invention sont les suivantes : - le module de conversion comprend un bloc de construction d'un monde 10 numérique comprenant des objets déterminés sur la base des données de perception et un bloc de création desdites instances sur la base des objets déterminés; - les données de perception comprennent des données proprioceptives émises par un ordinateur de bord et/ou des données de localisation générées par 15 un système de localisation et/ou des données de mesure générées par un capteur et/ou des données de connaissance externe reçues d'un système de communication ; - le bloc de construction comprend un sous-bloc de génération d'un horizon numérique conçu pour déterminer au moins un desdits objets sur la base des données de localisation et d'une carte numérique ; - le système embarqué est un avertisseur ou un actionneur. L'invention propose également un procédé mis en oeuvre dans un système d'aide à la conduite comprenant les étapes suivantes : - réception de données de perception d'un environnement routier ; - génération, à partir des données de perception, d'une pluralité d'instances de classes d'une ontologie mémorisée par le système d'aide à la conduite et définissant des relations entre classes ; - déduction, par un outil de raisonnement et sur la base de l'ontologie, d'au moins une propriété d'une instance de ladite pluralité, - commande d'un système embarqué sur la base de la propriété déduite. 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. 3024699 3 Sur les dessins annexés : - la figure 1 représente un exemple d'architecture envisageable pour un système d'aide à la conduite conforme aux enseignements de l'invention ; - la figure 2 représente, sous forme de modules fonctionnels, les 5 traitements effectués par le processeur du système de la figure 1 ; - la figure 3 représente en détail l'un des modules de la figure 2; - la figure 4 représente schématiquement un exemple de contexte dans lequel le système d'aide à la conduite peut être utilisé. La figure 1 représente un exemple d'architecture envisageable pour un 10 système d'aide à la conduite conforme aux enseignements de l'invention. Un tel système d'aide à la conduite est embarqué dans un véhicule automobile V1 afin d'assister le conducteur dans sa conduite dans un environnement routier, tel que celui représenté schématiquement à titre d'exemple en figure 4. 15 Dans l'exemple de la figure 1, un processeur PROC met en oeuvre certaines fonctionnalités, telles que celles présentées ci-dessous en référence aux figures 2 et 3, du fait de l'exécution par ce processeur de programmes d'ordinateur mémorisés dans une mémoire MEM associée au processeur PROC. En pratique, le processeur PROC est par exemple un microprocesseur et 20 la mémoire MEM peut comprendre une mémoire vive et/ou un disque dur. En variante, on pourrait prévoir d'utiliser un circuit intégré à application spécifique (ou ASIC pour "Application Specific Integrated Circuit"). Le processeur PROC reçoit, au niveau d'un module de réception REC (par exemple une interface de communication), des données de perception 25 délivrées par différents modules équipant le véhicule, notamment : - des données proprioceptives DvEH (ou données véhicule - disponibles à bord du véhicule - par exemple, la vitesse, l'accélération) délivrées par exemple par un ordinateur de bord VEH, - des données de localisation Drac délivrées par un système de 30 navigation (ici un système de navigation par satellite GNSS, en variante ce pourrait être un système GPS, un système de localisation par SLAM utilisant des caméras ou lasers...), - des données de mesure DMES délivrées par un capteur (ici une caméra vidéo CAM ; en variante, un système radar ou laser) et 3024699 4 - des données de connaissance externe DExT délivrées par un système de communication COMM (par exemple un système de communication sans fil véhicule-véhicule ou véhicule-architecture, parfois dénommé V2X). Sur la figure 1, ces différents modules sont représentés liés en différents 5 points au processeur PROC. On peut toutefois prévoir en pratique que les différents modules communiquent avec le processeur PROC au moyen d'un mécanisme commun, par exemple au moyen d'un bus de communication reliant le processeur PROC (i.e. son interface de communication REC) et les différents modules. 10 Le système d'aide à la conduite de la figure 1 comprend un avertisseur (visuel et/ou sonore) ATT, par exemple un avertisseur de distance (en anglais "Distance Waming"), et un actionneur ACT, par exemple un régulateur de vitesse (ou ACC pour "Automatic Cruise Contre) ou un système de freinage d'urgence (ou AEB pour "Automatic Emergency Braking"). 15 Le processeur PROC génère des signaux de commande CMDATT et CMDACT destinés respectivement à l'avertisseur ATT et à l'actionneur ACT sur la base notamment des données de perception reçues, selon les mécanismes décrits ci-dessous en référence aux figures 2 et 3. La figure 2 représente, sous forme de modules fonctionnels, les 20 traitements effectués par le processeur de la figure 1. Le système d'aide à la navigation comprend ainsi un module de conversion 10 conçu pour générer, à partir des données de perception précitées, des instances de classes définies au sein d'une ontologie mémorisée dans le système d'aide à la navigation, par exemple dans la mémoire MEM. L'ontologie 25 est par exemple éditée au format OWL pour "Ontology Web Language". Les classes sont des représentations des différents types d'objets susceptibles d'être rencontrés dans l'environnement routier où évolue le véhicule, par exemple des véhicules, des vulnérables (piétons, animaux, cycles, etc.) et des infrastructures routières (intersections, stop, passage piéton, etc.). 30 Dans l'ontologie, chaque classe peut être caractérisée par au moins une propriété (éventuellement plusieurs) qui décrit une action ou un comportement de l'objet concerné, par exemple la propriété "ralentir" pour la classe associée à l'objet "véhicule" ou la propriété "traverser" pour la classe associée à l'objet "piéton". 3024699 5 L'ontologie définit des relations entre les différentes classes, par exemple au moyen de règles qui définissent de telles relations lorsque certaines conditions sont respectées. Par exemple, un véhicule freine à l'approche d'un stop et s'arrête au stop, ou un piéton proche d'un passage piéton est susceptible de traverser la 5 chaussée, ou encore un véhicule ralentit lorsqu'un piéton est susceptible de traverser la chaussée. On désigne ici par "ontologie de base", référencée 20 en figure 2, la définition des classes et des relations entre classes ; cette définition donne une description conceptuelle de l'environnement routier (objets et évènements que l'on 10 peut trouver dans un tel environnement routier), sans application à un contexte routier particulier. Le module de conversion 10 comprend par exemple un bloc de construction 12 d'un monde numérique à partir des données de perception DVEH, DLOC, DMES, DEXT décrites plus haut. Le monde numérique est une structure de 15 données qui représente l'ensemble des objets OBJ; perçus par le véhicule sur la base des données de perception DVEH, DLOC, DMES, DEXT. En pratique, le monde numérique est par exemple défini par une liste des objets perçus OBJ; et par les caractéristiques de ces objets (par exemple leur situation dans l'espace). Comme représenté schématiquement sur la figure 4, ces objets sont par 20 exemple un piéton P (détecté par exemple par les données de mesure DMES issues de la caméra CAM), un passage piéton C (connu grâce aux données de localisation DLOC et à une carte numérique 120 mémorisée, comme expliqué plus bas en référence à la figure 3) et un véhicule V2 (situé devant le véhicule V1 équipé du système d'aide à la conduite et connu grâce aux données de mesure 25 DMES et/ou à des données de connaissance externe DEXT reçues par exemple du véhicule V2). On décrit plus bas en référence à la figure 3 un exemple de bloc de construction 12. Le module de conversion 10 comprend également un bloc de création 14 30 d'instances INST; correspondant respectivement aux objets OBJ; du monde numérique. Précisément, pour chaque objet OBJ; du monde numérique, le bloc de création 14 crée une instance INST; de la classe associée (dans l'ontologie) au type de l'objet concerné. L'instance de classe INST; ainsi créée a des propriétés 3024699 6 définies en fonction des caractéristiques de l'objet OBJ; dans le monde numérique (par exemple des propriétés de position, de vitesse, etc). Dans l'exemple précité, sont ainsi créées une instance INSTp de la classe "piéton", une instance INSTc de la classe "passage piéton" et une instance 5 INSTv2 de la classe "véhicule". Les instances INST; générées en sortie du module de conversion 10 sont associées à l'ontologie de base 20 (mémorisée par exemple dans la mémoire MEM) au moyen d'un module d'association 30, qui peut ainsi délivrer une ontologie complétée ONT modélisant l'environnement routier perçu par le véhicule 10 V1 équipé du système d'aide à la conduite. Comme représenté en pointillés en figure 2, l'ontologie complétée ONT peut inclure en outre des informations sur l'état ST du véhicule V1 équipé du système d'aide à la conduite (informations produites par un sous-bloc 110 de génération de l'état du véhicule décrit plus bas en référence à la figure 3). 15 Un outil de raisonnement 40, ou raisonneur, est alors appliqué à l'ontologie complétée ONT afin d'en déduire des propriétés implicites de certaines instances de classe INSTi, ce qui permet en outre de prédire certaines de ces propriétés PRED. On utilise par exemple un raisonneur de type Pellet, ou Fact++, ou Racer, ou encore Hermit. 20 Dans l'exemple déjà utilisé, le raisonneur applique les règles mentionnées plus haut ("un piéton proche d'un passage piéton est susceptible de traverser la chaussée" et "un véhicule ralentit lorsqu'un piéton est susceptible de traverser la chaussée") aux instances créées INSTp, INSTc, INSTv2 et en déduit que le véhicule V2 va (probablement) ralentir. 25 Un module de commande 50 reçoit les propriétés déduites (notamment les propriétés prédites) PRED par l'outil de raisonnement 40 et génère les informations de commande CMDATT, CMDACT en tenant compte de ces propriétés déduites PRED. Plus précisément, le module de commande 50 peut utiliser des 30 mécanismes classiquement utilisés dans les systèmes d'aide à la conduite pour générer les commandes CMDATT, CMDACT, en y ajoutant la prise en compte des informations déduites PRED. En variante, on peut prévoir que le module de commande détienne plus d'informations sur l'état des objets que la liste d'instances de classes se trouvant 3024699 7 dans l'ontologie. Ici, dans le cas où l'actionneur ACT est un régulateur de vitesse, la vitesse du véhicule V1 équipé du régulateur de vitesse est par exemple régulée selon un mécanisme classique en fonction de la vitesse du véhicule V2 telle que 5 détectée au moyen d'un capteur, par exemple la caméra CAM. En revanche, lorsque le module de commande 50 reçoit la propriété prédite PRED indiquant que le véhicule V2 va ralentir, le module de commande 50 envoie une commande CMDACT au régulateur de vitesse afin d'adapter la vitesse du véhicule V1 (équipé du régulateur de vitesse) au ralentissement prévu du véhicule V2, ce avant même 10 le ralentissement effectif du véhicule V2. De même, dans le cas où l'avertisseur ATT est un avertisseur de survitesse, le seuil de déclenchement de l'avertisseur ATT (vitesse au-delà de laquelle un signal lumineux ou sonore est émis par l'avertisseur ATT) peut être fixé selon un mécanisme classique en fonction de la vitesse du véhicule V2 telle 15 que détectée au moyen d'un capteur, par exemple la caméra CAM. En revanche, lorsque le module de commande 50 reçoit la propriété prédite PRED indiquant que le véhicule V2 va ralentir, le module de commande 50 envoie une commande CMDATT à l'avertisseur ATT de manière à réduire le seuil de déclenchement de l'avertisseur ATT. 20 La figure 3 représente un exemple de réalisation envisageable pour le bloc de construction 12. Dans cet exemple, le bloc de construction 12 comprend le sous-bloc 110 de génération de l'état ST du véhicule V1 (déjà mentionné plus haut). Ce sous-bloc de génération 100 reçoit en entrée les données proprioceptives Dvai (par 25 exemple la vitesse du véhicule V1) et les données de localisation DLoc, ce qui permet de déterminer en sortie différentes variables d'état ST du véhicule V1. Le bloc de construction 12 comprend également un sous-bloc 130 de génération de l'horizon électronique H, qui utilise l'état ST du véhicule V1 reçu du sous-bloc de génération 110 et une carte numérique 120 (mémorisée par exemple 30 dans la mémoire MEM) afin de générer l'horizon électronique H du véhicule V1. L'horizon électronique H est formé d'un ensemble d'informations extraites de la carte numérique 120 et relatives à l'environnement (notamment les routes) dans lequel le véhicule V1 est susceptible d'évoluer dans un futur proche, c'est-à-dire en pratique les informations de la carte numérique 120 à une distance 3024699 8 inférieure à un seuil déterminé (éventuellement réglable), par exemple 500 m. En variante, plutôt qu'utiliser un seul de distance (500 m), on pourrait utiliser un seuil de temps (par exemple 15 secondes), ce qui aurait pour avantage d'adapter le nombre d'informations à traiter à la vitesse du véhicule. 5 L'horizon électronique H contient donc des objets OBJ; (par exemple le passage piéton C) qui feront partie du monde numérique produit par le bloc de construction 12, comme expliqué ci-dessus. Le bloc de construction 12 comprend un sous-bloc 140 de traitement des données de mesure DMES qui détecte des objets OBJ; (par exemple le piéton P) 10 par interprétation de ces données de mesure DMES (issues dans le cas du piéton P de la caméra CAM déjà mentionnée). Le bloc de construction 12 comprend un sous-bloc 150 d'analyse des données de connaissance externe DEXT qui détermine l'existence et les caractéristiques (notamment la localisation) de certains objets OBJ; (par exemple 15 le véhicule V2) par analyse de ces données de connaissance externe DExT (le véhicule V2 communiquant par exemple sa position via le système de communication COMM). Le bloc de construction 12 comprend enfin un sous-bloc d'association 160 qui regroupe les objets OBJ; signalés par les sous-blocs 130, 140, 150 (par 20 exemple, comme déjà indiqué plus haut, sous forme d'une liste) afin de constituer le monde numérique fourni en sortie du bloc de construction 12. REVENDICATIONS1. Système d'aide à la conduite comprenant : - au moins un module de réception (REC) conçu pour recevoir des données de perception (DVEH, DLOC, DMES, DEXT) d'un environnement routier ; et - un module de commande (50) conçu pour commander un système embarqué (ATT, ACT), caractérisé par : - un module de conversion (10) conçu pour générer, à partir des données de perception (DvEH, DLOC, DMES, DEXT), une pluralité d'instances (INSTi) de classes d'une ontologie (20) mémorisée par le système d'aide à la conduite et définissant des relations entre classes ; et - un outil de raisonnement (40) conçu pour déduire, sur la base de l'ontologie (20, ONT), au moins une propriété (PRED) d'une instance (INSTi) de ladite pluralité, dans lequel le module de commande (50) est conçu pour commander le système embarqué (ATT, ACT) sur la base de la propriété déduite (PRED). 2. Système d'aide à la conduite selon la revendication 1, dans lequel le module de conversion (10) comprend un bloc de construction (12) d'un monde numérique comprenant des objets (OBJ;) déterminés sur la base des données de perception (DvEH, DLOC, DMES, DEXT) et un bloc de création (14) desdites instances (INSTi) sur la base des objets déterminés (OBJi). 3. Système d'aide à la conduite selon la revendication 1 ou 2, dans lequel les données de perception comprennent des données proprioceptives (DvEH) émises par un ordinateur de bord (VEH). 4. Système d'aide à la conduite selon l'une des revendications 1 à 3, dans lequel les données de perception comprennent des données de localisation (DLOC) générées par un système de localisation (GNSS). 5. Système d'aide à la conduite selon la revendication 4 prise dans la dépendance de la revendication 2, dans lequel le bloc de construction (12) comprend un sous-bloc (130) de génération d'un horizon numérique (H) conçu pour déterminer au moins un desdits objets (OBJ;) sur la base des données de localisation (DLOC) et d'une carte numérique (120). 6. Système d'aide à la conduite selon l'une des revendications 1 à 5, dans lequel les données de perception comprennent des données de mesure 3024699 10 (DMES) générées par un capteur (CAM). 7. Système d'aide à la conduite selon l'une des revendications 1 à 6, dans lequel les données de perception comprennent des données de connaissance externe (DExT) reçues d'un système de communication (COMM). 5 8. Système d'aide à la conduite selon l'une des revendications 1 à 7, dans lequel le système embarqué est un avertisseur (ATT). 9. Système d'aide à la conduite selon l'une des revendications 1 à 7, dans lequel le système embarqué est un actionneur (ACT). 10. Procédé mis en oeuvre dans un système d'aide à la conduite 10 comprenant les étapes suivantes : - réception de données de perception (DVEH, DLOC, DMES, DExT) d'un environnement routier ; - génération, à partir des données de perception (DVEH, DLOC, DMES, DExT), d'une pluralité d'instances (INSTi) de classes d'une ontologie mémorisée 15 par le système d'aide à la conduite et définissant des relations entre classes ; - déduction, par un outil de raisonnement (40) et sur la base de l'ontologie, d'au moins une propriété (PRED) d'une instance (INST;) de ladite pluralité, - commande d'un système embarqué (ATT, ACT) sur la base de la 20 propriété déduite (PRED).