HumanOmni : un macromodèle multimodal pour l'analyse des émotions et des actions des vidéos humaines

Introduction générale

HumanOmni est un grand modèle multimodal open source développé par l'équipe HumanMLLM et hébergé sur GitHub. Il se concentre sur l'analyse de vidéos humaines et peut traiter à la fois l'image et le son pour aider à comprendre les émotions, les actions et le contenu conversationnel. Le projet a utilisé 2,4 millions de clips vidéo centrés sur l'humain et 14 millions de données d'instruction pour le pré-entraînement, et 50 000 clips vidéo étiquetés à la main avec plus de 100 000 instructions pour le réglage fin. humanOmni traite les scènes faciales, corporelles et interactionnelles en trois branches, et adapte dynamiquement son approche de fusion en fonction des entrées. Il s'agit du premier modèle multimodal centré sur l'humain de l'industrie et il surpasse de nombreux modèles similaires. L'équipe a également lancé R1-Omni, basé sur ce modèle, qui intègre pour la première fois l'apprentissage par renforcement pour améliorer l'inférence. Le code et certains ensembles de données sont ouverts pour permettre aux chercheurs et aux développeurs d'y accéder facilement.

HumanOmni:分析人类视频情感和动作的多模态大模型

 

Liste des fonctions

  • reconnaissance des émotionsLes vidéos : Analyser les expressions faciales et le ton de la voix dans les vidéos pour déterminer les émotions des personnages tels que la joie, la colère ou la tristesse.
  • Description des expressions facialesReconnaître et décrire les détails du visage d'une personne, comme un sourire ou un froncement de sourcils.
  • Action CompréhensionLes élèves de l'enseignement secondaire sont capables de : analyser les mouvements des personnes dans une vidéo et décrire ce qu'elles font, comme marcher ou faire un signe de la main.
  • traitement de la parole: Extraction de contenu audio avec prise en charge de la reconnaissance vocale et de l'analyse de l'intonation.
  • fusion multimodaleLes images et le son : Combiner l'image et le son pour comprendre des scènes complexes et fournir des analyses plus précises.
  • Ajustement dynamique des branchesLa fonction d'analyse de l'environnement : Traiter différentes scènes avec trois branches : visage, corps et interaction, en ajustant automatiquement les poids.
  • Soutien à l'Open Source: : Fournir du code, des modèles pré-entraînés et des ensembles de données partiels pour soutenir le développement secondaire.

 

Utiliser l'aide

HumanOmni convient aux utilisateurs ayant une base technique, tels que les développeurs ou les chercheurs. Les étapes d'installation et d'utilisation suivantes sont suffisamment détaillées pour que vous puissiez commencer immédiatement.

Processus d'installation

Pour exécuter HumanOmni, vous devez d'abord préparer votre environnement. Les étapes suivantes sont spécifiques :

  1. Vérifier les exigences en matière de matériel et de logiciel
    • Système d'exploitation : compatible avec Linux, Windows ou macOS.
    • Python : nécessite la version 3.10 ou supérieure.
    • CUDA : 12.1 ou supérieur recommandé (si vous utilisez un GPU).
    • PyTorch : nécessite la version 2.2 ou supérieure avec prise en charge de CUDA.
    • Matériel : les GPU NVIDIA sont recommandés, les CPU fonctionnent mais sont lents.
  2. Télécharger le code
    Ouvrez un terminal et entrez la commande pour télécharger le projet :
git clone https://github.com/HumanMLLM/HumanOmni.git
cd HumanOmni
  1. Créer un environnement virtuel
    Créez des environnements séparés avec Conda pour éviter les conflits :
conda create -n humanOmni python=3.10 -y
conda activate humanOmni
  1. Installation des dépendances
    Le projet dispose d'une requirements.txt qui répertorie les bibliothèques requises. Exécutez la commande suivante pour les installer :
pip install --upgrade pip
pip install -r requirements.txt
pip install flash-attn --no-build-isolation
  1. Télécharger le modèle de poids
    HumanOmni se décline en trois modèles :
  • HumanOmni-VideoTraitement de la vidéo, 7B Paramètres.
  • HumanOmni-AudioLes paramètres sont les suivants : Processing Audio, 7B Parameters.
  • HumanOmni-OmniLa fusion de la vidéo et de l'audio, les paramètres de 7B (appelé HumanOmni).
    Télécharger à partir de Hugging Face ou ModelScope, par exemple :
  • HumainOmni-7B
  • HumanOmni-7B-Vidéo
    Téléchargez-le et placez-le dans le dossier du projet.
  1. Vérifier l'installation
    Vérifiez l'environnement à l'aide de la commande test :
python inference.py --modal video --model_path ./HumanOmni_7B --video_path test.mp4 --instruct "Describe this video."

Si la description de la vidéo est affichée, l'installation est réussie.

Fonction Opération Déroulement

L'analyse de la vidéo et de l'audio est au cœur de HumanOmni. Vous trouverez ci-dessous une description détaillée du fonctionnement des principales fonctionnalités.

