Skip to content
Snippets Groups Projects
Commit e2da04a4 authored by JUCHS PIERRE's avatar JUCHS PIERRE
Browse files

Update README.md

parent d7a27c62
No related merge requests found
# Photo-Realistic Human Modeling
## suppl:
- SMPL 6890 vertices, SMPL-X 10475 vertices, CAESAR 6890 vertices, BFM 53 490 vertices
----
This project is the result of my internship at MLMS ICUBE for my last semester of Master Computer science I3D at teh UFR of Unistra Strasbourg.
The subject is in the pdf "M2_2022.pdf", and I only did the first of the two objectives, adding texture to teh model.
I used TExture Reformer to generate the texture for SMPL-X from BFM (using Face3D).
- Quelque git sauveagrdé sur firefox pour BFM generator faut voir ce qui va ou pas
The clean result is in "Clean_Base_Unity".
- Je sais pas pourquoi HDFView focntionne mal (les fichiers s'ouvrent et ont les bonne section mais pas les données dans celle-ci)
- instalation: site HDWView, last version je crois, Linux instalation (image)
- instalation: site support.hdfgroup, version3.1.2 et 3.1.3, respectivement deb image
- je n'ai pas enlevé le dernier echec -> /opt/hdfview
- Après plus de test le style transfert est mis de coté les résultat de sont pas suffisant pour notre cas
- On va donc ce diriger sur une synthèse de texture pour tout le corps
- Avant cela il faut trouver de quoi générer un visage de BFM correct
----
- Erreur lors de l'essai du test texture reformer avec le visage et semantique SMPL
- vient plus que probablement d'un erreur d ema part dans la création des image représentant la sémantique
- le problème est que faire cela avec un outil type paint pour tout le corps est délicat
- il faut espérer que le problème ne vient pas du nombre un peu plus élevés de groupe (couleurs diff dans _sem.png)
- le code normalement semble focntionné de la manière que je tente (pour être plus sûr je vais tenter avec plsu de groupes)
- Une fois que c'ets réolu il faut se repencher sur BFM et SMPL
- le style transfert fonctionne les résultats de base semblaient intéressant
- mais avec un texture de visage et de corps pour SMPL le résultat est catastrophique
- je ne sais pas si il faudrait essayer d'atténuer le sproblèmes mais ca me semble difficile
- je me demande si il faudrait pas plutot partir vers une autre méthode
- https://openaccess.thecvf.com/content_cvpr_2018/papers/Men_A_Common_Framework_CVPR_2018_paper.pdf
- http://maverick.inria.fr/~Romain.Vergne/blog/2017/04/15/texture-transfer.html
- J'essai de faire marcher un style transfert python : https://github.com/sunshineatnoon/PytorchWCT
- mais il y a des problemes de libraries qui ne sont plus fonctionelles/utilisées
- pour load.lua on peut utiliser torchfile (pour load des fichiers .t7 de model préentrainés)
- mais le problème c'est de récupérer les infos dans ce modèle maintenant
- j'essai de comprendre la struct, .modules\[i\] pour naviguer dans entre les torch object
- mais après je en sais pas a quoi correspondent quel weight et biais que je dosi récupérer
----
- il faut se pencher sur la récupération d'uv map de BFM
- il faut un résultat décent de style transfert pour le moment ca semble insuffisant
- il faut que j'installe quelque chose pour lire les fichiers h5 de BFM et voir comment et quoi est stocker
- mais hdview (4.quelquechose de ce que j'ai vu) n'affichait que un fichier vide (alors qu'il pèsent min 164 MB)
- et hdf5-tools avec la command eterminale h5dump affiche tout dans le terminal or le fichier contient trop d'informations cela ne va pas
- quelqu'un parlait de "panoply" de la nasa mais j'ia peur qu'il possède trop d'autres fonctionalités et que ce soit un erreur de l'installer
- recherche de texture de SMPL adéquate pour le "content" du style transfert
- essai avec une texture habillé et avec une texture du maillage les deux sont décevante
- je sais pas si c'ets dut au code utilisé (récup sur google colab), si c'ets les textures, ou si c'est la méthode
- https://colab.research.google.com/github/pamruta/Style-Transfer/blob/master/Style-Transfer-PyTorch.ipynb#scrollTo=PmxGV9cfR6Lm
- recherche de code plus complet de style transfert
- le code suposément de style transfert fonctionne les problèmes on été résolus
- en l'état cela ne fait que la partie de synthèse de texture
----
- pour https://github.com/pierre-wilmot/NeuralTextureSynthesis
- toujours des problèmes maintenant peut etre entre cuda 11.6 et pytorch (pas sûr)
- DFAUST semble proposer uniquement les mesh et nn les textures des sujets
- Wang Diwei m'a envoyé un lien pour générer des etxture uv pour SMPL
- https://gitee.com/seuvcl/CVPR2020-OOH/tree/master
- pas fini de regadrer pour le github : https://github.com/pierre-wilmot/NeuralTextureSynthesis
- le dernier problème est la version pas assez récent de CUDA que nécessite la RTX 3080
- pas la bonne version avec un install normal semble que le recup el depot et install est le seul choix
- Je m'y attendais à priori il faudrais des modèles nus
- il y a donc les modèles DFAUST
- problème pour le moment : chaque sujet est dans un fichier séparé (min 10GB/file) j'ai ouvert un scan dans meshlab il n'a pas de texture
- 21 modèles différend d'un qualité intéressante d'autre de plus (trop) grande qualité sotn disponibles
- il y a aussi les modèles de people snapshot dataset
- Techniquement j'ai trouvé 14 modele humain avec un skin qui leur est propre
- le problème c'est qu'ils sotn assez différents (pas le même type de modèle pas la même pose certain rigged d'autre non)
- il y a d'autres modèles d'une même provenance mais la qualité est bien moindre
----
- Objectifs:
- regardé les fichiers .h5 du modèle de BFM
- chercher des modèles avec texture de corps (~20)
- pour pouvoir faire la correspondance avec le mdoèle SMPL-X et en plus des données de BFM faire des textures aléatoires
- il y a potentiellement CAESAR DB (Civilian American and European Surface Anthropometry Resource Project DataBase) pas gratuit mais surement quelqu'un quand meme
- l'autre options qui est secondaire est d'utiliser l'uv map du visage de BFM pour recréer une uv map du corps SMPL (faire une correspondance entre les maps)
- meilleur ésultat que j'ai vu mais il dit compatible windows et tjrs un peu lourd
- https://github.com/Smorodov/nano_bfm
- nouveau test sur le code de BFM 2009 sur matlab
- il y a peut être un moyen de modifier plus
- mais à première vue la texture n'est pas assez modifiable malgré un bon random sur "shape" ce n'est pas du tout le cas de "tex"
- je trouve d'autres gits utilisant BFM
- https://github.com/ascust/3DMM-Fitting-Pytorch?ref=https://githubhelp.com
- https://github.com/Great-Keith/bfm-visual-tool?ref=https://githubhelp.com
- malheuresement pour certain je ne comprend pas la langue
- d'autre ne semblent pas générés aléatoirement un visage mais plutot trouvé et reproduire ceux d'images/vidéos
- du pyhton ou du c++
- tentative de build statismo pas mal de warning malgré avoir installé les prérequis mais pas sur des version de vtk et itk
- or c'ets bien vtk qui semble créer des warning
- il y a meme eu 2-3 erreurs dans le premier cmake
- et j'ai malheuresement interrompu l'instalation en plein millieu
- je ne sais pas si le reste (dernier cmake --install) est long mais la ca durais 30 min
- je suppose qu'il doit y avoirune autre option
- La ca parle d'utiliser statismo avec python
- https://github.com/latimagine/statismo
- https://github.com/latimagine/statismo/blob/master/doc/md/USE.md (Quick prototyping with python)
- A voir si on peut utiliser ca mais alors autant faire du C++ je pense, il faut voir
- pytorch github BFM2009 : https://githubhelp.com/ascust/3DMM-Fitting-Pytorch
- recherche : https://githubhelp.com/topic/basel-face-model
----
- tentative de trouver du bon code pour BFM
- https://github.com/unibas-gravis/parametric-face-image-generator generator 2019 scala
- https://github.com/statismo/statismo statismo c++
- https://github.com/latimagine/statismo latest update
- https://github.com/unibas-gravis/basel-face-model-viewer seulement un viewer askip mais on dirait un generator
- Il faut que je regarde plus pour BFM que ce soit 2019 2017 je trouve pas de python
- Il parle de statistmo scalismo et sur le git il y a l'air d'avoir du c++ donc acceptable
- mais pour le face model generator (2019 seulement on dirait) https://github.com/unibas-gravis/parametric-face-image-generator
- et la c'ets du scala, lanagage basé sur java et la c'est encore moins bien que matlab
- une msie a jour hebdomadaire d'un rapport (env 1/2 page) serais fixé pour jeudi soir vendredi matin au pire
- il faut regarder dans toutes les fichiers de BFM du code python (plus récent que le code matlab du coup)
- essayer d'export .ply en .obj avec meshlab/blender
- sur blender pour voir la couleur il faut créer une matière et choisir vertex color dans les options
- pas de réussite dans les deux cas l'export semblaient ne pas récupérer les texture
- meshlab peut être il faut regarder d'autre options avant l'export
- blender il faudrais récupérer les parties de "material" et les réutiliser dans unity
- Export du d'un face du BFM en .obj avec meshlab
- problème de textue principalement
- de taille (très grande de base besoin de scale 0.000001 pour observer seulement)
- création de matière inutile il me semble, d'un .obj qui ne semble focntionner etc...
- observation du code matlab du BFM
- problème comment récupéré la texture du BFM pour SMPL
- il faudrait récupérer les données stocké dans la struct model
- réutiliser les fonctions et garder uniquement la texture
- à moins qu'on préfère garder le visage du BFM ?
----
- lecture de l'article BFM
- Tentative d'instalationd de Matlab pour BFM à l'aide de https://linuxconfig.org/how-to-install-matlab-on-ubuntu-20-04-focal-fossa-linux
- toutes les étapes sont réalisées ile me semble mais matlab ne se lance pas avec le raccourci créé
- Lecture incomplète de l'article SMPL-X et BFM
- Téléchargement des données de BFM
- Test SMPL-X pour remplacer SMPL (visage et main en plus)
- Lecture de l'article sur SMPL
- Mise en place de Unity 2020.3.27f1 étant donné que celui utilisé d'origine (5.6) n'est pas disponible sur linux
- **Problème** de Animator : "Animator is not playing an AnimatorController UnityEngine.Animator:SetInt(int)" et autre warning (aucune animation sur la scène)
- Warning code unreachable qui n'apparait plus sans changement (juste un Unity qui ne comprend pas qu'il y est du code après un return)
- Création du dépot gitlab
- Téléchargements des données SMPL pour Unity
- A voir si on veut plutôt utiliser MANO & SMPL+H, SMPL+X
- Pour BFM pour avoir les données les plus récentes (2019) il faut donner son institution
- Commencement de lecture des infos de SMPL
The rest of the files contains some of steps of my work.
The licences should be in there specific directory, note that you should have accepted them yourself to us some of them, such as BFM or SMPL-X.
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment