INPI-France/Brevets-Francais-2024-Chunked huggingface dataset:
à chaque couche est assigné un rang, le rang d’une couche étant d’autant plus élevé que la couche est proche de la couche de sortie ; au moins deux couches de rangs successifs, formant une couche amont et une couche aval, comportent des nœuds, des nœuds des deux couches étant connectés, chaque nœud de la couche amont adressant un signal de connexion à au moins un nœud de la couche aval auquel il est connecté, la connexion des nœuds des couches amont et aval étant définie par une matrice de connexion, chaque terme de la matrice de connexion étant associé à un nœud de la couche amont et un nœud de la couche aval, et quantifiant une contribution du noeud de la couche amont pour le nœud de la couche aval ;
a) utilisation de la donnée d’entrée pour alimenter la première couche du perceptron multicouches de chaque réseau de neurones élémentaire; b) mise en œuvre de chaque réseau de neurones élémentaires pour obtenir un résultat d’analyse élémentaire par la couche de sortie du perceptron multicouches de chaque réseau de neurones élémentaire;
le procédé étant caractérisé en ce que :
au moins une matrice de connexion du perceptron multicouches de chaque réseau de neurones élémentaire est une matrice creuse, comportant au moins 50 % de termes nuls ou dont la valeur est au moins dix fois inférieure à au moins un autre terme de la matrice ; le perceptron multicouches de chaque réseau de neurones élémentaire comporte respectivement, entre deux couches successives de mêmes rangs respectifs, des matrices de connexion creuses différentes.
Selon un mode de réalisation, chaque réseau de neurones élémentaire comporte un bloc d’extraction programmé pour extraire des caractéristiques de la donnée d’entrée, les caractéristiques ainsi extraites formant la première couche du perceptron multicouches dudit réseau de neurones élémentaire. Le bloc d’extraction peut comporter différentes couches de convolution successives, chaque couche de convolution résultant de l’application d’un filtre de convolution à la couche de convolution précédente.
De préférence, chaque perceptron multicouches comporte un même nombre de couches et un même nombre de nœuds par couche.
Chaque perceptron multicouches peut comporter au moins une couche intermédiaire, entre la première couche et la couche de sortie.
Deux couches successives d’au moins un perceptron multicouches peuvent être telles que :
les nœuds de la couche aval sont segmentés en différents groupes.
Le procédé est alors tel l’étape b) comporte, pour le perceptron multicouches, les sous-étapes suivantes :
b-i) à partir des signaux de connexion résultant des nœuds de la couche amont, connectés à un même groupe de la couche aval, sélection de nœuds, appartenant audit groupe, au moins un nœud dudit groupe n’étant pas sélectionné ; b-ii) activation des nœuds sélectionnés, au moins un nœud du groupe n’étant pas activé.
au moins un perceptron multicouches comporte plusieurs paires comportant deux couches successives, chaque paire comportant une couche amont et une couche aval, une matrice de connexion étant définie entre la couche amont et la couche aval ; chaque matrice de connexion comporte au moins 50 % de termes nuls ou dont la valeur est au moins dix fois inférieure à au moins un autre terme de ladite matrice ; les sous-étapes b-i) et b-ii) sont mises en œuvre pour chaque paire de couches.
La sous-étape b-i) peut comporter, pour chaque groupe d’une couche aval d’au moins un perceptron multicouches:
calcul d’un signal d’activation pour chaque nœud du groupe, en fonction de signaux de connexion émis, vers ledit nœud, par chaque nœud de la couche amont connecté audit nœud; normalisation des signaux d’activation calculés pour chaque nœud du groupe de façon que les signaux normalisés sont compris entre une valeur minimale et une valeur maximale prédéterminées ; sélection des nœuds du groupe en fonction des signaux d’activation normalisés.
Les figures 7 et 8 illustrent l’effet du réglage du pas de discrétisation. La première figure représente une première grille LGM1 générée avec un premier pas de discrétisation P1 de longueur réduite. Un véhicule 101 situé sur la gauche du véhicule autonome 100 occupe une première série de cellules 71 s’étendant sur une première longueur L1.
La même scène est représentée par la , tandis qu’une deuxième grille LGM2 a été générée avec un deuxième pas de discrétisation P2 (supérieur au pas P1) pour générer une deuxième grille LGM2. Le véhicule 101 occupe alors une deuxième série de cellules 72 dont la longueur est L2 est supérieure à la longueur L1.
Si la localisation du véhicule 101 est précise alors le premier pas P1 est plus approprié que le deuxième pas P2. En revanche, si la localisation du véhicule 101 est peu précise alors le deuxième pas P2 est plus approprié que le premier pas P1.
Ainsi, dans la deuxième sous-étape E12, on calcule une valeur optimisée POPT du pas de discrétisation qui tient compte à la fois de l’indice d’incertitude associé aux moyens de perception 5 mais aussi d’un pourcentage maximal de cellules faussement considérées comme libres.
Dans un mode de réalisation, la valeur optimisée POPT peut être une variable de configuration du procédé, cette variable ayant préalablement été déterminée par simulation.
Un exemple d’une méthode de simulation permettant de calculer une valeur optimisée POPT est décrite ci-après : - dans un premier temps, on enregistre un grand nombre de jeux de données issues des capteurs d’un véhicule de sorte à obtenir une échantillon suffisamment important pour être le plus représentatif possible des situations rencontrées par le véhicule, - dans un deuxième temps, on rejoue les données par simulation pour évaluer le processus d’attribution d’un état à chaque cellule de la grille LGM ; puis en faisant varier le pas de discrétisation, on obtient alors une fonction de variation du nombre de faux négatifs en fonction du pas de discrétisation. - on se fixe alors un taux de faux négatifs cible à ne pas dépasser ; le taux de faux négatifs étant strictement décroissant en fonction de l’augmentation du pas de discrétisation, une approche par dichotomie peut être utilisée pour trouver le plus petit pas de discrétisation permettant de respecter le taux maximal de faux négatifs.
Puis dans la troisième sous-étape E13 on transmet au module 4 la valeur optimisée POPT du pas de discrétisation.
Puis dans une troisième sous-étape E14 on reçoit une grille LGM issue du module 4, et dont le pas de discrétisation est égal à la valeur optimisée POPT.
On enchaine ensuite sur l’étape E2 de détermination, à partir de données issues de l’ensemble de moyens de perception 5, d’un premier état d’occupation de chaque cellule de l’ensemble de cellules ENS_C comme étant soit un état libre, soit un état occupé, soit un état indéterminé.
La illustre un premier traitement E21 d’agrégation entre une grille LGM issue du module 4 et les données issues de l’ensemble de moyens de perception 5, consistant à déterminer un premier état de certaines cellules de la grille LGM en fonction de la portée de vue FOV de l’ensemble de moyens de perception 5.
Selon la logique illustrée par la , toute cellule 91, 92 de la grille LGM qui ne se situe pas totalement dans la portée de vue FOV est considérée comme non observable dans sa totalité et son premier état est indéterminé parce que l’on ne sait pas dire si elle est totalement libre ou au moins partiellement occupée.
Dans un deuxième traitement E22, on s’intéresse à un espace couvert par le champ de vue FOV. L’ensemble de moyens de perception fournit une carte 103 de répartition de cet espace en zones libres, occupées ou indéterminées, les zones indéterminées pouvant être cachées par un obstacle (par exemple un véhicule ou un bâtiment). Le traitement E22 consiste à agréger les cellules de la grille LGM avec la carte 103.
La est une première illustration du deuxième traitement d’agrégation, dans lequel la carte de répartition 103 est une représentation par grille d’occupation. Le deuxième traitement E22 est appliqué aux cellules A1 à A6 de la grille LGM.
Tous les points de la cellule A1 se superposent à une zone libre de la carte 103 : la cellule A1 est donc considérée comme libre. Certains points de la cellule A2 se superposent à une zone occupée de la carte 103 alors que les autres points de la cellule A2 sont libres : la cellule A2 est donc considérée comme totalement occupée. Certains points de la cellule A3 se superposent à une zone indéterminée de la carte 103, alors que les autres points de la cellule A3 sont libres : la cellule A3 est donc considérée comme totalement indéterminée.
Dans le deuxième traitement d’agrégation E22, on applique ainsi la logique décrite dans le tableau 1 pour combiner l’état d’une première et d’une deuxième zones de la carte de répartition 103, les première et deuxième zones étant incluses dans une même cellule de la grille LGM.
Etat d’une deuxième zone de la carte de répartition 103, la deuxième zoné étant incluse dans la cellule donnée Etat d’une première zone de la carte de répartition 103, la première zone étant incluse dans une cellule donnée Libre Occupé indéterminé Libre Libre Occupé indéterminé Occupé Occupé Occupé Occupé indéterminé (caché) Indéterminé Occupé indéterminé
La représente l’architecture matérielle d’un dispositif d’enregistrement DISP conforme à l’invention. Dans le mode de réalisation décrit ici, ce dispositif a l’architecture matérielle d’un ordinateur. Il comprend notamment un processeur PROC1, une mémoire vive MV1, une mémoire morte MEM1 et une mémoire flash non volatile MF1. De tels moyens sont connus en soi et ne sont pas décrits plus en détail ici. La mémoire morte constitue un support d’enregistrement conforme à l’invention, lisible par le processeur PROC1 et sur lequel est enregistré ici un programme d’ordinateur PG1 conforme à l’invention, ce programme comportant des instructions pour mettre en œuvre les étapes du procédé de localisation tel que décrit précédemment, lorsque le programme est exécuté par le processeur PROC1.
A l'initialisation, les instructions de code du programme d'ordinateur PG1 sont par exemple chargées dans une mémoire avant d'être exécutées par le processeur PROC1. Le processeur PROC1 de l'unité de traitement UT1 met notamment en œuvre les étapes du procédé de localisation selon l'un quelconque des modes particuliers de réalisation décrits en relation avec les figures 2 et 3, selon les instructions du programme d'ordinateur PG1.
Le dispositif DISP comprend également un module RECV apte à recevoir, en provenance d’un ou plusieurs objets (plus particulièrement d’une balise attachée à l’objet) un identifiant et une donnée associée. L’identifiant reçu permet d’identifier l’objet sur lequel la balise est placée (attachée) et la donnée est par exemple la date à laquelle l’identifiant a été émis par la balise. Cette date d’émission peut être encodée sous forme d’une chaîne de caractères et optionnellement être chiffrée via une clef de chiffrement symétrique ou asymétrique.
Le dispositif DISP comprend en outre un module CALC apte à calculer, en fonction de ladite donnée reçue (via le module RECV), la distance à laquelle l’objet (et donc sa balise) se trouve. Pour réaliser ce calcul le module CALC se base sur la méthode dite de « temps de vol » qui permet de déterminer la distance d’un objet en connaissant la vitesse de propagation des ondes émises par la balise et le temps de propagation de l’onde entre la balise et le dispositif. Dans le cas d’une balise UWB (Ultra WideBand), la vitesse de propagation est connue et la donnée reçue permet de connaitre avec précision (par exemple à la nanoseconde ou bien plus finement encore) la date à laquelle la donnée et l’identifiant ont été émis par la balise. Ainsi, le dispositif a la possibilité de connaitre le temps de propagation en soustrayant à la date contenue dans la donnée reçue, la date courante récupérée (par exemple via une horloge interne) au moment de la réception de l’identifiant et de la donnée (i.e la date d’émission).
Selon un mode particulier de réalisation de l'invention, le module CALC est également apte à calculer la localisation d’un objet. Ce calcul est par exemple réalisé en utilisant la méthode dite de la « trilatération ». Cette méthode est une méthode mathématique qui permet de déterminer la position relative d’une balise et donc d’un objet via les distances entre un minimum de deux balises. Concrètement, le dispositif reçoit (via le module RECV) une valeur de la distance comprise entre la balise (premier objet) qui a émis la donnée et l’identifiant et une seconde balise (second objet) dont l’identifiant et la donnée associée ont également été reçus par le dispositif. Le dispositif calcule également la distance entre le dispositif et le second objet et la distance entre le premier objet et le dispositif. Ainsi, le dispositif pourra déterminer la position relative du premier objet via la méthode dite de trilatération. Cette méthode étant connue, le détail des calculs mathématiques sont pas décrits plus en détail ici.
Selon un mode particulier de réalisation de l'invention, le dispositif DISP peut comprendre un module SELECT apte à sélectionner un identifiant d’objet parmi une pluralité d’identifiants reçus via le module RECV. La sélection peut se faire via la réception de données en provenance par exemple d’un serveur / terminal ou bien via une interface homme-machine située sur le dispositif ou connectée à celui-ci.
Selon un mode particulier de réalisation de l'invention, le dispositif DISP peut comprendre un module de restitution d’une distance et/ou d’une localisation calculée par le module CALC. Le dispositif de restitution peut être un module moteur vibreur (non représenté) adapté pour restituer grâce à des vibrations spécifiques une information de distance, par exemple en générant des vibrations plus ou moins intenses en fonction de la localisation et de la proximité de l’objet (de la balise). Le dispositif de restitution peut également être un module audio (non représenté), comme par exemple un haut-parleur, adapté pour restituer grâce à un module de synthèse vocale une information de distance. Le dispositif de restitution peut en outre être un module d’affichage (non représenté) comme par exemple un écran (tactile ou non) adapté pour afficher au moins une information de localisation et /ou de distance et /ou au moins un identifiant d’objet. Dans le cas d’une restitution via un affichage, la restitution peut dépendre de la densité des objets se situant dans un périmètre donné.
La illustre un exemple d'environnement de mise en œuvre de l'invention selon un mode particulier de réalisation de l'invention. L'environnement de mise en œuvre comprend une boutique physique (100) dans laquelle des bacs et / ou des rayons de rangement (102) sont disposés. Des objets (produits à la vente) 101 sont rangés dans ces bacs / rayons de rangement. Ces objets 101 se décomposent en deux parties. La première (101a) est le produit vendu en tant que tel et la deuxième 101b est une balise qui est attachée physiquement au produit et potentiellement détachable. Optionnellement, une balise peut également être attachée aux bacs / rayons de rangement (102).
Concrètement la balise est par exemple un antivol apte à émettre et recevoir des ondes radio selon la technologie UWB, WiFi ou Bluetooth. En outre, la balise comprend un espace de stockage numérique dans lequel au moins un identifiant de l’objet sur lequel elle est attachée est stocké et une horloge apte à fournir l’heure courante avec une grande précision (par exemple à la microseconde). L’horloge est par exemple calibrée en usine de façon à ce que toutes les balises aient exactement la même heure au même moment.
Selon un mode particulier de réalisation de l'invention, les horloges des balises peuvent être synchronisées via une requête réseau à destination d’un même serveur NTP ou bien via une requête à destination d’un dispositif (non représenté) qui se situe dans la boutique.
Selon un mode particulier de réalisation de l'invention, la date courante peut être obtenue par la balise via une requête réseau à destination d’un serveur NTP.
L’environnement comprend en outre un système de caisse 103 permettant d’encaisser (payer) les achats du ou des clients de la boutique et un portique de sécurité 104 apte à vérifier que les produits qui sortent du magasin ont bien été payés par le ou les clients. Le portique de sécurité est apte à communiquer avec les balises selon la technologie UWB, WiFi ou Bluetooth. En outre le portique de sécurité est également apte à communiquer avec le système de caisse 103 via une connexion filaire (par exemple IP) ou sans fil (par exemple UWB, WiFi ou Bluetooth).
Selon un mode particulier de réalisation de l'invention, le système de caisse peut être un serveur situé dans le réseau.
La illustre des étapes du procédé de localisation selon un mode particulier de réalisation de l'invention. Le procédé peut être mis en œuvre par un dispositif (DISP) tel que le portique de sécurité (104) et/ou le système de caisse (103) et / ou un terminal d’un client présent dans la boutique. Le terminal est par exemple un terminal mobile tel qu’un ordinateur, un smartphone, une montre connectée, un équipement mis à disposition du client par la boutique (une douchette / scannette) apte à communiquer avec les balises des objets et/ou des rayons situés dans le magasin via par exemple la technologie UWB, WiFi ou Bluetooth.
A noter que dans les systèmes de communication mobile, une technologie de communication de proximité (ex. UWB (Ultra Wide Band) norme IEEE 802.15.4a ou Bluetooth 5.1) permet le positionnement relatif de deux équipements dans un rayon de plusieurs mètres. La précision de ces systèmes est de quelques centimètres et nécessite uniquement deux points de référence (i.e deux balises).
De préférence, mais de manière non limitative, le procédé, l’au moins un calculateur et le système selon l’invention sont mis en œuvre au sein d’un véhicule automobile, pour réaliser une détection de geste, où ledit geste est effectué par un opérateur humain situé au droit du capteur et à l’extérieur du véhicule. Le geste est par exemple un mouvement de balancement du pied d’avant en arrière. Un tel geste est par exemple effectué par un utilisateur situé à l’arrière du véhicule, au droit du hayon arrière, dans le but de piloter une ouverture de ce dernier.
Il est maintenant fait référence à la qui illustre un système (30) selon l’invention, permettant de mettre en œuvre le procédé de la présente divulgation. Selon un mode de réalisation, le système 30 comprend un capteur 2 apte à communiquer avec un contrôleur 1.
Le contrôleur 1 comprend un calculateur 10 configuré pour détecter un mouvement, par exemple un mouvement effectué par un opérateur humain, à partir des signaux fournis par le capteur 2. Ici, mais de manière non limitative, le calculateur 10 est configuré en outre pour émettre une commande d’ouverture ou de fermeture, référencée COMM, d’un ouvrant motorisé, par exemple un hayon de véhicule ou une portière latérale de véhicule automobile, sur détection d’un mouvement prédéterminé. Le calculateur 10 comprend une mémoire 11 et un processeur 12. La mémoire 11 comporte des instructions de code de programme qui, lorsqu’elles sont exécutées par le processeur 12, configurent ledit processeur pour mettre en œuvre la détection de mouvement et, le cas échéant, l’émission de la commande COMM d’ouverture ou de fermeture.
Le contrôleur 1 comprend en outre au moins une interface de communication 13 avec le capteur 2 et, le cas échéant, une unité de contrôle de l’ouvrant motorisé (non représentée), par exemple par le biais d’un bus commun de transfert de données adapté.
Le capteur 2 est configuré pour émettre des impulsions radiofréquence émises Tx, de manière périodique selon une période d’émission d’impulsions Te, et en direction d’une cible 3. De préférence, les impulsions radiofréquence émises sont modulées selon la technique de modulation dite « UWB », pour l’anglais « Ultra WideBand ». Cette technique de modulation est basée sur la transmission d’impulsions de très courte durée, de préférence inférieure à une nanoseconde, et sur un large spectre de fréquence (par exemple, mais de manière non limitative, une largeur spectrale supérieure à 500 MHz voire même 1000 MHz). Le capteur 2 est configuré en outre pour mesurer l’amplitude d’un signal radiofréquence reçu Rx, provenant notamment de la réflexion, sur la cible 3, des impulsions radiofréquence émises. Ainsi, le capteur 2 comprend, de manière schématique, un émetteur 21 d’impulsions radiofréquence et un récepteur 22 de signal radiofréquence. Le capteur 2 comprend également une unité de pré-traitement 23 des signaux radiofréquences émis et reçus, ainsi qu’un calculateur 24 comprenant une mémoire 24a et un processeur 24b communiquant avec l’unité de pré-traitement 23.
L’unité de pré-traitement 23 peut être configurée pour générer les impulsions radiofréquence émises Tx, émises par l’émetteur 21, et pour effectuer un premier traitement sur le signal radiofréquence reçu Rx. L’unité de pré-traitement 23 peut comprendre notamment des convertisseurs analogique/ numérique. Le calculateur 24 est configuré de préférence pour déterminer l’amplitude du signal radiofréquence reçu, pour chaque fenêtre d’échantillonnage. Le capteur 2 comprend en outre une interface de communication 25 configurée pour communiquer avec le contrôleur 1.
Dans un mode de réalisation, le capteur 2 envoie au contrôleur 1 des données relatives à l’amplitude du signal radiofréquence reçu Rx, sous la forme d’un signal d’amplitude S(k).
Le signal radiofréquence reçu Rx est constitué de signaux élémentaires reçus Rx(k), se rapportant chacun à l’une respective des impulsions radiofréquence émises. Dit autrement, le signal radiofréquence reçu peut être découpé en signaux élémentaires reçu Rx(k), associés chacun à une plage temporelle prédéterminée, où ladite plage temporelle a pour origine un instant d’émission de l’une respective des impulsions radiofréquence émises. A chaque signal élémentaire reçu Rx(k), correspond un signal d’amplitude élémentaire respectif S(k).
De préférence, le capteur 2 envoie au contrôleur 1, de manière périodique, des données relatives à un nouveau signal d’amplitude élémentaire S(k+1), au fur et à mesure de l’émission des impulsions radiofréquence émises T(k) et de la réception des signaux élémentaires reçus R(k).
Selon l’invention, chacun des signaux élémentaires reçus R(k), et donc chacun des signaux d’amplitude élémentaires S(k), est échantillonné temporellement, avec une largeur de la fenêtre d’échantillonnage Δt (voir ). Chaque fenêtre d’échantillonnage est associée à un indice i, dont la valeur se rapporte à un écart à l’origine de la plage temporelle considérée. La largeur Δt d’une fenêtre d’échantillonnage est comprise entre 1 ns et 6 ns. On notera que l’indice i représente un retard croissant entre l’émission de l’impulsion d’indice k et la réception d’un signal provenant de ladite impulsion, et que l’indice i est également représentatif d’une distance croissante au capteur de l’impulsion.
Les signaux d’amplitude élémentaires S(k) peuvent être représentés sous la forme d’une matrice telle qu’illustrée à la . Dans le graphique de la , l’axe k correspond à un indice relatif à l’impulsion considérée parmi les impulsions radiofréquence émises, l’axe i se rapporte à l’indice de la fenêtre d’échantillonnage considérée, et l’axe S(k,i) se rapporte à l’amplitude du signal d’amplitude élémentaire S(k) pour chaque fenêtre d’échantillonnage i. Cette représentation permet d’illustrer que la définition des indices i des fenêtres d’échantillonnage réalise un repliement de l’axe du temps, pour définir une nouvelle origine des temps à chaque nouvelle émission d’une impulsion radiofréquence émise. Ainsi, chaque indice i de fenêtre d’échantillonnage se rapporte à une pluralité de fenêtres, chacune associée à l’un des signaux d’amplitude élémentaires, et chacune associée à un même écart temporel relativement à un instant d’émission d’une impulsion correspondante.