INPI-France/Brevets-Francais-2024-Chunked huggingface dataset:
L'enregistrement des hologrammes est basé sur l'interférence de deux groupes de faisceaux lumineux sur le film holographique. Les franges d'interférence générées sont mémorisées physiquement ou chimiquement sur le film holographique entraînant une variation de l'indice de réfraction. Les deux groupes de faisceaux sont classiquement dénommés ‘faisceaux de référence’ et ‘faisceaux objet’. Pour l’encodage des hologrammes d’une distribution de points d'émission (ou ), les faisceaux de référence correspondent aux ondes lumineuses extraites des réseaux diffraction couplés optiquement aux guides d’ondes et aux électrodes sélectionnés pour former les points d'émission (ou ) de la distribution (ou ). L’étape d'enregistrement des hologrammes nécessite un système optique d'enregistrement consistant en la formation des faisceaux objet ayant un angle d’encodage avec la surface d’émission S (ou spécifiquement la zone d’émission élémentaire ). L’angle d’encodage induit alors la direction du vecteur d’onde (ou ). Les faisceaux objet, issus d’une source lumineuse cohérente non représentée sur les figures, sont obtenus à partir de la projection d'un masque donné à travers une lentille de convergence (L a ou L b ), tel que représenté sur la figure 12. Avantageusement, pour chaque distribution de points d'émission (ou ), différentes zones de la surface d’émission S (ou spécifiquement la zone d’émission élémentaire ) sont exposées séquentiellement à différents faisceaux objets d’angle d’encodage spécifique, de façon à former des points d'émission associés à des directions d'émission distinctes.
La discrétisation de la surface d’émission S selon les modes de réalisation de l’invention permet notamment de faciliter et d’accélérer l’étape d'enregistrement des hologrammes au cours de la phase de fabrication matérielle du dispositif 10 par rapport à une surface S non discrétisée. En effet, les points d'émission d’une même distribution de points d'émission étant contenus dans une unique zone d’émission élémentaire de taille inférieure à la taille globale de la surface d’émission S, l’enregistrement (ou encodage) de la direction du vecteur d’onde dans les hologrammes associés aux points d'émission permet de coder des angles sur des valeurs plus importantes. Tel que représenté par les systèmes optique d'enregistrement d’hologrammes sur la figure 12, l’encodage d’une zone ( sur la figure 12(b)) plus petite qu’une surface (S sur la figure 12(a)), induit une augmentation du cône de l’angle d’encodage . Cette diminution de la zone d’encodage induit également une diminution des contraintes sur la cohérence temporelle de la source lumineuse de génération des faisceaux objet.
Les figures 1, 2 et 4 montrent des ensembles de guides d’ondes et d’électrodes de configurations rectilignes selon l’axe X et l’axe Y respectivement, chaque guide d’onde étant disposés perpendiculairement aux électrodes pour obtenir des points d'émission régulièrement répartis selon un quadrillage périodique spatialement sur la surface d'émission S.
En variante, l’ensemble de guides d’ondes du dispositif de projection d'une image 10 peut être agencé selon une configuration d’isolignes non rectilignes dans le plan défini par la surface d'émission S, comme représenté sur la .
A l’étape 250, une fonction de distance peut être appliquée à courbe géométrique initiale f0(X,Y) pour générer la configuration de guides d’ondes isolignes et/ou la configuration d’électrodes isolignes. Une telle fonction de distance correspond à une succession d’étapes permettant d’appliquer une ou plusieurs valeurs de métrique de référence entre différentes courbes formant une configuration d’isolignes non rectilignes, à partir de la courbe géométrique initiale f0(X,Y). Par exemple et sans limitation, une fonction de distance utilisée à l’étape 250 peut être la méthode de type Fast-Marching .
A titre d’illustration, à l’étape 250 pour la configuration de guides d’ondes isolignes, une cartographie de distance (ou distance map selon l’expression anglo-saxonne correspondante) peut être calculée à partir de la méthode de type Fast-Marching (ou Level-Set ) appliquée à la courbe géométrique initiale f0(X,Y) dans la matrice de calcul. Pour chacun des points de la matrice de calcul, la métrique isotrope arbitraire de distance est alors calculée par rapport au point le plus proche de la courbe géométrique initiale f0(X,Y) implémentée dans la matrice de calcul.
La (i.e. étape 250) illustre le résultat du calcul d’une cartographie de distance pour chaque point de la matrice par rapport à une courbe géométrique initiale de guide d’onde g0(X,Y) déterminée à l’étape 230 précédente.
A l’étape 270, la valeur d’une distance minimale peut être déterminée.
En particulier, dans le cas de la détermination de la configuration de guides d’ondes isolignes, la distance minimale correspond à la distance d’écartement constante et fixée entre deux guides d’ondes sur la surface d’émission S. La valeur de peut être définie par rapport à la largeur (g y ) des guides d’ondes , par exemple selon l’expression (25) suivante :
g y (25)
Dans le cas de la détermination de la configuration d’électrodes isolignes la distance minimale correspond à la distance d’écartement constante et fixée entre électrodes sur la surface d’émission S. La valeur de peut être définie par rapport à la largeur (e x ) des électrodes , par exemple selon l’expression (26) suivante :
e x (26)
A l’étape 270 également, un ou plusieurs multiples de la valeur de la distance minimale peuvent être déterminés. La détermination de ces multiples peut dépendre notamment de la taille et de la surface d'émission S, et de la position initiale (X0,Y0) de la courbe géométrique initiale f0(X,Y).
Par exemple et sans limitation, dans le cas où la position initiale (0,Y0) est fixée de manière à être centrée dans la matrice de calcul initialisée respectivement selon l’axe Y, les multiples peuvent être déterminés pour les indices d’intervalle défini selon l’expression (27) suivante :
A l’étape 290, l’ensemble des isolignes (appelés également chemins d’isolignes) d’une configuration peuvent être déterminées à partir de la cartographie de distance et en fonction des multiples de la valeur de la distance minimale . En particulier, pour chaque ordre , une isoligne associée à la courbe géométrique initiale f0(X,Y) implémentée correspond à la position des points de la matrice de calcul associée à la valeur la plus proche de la distance . Ainsi, à l’étape 290, la configuration de guides d’ondes et/ou ladite configuration d’électrodes sont déterminées.
La figure 15 (i.e. étape 290) illustre le résultat d’un ensemble des isolignes associé à la courbe géométrique initiale de guide d’onde g0(X,Y) correspondant à l’isoligne d’ordre . L’ensemble des isolignes déterminé peut ainsi être obtenu pour les isolignes définies à partir des ordres et . Dans cet exemple, chaque guide d’onde d’ordre correspond alors à une isoligne d’ordre .
Les étapes de génération des configurations de l’ensemble de guides d’ondes et de l’ensemble d’électrodes sur la surface d'émission S de la phase de conception du procédé pour la fabrication du dispositif de projection d'une image 10 permet en particulier de minimiser les dégradations de l'image projetée liées à des périodicités spatiales entre les points d'émission et d’optimiser le nombre de points d'émission sur la surface d'émission S pour maximiser la résolution de l'image formée sur la rétine R, pour obtenir par exemple un contraste optimisé.
En particulier, l’implémentation de méthodes de type Fast-Marching (ou Level-Set ) pour calculer les cartographies de distance à l’étape 250 permet de favoriser une répartition apériodique des intersections entre les guides d’ondes et les électrodes , et donc la répartition apériodique des différents point d'émission , ce qui induit une amélioration de la qualité des images.
La figure 16a représente le résultat d’une simulation de la distribution spatiale de l'intensité de la réponse percussionnelle (i.e. PSF) sur la rétine R formée par des points d’illumination associés à des distributions de points d'émission sur la surface d’émission S définies à partir de configurations de guides d’ondes et d’électrodes obtenues par translation d’une courbe segmentés selon l’axe Y et l’axe X respectivement. Ces configurations sont appelées configurations par « translations de segments » par la suite. Bien que de telles configurations améliorent l’apériodicité de la répartition des différents points d'émission par rapport à des configurations rectilignes, de telles configurations ne permettent pas d’éviter des effets de diffraction lors de la formation de l'image sur la rétine R puisque, comme illustré sur la simulation sur figure 16a, l'intensité la réponse percussionnelle présente des lignes dans le bruit généré par l’alignement de certains points d'émission .
La grille de protection 6 comporte une grille arrière 60, une grille avant 61 et une bride de fixation 7 annulaire qui assurent le maintien des grilles avant 61 et arrière 60 l’une sur l’autre. La grille arrière 60 et la grille avant 61 définissent une cage dans laquelle est disposée l’hélice 3, la grille arrière 60 étant fixée à l’extrémité longitudinale avant du boitier 5 et comportant une partie centrale s’étendant derrière l’hélice 3 et une partie périphérique qui s’étend à la périphérie de l’hélice 3. La partie périphérique de la grille arrière 60 présente une extrémité avant définissant une ouverture circulaire qui est fermée par la grille avant 61, cette dernière étant fixée sur la grille arrière 60 au moyen de la bride de fixation 7 annulaire. La grille avant 61 présente avantageusement une surface courbe et comporte, en son centre, un flasque 62 venant en regard du moyeu de l’hélice 3 pour masquer ce dernier.
La bride de fixation 7 est avantageusement réalisée en métal, ou en matière plastique, et comporte localement une découpe 70 à un endroit de sa périphérie permettant à la bride de fixation 7 de se déformer, en vue de son démontage de la grille arrière 60, lorsqu’une traction manuelle de l’utilisateur de part et d’autre de la découpe 70. La bride de fixation 7 comporte avantageusement, de part et d’autre de cette découpe 70, des plots de fixation 71, 72 entre lesquels est monté un ressort, non représenté sur les figures, qui tend à rapprocher les deux bords de la bride de fixation 7.
Conformément aux figures 3 à 5, l’appareil comporte un dispositif d’éclairage 8 monté sur la grille de protection 6 de ventilateur, le dispositif d’éclairage 8 se présentant avantageusement sous la forme d’un kit d’éclairage 8 amovible comportant un cadre lumineux 80 de forme annulaire qui supporte au moins une source lumineuse 81. De manière préférentielle, la source lumineuse 81 est alimentée en électricité au moyen d’un câble 82 d’alimentation qui débouche sur un coté du cadre lumineux 80 et dont l’extrémité libre est munie d’une prise 83 destinée à venir s’engager avec un connecteur 20 d’alimentation électrique porté par la tête de ventilateur 2. Le connecteur 20 d’alimentation est avantageusement disposé au voisinage de la grille de protection 6 et est relié à un transformateur basse tension qui est intégré dans le boitier 5 du ventilateur et dont l’alimentation est indépendante de celle du moteur 4, le transformateur étant relié au réseau électrique du ventilateur et alimentant le connecteur 20 avec un courant continu d’une tension de 12V.
Le cadre lumineux 80 est fixé de manière amovible sur la périphérie de la bride de fixation 7 et présente avantageusement un diamètre compris entre 40 cm et 60 cm. Le cadre lumineux 80 peut par exemple être maintenu sur la bride fixation par attraction magnétique, par clipsage ou par friction. Ainsi, le cadre lumineux 80 peut comporter des aimants venant coopérer avec des parties métalliques de la bride de fixation 7 pour assurer le maintien magnétique du cadre lumineux 80 sur la bride de fixation 7. Dans une variante de réalisation, le cadre lumineux 80 peut être muni de plusieurs clips de fixation destinés à venir s’engager élastiquement sur la bride de fixation 7 pour assurer le maintien du cadre lumineux 80 sur la bride de fixation 7.
Le dispositif d’éclairage 8 comporte avantageusement un déflecteur 84 qui est monté de manière amovible sur le cadre lumineux 80 et qui a pour fonction de diffuser et/ ou réfléchir la lumière émise par le cadre lumineux 80. Le déflecteur 84 comporte une paroi frontale 84A qui s’étend devant la grille avant 61, en épousant avantageusement la courbure de cette dernière, la paroi frontale 84A présentant une ouverture centrale 84C qui est centré par rapport à l’axe de rotation de l’hélice 3 et dont le diamètre est légèrement inférieur au diamètre de l’hélice 3.
De manière préférentielle, la paroi frontale 84A du déflecteur 84 s’étend radialement, depuis le bord extérieur de la grille avant 61, sur moins de 30% du rayon de la grille avant 61 de manière à ce que l’ouverture centrale 84C présente un rayon représentant au moins 70% du rayon de la grille de protection 6.
De retour à la , le rotor de soufflante 54 est entraîné en rotation par la turbine basse pression 44, par l’intermédiaire de l’arbre basse pression 46. Cet entraînement se fait typiquement par l’intermédiaire d’un réducteur permettant au rotor de soufflante 54 de tourner à une vitesse inférieure à celle de l’arbre basse pression 46. En variante, cet entraînement est direct, c’est-à-dire que le rotor de soufflante 54 est solidaire en rotation de l’arbre basse pression 46.
La prise en compte du deuxième masque de visibilité et du masque des objets dynamiques permet ainsi d’exploiter les profondeurs calculées pour le système de vision monoscopique en les utilisant comme valeurs annotées lors de l’apprentissage supervisé du système stéréo. Ainsi, les paramètres du premier réseau de neurones convolutif permettant de calculer les premières profondeurs peuvent être ajustés lors de l’opération 38 à l’aide de la fonction perte définie telle que :
avec : - correspond à une perte de recalage de la deuxième profondeur par rapport à la première profondeur ; - est un pixel de la première image ; - est une information de visibilité du pixel par le système stéréo ; - est une information de visibilité du pixel par le système de vision monoscopique ; - est une information de mouvement obtenue du masque des objets dynamiques ; - est la deuxième profondeur associée au pixel ; et - est la première profondeur associée au pixel .
Ainsi, les calculs de première profondeur sont affinés, les deuxièmes profondeurs correspondant aux annotations permettant l’apprentissage du système de vision stéréoscopique.
La prédiction de la profondeur par le système de vision monoscopique n’est pas d’une précision métrique. Il est donc utile, afin d’améliorer la pertinence des deuxièmes profondeurs calculées, de mettre en place dans une opération 39 un deuxième apprentissage automatique supervisé (en anglais « knowledge distillation ») du deuxième réseau de neurones convolutif permettant de définir la deuxième profondeur via le système de vision monoscopique.
Suivant un exemple de réalisation, le deuxième réseau de neurones convolutif permettant de calculer la deuxième profondeur est entraîné sous supervision du système stéréo de manière à minimiser l’erreur de calcul définie par la fonction de perte suivante :
avec : - correspond à une perte de recalage de la première profondeur par rapport à la deuxième profondeur ; - est un pixel de la première image ; - est une information de visibilité du pixel par le système stéréo ; - est la deuxième profondeur calculée pour le pixel ; et - est la première profondeur calculée pour le pixel .
Ainsi, les calculs de deuxième profondeur sont affinés, les premières profondeurs correspondant aux annotations permettant l’apprentissage du système de vision monoscopique.
Si l’ADAS utilise les premières ou deuxièmes profondeurs comme donnée d’entrée pour déterminer la distance entre une partie du véhicule 10, par exemple le pare-chocs avant, et un autre usager présent sur la route, l’ADAS est alors en mesure de déterminer précisément cette distance. Par exemple, si l’ADAS a pour fonction d’agir sur un système de freinage du véhicule 10 en cas de risque de collision avec un autre usager de la route et que la distance séparant le véhicule 10 de ce même usager de la route diminue fortement, alors l’ADAS est en mesure de détecter ce rapprochement soudain et d’agir sur le système de freinage du véhicule 10 pour éviter un éventuel accident.
La illustre un organigramme des différentes étapes d’un procédé 3 de de détermination d’une profondeur par système de vision stéréoscopique embarqué dans le véhicule de la , selon un exemple de réalisation particulier et non limitatif de la présente invention. Le procédé est par exemple mis en œuvre par un dispositif embarqué dans le premier véhicule 10 ou par le dispositif 4 de la .
Dans une première étape 21, des premières données représentatives d’une première image acquise par une première caméra 11 dudit ensemble de caméras à un premier instant temporel d’acquisition t1 sont reçues.
Dans une deuxième étape 22, des deuxièmes données représentatives d’une deuxième image acquise par une deuxième caméra 12 de l’ensemble de caméras au même premier instant temporel d’acquisition t1 sont reçues.
Dans une troisième étape 23, des premières profondeurs associées à un premier ensemble de pixels de la première image sont prédites.
Dans une quatrième étape 24, les pixels du premier ensemble de pixels sont projetés dans la scène tridimensionnelle.
Dans une étape 25, un premier masque de visibilité est déterminé par reconstruction d’une quatrième image par reprojection de chaque point du premier ensemble de points en fonction de paramètres intrinsèques de la première caméra 11 et de paramètres extrinsèques du système de vision stéréoscopique.
Dans une étape 31, des troisièmes données représentatives d’une troisième image acquise par la première caméra (11) à un deuxième instant temporel d’acquisition antérieur au premier instant temporel d’acquisition de la première image sont reçues.
Dans une étape 32, des données représentatives d’un mouvement de la première caméra 11 entre le premier instant temporel et le deuxième instant temporel sont déterminées en fonction des première et troisièmes images.
Le fichier originel (12) est ensuite transféré à l’application logicielle (21), exécutée sur le serveur (20) dans le Cloud, via une interface logiciel sous Windows™, macOS™ et Linux™.
Après le traitement par le serveur (20), le fichier sécurisé (13) est transmis au terminal (10) et enregistré pour permettre son utilisation à la place du fichier originel (12).
Traitement sur le serveur (20)
L’application (11) décompresse le fichier et extrait tous les programmes sources pour enregistrer dans une mémoire temporaire du serveur (20) un ensemble de fichiers (22). Cette mémoire temporaire sera effacée à l’issue des traitements et après le transfert du fichier traité sur le terminal (10).
L’application (22) commande ensuite une succession présentés ci-après.
décomposition en méthodes
Une première étape de caractérisation des requêtes consiste à extraire de chacun des fichiers les méthodes de manière à identifier et caractériser les requêtes en fonction de ce qu’elles sont déjà des requêtes préparées (en anglais prepareted statements) ou non.
Cette première étape de caractérisation des requêtes consiste à appliquer des traitements en boucle pour parcourir successivement les modèles successifs constituant le code source du fichier en cours de traitement, et pour chacun des modèles, une boucle secondaire imbriquée pour extraire et caractériser successivement tous les séquences du modèle en cours de traitement dans la boucle principale, avant d’incrémenter la boucle principale pour passer au modèle suivant.
Boucle principale d’analyse des modeles
Dans cette boucle principale, le code informatique d’un fichier en cours de traitement fait l’objet d’une analyser pour identifier les modèles, c’est-à-dire les portions de code informatique définissant une routine.
Cette analyse se fait par un analyseur sémantique de type connu, pour : reconnaître dans le code les séries de lignes de code correspondant à une méthode et détecter si la méthode en cours de traitement contient une requête préparée procéder à un traitement pour enregistrer dans une table un enregistrement EM i d’une entrée correspondant aux informations d’intérêt du modèle considéré, notamment :
- la ligne de code de début de ladite méthode considérée
- la ligne de code de fin de ladite méthode considérée
- le nom et les informations de déclaration et le corps de ladite méthode considérée
- le corps de ladite méthode.
Si la méthode en cours d’analyse ne contient pas de requête préparée, le nom et les informations de déclaration sont enregistrées dans une table des méthodes non traitées, et retour à l’étape précédente pour l’analyse syntaxique de la méthode suivante dudit fichier.
Selon d’autres modes de réalisation possibles, l’élément étalon correspond à un assemblage de sous-éléments étalons sEE ayant d’autres formes ou constituant d’autres éléments (par exemple des briques, des carreaux). De tels sous-éléments peuvent être assemblés selon une variété de motifs différents (en grille, en quinconce, etc.).
En E405, de façon similaire à E205, le dispositif de détermination de distances MDD établit une mesure en valeur absolue M VA (EE) des dimensions de l’élément étalon EE. Toutefois, dans ce mode de réalisation, le dispositif de détermination de distances détermine d’abord une mesure des dimensions M VA (sEE) du sous-élément sEE pour déterminer ensuite, par calcul, les dimensions de l’élément étalon.
Dans ce mode de réalisation, le sous élément-étalon sEE correspond à un carré de 60 cm sur 60 cm et l’élément étalon EE correspond à un carré de (60 x 6 = 360 cm sur 360 cm).
L’étape E406 est similaire à l’étape E206 décrite en référence à la . A cet effet, elle ne sera pas décrite à nouveau.
Description d’un contexte d’utilisation particulier de mise en œuvre du procédé de détermination de distances
La illustre un contexte d’utilisation particulier du dispositif de détermination de distances MDD dans l’architecture illustrée sur les figures , .
L’architecture de la figure étant similaire à celle des figures , , les éléments identiques ou similaires qui la composent sont désignés avec les mêmes références. Une telle architecture se distingue de celle des figures , en ce que : - la caméra C est placée sur un véhicule V, lequel se déplace selon un vecteur de mouvement (non représenté), - les éléments O n-1 , O n , O n+1 , O n+2 , O n+3 , et O n+4 , désignent respectivement un premier véhicule, une borne routière, un piéton, un second véhicule, un marquage au sol, un ensemble de marquages au sol.
Du point de vue de la caméra C, l’ensemble des éléments O n-1 , O n , O n+1 , O n+2 , O n+3 , et O n+4 se déplacent chacun selon des vecteurs spécifiques (non représentés sur la figure).
Le mode de réalisation au sein de cette architecture correspond à une mise en œuvre itérative du procédé de détermination de distances décrit en référence à la .
Un autre mode de réalisation au sein de cette architecture correspond à une mise en œuvre itérative du procédé de détermination de distances décrit en référence à la .
Lesdits procédés de détermination de distances décrits en référence aux figures et peuvent être itérés de façon régulière selon une fréquence donnée ou être déclenchés ponctuellement à la suite d’évènements particuliers, par exemple lorsque le véhicule V dépasse une certaine vitesse ou se déplace en marche arrière, etc.
Description d’un dispositif de détermination de distances dans un mode de réalisation de l’invention
La présente la structure simplifiée d’un dispositif détermination de distances MDD correspondant à un mode de réalisation particulier de l’invention mis en œuvre dans une architecture tel qu’illustrée en et et/ou .
Un tel dispositif comprend, selon l’invention, un module de communication E/R adapté pour recevoir des informations depuis ou vers la caméra C ou vers un terminal tiers non représenté.