1. l'identification émotionnelle

  • déplacer
  • Préparez une vidéo contenant un personnage (par ex. sample.mp4).
  • Exécuter la commande :
python inference.py --modal video_audio --model_path ./HumanOmni_7B --video_path sample.mp4 --instruct "Which emotion is most obvious?"
  • Le modèle produit des émotions telles que "en colère" ou "heureux".
  • prendre note
  • La vidéo doit être claire et les expressions et voix des personnages doivent être reconnaissables.
  • Les vidéos plus longues peuvent nécessiter plus de temps de calcul.

2. la description des expressions faciales

  • déplacer
  • Saisissez la vidéo et exécutez-la :
python inference.py --modal video --model_path ./HumanOmni_7B --video_path sample.mp4 --instruct "What’s the major facial expression?"
  • Le résultat peut être "sourire" ou "froncer les sourcils" avec une brève description.
  • suggestion
  • Il est préférable de tester une courte vidéo de 10 à 30 secondes.

3. la compréhension du mouvement

  • déplacer
  • Saisissez la vidéo et exécutez-la :
python inference.py --modal video --model_path ./HumanOmni_7B --video_path sample.mp4 --instruct "Describe the major action in detail."
  • Produit une description de l'action, telle que "une personne marche".
  • finesse
  • Veillez à ce que l'action soit évidente et évitez l'encombrement de l'arrière-plan.

4. traitement de la parole

  • déplacer
  • Entrée vidéo avec audio, exécution :
python inference.py --modal audio --model_path ./HumanOmni_7B --video_path sample.mp4 --instruct "What did the person say?"
  • Produire un contenu vocal, par exemple "Les chiens sont assis près de la porte".
  • prendre note
  • Le son doit être clair et fonctionner au mieux sans bruit.

5. la fusion multimodale

  • déplacer
  • Entrée vidéo et audio, exécution :
python inference.py --modal video_audio --model_path ./HumanOmni_7B --video_path sample.mp4 --instruct "Describe this video."
  • Le modèle fournira une description complète en conjonction avec l'image et le son.
  • tranchant
  • Capacité à saisir la corrélation entre les émotions et les actions pour une analyse plus complète.

6. formation sur des ensembles de données personnalisés

  • déplacer
  • Préparez un fichier de données au format JSON contenant le chemin d'accès à la vidéo et le dialogue de commande. Par exemple, un fichier de données au format JSON contenant le chemin de la vidéo et le dialogue de la commande :
[
{
"video": "path/to/video.mp4",
"conversations": [
{"from": "human", "value": "What’s the emotion?"},
{"from": "gpt", "value": "sad"}
]
}
]
  • téléchargement HumanOmni-7B-Video répondre en chantant HumanOmni-7B-Audio Poids.
  • Exécutez le script de formation :
bash scripts/train/finetune_humanomni.sh
  • utiliser
  • Il est possible d'optimiser le modèle avec vos propres données vidéo.

Problèmes courants résolus...

  • Erreur d'exécutionVérifier que les versions de Python et de PyTorch correspondent.
  • Défaut de chargement du modèlePour ce faire, il convient de vérifier que le chemin d'accès est correct et que l'espace disque est suffisant (environ 10 Go pour le modèle).
  • Les résultats ne sont pas exacts.: Permet de passer à une vidéo claire ou d'ajuster la présentation des instructions.

Avec ces étapes, les utilisateurs peuvent facilement installer et utiliser HumanOmni et expérimenter ses puissantes fonctionnalités.

 

scénario d'application

  1. Recherche en éducation
    Analyser les vidéos de classe pour identifier l'humeur et l'engagement des élèves et aider les enseignants à adapter leur style d'enseignement.
  2. assistance médicale
    L'expression et le ton de la voix du patient aident le médecin à déterminer les états psychologiques, tels que l'anxiété ou la dépression.
  3. production cinématographique et télévisuelle
    Analyser les émotions et les actions des personnages pour générer des sous-titres ou des descriptions de l'intrigue afin d'améliorer l'efficacité de la création.
  4. analyse sociale
    Utilisé pour les conférences vidéo afin de comprendre les émotions et le comportement des participants et d'optimiser la communication.

 

QA

  1. Quels sont les formats de fichiers pris en charge ?
    Prend en charge le format MP4, l'audio doit être intégré dans la vidéo.
  2. Dois-je travailler en réseau ?
    Pas nécessaire. Télécharger le code et le modèle pour une utilisation hors ligne.
  3. Quelles sont les performances du modèle ?
    En termes de compréhension des émotions, les données DFEW de HumanOmni s'élevaient à 74,861 TP3T, dépassant de loin les 50,571 TP3T de GPT4-O. Le score moyen pour la compréhension des actions était de 72,6, ce qui était plus élevé que les 67,7 de Qwen2-VL-7B.
  4. Les gens ordinaires peuvent-ils l'utiliser ?
    Des connaissances de base en programmation sont nécessaires. Si vous ne savez pas comment coder, il est recommandé de demander l'aide d'un technicien.
© 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...