INPI-France/Brevets-Francais-2024-Chunked huggingface dataset:
Des formats à virgule flottante à précision variable (FP VP) sont basés sur l'hypothèse que le programmeur peut directement régler le format FP en termes de longueur et de précision en fonction des besoins de l'application en cours d'exécution. Les formats FP VP peuvent être divisés en deux groupes distincts : 1. Des formats FP VP ayant une précision arbitraire, où on suppose que les taille et/ou précision de toutes les variables ou de variables spécifiques sont choisies par le programmeur au moment de la compilation. Un exemple d'un format à précision arbitraire est le format IEEE-Like décrit ultérieurement ; et 2. Des formats FP VP ayant une précision dynamique, où la taille des données est prédite au moment de la compilation, mais sa précision varie au moment de l'exécution. En effet, la précision des formats à précision dynamique, et en particulier la longueur de bits de la valeur d'exposant, est automatiquement réglée sur la base des calculs en cours d'exécution, et peut fournir ainsi une précision améliorée par rapport à la précision arbitraire, au moins dans certaines conditions. Des exemples de formats à précision dynamique incluent UNUM et Posit, ainsi que trois nouveaux formats Custom Posit, Not Contiguous Posit, et Modified Posit décrits ultérieurement.
La représente schématiquement un dispositif de calcul FP VP 100 selon un exemple de mode de réalisation de la présente description. Le dispositif 100 comprend une partie de traitement comprenant, dans l'exemple de la , deux dispositifs de traitement 101, 102 et une partie de mémoire 103.
Chacun des dispositifs de traitement 101, 102 est par exemple constitué d'un étage de fourniture (ISSUE STAGE) et d'un étage d'exécution (EXECUTE STAGE). Toutefois, cela est essentiellement un exemple et dans des variantes de mode de réalisation, des variantes d'étages ou des étages supplémentaires pourraient être présents, tels qu'un étage d'acquisition.
Le dispositif de traitement 101 comprend par exemple, dans l'étage de fourniture, une mémoire interne par exemple sous forme d'un ou de plusieurs fichiers de registres (iRF & fRF) 104, qui sont par exemple constitués de fichiers de registres d'entiers (iRF) et de fichiers de registres à virgule flottante (fRF). Les fichiers de registre 104 sont par exemple configurés pour stocker des données à traiter par l'étage d'exécution, et des données résultant du traitement par l'étage d'exécution. Le dispositif de traitement 101 comprend par exemple, dans l'étage d'exécution, des unités de traitement (ALU/FPU) 106, qui comprennent par exemple une ou plusieurs unités logiques arithmétiques (ALU) et/ou une ou plusieurs unités à virgule flottante (FPU). Le dispositif de traitement 101 comprend également par exemple, dans l'étage d'exécution, une unité de chargement et de stockage (LSU) 108.
2581 ggtgcaggct cggagagctt attgattcca ttgatgctgg gtggagtcct gcatgttctt
2641 ctgaaccagc cgctccagga gaatgggggg tgttaaaaac gaccgcagtt caatctcttg
2701 aatatagaga gtacgaaaac aaggcgctcc ctaaaaataa agccccaagg ccacaactag
2761 aagtaaaagc aggagatatt cttataacaa gagctggtcc taaaaatcgg gttggtattt
2821 catgccttgt tgaaaacaca agagaaaatt taatgatttc agataaaata atcagatttc
2881 atttgatatc agaggatatc tccgagaaat acatttcctt atgtctaaac tatgggttta
2941 cttcaacata tcttgaaaac tccaaatctg gcatggcaga aagtcagatg aatatttcac
3001 aagatatttt aaaaatggca cctatagcta tcccgactac acatgaacaa ttaaaaataa
3061 cagataaaat aaatgaaatg atggattatt ttataactct aaagagtcaa attcaatctg
3121 cccaacaaac ccaactgcac cttgcagacg cactgactaa cgcggcgata aactaa
LOCUS M.EcoMIII 2875 bp ds-DNA linear 09-NOV-2021 (SEQ ID NO: 13)
misc_feature 1..1638
Dans l'exemple de la , le registre d'états suppose un cas dans lequel il y a deux environnements mémoire ou plus associés avec le format UNUM, tel qu'un environnement mémoire par défaut (DME) et l'environnement mémoire secondaire (SME), et également un environnement de calcul unique du WGP. Toutefois, dans des variantes de mode de réalisation, il y a des environnements supplémentaires de mémoire et/ou de calcul et/ou de fichier de registres d'états à virgule flottante. Dans certains modes de réalisation, il y a plus d'un registre d'états définissant un même format de calcul et/ou plus d'un des registres d'états définissant un même format de mémoire externe, les différents registres d'états définissant par exemple différents types de formats ayant différentes valeurs pour MBB, BIS, RND et/ou WGP.
L'environnement mémoire par défaut et l'environnement mémoire secondaire sont par exemple fournis afin de permettre deux différentes configurations de l'opération de chargement et de stockage. Par exemple, l'environnement mémoire par défaut est fixé à une configuration de format à précision relativement haute, alors que l'environnement mémoire secondaire est fixé à une configuration de format à précision relativement faible, ou inversement, et il est possible d'inverser rapidement la configuration par défaut et secondaire sans avoir à reconfigurer le registre d'états à chaque modification.
Les SR sont par exemple définis au moment de la programmation, par exemple au moyen d'une extension RISC-V ISA dédiée comme cela est décrit dans la publication de T. Jost, “Variable Precision Floating-Point RISC-V Coprocessor Evaluation using Lightweight Software and Compiler Support”, juin 2019.
La représente un exemple de registre d'états qui peut être utilisé pour indiquer les paramètres de valeurs UNUM stockées dans la mémoire. Ce registre d'états est par exemple accessible par les convertisseurs 206 et 216 de la afin de pouvoir effectuer correctement la conversion de format de valeurs de données. Des registres d'états similaires sont par exemple prévus pour chaque format de nombre pris en charge.
Le registre d'états UNUM comprend par exemple, de gauche à droite en figure 19A , un champ inutilisé (unused), deux bits d'arrondi (RND), deux paramètres à 3 bits et indiquant respectivement la valeur ESS pour l'environnement mémoire par défaut et pour l'environnement mémoire secondaire, deux paramètres à 4 bits et indiquant respectivement la valeur FSS pour l'environnement mémoire par défaut et pour l'environnement mémoire secondaire, un paramètre à 3 bits indiquant le WGP et un paramètre à 7 bits indiquant le MBB.
Une particularité de ces registres d'états est qu'ils peuvent être par exemple chargés et stockés tous ensemble en une seule fois, ou individuellement. En effet, pendant l'initialisation de codage, tous les environnements mémoire sont par exemple initialisés à la même valeur par défaut, mais pendant une exécution d'algorithme, un paramètre peut être modifié à la fois, par exemple afin de maintenir constant le paramètre MBB.
La représente des registres d'états selon un autre exemple de mode de réalisation. La illustre en particulier un exemple de six registres d'états correspondant au format IEEE-like (IL08), au format UNUM (UNUM), au format Posit Standard (PSTD) et aux trois formats FP VP custom : le format Custom Posit (PCUST), le format Not Contiguous Posit format (NCP) et le format Modified Posit (MP). Dans l'exemple de la , chaque registre d'états a une longueur de 64 bits, bien que d'autres longueurs soient possibles. Par exemple, les champs de chaque registre d'états comportent : - un champ BIS, par exemple long de 16 bits (bits 0 à 15 dans l'exemple de la ) et qui indique la longueur de bits, en tant qu'alternative à la valeur MBB. Dans des variantes de mode de réalisation, la longueur d'octets ou d'autres mesures de longueur de données (par exemple, des nombres de mots à 16 bits, etc.) pourraient être prévus ; - un champ RND, par exemple long de 3 bits (bits 16 à 18 dans l'exemple de la ) et qui indique le mode d'arrondi, tel que arrondi au pair le plus proche, arrondi vers le haut, arrondi vers le bas, arrondi à zéro, arrondi à l'amplitude maximale, etc. ; - un premier champ de paramètre par exemple long de 5 bits (bits 19 à 23 dans l'exemple de la ) et qui indique un paramètre qui dépend du format spécifique, tel que celui des paramètres FSS (UNUM), ES_MAX_DYNAMIC , ES_POSIT (NCP) et S (MP) ; - un deuxième champ de paramètre par exemple long de 8 bits (bits 24 à 31 dans l'exemple de la ) et qui indique un autre paramètre qui dépend du format spécifique, tel que celui des paramètres ES (IL08, PSTD, PCUST), ESS (UNUM), IEEE_ES_M1 (NCP) et K (MP) ; - un autre champ (OTHER) par exemple long de 16 bits (bits 32 à 47 dans l'exemple de la ) et qui indique un ou plusieurs autres paramètres, tels qu'un paramètre de pas stride indiquant les espaces entre le début de deux éléments dans la mémoire, exprimé par exemple sous forme du nombre de bits MBB. Par exemple, si stride=2, il y a (2*MBB) octets entre le début de deux éléments consécutifs ; et - un champ de type par exemple long de 16 bits (bits 48 à 63 dans l'exemple de la ) et qui indique le type du format, qui est utilisé pour sélectionner le format de mémoire cible. En fonction de ce champ de type, les bits d'un ou de plusieurs des champs du registre d'états a par exemple un sens différent. Par exemple, sur la base du champ de type, le sens des bits stockés dans les premier et/ou deuxième champs de paramètres peut être déduit. Le champ de type est par exemple codé selon un codage 1 parmi n ou un autre codage univoque.
Dans certains modes de réalisation, un fichier de registres d'états stocke des registres d'états pour un ou plusieurs formats, comme cela est représenté dans les figures 19A et 19B , et un ou plusieurs registres d'états supplémentaires définissent d'autres paramètres. Par exemple, les un ou plusieurs registres d'états supplémentaires stockent, pour des opérations arithmétiques, des paramètres tels que la précision de sortie WP et/ou le mode d'arrondi RND, pour des opérations mémoire, des paramètres tels que le mode d'arrondi RND, des configurations de format MBB ou BIS pour chaque format, le paramètre ES pour les formats IEEE-like et posit, les paramètres ESS et FSS pour le format UNUM et/ou des paramètres pour des opérations FP, tels que le type, rnd, etc.
La représente des registres d'états selon un autre exemple de mode de réalisation. Les registres d'états de la peuvent être prévus en plus ou à la place des registres d'états de 19B. Les six registres d'états de la sont similaires à ceux de la et contiennent les mêmes champs. Toutefois, les registres d'états de la définissent tous différents types d'un même format FP, dans ce cas le format IEEE-like (IL08). Ainsi, un premier groupe de bits du champ de type des registres d'états de la sont par exemple tous identiques et désignent le format IEEE-like. Des bits restants définissent, par exemple, le type de format spécifique du format IEEE-like. Bien entendu, bien qu'il y ait six registres d'états dans l'exemple de la , dans des variantes de mode de réalisation il pourrait y avoir un quelconque nombre tel que un ou deux de ces registres d'états ou plus.
Les champs de type dans les figures 19B et 19C sont des identifiants qui permettent par exemple de sélectionner des types de formats FP de façon simple.
Par exemple, chacune des instructions de stockage fournie à la LSU 108 et/ou 118 comporte par exemple l'identifiant du type de format FP qui doit être utilisé dans la mémoire externe et, en particulier, dans lequel la valeur FP doit être convertie. La LSU 108 et/ou 118 est par exemple configurée pour effectuer ensuite la conversion en interrogeant les registres d'états 124 et en obtenant à partir des registres d'états 124 les paramètres du type de format FP associé à l'identifiant. Ces paramètres sont par exemple fournis ensuite au circuit de conversion de format de la LSU 108 et/ou 118 de sorte que la valeur FP provenant du fichier de registres 104 ou 114 soit convertie en le type de format FP cible avant le stockage dans la mémoire externe. Cette conversion implique par exemple la limitation de la longueur de bits de la valeur FP sur la base d'une taille maximale, par exemple BIS ou MBB, définie par le type de format à nombre à virgule flottante désigné par l'identifiant.
De façon similaire, chaque instruction de chargement fournie à la LSU 108 et/ou 118 comporte par exemple l'identifiant du type de format FP qui était utilisé dans la mémoire externe, et en particulier depuis lequel la valeur FP doit être convertie. La LSU 108 et/ou 118 est par exemple ensuite configurée pour effectuer la conversion en interrogeant les registres d'états 124, et obtenant à partir des registres d'états 124 les paramètres du type de format FP avec l'identifiant. Ces paramètres sont ensuite par exemple fournis à la LSU 108 et/ou 118 de sorte que la valeur FP chargée à partir de la mémoire externe soit convertie en le type de format FP cible avant d'être stockée dans le fichier de registres 104 ou 114.
Un avantage d'utiliser l'identifiant du champ de type du type de format FP pour identifier le format FP désiré est que cette solution permet une flexibilité relativement élevée sans augmenter significativement les complexité et longueur des instructions. En particulier, pour une valeur FP donnée à stocker dans la mémoire, le type de format peut être sélectionné parmi les types définis dans les registres d'états 124 par programmation, par le programmeur de logiciel, de l'identifiant correspondant dans l'instruction de stockage. En outre, des modifications des ou ajouts aux types de format définis dans les registres d'états 124 peuvent être introduites en écrivant directement dans les registres d'états 124.
Convertisseurs matériels Des exemples de la structure d'un convertisseur matériel physique apte à gérer des opérations de chargement et de stockage pour les formats à virgule flottante (FP) à précision variable (VP) : IEEE-Like, Posit, Not Contiguous Posit et Modified Posit, seront maintenant décrits en relation avec les figures 20 à 31 .
Un ou plusieurs de ces convertisseurs matériels physiques peuvent par exemple être incorporés dans une architecture matérielle telle que celle décrite par Bocco Andrea, Durand Yves et De Dinechin, Florent in “SMURF: Scalar Multiple-Precision Unum Risc-V Floating-Point Accelerator for Scientific Computing” 2019 URL: https://doi.org/10.1145/3316279.3316280, et, en particulier, ces convertisseurs mettent par exemple en œuvre les convertisseurs 206, 207, 208, 216, 217 et 218 des figures 2 et 18 , comme partie d'une LSU à nombres g ou analogue.
La propose une structure générale 2000 appropriée pour la conversion du format à nombres g ou similaire (GNUMBER), en un quelconque des formats à précision variable (VP Memory format). Le convertisseur 2000 comprend par exemple un premier macro-étage 2002 comprenant un bloc normalisateur ou arrondisseur (NORM & ROUND), qui est par exemple configuré pour effectuer une normalisation et un arrondi sur la base de paramètres secondaires (Side Parameters) et un deuxième macro-étage 2004 comprenant un circuit de décalage à droite (SHIFT RIGHT) et un circuit de conversion d'exposant (Exponent Conversion) et un circuit de vérification d'identifiant (Flag Check). Dans certains modes de réalisation, le circuit de conversion d'exposant est plutôt mis en œuvre dans un ou plusieurs étages pipeline précédents. Un "macro-étage" est par exemple défini comme étant la logique présente entre deux barrières temporelles et fournit le résultat d'une opération en un ou plusieurs cycles d'horloge.
L’étape 22 supprime les zones 42 de l’image binaire I_B, ces zones supprimées étant représentées par la lettre S sur la vue de droite de la , afin que l’étape subséquente 26 soit concentrée sur les seules zones 40 restante non détectées lors des itérations précédentes et évite des doublons de détection.
Ainsi, la présente invention propose un procédé et un dispositif de segmentation d’au moins une image couleur source représentative d’une centrale photovoltaïque spécifiquement adapté à l’identification segmentée de modules photovoltaïques
La présente invention offre des résultats prouvés quasi-optimaux en permettant de détecter 99% des modules photovoltaïques, ce qui revient à exploiter l’ensemble de l’information de l’image source en extrayant un maximum de modules de la centrale photovoltaïque considérée.
Procédé de reproduction d’un mouvement de référence par une personne et dispositif pour sa mise en œuvre La présente demande se rapporte à un procédé de reproduction d’un mouvement de référence par une personne ainsi qu’à un dispositif pour sa mise en œuvre. Selon une application non limitative, ce procédé et ce dispositif peuvent être utilisés pour l’apprentissage d’un mouvement complexe comme un mouvement de « swing » au golf.
Dans la pratique sportive ou la rééducation, une personne est amenée à reproduire plusieurs fois un mouvement de référence. Il est essentiel que ce mouvement de référence soit reproduit le plus fidèlement possible.
Selon un premier mode opératoire, les mouvements sont réalisés en présence d’un encadrant qui corrige, si nécessaire, les postures successives de la personne lors de l’exécution des mouvements. Ce mode opératoire n’est pas satisfaisant car il requiert un encadrant.
Des applications ont été développées pour rendre plus autonome la personne qui souhaite correctement reproduire le mouvement de référence.
Selon un deuxième mode opératoire proposé par l‘application dénommée « Kemtai », un procédé de reproduction d’un mouvement de référence comprend une étape d’affichage d’un modèle exécutant un mouvement de référence sur une première moitié d’un écran positionnée en face d’une personne, une étape d’acquisition d’images, à l’aide d’une caméra, de la personne positionnée face à l’écran et reproduisant le mouvement de référence, une étape d’affichage en temps réel des images acquises sur une deuxième moitié de l’écran, une étape de détermination en temps réel, à partir des images acquises, des coordonnées des points caractéristiques réels de la personne et notamment de ses articulations ainsi qu’une étape d’affichage en superposition sur la silhouette de la personne visible sur la deuxième moitié d’écran de ces points caractéristiques réels reliés par des traits de manière à obtenir une représentation filaire de la personne sur l’écran. Les coordonnées des points caractéristiques de référence du modèle exécutant le mouvement de référence étant stockées dans une base de données, le procédé comprend à chaque instant une étape de comparaison des coordonnées des points caractéristiques réels avec les coordonnées des points caractéristiques de référence. Cette étape de comparaison permet de déterminer un pourcentage de ressemblance entre le mouvement réel et le mouvement de référence qui est affiché sur l’écran pour l’ensemble du mouvement.
L’affichage simultané du mouvement réel réalisé par la personne et d’un mouvement de référence permet à la personne de se corriger de manière intuitive. Lorsque le mouvement à reproduire est simple, le pourcentage de ressemblance entre les mouvements réel et de référence est élevé. En revanche, lorsque le mouvement de référence à reproduire est complexe, le pourcentage de ressemblance est relativement faible car cette application n’indique pas à l’utilisateur les séquences du mouvement à corriger et comment les corriger.
Le document US2013171601 décrit un système d’assistance permettant à une personne de reproduire un mouvement réalisé par un modèle. Ce système comprend un écran positionné face à une personne et sur lequel est affiché un modèle exécutant un mouvement de référence ainsi qu’un miroir positionné devant l’écran (intercalé entre la personne et l’écran) permettant à la personne de se voir tout en voyant par transparence ce qui est affiché sur l’écran.
Selon ce document, un procédé de reproduction d’un mouvement de référence comprend une première étape d’adaptation des images du modèle à afficher sur l’écran à la morphologie de la personne afin que les images du modèle et de la personne coïncident. Comme précédemment, le procédé comprend une étape d’affichage sur l’écran du modèle exécutant un mouvement de référence, les images du modèle ayant été adaptées, une étape d’acquisition d’images, à l’aide d’une caméra, de la personne positionnée face à l’écran et reproduisant le mouvement de référence, une étape de détermination en temps réel, à partir des images acquises, des coordonnées des points caractéristiques réels de la personne et notamment de ses articulations ainsi qu’une étape d’affichage à l’écran, en superposition sur la silhouette de la personne, de ces points caractéristiques réels reliés par des traits de manière à obtenir une représentation filaire de la personne à l’écran.
Les coordonnées des points caractéristiques de référence du modèle exécutant le mouvement de référence étant stockées dans une base de données, le procédé comprend une étape de comparaison à chaque instant des coordonnées des points caractéristiques réels avec les coordonnées des points caractéristiques de référence. Cette étape de comparaison permet de déterminer en temps réel la différence entre les coordonnées de chaque point caractéristique réel de la personne et celles du point caractéristique de référence correspondant et d’établir une correction si cette différence dépasse un certain seuil.
Ainsi, ce procédé permet, à l’issue du mouvement, d’afficher sur l’écran les séquences du mouvement pour lesquelles la différence entre l’un des points caractéristiques réels de la personne et le point caractéristique de référence correspondant est supérieure au seuil donné, la valeur de la déviation et éventuellement la correction à apporter pour supprimer cette différence.
Ce mode opératoire permet à la personne de corriger aisément et de manière autonome sa posture lors d’un mouvement pour que ce dernier soit le plus fidèle possible au mouvement de référence.
Toutefois, le mode de réalisation décrit dans le document US201317160 n’est pas pleinement satisfaisant car il requiert une puissance de calcul importante pour déterminer les valeurs des déviations à afficher afin de permettre à la personne de se corriger.
Le rendu dans le véhicule d’un contenu sonore qui prend en compte la localisation d’un organe à manipuler permet d’aider la personne devant manipuler l’organe à localiser cet organe à l’aide du son qui est spatialisé en fonction.
La spatialisation du son permet de donner une indication sur la localisation de l’organe en donnant l’impression que le son produit provient de la direction ans laquelle se trouve l’organe à manipuler.
Selon une variante, le procédé comprend en outre une étape de transmission de deuxièmes données représentatives du véhicule à destination du dispositif distant via la liaison sans fil, l’ensemble de paramètres de spatialisation étant fonction des deuxièmes données.
Selon une autre variante, le procédé comprend en outre une étape de transmission de deuxièmes informations représentatives de localisation d’un utilisateur dans le véhicule, l’utilisateur étant destinataire de l’instruction de manipulation de l’organe, l’ensemble de paramètres étant en outre fonction des deuxièmes informations.
Selon une variante supplémentaire, le procédé comprend en outre une étape de détermination des deuxièmes informations à partir de troisièmes données reçues d’au moins un capteur embarqué dans le véhicule, le au moins un capteur appartenant à un ensemble de capteurs comprenant :
- une caméra ayant dans son champ de vision au moins une partie d’un habitacle du véhicule ; et
- un capteur de pression intégré dans un siège du véhicule.
Selon encore une variante, l’ensemble de paramètres de spatialisation comprend au moins un des paramètres suivants :
- amplitude d’un signal représentatif du contenu sonore ;
- phase du signal ;
- paramètre d’identification d’un canal audio.
Selon une variante additionnelle, le procédé comprend en outre une étape de transmission d’une requête de téléassistance à destination du dispositif distant via la liaison sans fil.
Selon une autre variante, le contenu sonore est représentatif de ladite instruction de manipulation, l’instruction de manipulation étant rendue par une méthode de synthèse vocale.
Selon un deuxième aspect, la présente invention concerne un dispositif de contrôle de rendu d’un contenu sonore dans un véhicule, le dispositif comprenant une mémoire associée à un processeur configuré pour la mise en œuvre des étapes du procédé selon le premier aspect de la présente invention.