FR3136297A1 - Method and device for calculating a three-dimensional model of a vehicle silhouette. - Google Patents
Method and device for calculating a three-dimensional model of a vehicle silhouette. Download PDFInfo
- Publication number
- FR3136297A1 FR3136297A1 FR2205359A FR2205359A FR3136297A1 FR 3136297 A1 FR3136297 A1 FR 3136297A1 FR 2205359 A FR2205359 A FR 2205359A FR 2205359 A FR2205359 A FR 2205359A FR 3136297 A1 FR3136297 A1 FR 3136297A1
- Authority
- FR
- France
- Prior art keywords
- code
- vehicle
- silhouette
- dimensional
- codes
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 47
- 239000010410 layer Substances 0.000 claims description 17
- 230000035772 mutation Effects 0.000 claims description 15
- 238000003860 storage Methods 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 9
- 238000012360 testing method Methods 0.000 claims description 6
- 238000004519 manufacturing process Methods 0.000 claims description 5
- 210000002569 neuron Anatomy 0.000 claims description 4
- 230000008859 change Effects 0.000 claims description 3
- 238000004364 calculation method Methods 0.000 claims description 2
- 239000002356 single layer Substances 0.000 claims description 2
- 238000004422 calculation algorithm Methods 0.000 abstract description 14
- 230000002068 genetic effect Effects 0.000 abstract description 13
- 230000006870 function Effects 0.000 description 9
- 238000004891 communication Methods 0.000 description 8
- 238000013461 design Methods 0.000 description 6
- 238000013528 artificial neural network Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 230000006835 compression Effects 0.000 description 4
- 238000007906 compression Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000011960 computer-aided design Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 108090000623 proteins and genes Proteins 0.000 description 3
- 241000894007 species Species 0.000 description 3
- 238000012549 training Methods 0.000 description 3
- 210000000349 chromosome Anatomy 0.000 description 2
- 230000002860 competitive effect Effects 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 238000007620 mathematical function Methods 0.000 description 2
- 108700028369 Alleles Proteins 0.000 description 1
- 241000894006 Bacteria Species 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000002939 conjugate gradient method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000004377 microelectronic Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000002028 premature Effects 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 230000001850 reproductive effect Effects 0.000 description 1
- 238000009394 selective breeding Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
- G06F30/27—Design optimisation, verification or simulation using machine learning, e.g. artificial intelligence, neural networks, support vector machines [SVM] or training a model
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/10—Geometric CAD
- G06F30/15—Vehicle, aircraft or watercraft design
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
- G06N3/0455—Auto-encoder networks; Encoder-decoder networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/088—Non-supervised learning, e.g. competitive learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/12—Computing arrangements based on biological models using genetic models
- G06N3/126—Evolutionary algorithms, e.g. genetic algorithms or genetic programming
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/048—Activation functions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biophysics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Geometry (AREA)
- General Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Computer Hardware Design (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Physiology (AREA)
- Aviation & Aerospace Engineering (AREA)
- Automation & Control Theory (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Genetics & Genomics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Length Measuring Devices By Optical Means (AREA)
Abstract
La présente invention concerne un procédé de codage/décodage d’un modèle tridimensionnel de silhouette de véhicule. La présente invention utilise un auto-encodeur (100) pour mettre en œuvre ce procédé de codage/décodage qui permet d’obtenir une représentation compacte et fidèle d’un modèle tridimensionnel d’un véhicule et un algorithme génétique pour obtenir des variations d’un modèle tridimensionnel d’une silhouette initiale de véhicule. Figure pour l’abrégé : Figure 1The present invention relates to a method for encoding/decoding a three-dimensional vehicle silhouette model. The present invention uses an autoencoder (100) to implement this coding/decoding method which makes it possible to obtain a compact and faithful representation of a three-dimensional model of a vehicle and a genetic algorithm to obtain variations of a three-dimensional model of an initial vehicle silhouette. Figure for abstract: Figure 1
Description
La présente invention concerne un procédé et dispositif de calcul d’un modèle tridimensionnel d’une silhouette d’un véhicule à partir d’un algorithme génétique.The present invention relates to a method and device for calculating a three-dimensional model of a silhouette of a vehicle using a genetic algorithm.
Dans le domaine automobile, la conception assistée par ordinateur est largement utilisée pour concevoir de nouveaux modèles tridimensionnels de silhouette de véhicule. La silhouette d’un véhicule représente l’aspect esthétique extérieur général du véhicule mais aussi les aspects esthétiques de ses éléments visibles de l’extérieur (par exemple forme des phares, forme du bas de caisse, etc.).In the automotive field, computer-aided design is widely used to design new three-dimensional vehicle silhouette models. The silhouette of a vehicle represents the general exterior aesthetic appearance of the vehicle but also the aesthetic aspects of its elements visible from the outside (for example shape of the headlights, shape of the rocker panel, etc.).
La conception assistée par ordinateur ou CAO (en anglais, Computer Aided Design ou CAD) comprend l'ensemble des logiciels et des techniques de modélisation géométrique, par exemple de véhicule, permettant de concevoir un modèle, par exemple de véhicule, de le visualiser à l'aide d'un ordinateur, de simuler son fonctionnement et de réaliser des produits manufacturés sur la base de ce modèle.Computer aided design or CAD (in English, Computer Aided Design or CAD) includes all the software and geometric modeling techniques, for example of a vehicle, making it possible to design a model, for example of a vehicle, to visualize it using a computer, to simulate its operation and to produce manufactured products based on this model.
On peut citer, par exemple, le logiciel CATIA® (Conception Assistée Tridimensionnelle Interactive Appliquée, en anglais Computer-Aided Three dimensional Interactive Application). CATIA® comprend différents ateliers (logiciels) qui couvrent un très grand nombre de domaines, allant de la conception mécanique, à la conception de systèmes électriques, à la création de modèle esthétique (en anglais design) ou à la FAO (Fabrication Assistée par Ordinateur).We can cite, for example, the CATIA® software (Computer-Aided Three-dimensional Interactive Application). CATIA® includes different workshops (software) which cover a very large number of areas, ranging from mechanical design, to the design of electrical systems, to the creation of aesthetic models (in English design) or to CAM (Computer Aided Manufacturing). ).
CATIA® permet d’obtenir un modèle tridimensionnel de silhouette de véhicule.CATIA® allows you to obtain a three-dimensional vehicle silhouette model.
Lorsqu’un nouveau modèle tridimensionnel de silhouette d’un véhicule est créé, il existe très peu d’indicateur fiable pour assurer que cette silhouette puisse être appréciée majoritairement par les consommateurs.When a new three-dimensional silhouette model of a vehicle is created, there is very little reliable indicator to ensure that this silhouette can be appreciated by the majority of consumers.
L’un des problèmes résolus par la présente invention est de calculer un modèle tridimensionnel d’une silhouette d’un véhicule qui ait un maximum de chance d’être plébiscité par les consommateurs.One of the problems solved by the present invention is to calculate a three-dimensional model of a silhouette of a vehicle which has a maximum chance of being popular with consumers.
Un objet de la présente invention est de fournir d’un modèle tridimensionnel d’une silhouette de véhicule.An object of the present invention is to provide a three-dimensional model of a vehicle silhouette.
Selon un premier aspect, la présente invention concerne un procédé de calcul d’un modèle tridimensionnel d’une silhouette d’un véhicule. Des modèles tridimensionnels de silhouette de véhicule sont obtenus à partir d’un premier moyen de stockage. Un code est produit pour chaque modèle tridimensionnel obtenu à partir d’un encodeur d’un auto-encodeur, chaque code étant ajouté à un ensemble de codes. Des critères de succès de silhouette de véhicule ayant des indices de succès supérieur à un premier seuil pour un intervalle de prix donné, sont obtenus à partir d’un deuxième moyen de stockage. Un premier code est sélectionné parmi l’ensemble de codes en fonction des critères de succès obtenus. Au moins un deuxième code est produit à partir du premier code sélectionné, chaque deuxième code produit correspondant à une mutation aléatoire du premier code sélectionné. Chaque deuxième code produit est ajouté à l’ensemble de codes. Un score est associé à chaque code de l’ensemble de codes et chaque score est comparé avec un deuxième seuil. Les étapes de sélection, production, ajout et association sont itérées tant qu’un score associé à un code de l’ensemble de codes n’est pas supérieur au deuxième seuil.According to a first aspect, the present invention relates to a method for calculating a three-dimensional model of a silhouette of a vehicle. Three-dimensional vehicle silhouette models are obtained from a first storage means. A code is produced for each three-dimensional model obtained from an encoder of an autoencoder, each code being added to a set of codes. Vehicle silhouette success criteria having success indices greater than a first threshold for a given price interval are obtained from a second storage means. A first code is selected from the set of codes according to the success criteria obtained. At least one second code is produced from the first selected code, each second code produced corresponding to a random mutation of the first selected code. Every second product code is added to the code set. A score is associated with each code in the set of codes and each score is compared with a second threshold. The selection, production, addition and association steps are iterated as long as a score associated with a code from the set of codes is not greater than the second threshold.
Un modèle tridimensionnel de silhouette du véhicule est alors calculé par décodage, par un décodeur de l’auto-encodeur, à partir du code dont le score associé est supérieur au deuxième seuil.A three-dimensional silhouette model of the vehicle is then calculated by decoding, by a decoder of the autoencoder, from the code whose associated score is greater than the second threshold.
Le procédé permet d’obtenir de nouveaux modèles tridimensionnels de silhouette de véhicule en maximisant la réussite de ces dernières auprès des consommateurs grâce à des mutations appliquées à un code représentant un modèle tridimensionnel d’une silhouette initiale d’un véhicule, mutations qui sont fonction de critères de succès d’autres silhouettes de véhicule. L’utilisation de mutations de code permet d’obtenir de nombreuses variations d’un modèle tridimensionnel de silhouette initiale et permet ainsi la génération de nombreuses variations de silhouettes plus complexes et précises que celles créées par un être humain.The method makes it possible to obtain new three-dimensional models of vehicle silhouette by maximizing the success of the latter with consumers thanks to mutations applied to a code representing a three-dimensional model of an initial silhouette of a vehicle, mutations which are function criteria for success of other vehicle silhouettes. The use of code mutations makes it possible to obtain many variations of an initial three-dimensional silhouette model and thus allows the generation of many variations of silhouettes more complex and precise than those created by a human being.
Selon un exemple particulier et non limitatif de réalisation, l’encodeur et le décodeur comportent chacun une couche d’un même nombre de neurones.According to a particular and non-limiting example of embodiment, the encoder and the decoder each comprise a layer of the same number of neurons.
Selon un exemple particulier et non limitatif de réalisation, l’encodeur et le décodeur sont reliés par une seule couche.According to a particular and non-limiting example of embodiment, the encoder and the decoder are connected by a single layer.
Selon un exemple particulier et non limitatif de réalisation, l’auto-encodeur est entraîné, lors d’une phase d’apprentissage, à partir d’un premier ensemble de modèles tridimensionnels de silhouette de véhicule, et, une fois entraîné, l’auto-encodeur est testé lors d’une étape de test à partir d’un deuxième ensemble de modèles tridimensionnels de silhouette de véhicule.According to a particular and non-limiting example of embodiment, the auto-encoder is trained, during a learning phase, from a first set of three-dimensional vehicle silhouette models, and, once trained, the autoencoder is tested in a test step from a second set of three-dimensional vehicle silhouette models.
Selon un exemple particulier et non limitatif de réalisation, un indice de succès est un rapport du nombre de vente d’un véhicule répondant à une silhouette particulière de véhicule par rapport à un nombre de véhicules fabriqués.According to a particular and non-limiting example of embodiment, a success index is a ratio of the number of sales of a vehicle meeting a particular vehicle silhouette compared to a number of vehicles manufactured.
Selon un exemple particulier et non limitatif de réalisation, les codes de l’ensemble de codes sont ordonnés selon des indices de succès associés à des silhouettes de véhicule dont des critères de succès ont été obtenus, et le code sélectionné parmi l’ensemble de codes est le code correspondant à l’indice de succès le plus élevé.According to a particular and non-limiting example of embodiment, the codes of the set of codes are ordered according to success indices associated with vehicle silhouettes for which success criteria have been obtained, and the code selected from the set of codes is the code corresponding to the highest success index.
Selon un exemple particulier et non limitatif de réalisation, lorsqu’un code se présente sous la forme d’un ensemble de valeurs binaires, une mutation aléatoire est un changement aléatoire d’au moins une desdites valeurs binaires.According to a particular and non-limiting example of implementation, when a code is in the form of a set of binary values, a random mutation is a random change of at least one of said binary values.
Selon un deuxième aspect, la présente invention concerne un dispositif de codage ou décodage d’un modèle tridimensionnel de silhouette de véhicule comprenant des moyens pour mettre en œuvre des étapes du procédé selon le premier aspect de la présente invention.According to a second aspect, the present invention relates to a device for coding or decoding a three-dimensional vehicle silhouette model comprising means for implementing steps of the method according to the first aspect of the present invention.
Selon un troisième aspect, la présente invention concerne un produit programme d’ordinateur comportant des instructions adaptées pour l’exécution des étapes des procédés selon le premier aspect lorsque le programme d’ordinateur est exécuté par au moins un processeur.According to a third aspect, the present invention relates to a computer program product comprising instructions adapted for the execution of the steps of the methods according to the first aspect when the computer program is executed by at least one processor.
Un tel programme d’ordinateur peut utiliser n’importe quel langage de programmation, et être sous la forme d’un code source, d’un code objet, ou d’un code intermédiaire entre un code source et un code objet, tel que dans une forme partiellement compilée, ou dans n’importe quelle autre forme souhaitable.Such a computer program can use any programming language, and be in the form of a source code, an object code, or an intermediate code between a source code and an object code, such as in partially compiled form, or in any other desirable form.
Selon un quatrième aspect, la présente invention concerne un support d’enregistrement lisible par un ordinateur sur lequel est enregistré un programme d’ordinateur comprenant des instructions pour l’exécution des étapes du procédé selon le premier aspect de la présente invention.According to a fourth aspect, the present invention relates to a computer-readable recording medium on which is recorded a computer program comprising instructions for executing the steps of the method according to the first aspect of the present invention.
D’une part, le support d’enregistrement peut être n'importe quel entité ou dispositif capable de stocker le programme. Par exemple, le support peut comporter un moyen de stockage, tel qu'une mémoire ROM, un CD-ROM ou une mémoire ROM de type circuit microélectronique, ou encore un moyen d'enregistrement magnétique ou un disque dur.On the one hand, the recording medium can be any entity or device capable of storing the program. For example, the medium may comprise a storage means, such as a ROM memory, a CD-ROM or a ROM memory of the microelectronic circuit type, or even a magnetic recording means or a hard disk.
D'autre part, ce support d’enregistrement peut également être un support transmissible tel qu'un signal électrique ou optique, un tel signal pouvant être acheminé via un câble électrique ou optique, par radio classique ou hertzienne ou par faisceau laser autodirigé ou par d'autres moyens. Le programme d’ordinateur selon l'invention peut être en particulier téléchargé sur un réseau de type Internet.On the other hand, this recording medium can also be a transmissible medium such as an electrical or optical signal, such a signal being able to be conveyed via an electrical or optical cable, by conventional or terrestrial radio or by self-directed laser beam or by other ways. The computer program according to the invention can in particular be downloaded onto an Internet-type network.
Alternativement, le support d'enregistrement peut être un circuit intégré dans lequel le programme d’ordinateur est incorporé, le circuit intégré étant adapté pour exécuter ou pour être utilisé dans l'exécution du procédé en question.Alternatively, the recording medium may be an integrated circuit in which the computer program is incorporated, the integrated circuit being adapted to execute or to be used in executing the method in question.
D’autres caractéristiques et avantages de la présente invention ressortiront de la description des modes de réalisation non limitatifs de la présent invention ci-après, en référence aux figures 1 à 7 annexées, sur lesquelles :Other characteristics and advantages of the present invention will emerge from the description of the non-limiting embodiments of the present invention below, with reference to the attached Figures 1 to 7, in which:
Des procédés et dispositifs de calcul d’un modèle tridimensionnel d’une silhouette d’un véhicule vont maintenant être décrits dans ce qui va suivre en référence conjointement aux figures 1 à 7.Methods and devices for calculating a three-dimensional model of a silhouette of a vehicle will now be described in what follows with reference jointly to Figures 1 to 7.
La présente invention porte sur le calcul d’une modélisation tridimensionnelle d’une silhouette d’un véhicule en fonction de critère de succès de silhouettes de véhicule auprès de consommateurs à l’aide d’un algorithme génétique.The present invention relates to the calculation of a three-dimensional modeling of a silhouette of a vehicle based on criteria for the success of vehicle silhouettes with consumers using a genetic algorithm.
Les algorithmes génétiques appartiennent à la famille des algorithmes évolutionnistes. Leur but est d'obtenir une solution approchée à un problème d'optimisation, lorsqu'il n'existe pas de méthode exacte (ou que la solution est inconnue) pour le résoudre en un temps raisonnable. Les algorithmes génétiques utilisent la notion de sélection naturelle et l'appliquent à une population de solutions potentielles au problème donné.Genetic algorithms belong to the family of evolutionary algorithms. Their goal is to obtain an approximate solution to an optimization problem, when there is no exact method (or the solution is unknown) to solve it in a reasonable time. Genetic algorithms take the notion of natural selection and apply it to a population of potential solutions to the given problem.
Les algorithmes génétiques étant basés sur des phénomènes biologiques, les termes utilisés sont ceux couramment utilisés en génétique. On utilise aussi, dans les algorithmes génétiques, une analogie avec la théorie de l'évolution qui propose qu'au fil du temps, les gènes conservés au sein d'une population donnée sont ceux qui sont les plus adaptés aux besoins de l'espèce vis-à-vis de son environnement. En effet, certaines variations de gènes confèrent aux individus les possédant un avantage compétitif par rapport au reste de la population. Cet avantage compétitif se traduit alors par une meilleure reproduction de ces individus qui permet de transmettre les allèles à l'ensemble de la population après de nombreuses générations.Since genetic algorithms are based on biological phenomena, the terms used are those commonly used in genetics. We also use, in genetic algorithms, an analogy with the theory of evolution which proposes that over time, the genes conserved within a given population are those which are most adapted to the needs of the species. towards its environment. Indeed, certain gene variations give individuals possessing them a competitive advantage over the rest of the population. This competitive advantage then results in better reproduction of these individuals which makes it possible to transmit the alleles to the entire population after many generations.
La génétique a mis en évidence l'existence de processus importants au sein d'un groupe d'organismes d'une même espèce (ou d'espèces proches chez les bactéries) donnant lieu au brassage génétique. Ces processus interviennent lors de la phase de reproduction lorsque les chromosomes de deux organismes fusionnent en créant un nouvel organisme.Genetics has highlighted the existence of important processes within a group of organisms of the same species (or close species in bacteria) giving rise to genetic mixing. These processes occur during the reproduction phase when the chromosomes of two organisms fuse to create a new organism.
Ces opérations sont «imitées» par les algorithmes génétiques afin de faire évoluer une population de solutions de manière progressive.These operations are “ imitated ” by genetic algorithms in order to progressively evolve a population of solutions.
L’une de ces opérations est la sélection qui permet de déterminer quels individus d’une population sont plus enclins à obtenir les meilleurs résultats. Ce processus est analogue à un processus de sélection naturelle, les individus les plus adaptés gagnent la compétition de la reproduction tandis que les moins adaptés meurent avant la reproduction, ce qui améliore globalement l'adaptation. Étant donné que la sélection est le résultat d'une intervention humaine ou, du moins, l'application d'un critère défini par l'homme, les algorithmes génétiques devraient donc plutôt être rapprochés de la sélection artificielle telle que la pratiquent les agriculteurs que de la sélection naturelle, qui œuvre « en aveugle ».One of these operations is selection, which determines which individuals in a population are more likely to obtain the best results. This process is analogous to a process of natural selection, the most adapted individuals win the reproductive competition while the least adapted die before reproduction, which improves adaptation overall. Given that selection is the result of human intervention or, at least, the application of a criterion defined by man, genetic algorithms should therefore rather be compared to artificial selection as practiced by farmers. of natural selection, which works “blindly”.
Une autre de ces opérations est la mutation. De façon aléatoire, un gène peut, au sein d'un chromosome, être substitué à un autre. On définit un taux de mutation lors des changements de population qui est généralement compris entre 0,001 et 0,01. Il est nécessaire de choisir pour ce taux de mutation une valeur relativement faible, de manière à ne pas tomber dans une recherche aléatoire et à conserver le principe de sélection et d'évolution. La mutation sert à éviter une convergence prématurée de l'algorithme génétique. Par exemple, lors d'une recherche d'extremum, la mutation sert à éviter la convergence vers un extremum local.Another of these operations is mutation. Randomly, a gene can, within a chromosome, be substituted for another. We define a mutation rate during population changes which is generally between 0.001 and 0.01. It is necessary to choose a relatively low value for this mutation rate, so as not to fall into a random search and to preserve the principle of selection and evolution. The mutation serves to avoid premature convergence of the genetic algorithm. For example, when searching for an extremum, the mutation serves to avoid convergence towards a local extremum.
Les algorithmes génétiques se basent sur les différents principes décrits ci-dessus afin de permettre la résolution de problèmes.Genetic algorithms are based on the different principles described above to enable problem solving.
Le système 100 comprend un premier moyen de stockage 110 destiné à mémoriser des modèles tridimensionnels de véhicule et un deuxième moyen de stockage 160 destiné à mémoriser des critères de succès rattachés à des modèles tridimensionnels de silhouette de véhicule mémorisés par le premier moyen de stockage 110.The system 100 comprises a first storage means 110 intended to memorize three-dimensional vehicle models and a second storage means 160 intended to memorize success criteria attached to three-dimensional vehicle silhouette models memorized by the first storage means 110.
Le système 100 comprend aussi un auto-encodeur formé d’un encodeur 120 et d’un décodeur 150 décrit en relation avec les figures 2 à 5.The system 100 also includes an autoencoder formed by an encoder 120 and a decoder 150 described in relation to Figures 2 to 5.
Le système 100 comprend également un dispositif 130 adapté à mettre en œuvre les étape d’un algorithme génétique et un dispositif 140 adapté pour mettre en œuvre une étape d’évaluation d’un code z’ issu du dispositif 130.The system 100 also includes a device 130 adapted to implement the steps of a genetic algorithm and a device 140 adapted to implement a step of evaluating a code z' from the device 130.
Dans une première opération, des modèles tridimensionnels Mi de silhouette de véhicule sont obtenus à partir du moyen de stockage 110 et présentés, tour à tour, à l’entrée de l’encodeur 120.In a first operation, three-dimensional models Mi of vehicle silhouette are obtained from the storage means 110 and presented, in turn, at the input of the encoder 120.
Dans une deuxième opération, l’encodeur 120 produit un code z(i) (référencé z sur la
Par analogie à la biologie, le code est parfois appelé « ADN » du véhicule.By analogy to biology, the code is sometimes called the “DNA” of the vehicle.
Selon un exemple de réalisation particulier et non limitatif, un code z(i) peut se présenter sous la forme d’un ensemble de valeurs binaires identifiant de manière unique un modèle tridimensionnel particulier Mi de silhouette de véhicule.According to a particular and non-limiting exemplary embodiment, a code z(i) can be in the form of a set of binary values uniquely identifying a particular three-dimensional model Mi of the vehicle silhouette.
Dans une troisième opération, des critères de succès de modèles tridimensionnels de silhouette de véhicule ayant des indices de succès supérieur à un seuil S1 pour un intervalle de prix donné, sont obtenus à partir du moyen de stockage 160.In a third operation, success criteria for three-dimensional vehicle silhouette models having success indices greater than a threshold S1 for a given price interval are obtained from the storage means 160.
Des critères de succès auprès de consommateurs peuvent être divers. Ils peuvent s’exprimer sous la forme de scores (valeurs numériques sur une échelle de valeurs prédéterminées) donnés par des consommateurs lors d’enquêtes de satisfaction.Criteria for success with consumers can be diverse. They can be expressed in the form of scores (numerical values on a scale of predetermined values) given by consumers during satisfaction surveys.
Un indice de succès est un résultat d’une fonction mathématique définie à partir de succès historique de différentes silhouettes de véhicules. Grâce à des données (par exemple caractéristiques véhicules, prix, nombre de ventes, nombre de véhicule produit, etc.) relatives à ces silhouettes de véhicule et/ou à des données récoltées auprès des consommateurs relatives à leur évaluation de ces silhouettes, cette fonction mathématique donne comme résultat un indice dit de succès qui donne une indication de succès de ces silhouettes de véhicule.A success index is a result of a mathematical function defined from historical success of different vehicle silhouettes. Thanks to data (for example vehicle characteristics, prices, number of sales, number of vehicles produced, etc.) relating to these vehicle silhouettes and/or data collected from consumers relating to their evaluation of these silhouettes, this function The mathematical result is a so-called success index which gives an indication of the success of these vehicle silhouettes.
Cette fonction mathématique peut être définie de manière empirique selon un historique de données récoltées pour plusieurs silhouettes de véhicule.This mathematical function can be defined empirically according to a history of data collected for several vehicle silhouettes.
Selon un exemple de réalisation particulier et non limitatif, un indice de succès peut se présenter sous la forme d’un rapport du nombre de vente de véhicule répondant à une silhouette particulière de véhicule par rapport à un nombre de ces véhicules fabriqués. Par exemple, un véhicule répondant à une silhouette particulière et coûtant entre 10k et 20k euros est dit à succès lorsque son indice de succès dépasse 0,7 (S1).According to a particular and non-limiting example of embodiment, a success index can be in the form of a ratio of the number of vehicle sales responding to a particular vehicle silhouette compared to a number of these vehicles manufactured. For example, a vehicle with a particular silhouette and costing between 10k and 20k euros is said to be successful when its success index exceeds 0.7 (S1).
Dans une quatrième opération, le dispositif 130 sélectionne un code z(i) parmi l’ensemble de codes EC en fonction des critères de succès obtenus.In a fourth operation, the device 130 selects a code z(i) from the set of EC codes according to the success criteria obtained.
Selon une variante, les codes z(i) de l’ensemble EC de codes sont ordonnés selon les indices de succès associés aux silhouettes de véhicule dont les critères de succès ont été obtenus, et le code z(i) sélectionné est le premier code de l’ensemble EC de codes ordonnés, c’est-à-dire le code correspondant à l’indice de succès le plus élevé.According to a variant, the codes z(i) of the EC set of codes are ordered according to the success indices associated with the vehicle silhouettes whose success criteria have been obtained, and the code z(i) selected is the first code of the EC set of ordered codes, that is to say the code corresponding to the highest success index.
Dans la cinquième opération, le dispositif 130 produit au moins un code z(i,j) à partir du code z(i) sélectionné, chaque code z(i,j) correspondant à une mutation aléatoire du code z(i).In the fifth operation, the device 130 produces at least one code z(i,j) from the selected code z(i), each code z(i,j) corresponding to a random mutation of the code z(i).
Selon une variante, lorsqu’un code z(i) se présente sous la forme d’un ensemble de valeurs binaires, une mutation aléatoire peut être un changement aléatoire d’au moins une de ces valeurs binaires.According to a variant, when a code z(i) is in the form of a set of binary values, a random mutation can be a random change of at least one of these binary values.
Dans la sixième opération, le dispositif 140 ajoute les codes z(i,j) produits à l’ensemble EC de codes.In the sixth operation, the device 140 adds the codes z(i,j) produced to the set EC of codes.
Dans la septième opération, le dispositif 140 associe un score sc(i,j) à chaque code z(i,j) et compare ce score sc(i,j) avec un seuil S2.In the seventh operation, the device 140 associates a score sc(i,j) with each code z(i,j) and compares this score sc(i,j) with a threshold S2.
Le seuil est choisi de manière à ce que si un score dépasse le seuil S2 alors le code z(i,j) est considéré comme ayant atteint un optimum de succès.The threshold is chosen so that if a score exceeds the threshold S2 then the code z(i,j) is considered to have reached an optimum of success.
Les quatrième, cinquième, sixième et septième opération sont itérées tant qu’un score associé à un code de l’ensemble EC de codes n’est pas supérieur au seuil S2.The fourth, fifth, sixth and seventh operations are iterated as long as a score associated with a code from the EC set of codes is not greater than the threshold S2.
Dans une huitième opération, le code sélectionné dont le score est supérieur au seuil S2, qui est référencé z’ sur la
De manière générale, un auto-encodeur, ou auto-associateur est un réseau de neurones artificiels utilisé pour l'apprentissage non supervisé de caractéristiques discriminantes. L'objectif d'un auto-encodeur est d'apprendre une représentation (encodage) d'un ensemble de données, généralement dans le but de réduire la dimension de cet ensemble. La forme la plus simple d'un auto-encodeur est un réseau de neurones non récurrents qui se propage vers l'avant, très semblable au perceptron multicouches.Generally speaking, an autoencoder, or autoassociator, is an artificial neural network used for unsupervised learning of discriminative features. The objective of an autoencoder is to learn a representation (encoding) of a set of data, generally with the aim of reducing the dimension of this set. The simplest form of an autoencoder is a non-recurrent neural network that propagates forward, very similar to the multilayer perceptron.
Un auto-encodeur comporte un premier module appelé encodeur, référencé 120 sur la
L’association de cet encodeur 120 et de ce décodeur 150 conduit à des erreurs de reconstruction faibles comparées à l’utilisation d’un seul module.The combination of this encoder 120 and this decoder 150 leads to low reconstruction errors compared to the use of a single module.
Un auto-encodeur ne requiert que peu de paramètres relativement à d’autres réseaux de neurones, ce qui facilite son implémentation.An autoencoder requires few parameters compared to other neural networks, making it easier to implement.
L’encodeur 120 comporte une couche d’entrée
L’auto-encodeur peut aussi comporter une ou plusieurs couches encodeur cachées reliant l’encodeur et le décodeur.The autoencoder may also include one or more hidden encoder layers connecting the encoder and decoder.
Une entrée de l’auto-encodeur correspond à une entrée de l’encodeur 120. Une sortie de l’encodeur 120 correspond à une entrée d’une couche de neurones cachée la plus interne à l’auto-encodeur, dite couche latente. Un code z(i) est issu de la couche latente. Le code z(i) est aussi généralement appelé variable latente ou représentation latente. Le code z(i) représente l’entrée
L’encodeur 120 a pour but de produire (calculer) un code z(i) à partir d’une entrée
Selon une variante, l’encodeur 120 et le décodeur 150 peuvent être mis en œuvre par des fonctions (transitions),
où
L’espace caractéristique
Selon une variante, lorsqu’il n'y a qu'une seule couche cachée, telle que illustré sur la
où
L’étape de décodage associe le code
où
L’auto-encodeur est entraîné, lors de la phase d’apprentissage, à partir d’un premier ensemble E1 de modèles tridimensionnels M1 de véhicule. Une fois entraîné, l’auto-encodeur est testé lors d’une étape de test, à partir d’un deuxième ensemble E2 de modèles tridimensionnels M2 de véhicule.The autoencoder is trained, during the learning phase, from a first set E1 of three-dimensional vehicle models M1. Once trained, the autoencoder is tested during a test step, using a second set E2 of three-dimensional vehicle models M2.
Selon une variante, les modèles tridimensionnels du premier et deuxième ensembles sont tirés aléatoirement à partir d’un troisième ensemble de modèles tridimensionnels de véhicule.According to a variant, the three-dimensional models of the first and second sets are drawn randomly from a third set of three-dimensional vehicle models.
Le procédé 200 est mis en œuvre par l’auto-encodeur une fois entraîné et testé comme expliqué précédemment en relation avec la
Le procédé 200 comporte une étape d’apprentissage 210 de l’auto-encodeur à partir du premier ensemble E1.The method 200 includes a step 210 of learning the autoencoder from the first set E1.
L’étape 210 comporte les sous-étapes 211 à 214.Step 210 includes substeps 211 to 214.
Au cours de la sous-étape 211, un code
Au cours de la sous-étape 212, un modèle tridimensionnel reconstruit est calculé à une sortie du décodeur de l’auto-encodeur à partir du code
Au cours de la sous-étapes 213, une erreur E1 est calculée entre le modèle tridimensionnel M1 et le modèle tridimensionnel reconstruit.During substeps 213, an error E1 is calculated between the three-dimensional model M1 and the reconstructed three-dimensional model.
Au cours de la sous-étape 214, au moins un paramètre de l’auto-encodeur est modifié pour minimiser l’erreur E1 calculée.During substep 214, at least one parameter of the autoencoder is modified to minimize the calculated error E1.
Le procédé 200 comporte également une étape de test 220 de l’auto-encodeur à partir du deuxième ensemble E2.The method 200 also includes a step 220 of testing the autoencoder from the second set E2.
L’étape 220 comporte les sous-étapes 221 à 225.Step 220 includes substeps 221 to 225.
Au cours de la sous-étape 221, un code
Au cours de la sous-étape 222, un taux de compression T est calculé entre le code calculé
Selon une variante, le taux de compression T est le rapport de la quantité d’informations (nombre de bits) nécessaire pour représenter le code
Au cours de la sous-étape 223, un modèle tridimensionnel reconstruit est calculé à une sortie du décodeur de l’auto-encodeur à partir du code
Au cours de la sous-étape 224, une valeur de qualité de codage est calculée. Cette valeur de qualité de codage est représentative d’une erreur E2 entre le modèle tridimensionnel reconstruit et le modèle tridimensionnel M2.During substep 224, a coding quality value is calculated. This coding quality value is representative of an error E2 between the reconstructed three-dimensional model and the three-dimensional model M2.
Au cours de la sous-étape 225, au moins un paramètre de l’auto-encodeur est modifié pour minimiser une fonction de coût de codage qui dépend de la valeur de qualité de codage et du taux de compression.During substep 225, at least one parameter of the autoencoder is modified to minimize a coding cost function which depends on the coding quality value and the compression rate.
Selon une variante, la fonction de coût est une somme pondérée de la valeur de qualité de codage et du taux de compression.According to a variant, the cost function is a weighted sum of the coding quality value and the compression rate.
Le procédé 200 comporte également une étape 230 d’obtention d’un modèle tridimensionnel de véhicule M3 de silhouette de véhicule à coder à l’entrée de l’encodeur de l’auto-encodeur.The method 200 also includes a step 230 of obtaining a three-dimensional model of vehicle M3 of vehicle silhouette to be coded at the input of the encoder of the autoencoder.
Le procédé comporte aussi une étape 240 de calcul d’un code
Selon une variante, la modification d’un paramètre de l’auto-encodeur consiste à rétro-propager l'erreur E1 ou E2 vers l'arrière et effectuer une mise à jour des poids W et W’ (équations 1 et 2).According to a variant, modifying a parameter of the autoencoder consists of back-propagating the error E1 or E2 backwards and updating the weights W and W’ (equations 1 and 2).
Un auto-encodeur est bien souvent entrainé en utilisant l'une des nombreuses variantes de la rétropropagation, e.g., méthode du gradient conjugué, algorithme du gradient. Bien que cela fonctionne de manière raisonnablement efficace, il existe des problèmes fondamentaux concernant l'utilisation de la rétropropagation avec des réseaux de neurones possédant de nombreuses couches cachées. Une fois les erreurs rétro-propagées aux premières couches, elles deviennent minuscules et insignifiantes. Cela signifie que le réseau de neurones apprendra presque toujours à reconstituer la moyenne des données d'entrainement. Bien que les variantes de la rétropropagation soient capables, dans une certaine mesure, de résoudre ce problème, elles résultent toujours en un apprentissage lent et peu efficace. Ce problème peut toutefois être résolu en utilisant des poids initiaux proches de la solution finale. Le processus de recherche de ces poids initiaux est souvent appelé pré-entrainement.An autoencoder is often trained using one of several variations of backpropagation, e.g., conjugate gradient method, gradient algorithm. Although it works reasonably efficiently, there are fundamental problems with using backpropagation with neural networks that have many hidden layers. Once errors are back-propagated to the first few layers, they become tiny and insignificant. This means that the neural network will almost always learn to average the training data. Although variants of backpropagation are able to solve this problem to some extent, they still result in slow and inefficient learning. This problem can, however, be solved by using initial weights close to the final solution. The process of finding these initial weights is often called pre-training.
Selon une variante, l’erreur E1 ou E2 est une erreur quadratique
où
Le procédé 300 est mis en œuvre par l’auto-encodeur une fois entraîné et testé comme expliqué précédemment en relation avec la
Le procédé 300 comprend une étape 310 d’obtention d’un code
Des exemples d’un tel dispositif 400 comprend, sans y être limité, un équipement électronique tel qu’un ordinateur. Les éléments du dispositif 400, individuellement ou en combinaison, peuvent être intégrés dans un unique circuit intégré, dans plusieurs circuits intégrés, et/ou dans des composants discrets. Le dispositif 400 peut être réalisé sous la forme de circuits électroniques ou de modules logiciels (ou informatiques) ou encore d’une combinaison de circuits électroniques et de modules logiciels. Selon différents modes de réalisation particuliers, le dispositif 400 est couplé en communication avec d’autres dispositifs ou systèmes similaires, par exemple par l’intermédiaire d’un bus de communication ou au travers de ports d’entrée / sortie dédiés.Examples of such a device 400 include, but are not limited to, electronic equipment such as a computer. The elements of the device 400, individually or in combination, can be integrated into a single integrated circuit, into several integrated circuits, and/or into discrete components. The device 400 can be produced in the form of electronic circuits or software (or computer) modules or even a combination of electronic circuits and software modules. According to different particular embodiments, the device 400 is coupled in communication with other similar devices or systems, for example via a communication bus or through dedicated input/output ports.
Le dispositif 400 comprend un (ou plusieurs) processeur(s) 401 configurés pour exécuter des instructions pour la réalisation des étapes du procédé et/ou pour l’exécution des instructions du ou des logiciels embarqués dans le dispositif 400. Le processeur 410 peut inclure de la mémoire intégrée, une interface d’entrée/sortie, et différents circuits connus de l’homme du métier. Le dispositif 400 comprend en outre au moins une mémoire 402 correspondant par exemple à une mémoire volatile et/ou non volatile et/ou comprend un dispositif de stockage mémoire qui peut comprendre de la mémoire volatile et/ou non volatile, telle que EEPROM, ROM, PROM, RAM, DRAM, SRAM, flash, disque magnétique ou optique.The device 400 comprises one (or more) processor(s) 401 configured to execute instructions for carrying out the steps of the method and/or for executing the instructions of the software(s) embedded in the device 400. The processor 410 may include integrated memory, an input/output interface, and various circuits known to those skilled in the art. The device 400 further comprises at least one memory 402 corresponding for example to a volatile and/or non-volatile memory and/or comprises a memory storage device which may comprise volatile and/or non-volatile memory, such as EEPROM, ROM , PROM, RAM, DRAM, SRAM, flash, magnetic or optical disk.
Le code informatique du ou des logiciels embarqués comprenant les instructions à charger et exécuter par le processeur est par exemple stocké sur la mémoire 402.The computer code of the embedded software(s) comprising the instructions to be loaded and executed by the processor is for example stored on memory 402.
Selon un mode de réalisation particulier et non limitatif, le dispositif 400 comprend un bloc 403 d’éléments d’interface pour communiquer avec des dispositifs externes ou encore un serveur distant ou un équipement. Les éléments d’interface du bloc 303 comprennent une ou plusieurs des interfaces suivantes :According to a particular and non-limiting embodiment, the device 400 comprises a block 403 of interface elements for communicating with external devices or even a remote server or equipment. The interface elements of block 303 include one or more of the following interfaces:
- interface radiofréquence RF, par exemple de type Bluetooth® ou Wi-Fi®, LTE (de l’anglais « Long-Term Evolution » ou en français « Evolution à long terme »), LTE-Advanced (ou en français LTE-avancé) ;- RF radio frequency interface, for example of the Bluetooth® or Wi-Fi® type, LTE (from the English “Long-Term Evolution” or in French “Long-Term Evolution”), LTE-Advanced (or in French LTE-advanced ) ;
- interface USB (de l’anglais « Universal Serial Bus » ou « Bus Universel en Série » en français) ;- USB interface (from the English “Universal Serial Bus” or “Bus Universel en Série” in French);
- interface HDMI (de l’anglais « High Definition Multimedia Interface », ou « Interface Multimedia Haute Definition » en français) ;- HDMI interface (from the English “High Definition Multimedia Interface”, or “Interface Multimedia Haute Definition” in French);
- interface LIN (de l’anglais « Local Interconnect Network », ou en français « Réseau interconnecté local »).- LIN interface (from English “Local Interconnect Network”, or in French “Réseau interconnecté local”).
Selon une variante, le dispositif 400 comprend une interface de communication 404 qui permet d’établir une communication avec d’autres dispositifs via un canal de communication 405. L’interface de communication 404 correspond par exemple à un transmetteur configuré pour transmettre et recevoir des informations et/ou des données via le canal de communication 405 tels que des évènements extérieurs pris en considération par le dispositif 400 pour la mise en œuvre du procédé de la
Selon un mode de réalisation particulier supplémentaire, le dispositif 400 peut fournir des signaux de sortie à un ou plusieurs dispositifs externes, tels qu’un écran d’affichage, un ou des haut-parleurs et/ou d’autres périphériques via respectivement des interfaces de sortie non représentées.According to an additional particular embodiment, the device 400 can provide output signals to one or more external devices, such as a display screen, one or more speakers and/or other peripherals respectively via interfaces output not shown.
Dans une première étape 510, des modèles tridimensionnels Mi de silhouette de véhicule sont obtenus à partir d’un premier moyen de stockage ;In a first step 510, three-dimensional vehicle silhouette models Mi are obtained from a first storage means;
Dans une deuxième étape 520, un code est produit pour chaque modèle tridimensionnel Mi obtenu à partir d’un encodeur d’un auto-encodeur, chaque code étant ajouté à un ensemble EC de codes.In a second step 520, a code is produced for each three-dimensional model Mi obtained from an encoder of an autoencoder, each code being added to a set EC of codes.
Dans une troisième étape 530, de critères de succès de modèles tridimensionnels de silhouette de véhicule ayant des indices de succès supérieur à un premier seuil pour un intervalle de prix donné, sont obtenus à partir d’un deuxième moyen de stockage.In a third step 530, success criteria for three-dimensional vehicle silhouette models having success indices greater than a first threshold for a given price interval are obtained from a second storage means.
Dans une quatrième étape 540, un code z(i) est sélectionné parmi l’ensemble EC de codes en fonction des critères de succès obtenus.In a fourth step 540, a code z(i) is selected from the set EC of codes according to the success criteria obtained.
Dans une cinquième étape 550, au moins un deuxième code z(i,j) est produit à partir du code sélectionné, chaque deuxième code produit correspond à une mutation aléatoire du code sélectionné z(i).In a fifth step 550, at least one second code z(i,j) is produced from the selected code, each second code produced corresponds to a random mutation of the selected code z(i).
Dans une sixième étape 560, ledit au moins un deuxième code produit z(i,j) est ajouté à l’ensemble EC de codes.In a sixth step 560, said at least one second product code z(i,j) is added to the set EC of codes.
Dans une septième étape 570, un score est associé à chaque deuxième code z(i,j) et ce score est comparé avec un deuxième seuil.In a seventh step 570, a score is associated with each second code z(i,j) and this score is compared with a second threshold.
Les étapes 540-570 sont itérées tant qu’un score associé à un code de l’ensemble de codes n’est pas supérieur au deuxième seuil.Steps 540-570 are iterated as long as a score associated with a code from the set of codes is not greater than the second threshold.
Dans une huitième étape 580, un modèle tridimensionnel du véhicule est calculé par décodage, par le décodeur de l’auto-encodeur, à partir du code sélectionné dont le score associé est supérieur au deuxième seuil.In an eighth step 580, a three-dimensional model of the vehicle is calculated by decoding, by the decoder of the autoencoder, from the selected code whose associated score is greater than the second threshold.
Bien entendu, la présente invention ne se limite pas aux modes de réalisation et autres exemples ou variantes décrits ci-avant mais s’étend à tous modes et/ou variante de réalisation qui aurait la même portée.Of course, the present invention is not limited to the embodiments and other examples or variants described above but extends to all modes and/or variant embodiments which would have the same scope.
Claims (10)
- obtention (510) de modèles tridimensionnels de silhouette de véhicule à partir d’un premier moyen de stockage ;
- production (520) d’un code pour chaque modèle tridimensionnel obtenu à partir d’un encodeur d’un auto-encodeur, chaque code étant ajouté à un ensemble de codes ;
- obtention (530), à partir d’un deuxième moyen de stockage, de critères de succès de de silhouette de véhicule ayant des indices de succès supérieur à un premier seuil pour un intervalle de prix donné ;
- sélection (540) d’un premier code parmi l’ensemble de codes en fonction des critères de succès obtenus ;
- production (550) d’au moins un deuxième code à partir du premier code sélectionné, chaque deuxième code produit correspondant à une mutation aléatoire du premier code sélectionné ;
- ajout (560) dudit au moins un deuxième code produit à l’ensemble de codes ;
- association (570) d’un score à chaque code de l’ensemble de codes et comparaison de chaque score avec un deuxième seuil ;
les étapes de sélection (540), production (550), ajout (560) et association (570) sont itérées tant qu’un score associé à un code de l’ensemble de codes n’est pas supérieur au deuxième seuil ;
- calcul (580) du modèle tridimensionnel de silhouette du véhicule par décodage, par un décodeur de l’auto-encodeur, à partir du code dont le score associé est supérieur au deuxième seuil.Method for calculating a three-dimensional model of a silhouette of a vehicle, the method being implemented by a device, said method comprising the following steps:
- obtaining (510) three-dimensional vehicle silhouette models from a first storage means;
- production (520) of a code for each three-dimensional model obtained from an encoder of an autoencoder, each code being added to a set of codes;
- obtaining (530), from a second storage means, success criteria for vehicle silhouettes having success indices greater than a first threshold for a given price interval;
- selection (540) of a first code from the set of codes according to the success criteria obtained;
- production (550) of at least one second code from the first selected code, each second code produced corresponding to a random mutation of the first selected code;
- addition (560) of said at least one second product code to the set of codes;
- association (570) of a score with each code of the set of codes and comparison of each score with a second threshold;
the selection (540), production (550), addition (560) and association (570) steps are iterated as long as a score associated with a code from the set of codes is not greater than the second threshold;
- calculation (580) of the three-dimensional silhouette model of the vehicle by decoding, by a decoder of the autoencoder, from the code whose associated score is greater than the second threshold.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR2205359A FR3136297A1 (en) | 2022-06-03 | 2022-06-03 | Method and device for calculating a three-dimensional model of a vehicle silhouette. |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR2205359 | 2022-06-03 | ||
FR2205359A FR3136297A1 (en) | 2022-06-03 | 2022-06-03 | Method and device for calculating a three-dimensional model of a vehicle silhouette. |
Publications (1)
Publication Number | Publication Date |
---|---|
FR3136297A1 true FR3136297A1 (en) | 2023-12-08 |
Family
ID=83188417
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FR2205359A Pending FR3136297A1 (en) | 2022-06-03 | 2022-06-03 | Method and device for calculating a three-dimensional model of a vehicle silhouette. |
Country Status (1)
Country | Link |
---|---|
FR (1) | FR3136297A1 (en) |
-
2022
- 2022-06-03 FR FR2205359A patent/FR3136297A1/en active Pending
Non-Patent Citations (2)
Title |
---|
HYUN KYUNG HOON ET AL: "Balancing homogeneity and heterogeneity in design exploration by synthesizing novel design alternatives based on genetic algorithm and strategic styling decision", ADVANCED ENGINEERING INFORMATICS, vol. 38, 1 October 2018 (2018-10-01), AMSTERDAM, NL, pages 113 - 128, XP093004120, ISSN: 1474-0346, Retrieved from the Internet <URL:https://www.sciencedirect.com/science/article/pii/S1474034617305657/pdfft?md5=bc50f677993d625e842f53318a9168ad&pid=1-s2.0-S1474034617305657-main.pdf> [retrieved on 20221222], DOI: 10.1016/j.aei.2018.06.005 * |
Y PAN ET AL: "INTERNATIONAL DESIGN CONFERENCE -DESIGN 2016 A QUANTITATIVE MODEL FOR IDENTIFYING REGIONS OF DESIGN VISUAL ATTRACTION AND APPLICATION TO AUTOMOBILE STYLING", 16 May 2016 (2016-05-16), XP055614141, Retrieved from the Internet <URL:https://pdfs.semanticscholar.org/1f27/ab1304d2ae5184545421f6e0b24136906e5a.pdf> [retrieved on 20190820] * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0624847B1 (en) | Device and method to generate an approximating function | |
CN113222123B (en) | Model training method, device, equipment and computer storage medium | |
CN111445476A (en) | Monocular depth estimation method based on multi-mode unsupervised image content decoupling | |
WO2011007058A1 (en) | Simulation of real world evolutive aggregate, in particular for risk management | |
FR2944125A1 (en) | METHOD FOR IDENTIFYING AERODYNAMIC MODELS FOR AIRCRAFT SIMULATION METHOD | |
CN111325285B (en) | Fatigue driving prediction method and device based on automatic machine learning and storage medium | |
FR3095042A1 (en) | PROCESS FOR DEFINING A PATH | |
EP3888048B1 (en) | Super-resolution device and method | |
FR2756073A1 (en) | LEARNING METHOD FOR GENERATING SMALL-SIZE NEURONE NETWORKS FOR DATA CLASSIFICATION | |
WO2020094995A1 (en) | Method of neural network construction for the simulation of physical systems | |
EP3877912A1 (en) | Method of neural network construction for the simulation of physical systems | |
FR3136297A1 (en) | Method and device for calculating a three-dimensional model of a vehicle silhouette. | |
EP1587003A2 (en) | Song search system and song search method | |
EP1387232A1 (en) | Method for determining a value to be allocated to different parameters of a system | |
CN115346091B (en) | Method and device for generating Mura defect image data set | |
CN115661498A (en) | Self-optimization single cell clustering method | |
FR3136296A1 (en) | Method and device for coding a three-dimensional model of a vehicle | |
FR3089329A1 (en) | Method for analyzing a set of parameters of a neural network in order to obtain a technical improvement, for example a gain in memory. | |
EP4256412A1 (en) | System and method for controlling machine learning-based vehicles | |
EP1688872A2 (en) | Informatics tool for prediction | |
CN113850819A (en) | Blood vessel refined segmentation method, device, terminal and storage medium | |
FR2754080A1 (en) | LEARNING METHOD FOR CLASSIFYING DATA ACCORDING TO TWO CLASSES SEPARATED BY A SEPARATING SURFACE OF ORDER 1 OR 2 | |
FR3104291A1 (en) | Method and system for configuring an imaging device of a motor vehicle comprising N sensors and N dedicated encoder neural networks | |
FR3080932A1 (en) | AUTOMATIC GENERATION METHOD OF ARTIFICIAL NEURON NETWORKS | |
CN118555215B (en) | Diffusion model-based missing network traffic matrix filling method and system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PLFP | Fee payment |
Year of fee payment: 2 |
|
PLSC | Publication of the preliminary search report |
Effective date: 20231208 |
|
CD | Change of name or company name |
Owner name: STELLANTIS AUTO SAS, FR Effective date: 20240313 |
|
PLFP | Fee payment |
Year of fee payment: 3 |