LHM : Générer des modèles humains 3D basés sur le mouvement à partir d'une seule image

堆友AI

Introduction générale

LHM (Large Animatable Human Reconstruction Model) est un projet open source, développé par l'équipe aigc3d, qui permet de générer rapidement des modèles humains 3D à partir d'une seule image. La caractéristique principale est l'utilisation d'une technologie d'intelligence artificielle pour transformer une image 2D en un modèle 3D en quelques secondes. LHM utilise la technologie 3D Gaussian Splatting pour représenter le corps humain, combinée à une architecture de transformation multimodale qui préserve la texture des vêtements et les détails géométriques. Le projet, publié pour la première fois le 13 mars 2025, fournit des modèles pré-entraînés et un code adapté à la recherche ou au développement d'applications numériques en 3D liées à l'homme.

LHM:从单张图片生成支持动作的3D人体模型

 

Liste des fonctions

  • Générer un mannequin 3D à partir d'une seule image en quelques secondes.
  • Le rendu en temps réel est pris en charge et le modèle généré peut être visualisé directement.
  • Fournir une fonction d'action pour ajuster la posture du corps humain afin de générer une vidéo dynamique.
  • Produire des fichiers de maillage 3D (par exemple au format OBJ) en vue d'une édition ultérieure.
  • Les modèles pré-entraînés (par exemple LHM-0.5B et LHM-1B) sont inclus et n'ont pas besoin d'être entraînés eux-mêmes.
  • Interface Gradio intégrée avec support de visualisation locale.
  • Fournit un pipeline de traitement vidéo qui peut extraire des actions de la vidéo pour les appliquer à des modèles.

 

Utiliser l'aide

L'utilisation du LHM se divise en deux parties : l'installation et le fonctionnement. Vous trouverez ci-dessous les étapes détaillées qui vous aideront à démarrer rapidement.

Processus d'installation

  1. Préparation de l'environnement
    Le système nécessite Python 3.10 et CUDA (version 11.8 ou 12.1 prise en charge). Une carte graphique NVIDIA, telle qu'une A100 ou une 4090, avec au moins 16 Go de mémoire vidéo est recommandée.

    • Vérifiez la version de Python :
      python --version
      
    • Vérifiez la version de CUDA :
      nvcc --version
      
  2. entrepôt de clones
    Entrez la commande suivante dans le terminal pour télécharger le code LHM :

    git clone https://github.com/aigc3d/LHM.git
    cd LHM
  1. Installation des dépendances
    Exécutez le script correspondant à votre version de CUDA :

    • CUDA 11.8 :
      sh ./install_cu118.sh
      
    • CUDA 12.1 :
      sh ./install_cu121.sh
      

    Si le script échoue, installez les dépendances manuellement :

    pip install -r requirements.txt
    
  2. Télécharger les modèles
    Le modèle sera téléchargé automatiquement. Si vous souhaitez le télécharger manuellement, utilisez la commande suivante :

    • Modèle LHM-0.5B :
      wget https://virutalbuy-public.oss-cn-hangzhou.aliyuncs.com/share/aigc3d/data/for_lingteng/LHM/LHM-0.5B.tar
      tar -xvf LHM-0.5B.tar
      
    • Modèle LHM-1B :
      wget https://virutalbuy-public.oss-cn-hangzhou.aliyuncs.com/share/aigc3d/data/for_lingteng/LHM/LHM-1B.tar
      tar -xvf LHM-1B.tar
      

    Téléchargez-le et extrayez-le dans le répertoire racine du projet.

  3. Vérifier l'installation
    Exécutez les commandes de test pour vous assurer que l'environnement est correct :

    python app.py
    

    En cas de succès, l'interface Gradio sera lancée.

flux de travail

Générer des modèles 3D

  1. Préparer l'image
    Préparez une image claire contenant l'ensemble du corps humain et enregistrez-la localement, par exemple<path_to_image>/person.jpg.
  2. Exécution de scripts d'inférence
    Saisissez-le dans le terminal :

    bash ./inference.sh ./configs/inference/human-lrm-1B.yaml LHM-1B <path_to_image>/ ./output/
    
    • <path_to_image>est le chemin d'accès à votre image.
    • ./output/est le dossier de sortie dans lequel les résultats générés sont enregistrés.
  3. Voir les résultats
    Après avoir généré le<output>Le dossier contiendra le fichier du modèle 3D et la vidéo rendue. Vous pouvez ouvrir les fichiers de maillage avec un logiciel 3D (par exemple Blender) ou lire les vidéos directement.

