IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Physique Discussion :

La modélisation des cheveux passera-t-elle bientôt par de l'apprentissage profond ?


Sujet :

Physique

  1. #1
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    Ingénieur de recherche
    Inscrit en
    Août 2008
    Messages
    26 619
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur de recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2008
    Messages : 26 619
    Points : 188 601
    Points
    188 601
    Par défaut La modélisation des cheveux passera-t-elle bientôt par de l'apprentissage profond ?
    Les technologies de rendu de cheveux pour les jeux vidéo ne manquent pas. Par exemple, NVIDIA dispose de HairWorks, AMD de TressFX. Cependant, ces bibliothèques ont un énorme désavantage : le temps de calcul requis pour la simulation physique. En effet, une chevelure est constituée de millions de cheveux qui se déplacent plus ou moins indépendamment les uns des autres. Conséquence ? Dans des jeux comme The Witcher 3, activer le rendu des cheveux fait chuter significativement la performance.


    Des chercheurs de l’USC, Pinscreen et Microsoft ont alors pensé à utiliser de l’apprentissage profond pour remplacer ces simulations physiques. Malgré un temps d’apprentissage extrêmement long, cette technique promet d’atteindre une très bonne performance en inférence, c’est-à-dire lors de l’utilisation du réseau neuronal pour effectuer la simulation physique. Sur du matériel actuel très haut de gamme (une carte NVIDIA Titan Xp), cette inférence ne prend que quelques millisecondes pour des dizaines de milliers de cheveux, avec moins de cent mégaoctets occupés en mémoire. La simulation n’empiète donc pas énormément sur la puissance de calcul disponible pour le rendu, même si les cœurs tensoriels des puces Volta pourraient être mis à contribution.


    Plus techniquement, le réseau neuronal profond apprend à partir d’images 2D une correspondance envers un rendu en 3D des cheveux. Son architecture fait largement appel à des couches convolutionnelles (convolution, pooling, déconvolution). Le réseau transforme d’abord l’image 2D en un champ vectoriel d’orientation des cheveux ; ensuite, il génère des cheveux (représentés comme des séquences de points 3D) ; finalement, il reconstruit un rendu en augmentant le niveau de détail à partir des cheveux générés. Cette méthode permet de préserver énormément de détails locaux, ce qui donne une apparence relativement naturelle au rendu (notamment les cheveux crollés).

    Le jeu de données utilisé comprend quarante mille styles différents de coiffure (et donc de comportement des cheveux), pour cent soixante mille images prises avec des points de vue aléatoires. Cependant, il tend à mal généraliser : certains types de coiffure n’ont pas un rendu très réaliste (surtout les plus exotiques : cheveux crépus, africains, très courts) — il faudrait probablement encore agrandir le jeu de données pour résoudre ce problème (ou utiliser plusieurs réseaux neuronaux plus spécialisés).


    Cette recherche n’est pas directement applicable dans des jeux vidéo, l’entrée du modèle restant une image. Reste à voir comment la simulation à base de réseaux neuronaux pourra prendre en compte tous les effets : pas seulement une tête qui tourne, mais aussi le vent dans les cheveux ou encore un tissu…

    Sources : Nvidia GPUs could use AI to power next-gen HairWorks models in future games, AI Can Render 3D Hair in Real Time.

    Voir aussi : Single-View Hair Reconstruction using Convolutional Neural Networks.
    Vous souhaitez participer aux rubriques Qt (tutoriels, FAQ, traductions) ou HPC ? Contactez-moi par MP.

    Créer des applications graphiques en Python avec PyQt5
    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

  2. #2
    Membre émérite Avatar de onilink_
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    597
    Détails du profil
    Informations personnelles :
    Âge : 32
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 597
    Points : 2 443
    Points
    2 443
    Par défaut
    Je trouve ça un peu gadget, comparé par exemple a la simulation de fluide sur le même principe:


    Enfin bon ça peut être intéressant s'il ne faut pas forcement un matos aussi performant qu'une Titan Xp, tout en laissant des performances pour le reste.
    Mais je ne suis pas convaincu que la simulation au cheveux près soit le meilleur rapport qualité/prix visuellement parlant.

    La reconstruction en revanche est plutôt bluffante (dans la seconde vidéo), mais je verrais ce genre d'application plus hors jeu vidéo (animation 3d par ex).
    Circuits intégrés mis à nu: https://twitter.com/TICS_Game

Discussions similaires

  1. Mettre à jour des tables liées entre elles
    Par Abdelkabir dans le forum VB.NET
    Réponses: 3
    Dernier message: 13/08/2007, 15h49
  2. Réponses: 1
    Dernier message: 10/05/2007, 01h47
  3. Réponses: 2
    Dernier message: 07/12/2005, 13h25
  4. Modéliser des modèles de documents
    Par raoudi57 dans le forum Débuter
    Réponses: 5
    Dernier message: 10/11/2005, 20h23
  5. Modélisation des systèmes multiagents
    Par IMANE_nadjat dans le forum Intelligence artificielle
    Réponses: 1
    Dernier message: 10/11/2005, 11h00

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo