[go: up one dir, main page]

WO2020070459A1 - Procédé pour transformer un modèle tridimensionnel (3d) en un modèle 3d embarquable dans une interface humain-machine d'un équipement embarque - Google Patents

Procédé pour transformer un modèle tridimensionnel (3d) en un modèle 3d embarquable dans une interface humain-machine d'un équipement embarque

Info

Publication number
WO2020070459A1
WO2020070459A1 PCT/FR2019/052363 FR2019052363W WO2020070459A1 WO 2020070459 A1 WO2020070459 A1 WO 2020070459A1 FR 2019052363 W FR2019052363 W FR 2019052363W WO 2020070459 A1 WO2020070459 A1 WO 2020070459A1
Authority
WO
WIPO (PCT)
Prior art keywords
model
board equipment
embedded
human
rules
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/FR2019/052363
Other languages
English (en)
Other versions
WO2020070459A9 (fr
Inventor
Emmanuel JULIEN
François GUTHERZ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Movida Production SARL
Original Assignee
Movida Production SARL
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Movida Production SARL filed Critical Movida Production SARL
Publication of WO2020070459A1 publication Critical patent/WO2020070459A1/fr
Publication of WO2020070459A9 publication Critical patent/WO2020070459A9/fr
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • G06F30/12Geometric CAD characterised by design entry means specially adapted for CAD, e.g. graphical user interfaces [GUI] specially adapted for CAD
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • G06F30/15Vehicle, aircraft or watercraft design

Definitions

  • the present invention relates to a method for transforming a three-dimensional (3D) model into an embeddable 3D model in a human-machine interface of on-board equipment.
  • the field of the invention is that of human-machine interfaces, and more particularly of human-machine interfaces embedded in mobility systems, land, air or sea.
  • HMI human-machine interfaces
  • SWIG is a state-of-the-art program for generating such "bindings". It is open source, free to access and allows linking programs written in C / C ++ to a variety of "high level" programming languages. Among the target languages are common scripting languages such as Javascript, Perl, PHP, Python, Tel and Ruby. SWIG suffers from excessive technical debt and unequal treatment of the target languages supported. Thus, it is frequent that a desirable functionality is only supported in a few target languages and sometimes in none, which constitutes a significant handicap for the integration of expert scripts in an automated 3D model conformation process.
  • the document US5083262A describes a language binding method intended for graphical functions, with the aim of allowing an application program to be used in different processing environments.
  • 3D conformation can find a solution in the use of existing 3D standards.
  • the 3D format standard developed by an industrial conglomerate under the name of COLLADA offers great flexibility of use but does not offer a solution to the performance problem posed by XML (cf. Bibliographical References h ° 14 - www.ibm .com / developerworks).
  • Establishing a language-specific link between high-level graphics application programs written in a specific programming language allows a graphics application program to be transported between and used in different graphics processing systems.
  • a only one portable graphics application program can be used with any of the graphics processors with which an application language link has been established to produce graphics on an output device.
  • Document CN101814024A discloses a tool for designing a multiplatform 3D interface, mainly used for developing large-screen 3D interactive human-machine interfaces.
  • the tool includes a system kernel capable of invoking systemic functions in a multi-platform manner, in which the kernel supports the main functions of a current consumer platform and can perform a self-check to find the difference between the system functions of different operating systems.
  • Document W002 / 37406 A1 discloses a computational geometry server (16) comprising a server, a communication link, at least one client, an interrupt interface, processing circuits, as well as an operations manager, which is configured to compare source geometric data from a source geometric model with target geometric data from a target geometric model.
  • SWIG technological legacy
  • C ++ functionality makes it extremely complicated and expensive to maintain and upgrade.
  • the few software alternatives to SWIG are generally only interested in a single target language while being much more limited than the latter in terms of supported C ++ functionality.
  • a drawback of methods for processing 3D models for on-board applications according to the state of the art is that they are generally dependent on software platforms operating in collaborative or open mode, which does not make it possible to ensure a strict confidentiality of the design data of the 3D models used and may constitute a handicap for certain markets, in particular in the field of defense and security equipment.
  • constraints applying to the storage model are twofold: level of expectation of industrial sectors in the visual quality of human-machine interfaces, bandwidth constraints of GPUs and hardware platforms and performance of "real-time” 3D on board.
  • a major technological barrier to be overcome is that of the difficulty of establishing translation and encoding rules that are sufficiently open and flexible to be adapted to an existing diversity in the codes that can be accepted on embedded systems of equipment. mobile, while being sufficiently precise and stable to guarantee a high quality of rendering after model transformation.
  • a main objective of the present invention is to provide an automated conformation of a 3D model which must allow direct use of I.H.M. carried out by specialized designers, to make them automatically ready to be installed in on-board equipment after each modification without requiring human intervention.
  • This conformation must be able to achieve performances in terms of efficiency, reliability and ergonomics far superior to those observed with existing processes.
  • Another object of the invention is to propose a new method for displaying a 3D model which provides a realistic physical rendering and which is stable and efficient.
  • This objective is achieved with a process to transform a three-dimensional (3D) model from a computer-aided design tool (CAD) into a 3D model embeddable in a human-machine interface of embedded equipment, comprising:
  • a step for receiving a 3D model produced from said CAD tool comprising a decoding of the digital content of said 3D model
  • Receiving a 3D model consists of an algorithm that decodes the digital content of a 3D model, stored in the form of a computer file.
  • This 3D model is coded in a particularly rich and complex way, a property inherent in its origin. 3D files thus contain a large amount of metadata which must be sorted, filtered and discarded if necessary.
  • the transformation process according to the invention contributes to automatically evaluating which characteristics of transparencies respect both the artistic intention of the stylist and which are compatible with the specifications of the on-board equipment. This process is based on a recursive exploration of the data, by browsing the scene graph, from its root, to 3D models, their materials, their textures and the content of said textures.
  • One of the assets of the transformation process according to the invention is to propose the most suitable method, always configurable, for evaluating this data without which an on-board equipment cannot display a 3D model in a realistic manner.
  • the conversion stage also uses euristics, each conversion rule of which can be configured or disengaged.
  • the heterogeneous CAD environment requires working with very varied coordinate systems and unit systems which must be the object of conversion and / or adaptation work to adapt to the constraints of a on-board equipment.
  • the originality of the transformation process according to the invention is to propose a series of transformations applicable to the model, à la carte, which take into account the heterogeneity of the standards and CAD formats and restore a coherent whole compatible with the embedded. Again, in addition to these euristics, there are proposed callback functions in Lua language, which allow the user to take control to intervene on these conversion rules.
  • the transformation method according to the invention can also comprise a modification of the topology and / or the density and / or the orientation of a 3D model in transformation, and an intervention on materials so as to redefine them and / or assign them light and material processing algorithms.
  • the transformation method according to the invention may also include, when the 3D model is stored, a choice of a format most suited to the on-board equipment.
  • the translation rules and the encoding rules were, for example, previously designed in a project-oriented mode from specific information on the on-board equipment intended to receive the 3D model.
  • the interpreter can operate substantially in parallel with the decoding, translation and encoding steps.
  • the transformation method is further adapted to transform a digital model of a material initially implemented in a CAD tool into a digital model of said material which suitable for be implemented in a human-machine interface of on-board or mobile equipment.
  • the transformation of the digital model of the material may include a step of assigning to said digital model one or more algorithms for processing light and / or materials.
  • the transformation of the digital model of the material may also include a step of converting image streams so as to make said images compatible and optimized for on-board equipment.
  • a computer module implementing the transformation method according to any one of the preceding claims, comprising:
  • an interpreter module provided for analyzing the characteristics extracted by said decoder module, and for applying said translation rules and said encoding rules respectively to said 3D model during said encoding step.
  • This computer module can also be configured to transform a digital model of a material initially implemented in a CAD tool into a digital model of said material which is adapted to be implemented in a human-machine interface of on-board equipment.
  • an application of the transformation method according to the invention is proposed to the production of human-machine interfaces for mobility equipment, in particular land, air or sea vehicles
  • the transformation method according to the invention implements an automated conforming method using an expert script of 3D models after conversion from a CAD tool in order to make them embeddable in the human-machine interface d '' on-board equipment.
  • One of the main advantages of the solution was to allow development teams to detach themselves from the problem of manual conformation during the stages of integration and updating of 3D content from graphic production teams.
  • the method according to the invention it becomes possible to increase the quality of the rendering offered while significantly reducing the implementation time and ensuring a high level of performance compared to the solutions available on the market.
  • FIG. 2 is a block diagram of the conversion process, augmented with automated shaping steps
  • FIG. 3 is a block diagram illustrating the interactions between different modules of a system implementing the method according to the invention.
  • Library is a library for viewing and manipulating 3D models.
  • Converter is meant software that converts 3D models from CAD (Computer Aided Design) software into real-time 3D models usable by the Library.
  • CAD Computer Aided Design
  • 3D Development Tool is understood to mean a visual 3D development environment intended for end users, designers and non-developers based on the Library. It allows you to arrange and program 3D models for the production of human-machine interfaces.
  • Binding generator is understood to mean software and a method for producing a software link interface (binding).
  • the Binding Generator allows you to link a C ++ Library to a high-level language.
  • Finalizer is understood to mean a software module intervening downstream of the conversion process, which is responsible for interrogating the conformance scripts.
  • the transformation method according to the invention is carried out in the form of a computer module 3D development tool (designated in FIG. 1 under the term of ASSEMBLE) and which includes a Finalizer module designated in FIG. 1 under the term module Finalizer.
  • the 3D development tool (ASSEMBLE) includes, in addition to the Finalizer sub-module, a 3D model decoding module, a 3D model translation module and a 3D model encoding module. These three decoding, translation and encoding modules are linked sequentially.
  • the decoding module receives as input a 3D model initially produced from a CAD tool and outputs as output to the translation model a decoded 3D model and to the interpreter specific characteristics of the 3D model.
  • the translation module delivers to the encoding module a translation of the 3D model according to the translation rules operated by the interpreter while the encoding module delivers a 3D model ready to be embedded after encoding according to the encoding rules operated by the interpreter.
  • the Finalizer module includes an interpreter which receives as input project-centered conversion rules previously established by one or more experts and characteristic data from the decoding module.
  • the interpreter is also functionally connected to the translation and encoding modules respectively.
  • a 3D model from a CAD tool is sent to the module, a 3D development tool,
  • the 3D model decoder module informs the interpreter of the characteristics of the 3D CAD models (shape, color, materials, nomenclature %),
  • the interpreter applies specific operations, according to the translation rules, on the data of the 3D model during the translation,
  • the interpreter applies specific format conversions, according to the encoding rules, of the 3D model during encoding
  • the module of a 3D development tool produces a 3D model in accordance with the technical specifications of the on-board equipment and the design and aesthetic expectations specific to the project.
  • the conformance script is free to intervene at each stage of the conversion process in order to make adjustments, from the finest to the most general.
  • the conversion process comprises a succession of steps: -
  • the translation of a 3D model by the CONVERTER invokes the Finalizer automatically. It is the start of the process.
  • the interpreter which works in parallel with the conversion, calls up a set of functions previously implemented by an expert or a person skilled in the art, project by project, which detail the transformations to be made so that the 3D models sent by the on-board equipment comply with the expectations of the designers.
  • the Finalizer has been instructed to intervene on the transformation of materials, it has the possibility of completely redefining them, factorizing them, assigning them light and material processing algorithms (or shaders), converting image flows with the aim of making the data compatible and optimized for on-board equipment.
  • the Finalizer can choose the format best suited to the on-board equipment (binary, XML, Json, etc.).
  • the Finalizer is called as many times as a 3D model or materials are processed by the Converter.
  • An experimental module was carried out on the basis of complex 3D models meeting the visual criteria of physically realistic rendering with the objectives of, on the one hand, display in an on-board context and, on the other hand, high performance constraints. These 3D models have been selected with varying information density.
  • complex 3D models is meant a realistic 3D graphic representation, recognizable by both an expert and a non-expert.
  • the 3D model database provided by Stanford University, offers to make available different 3D models made up of polygons (or triangles).
  • This experimental module was also configured to transform a digital model of a material initially used in a CAD tool. At the end of this transformation step, the digital model produced automatically is adapted and therefore complies with the constraints of a human-machine interface of on-board equipment.
  • This CAD 3D model must meet the following criteria:
  • variable mesh density in order to adapt to the different capacities of the hardware platforms targeted by the experiment
  • the objective is to produce a 3D real-time interactive visual from multiple points of view, simulating the constraints compatible with future human machine interfaces: holographic display
  • the "Polygon budget” (for "Polygon budget”) details the density of information, which is variable in order to adapt to the bandwidth capacities of the targeted hardware platform.
  • Shading complexity represents a quantifiable measure of the processing complexity of light rendering algorithms (shader), adapted to the hardware platform.
  • hader the notion of mobility of on-board platforms is linked to the number of processing units and the processing capacity of the light rendering algorithms.
  • Multiple rendering presents the degree of effort required of the hardware platform in the processing of 3D models in order to obtain representations projected from different and complementary angles of view.
  • the "GPU type” indicates the type of hardware architecture that runs the experiment module. Several architectures have been selected, all meeting the constraints and on-board industrial specifications. A reference platform has also been added to the experimentation module.
  • the “platform” (for “platform”) refers to the targeted operating system, in order to validate the results by meeting the stated portability constraint.
  • the performance objectives are achieved, in terms of visual quality (30Hz or even 60Hz in most cases), portability (Unix / Windows compatibility from the same input data) and mobility (on Tegra and Mali platforms ).
  • the experimental prototype operates at a processing frequency of 30Hz on the on-board Nvidia Tegra Kl platform, considered to be the worst-case scenario.
  • the same prototype displays a frequency of 60hz on the Mali platform qualified for the automotive industry, which is the ideal conditions for ergonomics and performance.
  • the variety of platforms further demonstrates that the portability objectives are achieved.
  • the automated conforming step has the characteristics of a script.
  • Binding The process of interfacing one programming language with another is known as “Binding”. This process can be carried out manually and represents a substantial investment of time where each functionality of the source language must be manually interfaced with the target language. Given the importance of the task and the complexity of the C ++ library, the step of creating the "Binding" has been automated.
  • the Binding Generator is able to automatically link the entire Library to the Lua and Python scripting languages.
  • the Binding Generator / Finalizer module is integrated into a Software Library - here called the Library -, designed and developed in C ++, which offers a set of functionalities for the display of 3D data of any type, until it can be integrated into on-board equipment.
  • This Library is made up of a set of subsystems which address the specific needs for the realization of human-machine interface on screen, including the display of 3D models, the management of realistic rendering, light, physical interactions. ...
  • the Library allows you to rewrite 3D code from an expert script. This junction is made possible by the “binding” (in French, binding) of the library BIBLIOTHEQUE with the language of the expert script.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Geometry (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Architecture (AREA)
  • Human Computer Interaction (AREA)
  • Automation & Control Theory (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Computer Graphics (AREA)
  • Software Systems (AREA)
  • Processing Or Creating Images (AREA)

Abstract

Procédé pour transformer un modèle tridimensionnel (3D) issu d'un outil de conception assisté par ordinateur (CAD) en un modèle 3D embarquable dans une interface humain-machine d'un équipement embarqué, comprenant les étapes de : - recevoir un modèle 3D réalisé à partir dudit outil CAD, - convertir le modèle 3D reçu et en extraire des caractéristiques, dans lequel les caractéristiques extraites sont analysées par un interpréteur appliquant sur ledit modèle 3D des règles de traduction et des règles d'encodage, de façon à générer un modèle 3D prêt à être embarqué dans un équipement embarqué. Utilisation pour la réalisation d'interfaces humain-machines pour des équipements embarqués mobiles, terrestres, aériens ou maritimes.

Description

PROCEDE POUR TRANSFORMER UN MODELE TRIDIMENSIONNEL (3D) EN UN MODELE 3D EMBARQUABLE DANS UNE INTERFACE HUMAIN-MACHINE D’UN EQUIPEMENT
EMBARQUE
Domaine de l’invention
La présente invention concerne un procédé pour transformer un modèle tridimensionnel (3D) en un modèle 3D embarquable dans une interface humain-machine d’un équipement embarqué.
Le domaine de l’invention est celui des interfaces humain-machine, et plus particulièrement des interfaces humain-machine embarqués dans des systèmes de mobilité, terrestres, aériens ou maritimes.
Etat de la technique
Il existe actuellement une forte demande, exprimée notamment par les constructeurs automobiles, pour des interfaces humain-machine (IHM) ergonomiques, efficaces et hautement dynamiques.
Le développement actuel des nouvelles formes de mobilité, notamment le transport autonome ou semi-autonome, suscite des besoins importants en termes d’interfaces humain-machine équipant les systèmes de mobilité. On attend de ces interfaces humain-machine qu’elles soient ergonomiques, intuitives et performantes. Pour cela, il est fait de plus en plus appel à des représentations graphiques tridimensionnelles dynamiques.
S’il est déjà très courant d’utiliser des modèles tridimensionnels temps-réel et à haute résolution dans le domaine des jeux vidéo et de l’animation, ce n’est pas encore le cas pour les équipementiers du domaine automobile des véhicules légers ou industriels qui sont pourtant actuellement très demandeurs d’animations 3D temps-réel embarquées tandis qu’ils font face à une somme de contraintes technologiques bien supérieures à celles adressées dans le secteur du jeu vidéo.
En effet, il existe un réel décalage culturel et expérientiel entre les designers graphiques 3D et les développeurs logiciel chargés de concevoir les IHM tournant sur des systèmes électroniques embarqués. Ce décalage se matérialise par l’utilisation de logiciels de développement informatique fondamentalement différents et de prime abord incompatibles, ce qui a pour conséquence de nécessiter un pont entre deux univers « métier » distincts.
Les procédés existants tels que ceux utilisés par les logiciels Unreal Engine, Unity3D ou encore 3DVia, qui remplissent ce rôle, opèrent d’ordinaire une conversion a minima qui nécessite systématiquement une intervention manuelle afin de conformer l’apparence d’un modèle 3D avant qu’il soit exploitable par des développeurs. Cette conformation doit être répétée à chaque modification du modèle 3D entraînant nécessairement une perte de productivité, un plus grand risque d’erreur induit par la multiplication d’interventions humaines, l’allongement des échéances au détriment de l’accomplissement des projets, qu’ils soient portés par des cellules innovation ou production. L’amélioration de ce processus de conformation réclame une forme d’automatisation de cette étape de conformation qui peut nécessiter l’écriture d’un script expert. En l’état de l’art, il n’est pas possible d’intervenir de façon automatique sur les étapes de conversion. En effet, on constate que les solutions technologiques disponibles implémentent un procédé rigide, lequel interdit toute forme d’automatisation et donc de conformation des modèles 3D.
Afin d’intervenir sur le modèle 3D converti pour le conformer, il est nécessaire de procéder à une réécriture du code 3D. Cette possibilité technologique n’est pas disponible dans les logiciels de référence comme Unreal Engine, Unity3D ou 3DVia.
En outre, la réécriture automatisée du code 3D, qui s’appréhende de la façon la plus pertinente dans un mode orienté-projet, nécessite à la fois des compétences expertes en imagerie et l’accès à des fonctions 3D bas-niveau. Cette approche « par projet » justifie la mise en place d’un binding, qui réalise la jonction entre l’accessibilité d’un langage haut-niveau tel qu’utilisé par les experts métiers en interface humain-machine et imagerie 3D d’un part et les fonctionnalités bas-niveau d’une bibliothèque graphique 3D d’autre part.
En l’état de l’art, SWIG est un programme permettant de générer de tels“bindings”. Il est open- source, libre d’accès et permet de relier des programmes écrits en C/C++ à une variété de langages de programmation de « haut niveau ». Parmi les langages cibles, on trouve des langages de script courants tels que Javascript, Perl, PHP, Python, Tel et Ruby. SWIG souffre d’une dette technique trop importante et d’un traitement inégal des langages cibles supportés. Ainsi, il est fréquent qu’une fonctionnalité désirable ne soit supportée que dans quelques langages cibles et parfois dans aucun, ce qui constitue un handicap important pour l’intégration de scripts experts dans un processus de conformation de modèles 3D automatisé.
Le document US5083262A décrit un procédé de liaison de langage (« langage binding ») destiné à des fonctions graphiques, avec pour objectif de permettre à un programme d'application d'être utilisé dans différents environnements de traitement.
Par ailleurs, le document US20110047217A1 décrit un procédé de gestion des données 3D collaboratif agissant par centralisation des données 3D via une base de données, et garantissant l'intégrité des données dans un contexte de modifications temps-réel et d’accès concurrents. Ce procédé, toutefois, ne propose pas de solution spécifique pour la conformation de modèles 3D dans un contexte industriel où le niveau d’attente est de plus en plus élevé face à des cycles de développements de plus en plus courts.
Un autre aspect de la conformation 3D peut trouver une solution dans l’utilisation de normes 3D existantes. Ainsi, la norme de format 3D développée par un conglomérat industriel sous le nom de COLLADA offre une grande souplesse d’utilisation mais ne propose pas de solution au problème de performance posé par le XML (cf. Références Bibliographique h°14 - www.ibm.com/developerworks).
L'établissement d'une liaison spécifique à un langage entre des programmes d'application graphique de haut niveau écrits dans un langage de programmation spécifique permet de transporter un programme d'application graphique entre et utilisé dans différents systèmes de traitement graphique. Un seul programme d'application graphique portable peut être utilisé avec n'importe lequel des processeurs graphiques avec lesquels une liaison de langage d'application a été établie pour produire des graphiques sur un périphérique de sortie.
Le document CN101814024A divulgue un outil de conception d'une interface 3D multiplateforme, principalement utilisé pour développer des interfaces interactives homme-machine 3D grand écran. L'outil comprend un noyau système capable d'invoquer des fonctions systémiques de manière multi-platef ormes, dans lequel le noyau prend en charge les fonctions principales d'une plate-forme grand public actuelle et peut effectuer une auto-vérification pour trouver la différence entre les fonctions système de différents systèmes d'exploitation.
Le document US6614430 B1 divulgue un procédé d'échange de données mécaniques entre systèmes de conception paramétrique assistée par ordinateur CAO. Ce procédé met en œuvre une extraction de données de spécification paramétriques à partir d'un fichier CAO source et une création d’un second fichier CAO basé sur des paramètres pour un système de CAO différent.
Le document W002/37406 Al divulgue un serveur de géométrie computationnel (16) comprenant un serveur, un lien de communication, au moins un client, une interface d'interruption, des circuits de traitement, ainsi qu'un gestionnaire d'exploitation, lequel est configuré de manière à comparer des données géométriques sources d'un modèle géométrique source avec des données géométriques cibles d'un modèle géométrique cible.
La combinaison de l’héritage technologique de SWIG et de son support fragmenté des fonctionnalités du C++ fait qu’il est extrêmement compliqué et coûteux d’assurer son évolution et sa maintenance. Les alternatives logicielles, peu nombreuses, à SWIG ne s’intéressent en général qu’à un seul langage cible tout en étant beaucoup plus limitées que ce dernier en termes de fonctionnalités C++ supportées.
De plus, avec l'arrivée du nouveau standard C++ (C++11), les nouvelles constructions du langage sont peu ou pas supportées et de nombreuses configurations d'utilisation des nouvelles fonctionnalités C++ ne sont pas correctement supportées par SWIG.
Par ailleurs, un inconvénient des procédés de traitement de modèles 3D pour des applications embarquables selon l’état de l’art est qu’ils sont généralement dépendants de plateformes logicielles opérant en mode collaboratif ou ouvert, ce qui ne permet pas d’assurer une stricte confidentialité des données de conception des modèles 3D mis en œuvre et peut constituer un handicap pour certains marchés, notamment dans le domaine des équipements de défense et de sécurité.
Ainsi, pour atteindre l’objectif attendu d’embarquer des modèles 3D en affichant un niveau de qualité visuelle répondant aux exigences du PBR (“Rendu Physique Réaliste’’), se pose le problème de l'interprétation des descriptions de matériaux issus des outils CAD (pour « Computer Aided Design »). En effet, si des propositions de norme de description des matériaux physiques ont bien été réalisées, il n’existe pas de spécifications communes aux matériaux exportés depuis la majorité des logiciels de CAD faisant référence dans l’industrie. Dans l’état de l’art, cette nécessité n’a pas de réponse technique. Dans bon nombre de centres de conception et de développement d’interfaces humain-machine, on réécrit le code d’un modèle 3D généré par un outil CAD pour pouvoir l’embarquer sur une plateforme mobile. L’utilisation d’un format spécifique hérité de l'environnement de la CAD pour le stockage de données 3D adaptées aux contraintes de l’embarqué pose le problème de la versatilité et de la souplesse pour faire face aux contraintes d’un environnement embarqué.
Par ailleurs, le stockage de métadonnées spécifiques à la 3D temps-réel au sein de modèle CAD (dont le format est propriétaire) pour obtenir le résultat attendu dans l’affichage d’interfaces humain- machine a été abordé dans l’industrie de l’image de synthèse conduisant à une impasse technique récurrente. L’utilisation d’un tel format, optimisé et parfaitement adapté aux contraintes de l’embarqué, conduit généralement à la perte des métadonnées qui sont pourtant l’enjeu même des projets au sein desquels elles interviennent.
Ainsi, les contraintes s’appliquant au modèle de stockage sont doubles : niveau d’attente des filières industrielles dans la qualité visuelle des interfaces humain-machine, contraintes de bande passante des GPU et plateformes matérielles et performance de la 3D « temps-réel » embarquée.
Par ailleurs, un verrou technologique majeur à lever est celui de la difficulté d’établir des règles de traduction et d’encodage qui soient suffisamment ouvertes et flexibles pour être adaptées à une diversité existante dans les codes pouvant être acceptés sur les systèmes embarqués des équipements mobiles, tout en étant suffisamment précises et stables pour garantir une haute qualité de rendu après transformation de modèle.
Un objectif principal de la présente invention est de proposer une conformation automatisée d’un modèle 3D qui doit permettre d’exploiter directement les conceptions I.H.M. réalisées par des designers spécialisés, pour les rendre automatiquement prêtes à être embarquées dans un équipement embarqué après chaque modification sans requérir d’intervention humaine. Cette conformation doit pouvoir atteindre des performances en termes d’efficacité, de fiabilité et d’ergonomie largement supérieures à celles observées avec les procédés existants.
Un autre but de l’invention est de proposer un procédé nouveau d’affichage de modèle 3D qui procure un rendu physique réaliste et qui soit stable et performant.
Résumé de l’invention
Cet objectif est atteint avec un procédé pour transformer un modèle tridimensionnel (3D) issu d’un outil de conception assisté par ordinateur (CAD) en un modèle 3D embarquable dans une interface humain-machine d’un équipement embarqué, comprenant :
- une étape pour recevoir un modèle 3D réalisé à partir dudit outil CAD, comprenant un décodage du contenu numérique dudit modèle 3D
- convertir le modèle 3D reçu et en extraire des caractéristiques, dans lequel les caractéristiques extraites sont analysées par un interpréteur appliquant sur ledit modèle 3D des règles de traduction et des règles d’encodage, de façon à générer un modèle 3D prêt à être embarqué dans l’équipement embarqué, le plus souvent mobile.
Recevoir un modèle 3D consiste en un algorithme qui décode le contenu numérique d'un modèle 3D, stocké sous la forme d'un fichier informatique. Ce modèle 3D est codé d'une façon particulièrement riche et complexe, propriété inhérente à son origine. Les fichiers 3D contiennent ainsi une grande quantité de métadonnées qui doivent être triées, filtrées et écartées le cas échéant.
A contrario, un certain nombre de caractéristiques qui sont absolument nécessaires dans un équipement embarqué sont absentes d'un modèle 3D issu de CAO. Il a donc été nécessaire de mettre en place un ensemble d'euristiques capable d’inférer les informations nécessaires pour l’équipement embarqué à partir des données stockées dans le modèle CAO.
A titre d'exemple, les équipements embarqués sont très limités dans leur capacité à traiter les effets de transparence. Pourtant, ces effets sont jugés nécessaires par les stylistes et designers de l'industrie (en particulier l’industrie automobile), à la fois pour des raisons esthétiques et d'Expérience Utilisateur (UX).
Le procédé de transformation selon l’invention contribue à évaluer automatiquement quelles sont les caractéristiques de transparences qui respectent à la fois l'intention artistique du styliste et qui soient compatibles avec les spécifications des équipements embarqués. Ce procédé s'appuie sur une exploration récursive des données, en parcourant le graphe de scène, depuis sa racine, jusqu'aux modèles 3D, leurs matériaux, leurs textures et le contenu desdites textures.
Un autre exemple concret de mise en œuvre du procédé de transformation selon l’invention concerne les modèles 3D de CAO, qui par la nature "offline" du fonctionnement des logiciels de conception (Catia, SolidWorks), ne contiennent pas toujours d'information telles que les normales, tangentes ou bi-tangentes.
Un des atouts du procédé de transformation selon l’invention est de proposer la méthode la plus adaptée, toujours configurable, pour évaluer ces données sans lesquelles un équipement embarqué ne peut afficher de modèle 3D de façon réaliste.
En complément de ces euristiques, on propose des fonctions dites de callback en langage Lua, qui autorisent l'utilisateur à prendre la main pour contrôler précisément la façon dont les modèles 3D sont reçus.
L’étape de conversion fait elle aussi appel à des euristiques dont chaque règle de conversion est configurable ou débrayable. L'environnement hétérogène de la CAO impose de travailler avec des systèmes de coordonnées et des systèmes d'unités très variés qui doivent faire l'objet d'un travail de conversion et/ou d'adaptation pour s'adapter aux contraintes d'un équipement embarqué. L'originalité du procédé de transformation selon l’invention est de proposer une série de transformations applicables au modèle, à la carte, qui tiennent compte de l'hétérogénéité des normes et formats CAO et restituent un tout cohérent compatible avec l'embarqué. Là encore, en complément de ces euristiques, il est proposé des fonctions de callback en langage Lua, qui autorisent l'utilisateur à prendre la main pour intervenir sur ces règles de conversion.
L'approche double d'un algorithme totalement fonctionnel quand il est utilisé de façon autonome et de callback programmables par un utilisateur expert constitue une originalité qui ne trouve pas d'équivalent dans l'industrie. Il n’existe pas à ce jour d’outil combinant à la fois une étape de conversion réalisée par une boite noire implémentant un algorithme et une étape de conversion implémentée de façon entièrement manuelle d'autre part.
C'est cette approche hybride du procédé de transformation selon l’invention qui rend possible le traitement à grande échelle d'importants volumes de données afin de répondre aux impératifs techniques et économiques de la réalité industrielle.
L’étape de conversion peut avantageusement comprendre :
- une traduction du modèle 3D,
- un appel d’un jeu de fonctions correspondant à des transformations à apporter sur des modèles
3D envoyés par l’équipement embarqué.
Le procédé de transformation selon l’invention peut en outre comprendre une modification de la topologie et/ou de la densité et/ou de l’orientation d’un modèle 3D en transformation, et une intervention sur des matériaux de façon à les redéfinir et/ou de leur assigner des algorithmes de traitement de la lumière et des matières.
Le procédé de transformation selon l’invention peut en outre comprendre, au moment du stockage du modèle 3D, un choix d’un format le plus adapté à l’équipement embarqué.
L’étape de conversion peut avantageusement comprendre les étapes de :
- décoder le modèle 3D reçu et en extraire des caractéristiques du modèle 3D,
- traduire le modèle ainsi décodé, en appliquant des règles de traduction,
- encoder le modèle 3D ainsi traduit, en appliquant des règles d’encodage, de façon à générer un modèle 3D prêt à être embarqué dans un équipement embarqué,
dans lequel les caractéristiques extraites lors de ladite étape de décodage du modèle 3D sont analysées par un interpréteur appliquant sur ledit modèle 3D respectivement lesdites règles de traduction lors de ladite étape de traduction et lesdites règles d’encodage lors de ladite étape d’encodage.
Les règles de traduction et les règles d’encodage ont par exemple été préalablement conçues dans un mode orienté-projet à partir d’informations spécifiques sur l’équipement embarqué destiné à recevoir le modèle 3D.
L’interpréteur peut fonctionner sensiblement en parallèle des étapes de décodage, de traduction et d’encodage.
Dans une forme particulière de mise en œuvre du procédé de transformation selon l’invention, celui-ci est en outre adapté pour transformer un modèle numérique d’un matériau initialement mis en œuvre dans un outil CAD en un modèle numérique dudit matériau qui adapté pour être mis en œuvre dans une interface humain-machine d’un équipement embarqué ou mobile. La transformation du modèle numérique du matériau peut comprendre une étape d’assignation audit modèle numérique d’un ou plusieurs algorithmes de traitement de la lumière et/ou de matières.
La transformation du modèle numérique du matériau peut aussi comprendre une étape de conversion de flux d’images de façon à rendre lesdites images compatibles et optimisées pour l’équipement embarqué.
Suivant un autre aspect de l’invention, il est proposé un module informatique implémentant le procédé de transformation selon l’une quelconque des revendications précédentes, comprenant :
- un module pour décoder un modèle tridimensionnel (3D) initialement réalisé à partir d’un outil de conception assistées par ordinateur (CAD) et extraire des caractéristiques inhérentes audit modèle 3D,
- un module pour traduire ledit modèle 3D ainsi décodé en appliquant des règles de traduction,
- un module pour encoder le modèle 3D ainsi traduit, en appliquant des règles d’encodage, de façon à générer un modèle 3D prêt à être embarqué dans un équipement embarqué,
- un module interpréteur prévu pour analyser les caractéristiques extraites par ledit module décodeur, et pour appliquer sur ledit modèle 3D respectivement lesdites règles de traduction et lesdites règles d’encodage lors de ladite étape d’encodage.
Ce module informatique peut en outre être configuré pour transformer un modèle numérique d’un matériau initialement mis en œuvre dans un outil CAD en un modèle numérique dudit matériau qui adapté pour être mis en œuvre dans une interface humain-machine d’un équipement embarqué.
Suivant encore un autre aspect de l’invention, il est proposé une application du procédé de transformation selon l’invention à la réalisation d’interfaces humain-machine pour des équipements de mobilité, notamment des véhicules terrestres, aériens ou maritimes
Selon un mode particulier d’implémentation du procédé de transformation selon l’invention, en cas de modification des propriétés du modèle 3D source, on repart de la première étape, en particulier dans le traitement des matériaux et textures.
Il devient possible d’automatiser la phase de conformation nécessaire après chaque conversion depuis un logiciel de CAD. Cette automatisation se traduit (i) par un gain de productivité qui a un impact direct sur les cycles de développement et sur le « time to market » (pour «temps de mise sur le marché ») des projets d’interface humain-machine, et (ii) l’assurance d’éviter les erreurs de manipulation humaine, pour une augmentation significative de la qualité des données produites.
Ainsi, le procédé de transformation selon l’invention met en œuvre un procédé de conformation automatisée à l’aide d’un script expert de modèles 3D après conversion depuis un outil CAD en vue de les rendre embarquables dans l’interface humain-machine d'un équipement embarqué.
L’un des principaux avantages de la solution a été de permettre aux équipes de développement de se détacher du problème de conformation manuelle lors des étapes d’intégration et de mise à jour des contenus 3D issus des équipes de production graphique. Avec le procédé selon l’invention, il devient possible d’augmenter la qualité du rendu proposé tout en réduisant significativement le temps de mise en œuvre et en assurant un niveau de performances élevé par rapport aux solutions disponibles sur le marché.
Description détaillée de l’invention
D’autres avantages et particularités de l’invention apparaîtront à la lecture de la description détaillée de mises en œuvre et de modes de réalisation nullement limitatifs, et des dessins annexés suivants :
- la figure 1 illustre le procédé de conversion avec une conformation automatisée à l’aide de scripts experts ;
- la figure 2 est un schéma fonctionnel du procédé de conversion, augmenté d’étapes de conformation automatisées ; et
- la figure 3 est un schéma synoptique illustrant les interactions entre différents modules d’un système mettant en œuvre le procédé selon l’invention.
Définitions
On entend par Bibliothèque est une bibliothèque d’affichage et de manipulation de modèles 3D.
On entend par Convertisseur un logiciel qui permet de convertir les modèles 3D issus de logiciels de CAD (« Computer Aided Design ») en modèles 3D temps-réel exploitables par la Bibliothèque.
On entend par Outil de développement 3D un environnement de développement 3D visuel destiné à des utilisateurs finaux, designers et non-développeurs basé sur la Bibliothèque. Il permet d’agencer et programmer des modèles 3D en vue de la production d’interfaces humain-machine.
On entend par Générateur de binding, un logiciel et procédé de réalisation d’interface de liaisons logicielles (binding). Le Générateur de binding permet de relier une Bibliothèque C++ à un langage haut- niveau.
On entend par Finaliseur un module logiciel intervenant en aval du procédé de conversion, qui est chargée d’interroger les scripts de conformation.
Exemple de réalisation
On va maintenant décrire, en référence aux figures précitées, un mode particulier de réalisation et de mise en œuvre du procédé de transformation selon l’invention. Dans cet exemple de réalisation, le procédé de transformation selon l’invention est réalisé sous la forme d’un module informatique outil de développement 3D (désigné en figure 1 sous le terme de ASSEMBLE) et qui inclut un module Finaliseur désigné en figure 1 sous le terme de module Finaliseur. L’outil de développement 3D (ASSEMBLE) inclut, outre le sous-module Finaliseur, un module de décodage de modèle 3D, un module de traduction de modèle 3D et un module d’encodage de modèle 3D. Ces trois modules respectivement de décodage, de traduction et d’encodage sont reliés séquentiellement .
Le module de décodage reçoit en entrée un modèle 3D réalisé initialement à partir d’un outil CAD et délivre en sortie au modèle de traduction un modèle 3D décodé et à l’interpréteur des caractéristiques spécifiques du modèle 3D. Le module de traduction délivre au module d’encodage une traduction du modèle 3D selon les règles de traduction opérées par l’interpréteur tandis que le module d’encodage délivre un modèle 3D prêt pour être embarqué après encodage selon les règles d’encodage opérées par l’interpréteur.
Le module Finaliseur inclut un interpréteur qui reçoit en entrée des règles de conversion centrées- projet préalablement établies par un ou plusieurs experts et des données caractéristiques issues du module de décodage. L’interpréteur est aussi relié fonctionnellement respectivement aux modules de traduction et d’encodage.
On va maintenant décrire, toujours en référence à la figure 1 , un exemple de déroulement du procédé de transformation selon l’invention :
(1) Un modèle 3D issu d’un outil CAD est envoyé au module l’un outil de développement 3D,
(2) Des règles de traduction du modèle 3D conformes aux spécifications techniques d’un équipement embarquée ont été préalablement écrites sous forme de langage interprété par un spécialiste en 3D temps réel,
(3) Le module décodeur de modèle 3D informe l’interpréteur des caractéristiques du modèles 3D CAD (forme, couleur, matières, nomenclature...),
(4) L'interpréteur analyse le modèle 3D pendant son décodage (3),
(5) Le modèle 3D décodé est ensuite traduit selon les règles de traduction,
(5a) L’interpréteur applique des opérations spécifiques, selon les règles de traduction, sur les données du modèle 3D pendant la traduction,
(6) Le modèle 3D est ensuite encodé
(6a) L’interpréteur applique des conversions de format spécifiques, selon les règles d’encodage, du modèle 3D pendant l’encodage
(7) Le module l’un outil de développement 3D produit un modèle 3D conforme aux spécifications techniques de l’équipement embarqué et aux attentes de design et d’esthétique spécifiques au projet.
En référence à la figure 2, le script de conformation est libre d’intervenir à chaque étape du processus de conversion afin d’effectuer des ajustements, des plus fins aux plus généraux.
Le procédé de conversion selon comprend une succession d’étapes : - La traduction d’un modèle 3D par le CONVERTISSEUR invoque le Finaliseur automatiquement. C’est le démarrage du procédé. Par un système de rappels (ou callbacks), l'interpréteur, qui fonctionne en parallèle de la conversion, appelle un jeu de fonctions préalablement implémentées par un expert ou un homme de l’art, projet par projet, qui détaillent les transformations à apporter pour que les modèles 3D envoyés par l’équipement embarqué soient conformes aux attendus des designers.
- Si le Finaliseur a reçu comme instruction d’intervenir sur la transformation du modèle 3D, il a la possibilité de modifier sa topologie, sa densité, son orientation, etc. Toutes ces transformations doivent avoir pour but principal de rendre le modèle 3D compatible et optimisé pour l’équipement embarqué.
- Si le Finaliseur a reçu comme instruction d’intervenir sur la transformation des matériaux, il a la possibilité de les redéfinir entièrement, de les factoriser, de leur assigner des algorithmes de traitement de la lumière et des matières (ou shaders), de convertir les flux d’images avec pour but de rendre les données compatibles et optimisées pour l’équipement embarqué.
- Au moment du stockage du modèle 3D, le Finaliseur peut choisir le format le plus adapté à l’équipement embarqué (binaire, XML, Json, etc...).
Le Finaliseur est appelé autant de fois qu’un modèle 3D ou des matériaux sont traités par le Convertisseur.
Un module expérimental a été réalisé sur la base de modèles 3D complexes répondant aux critères visuels du rendu physiquement réaliste avec comme objectifs, d’une part l’affichage dans un contexte embarqué et d’autre part des contraintes de performances élevées. Ces modèles 3D ont été sélectionnés avec une densité d’information variable.
Par modèles 3D complexes, on entend une représentation graphique 3D réaliste, reconnaissable tant par un expert que par un non-expert. La base de données de modèles 3D, fournie par l’université de Stanford, propose de mettre à disposition différents modèles 3D constitués de polygones (ou triangles).
Ce module expérimental a aussi été configuré pour assurer la transformation d’un modèle numérique d’un matériau initialement mis en œuvre dans un outil CAD. A l’issue de cette étape de transformation, le modèle numérique produit automatiquement est adapté et donc conforme aux contraintes d’une interface humain-machine d’un équipement embarqué.
Ce modèle CAD 3D doit répondre aux critères suivants :
référence visuelle commune permettant à un expert autant qu’un non expert de juger du niveau de réalisme atteint.
densité de maillage variable afin de s’adapter aux différentes capacités des plateformes matérielles ciblées par l'expérimentation
format FBX.
L’objectif visé est de produire un visuel 3D temps-réel interactif en multiple points de vue, simulant les contraintes compatibles avec les futures interfaces humain machine : display (« visualisation ») holographique
écran stéréoscopique ou multi-view
réalité virtuelle
Le résultat à atteindre étant la portabilité et la mobilité, plusieurs plateformes matérielles ont été choisies pour leurs spécifications qualifiées par le secteur industriel.
Le tableau de résultats ci-dessous est construit à partir des hypothèses de travail suivantes:
Le « Polygon budget » (pour « budget Polygone ») détaille la densité d’informations, qui est variable afin de s’adapter aux capacités de bande passante de la plateforme matérielle ciblée. La « shading complexity » (pour « complexité d’ombrage ») représente une mesure quantifiable de complexité de traitement des algorithmes de rendu de la lumière ( shader ), adapté à la plateforme matérielle. On sait en effet que la notion de mobilité des plateformes embarquées est liée au nombre d’unités de traitement et à la capacité de traitement des algorithmes de rendu de la lumière.
La notion de « Multiple rendering » (pour « rendu multiple ») présente le degré d’effort demandé à la plateforme matérielle dans le traitement des modèles 3D afin d’en obtenir des représentations projetées sous des angles de vues différentes et complémentaires.
Le « GPU type » indique le type d’architecture matérielle qui exécute le module d’expérimentation. Plusieurs architectures ont été sélectionnées, toutes répondant aux contraintes et spécifications industrielles embarquées. Une plateforme de référence a également été ajoutée au module d’expérimentation.
La « plateform » (pour « plateforme ») fait référence au système d’exploitation ciblé, afin de valider les résultats en répondant à la contrainte énoncée de portabilité.
Le résultat du module d’expérimentation est détaillé dans la dernière ligne du tableau ci-dessous, par la valeur de « display rate » (pour « taux de visualisation ») qui détermine, à partir du seuil de 30 Hz, la qualité perceptible de l’interface humain-machine.
Les objectifs de performance sont atteints, en termes de qualité visuelle (30Hz voire 60Hz dans la majorité des cas de figure), de portabilité (compatibilité Unix/Windows à partir des mêmes données en entrée) et de mobilité (sur les plateformes Tegra et Mali).
Figure imgf000012_0001
Figure imgf000013_0001
* Average number oflines ofGLSL code executed perfragment/per light (pour « Nombre moyens de lignes de code GLSL exécutées par fragment/par lumière »)
Le résultat de l'expérimentation de validation permet de montrer que la conformation modèle 3D issu de CAD peut être automatisée pour être ensuite traitée par une plateforme embarquée dans des conditions satisfaisantes, voire optimales.
Ainsi, le prototype d’expérimentation fonctionne à une fréquence de traitement de 30Hz sur la plateforme Nvidia Tegra Kl embarquée, considérée comme le scénario du cas le pire. En regard, le même prototype affiche une fréquence de 60hz sur la plateforme Mali qualifiée pour l’industrie automobile, soit les conditions idéales d’ergonomie et de performance. La variété des plateformes démontre en outre que les objectifs de portabilité sont atteints.
Il est à noter que l’étape de conformation automatisée a les caractéristiques d’un script. Afin de fournir au script les moyens de conformer les modèles 3D après conversion, il est nécessaire de donner accès aux fonctionnalités d’une Bibliothèque C++ depuis le langage de script sélectionné, en l'occurrence le langage bien connu Lua.
Le procédé consistant à interfacer un langage de programmation avec un autre est désigné sous le terme de“Binding”. Ce procédé peut être réalisé manuellement et représente un investissement de temps conséquent où chaque fonctionnalité du langage source doit être manuellement interfacée avec le langage cible. Compte tenu de l’importance de la tâche et de la complexité de la bibliothèque C++, l’étape de création du“Binding” a été automatisée. Le Générateur de binding est capable de lier automatiquement l’intégralité de la Bibliothèque vers les langages de script Lua et Python.
On dispose d’un langage de script à part entière pour l’écriture des scripts expert de conformation afin de concevoir des règles suffisamment souples pour supporter d’importants changements de topologie ou de nomenclature sur le modèle CAD source. De plus, avoir accès à la totalité des fonctionnalités de la Bibliothèque pour intervenir sur le modèle après conversion offre une liberté totale quant aux modifications apportées. Des modifications en masse sont ainsi très simplement accomplies alors qu’elles représentaient une tâche considérable lorsqu’elles étaient effectuées manuellement.
En combinant l’expressivité d’un langage de script de haut niveau et la possibilité d’accéder à l’ensemble des fonctionnalités de bas niveau de la Bibliothèque, on supprime toute intervention manuelle des étapes de conversion d’un modèle 3D depuis un logiciel de CAD vers un format exploitable sur équipement embarqué embarqué. Le résultat de cette conversion est directement exploitable par une équipe de développement tout en respectant la vision graphique et fonctionnelle des designers dans le cadre, entre autres, d’un projet de conception d’une IHM. Dans les secteurs où les contraintes économiques constituent un enjeu stratégique (comme dans l’industrie du jeu vidéo), on constate pourtant, à ce jour, que la question de la conformation automatique des modèles 3D n’est ni adressée, ni résolue. Paradoxalement, cette automatisation est au mieux contournée, le plus souvent remplacée par une intervention manuelle in fine coûteuse et présentant des risques d’erreurs de manipulation générateurs de nuisances sur les standards qualité.
Des bibliothèques de règles spécifiques aux différents types de matériels embarqués supportés ont ainsi pu être établies, accélérant encore davantage le processus de conversion/conformation de modèles 3D vers la Bibliothèque.
Avec le procédé de conversion selon l’invention, il est désormais possible de séparer la conversion de modèles 3D issus d’outils CAD de leur conformation en vue de les rendre embarquables dans des conditions réalistes de capacité de traitement et de temps réel. En opérant l’étape de conformation de manière automatisée à l’aide d’un script expert, il est maintenant possible de répéter l’étape de conversion sans requérir d’intervention humaine dont il est avéré qu’elle constitue un obstacle aux objectifs de maîtrise des coûts de développement d’un projet industriel et génératrice d’un risque d’erreur.
Bibliothèque logicielle
Le module Générateur de binding/Finaliseur est intégré dans une Bibliothèque logicielle - dénommée ici la Bibliothèque -, conçue et développée en C++, qui offre un ensemble de fonctionnalités pour l’affichage de données 3D de tout type, jusqu’à pouvoir être intégrée dans des équipements embarqués.
Cette Bibliothèque se compose d’un ensemble de sous-systèmes qui adressent les besoins spécifiques à la réalisation d’interface humain-machine sur écran, dont l’affichage de modèles 3D, la gestion du rendu réaliste, de la lumière, des interactions physiques...
La Bibliothèque permet de réécrire un code 3D depuis un script expert. Cette jonction est rendue possible par le“binding” (en français, liaison ) de la libraire BIBLIOTHEQUE avec le langage du script expert.
Bien sûr, l’invention n’est pas limitée aux exemples qui viennent d’être décrits et de nombreux aménagements peuvent être apportés à ces exemples sans sortir du cadre de l’invention. Bien entendu, les différentes caractéristiques, formes, variantes et modes de réalisation de l’invention peuvent être associées les unes avec les autres selon diverses combinaisons dans la mesure où elles ne sont pas incompatibles ou exclusives les unes des autres. En particulier toutes les variantes et modes de réalisation décrits précédemment sont combinables entre eux.
Références bibliographiques Kochhar, K., Hall, J. (1996) A Unified, Object-Oriented Graphics System and Software Architecture for Visualising CAD/C AM Présentations. Computer Graphics Forum, 15, pp.229- 248.
Li, Y., Hedlind, M., T Kjellberg, T. and Sivard, G. (2014). System intégration for kinematic data exchange. International Journal of Computer Integrated Manufacturing , 28( 1 ), pp.87-97.
Arnaud, R. and Mammou, K. (2009). Real Time Collaborative Three Dimensional Asset Management System. U. S Patent 20110047217A1.
- WEB3D CONSORTIUM (2008) . X3D spécification http://www.web3d.ors/standards/current
Barnes, M. and Levy Finch, E. (2008). COLLADA - Digital Asset Schéma Release 1.5.0.
Figure imgf000015_0001
Smigel, B., and Meiding, D. (2002) Best Practices in CAD Conversion. Solid Solution.
Bouville Berthelot, R., Royan, J., Duval, T. and Amaldi, B. (2012) 3DFC: a new container for 3D file formats compositing. Web3D’12 Proceedings ofthe 17th International Conférence on 3D Web technology, pp.27-36.
- Bouville Berthelot, R., Royan, J., Duval, T. and Amaldi, B. (2011) Scene Graph Adapter: An efficient Architecture to Improve Interoperability between 3D Formats and 3D Applications Engines. Web3D'll Proceedings of the 16th International Conférence on 3D Web Technology, pp.21-29.
Dobos, J. and Steed, A. ( 2012 ) 3D Dijf: an interactive approach to mesh dijferencing and conflict resolution. SIGGRAPH Asia 2012 Technical Briefs, p.20.
Remi S. Arnaud, Khaled Mammou (2009 Real Time Collaborative Three Dimensional Asset Management System) US20110047217A1
The Standford 3D Scanning Repository, htlp://graphics.stanfbrd.edü/data/3Dscanrep/
Peter Seebach, IBM (2006) The Interchange File Format(IFF) - Simple, portable, and extensible data storage.

Claims

RRVRNDTC.ATTONS
1. Procédé pour transformer un modèle tridimensionnel (3D) issu d’un outil de conception assisté par ordinateur (CAD) en un modèle 3D embarquable dans une interface humain-machine d’un équipement embarqué, comprenant :
- une étape pour recevoir un modèle 3D réalisé à partir dudit outil CAD, comprenant un décodage du contenu numérique dudit modèle 3D
- une étape pour convertir le modèle 3D reçu et en extraire des caractéristiques,
dans lequel les caractéristiques extraites sont analysées par un interpréteur appliquant sur ledit modèle 3D des règles de traduction et des règles d’encodage, de façon à générer un modèle 3D prêt à être embarqué dans l’équipement embarqué.
2. Procédé de transformation selon la revendication 1 , caractérisé en ce que l’étape de conversion comprend:
- une traduction du modèle 3D,
- un appel d’un jeu de fonctions correspondant à des transformations à apporter sur des modèles 3D envoyés par l’équipement embarqué.
3. Procédé selon la revendication 2, caractérisé en ce qu’il comprend en outre une modification de la topologie et/ou de la densité et/ou de l’orientation d’un modèle 3D en transformation.
4. Procédé selon l’une des revendications 2 ou 3, caractérisé en ce qu’il comprend en outre une intervention sur des matériaux de façon à les redéfinir et/ou de leur assigner des algorithmes de traitement de la lumière et des matières.
5. Procédé selon l’une quelconque des revendications précédentes, caractérisé en ce qu’il comprend en outre une étape de stockage du modèle 3D prêt à être embarqué dans un équipement embarqué, dans un format le plus adapté audit équipement embarqué.
6. Procédé selon l’une quelconque des revendications précédentes, caractérisé en ce que l’étape de conversion comprendre les étapes de :
- décoder ledit modèle 3D reçu et en extraire des caractéristiques dudit modèle 3D,
- traduire ledit modèle ainsi décodé, en appliquant des règles de traduction,
- encoder le modèle 3D ainsi traduit, en appliquant des règles d’encodage, de façon à générer un modèle 3D prêt à être embarqué dans un équipement embarqué.
7. Procédé de transformation selon la revendication 6, caractérisé en ce que les règles de traduction et les règles d’encodage ont été préalablement conçues dans un mode orienté-projet à partir d’informations spécifiques sur l’équipement embarqué destiné à recevoir le modèle 3D.
8. Procédé de transformation selon l’une quelconque des revendications 6 ou 7, caractérisé en ce que l’interpréteur fonctionne sensiblement en parallèle des étapes de décodage, de traduction et d’encodage.
9. Procédé de transformation selon l’une quelconque des revendications précédentes, caractérisé en ce qu’il est en outre adapté pour transformer un modèle numérique d’un matériau initialement mis en œuvre dans un outil CAD en un modèle numérique dudit matériau qui adapté pour être mis en œuvre dans une interface humain-machine d’un équipement embarqué.
10. Procédé de transformation selon la revendication 9, caractérisé en ce que la transformation du modèle numérique du matériau comprend une étape d’assignation audit modèle numérique d’un ou plusieurs algorithmes de traitement de la lumière et/ou de matières.
11. Procédé de transformation selon l’une des revendications 9 ou 10, caractérisé en ce que la transformation du modèle numérique du matériau comprend une étape de conversion de flux d’images de façon à rendre lesdites images compatibles et optimisées pour l’équipement embarqué.
12. Module informatique implémentant le procédé de transformation selon l’une quelconque des revendications précédentes, comprenant :
- un module pour décoder un modèle tridimensionnel (3D) initialement réalisé à partir d’un outil de conception assistées par ordinateur (CAD) et extraire des caractéristiques inhérentes audit modèle 3D,
- un module pour traduire ledit modèle 3D ainsi décodé en appliquant des règles de traduction,
- un module pour encoder le modèle 3D ainsi traduit, en appliquant des règles d’encodage, de façon à générer un modèle 3D prêt à être embarqué dans un équipement embarqué,
- un module interpréteur prévu pour analyser les caractéristiques extraites par ledit module décodeur, et pour appliquer sur ledit modèle 3D respectivement lesdites règles de traduction et lesdites règles d’encodage lors de ladite étape d’encodage.
13. Module informatique selon la revendication 12, caractérisé en ce qu’il est en outre configuré pour transformer un modèle numérique d’un matériau initialement mis en œuvre dans un outil CAD en un modèle numérique dudit matériau qui adapté pour être mis en œuvre dans une interface humain- machine d’un équipement embarqué.
14. Application du procédé de transformation selon l’une quelconque des revendications 1 à 11 à la réalisation d’interfaces humain-machine pour des équipements de mobilité, notamment des véhicules terrestres, aériens ou maritimes.
PCT/FR2019/052363 2018-10-04 2019-10-04 Procédé pour transformer un modèle tridimensionnel (3d) en un modèle 3d embarquable dans une interface humain-machine d'un équipement embarque Ceased WO2020070459A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1859225 2018-10-04
FR1859225A FR3087025A1 (fr) 2018-10-04 2018-10-04 Procede pour transformer un modele tridimensionnel (3d) en un modele 3d embarquable dans une interface humain-machine d’un equipement mobile

Publications (2)

Publication Number Publication Date
WO2020070459A1 true WO2020070459A1 (fr) 2020-04-09
WO2020070459A9 WO2020070459A9 (fr) 2020-06-18

Family

ID=65951636

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/FR2019/052363 Ceased WO2020070459A1 (fr) 2018-10-04 2019-10-04 Procédé pour transformer un modèle tridimensionnel (3d) en un modèle 3d embarquable dans une interface humain-machine d'un équipement embarque

Country Status (2)

Country Link
FR (1) FR3087025A1 (fr)
WO (1) WO2020070459A1 (fr)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5083262A (en) 1986-04-28 1992-01-21 International Business Machines Corporation Language bindings for graphics functions to enable one application program to be used in different processing environments
WO2002037406A1 (fr) 2000-10-30 2002-05-10 Translation Technologies, Inc. Systeme de geometrie computationnel, interface d'interruption, comparateur de modele geometrique et procede correspondant
US6614430B1 (en) 1998-09-08 2003-09-02 Proficiency Ltd. System and method for the exchange of CAD data
CN101814024A (zh) 2009-10-23 2010-08-25 深圳创维-Rgb电子有限公司 一种跨平台3d界面设计架构和工具
US20110047217A1 (en) 2009-08-18 2011-02-24 Arnaud Remi S Real Time Collaborative Three Dimensional Asset Management System

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5083262A (en) 1986-04-28 1992-01-21 International Business Machines Corporation Language bindings for graphics functions to enable one application program to be used in different processing environments
US6614430B1 (en) 1998-09-08 2003-09-02 Proficiency Ltd. System and method for the exchange of CAD data
WO2002037406A1 (fr) 2000-10-30 2002-05-10 Translation Technologies, Inc. Systeme de geometrie computationnel, interface d'interruption, comparateur de modele geometrique et procede correspondant
US20110047217A1 (en) 2009-08-18 2011-02-24 Arnaud Remi S Real Time Collaborative Three Dimensional Asset Management System
CN101814024A (zh) 2009-10-23 2010-08-25 深圳创维-Rgb电子有限公司 一种跨平台3d界面设计架构和工具

Non-Patent Citations (10)

* Cited by examiner, † Cited by third party
Title
BARNES, M.LEVY FINCH, E., COLLADA - DIGITAL ASSET SCHÉMA RELEASE 1.5.0., 2008, Retrieved from the Internet <URL:https://www.khronos.org/files/colladaspec1.5.pdf>
BOUVILLE BERTHELOT, R.ROYAN, J.DUVAL, T.ARNALDI, B.: "3DFC: a new container for 3D file formats compositing", WEB3D'12 PROCEEDINGS OF THE ]7TH INTERNATIONAL CONFÉRENCE ON 3D WEB TECHNOLOGY, 2012, pages 27 - 36
BOUVILLE BERTHELOT, R.ROYAN, J.DUVAL, T.ARNALDI, B.: "Scene Graph Adapter: An efficient Architecture to Improve Interoperability between 3D Formats and 3D Applications Engines", WEB3D'11 PROCEEDINGS OF THE ]6TH INTERNATIONAL CONFÉRENCE ON 3D WEB TECHNOLOGY, 2011, pages 21 - 29
DOBOS, J.STEED, A.: "3D Diff: an interactive approach to mesh differencing and conflict resolution", SIGGRAPH ASIA 2012 TECHNICAL BRIEFS, 2012, pages 20
KOCHHAR, K.HALL, J.: "A Unified, Object-Oriented Graphics System and Software Architecture for Visualising CAD/CAM Presentations", COMPUTER GRAPHICS FORUM, vol. 15, 1996, pages 229 - 248, XP001057314, DOI: 10.1111/1467-8659.1540229
LI, Y.HEDLIND, M.T KJELLBERGSIVARD, G.: "System intégration for kinematic data exchange", INTERNATIONAL JOURNAL OF COMPUTER INTEGRATED MANUFACTURING, vol. 28, no. 1, 2014, pages 87 - 97
PETER SEEBACH: "The Interchange File Format(IFF) - Simple, portable, and extensible data storage", IBM, 2006
SMIGEL, B.MEIDING, D., BEST PRACTICES IN CAD CONVERSION. SOLID SOLUTION, 2002
THE STANDFORD 3D SCANNING REPOSITORY, Retrieved from the Internet <URL:http://graphics.stanford.edu/data/3Dscanrep/>
WEB3D CONSORTIUM, 2008, Retrieved from the Internet <URL:htttp:www.web3d.org/standards/current>

Also Published As

Publication number Publication date
FR3087025A1 (fr) 2020-04-10
WO2020070459A9 (fr) 2020-06-18

Similar Documents

Publication Publication Date Title
US12118669B2 (en) Subdividing a three-dimensional mesh utilizing a neural network
Evans et al. 3D graphics on the web: A survey
US7836086B2 (en) Layering and referencing of scene description
CA2795739C (fr) Format de fichier pour representer une scene
CN109887069B (zh) 在屏幕上显示3d场景图的方法
Sýkora et al. Adding depth to cartoons using sparse depth (in) equalities
EP3861432B1 (fr) Procédé pour générer une liaison entre une bibliothèque c/c++ et un langage interprété, et mise en oeuvre de ce procédé pour la transformation d&#39;un modèle tridimensionnel (3d)
US20180225408A1 (en) System and method for interactive modeling and analysis of 3-d digital assemblies
US12086965B2 (en) Image reprojection and multi-image inpainting based on geometric depth parameters
US8902234B1 (en) Simulation primitives
US20230092068A1 (en) Computing Platform for Facilitating Augmented Reality Experiences with Third Party Assets
US20230038240A1 (en) Three-dimensional (3d) image modeling systems and methods for automatically generating photorealistic, virtual 3d packaging and product models from 2d imaging assets and dimensional data
WO2010029268A1 (fr) Procede et dispositif de realisation d&#39;un modele par elements finis
CN113223102B (zh) 一种图像获得方法及装置
WO2020070459A1 (fr) Procédé pour transformer un modèle tridimensionnel (3d) en un modèle 3d embarquable dans une interface humain-machine d&#39;un équipement embarque
US20180181109A1 (en) Highly Automated Application Of Digital Finish Material To 3D Data
CA3160129A1 (fr) Procede et systeme de generation de modeles numeriques 3d
Lo et al. OpenGL data visualization Cookbook
Hempe Bridging the gap between rendering and simulation frameworks: concepts, approaches and applications for modern multi-domain VR simulation systems
US20230141395A1 (en) Modifying materials of three-dimensional digital scenes utilizing a visual neural network
Ardolino et al. Geometry and models: 3D format conversion (FBX, COLLADA)
Amini et al. SENSO3D: Structured Pipelines for AI-Based 3D Object Detection, Classification, and Texture Generation
Berinstein et al. Game development tool essentials
Jeon et al. A Framework for Automatic Generation of Augmented Reality Objects
US20250363689A1 (en) Generative inpainting utilizing source inputs with intelligent bounds

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19801962

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19801962

Country of ref document: EP

Kind code of ref document: A1