Ajouter une action

  1. Séquence de mouvements préparatoires
    Le projet fournit des exemples de fichiers d'action, situés dans le répertoire<LHM根目录>/train_data/motion_video/mimo1/smplx_params. Vous pouvez également utiliser votre propre fichier de paramètres SMPL-X.
  2. Exécution de scripts d'action
    Entrez la commande suivante :

    bash ./inference.sh ./configs/inference/human-lrm-1B.yaml LHM-1B <path_to_image>/ <path_to_motion>/smplx_params
    
    • <path_to_motion>est le chemin d'accès au fichier d'action.
  3. Prévisualisation de la vidéo d'action
    Le dossier de sortie génère une vidéo d'action qui peut être lue directement.

Utilisation de l'interface Gradio

  1. Interface de lancement
    S'exécute dans le terminal :

    python app.py
    

    Le navigateur s'ouvrehttp://0.0.0.0:7860.

  2. Télécharger une image
    Téléchargez une photo de votre corps dans l'interface et cliquez sur "Soumettre".
  3. Obtenir des résultats
    Après quelques secondes, l'interface affiche l'image rendue et la vidéo d'action, qui peuvent être téléchargées et visionnées.

Exportation de maillages 3D

  1. Exécuter le script d'exportation
    Entrée :

    bash ./inference_mesh.sh ./configs/inference/human-lrm-1B.yaml LHM-1B
    
  2. Trouver le fichier.
    Le dossier de sortie contiendra des fichiers de maillage au format OBJ, qui peuvent être édités avec un logiciel 3D.

mise en garde

  • Les images doivent être claires et les arrière-plans simples sont plus efficaces.
  • L'effet de l'action dépend de la qualité de l'action d'entrée.
  • Si vous n'avez pas assez de mémoire vidéo, essayez le modèle LHM-0.5B.

 

scénario d'application

  1. développement de jeux
    Les développeurs peuvent utiliser LHM pour générer rapidement des modèles de personnages en 3D à partir de photos, ajuster les poses et les importer dans le moteur de jeu, ce qui permet d'économiser du temps de modélisation.
  2. production cinématographique et télévisuelle
    Les équipes de cinéma et de télévision peuvent utiliser LHM pour créer des doublures numériques et générer des vidéos d'action à utiliser dans les scènes d'effets spéciaux, réduisant ainsi les coûts de modélisation manuelle.
  3. présentateur virtuel (TV)
    Les hôtes peuvent télécharger leurs propres photos pour générer une image en 3D, puis ajouter des actions pour créer une image virtuelle personnalisée.
  4. Recherche en éducation
    Les chercheurs ont pu tester des algorithmes de reconstruction 3D avec le LHM ou démontrer le processus de conversion d'images en modèles dans la salle de classe.

 

QA

  1. Quels sont les formats d'image pris en charge par LHM ?
    Les formats courants tels que JPG, PNG, JPG sont recommandés. La taille du fichier ne doit pas dépasser 10 Mo.
  2. Combien de temps faut-il pour générer un modèle ?
    Environ 0,2 seconde sur les cartes A100, 1 à 2 secondes sur les cartes 4090, varie légèrement en fonction du matériel.
  3. Puis-je former le modèle moi-même ?
    C'est possible, mais aucun script de formation n'est officiellement fourni. Nécessite la préparation de l'ensemble de données et la mise au point du code, convient aux utilisateurs expérimentés.
  4. Le modèle 3D de sortie peut-il être édité ?
    Peut. Après avoir exporté le fichier OBJ, éditez la géométrie et les textures avec Blender ou Maya.
© déclaration de droits d'auteur

Articles connexes

Pas de commentaires

Vous devez être connecté pour participer aux commentaires !
S'inscrire maintenant
aucun
Pas de commentaires...