MatAnyone : outil open source pour extraire la vidéo afin de spécifier le portrait cible, générer le portrait vidéo cible

Introduction générale

MatAnyone est un projet open source axé sur l'incrustation vidéo, développé par une équipe de recherche du S-Lab, Nanyang Technological University, Singapour, et publié sur GitHub. Il offre aux utilisateurs des capacités de traitement vidéo stables et efficaces grâce à des techniques cohérentes de propagation de la mémoire, et il est particulièrement efficace pour gérer les tâches d'incrustation spécifiques à une cible dans des arrière-plans complexes. Lancé en 2025 par des chercheurs tels que Peiqing Yang, le projet combine des algorithmes avancés de vision par ordinateur pour des scénarios nécessitant une segmentation vidéo de haute qualité, tels que la post-production cinématographique et télévisuelle, le remplacement d'arrière-plans virtuels, etc. La force principale de MatAnyone réside dans son module de fusion de mémoire, qui est capable de préserver finement les détails des limites de l'objet tout en gardant la région centrale stable sur le plan sémantique. Le projet a attiré l'attention des communautés académiques et open source et est publié sous la licence NTU S-Lab 1.0, qui permet aux utilisateurs de télécharger, d'utiliser et de modifier le code gratuitement.

MatAnyone: 提取视频指定目标人像的开源工具,生成目标人像视频

 

Liste des fonctions

  • Clé vidéo spécifiée par la cibleLa fonction d'incrustation permet d'incruster des objets spécifiques, ce qui convient à la segmentation vidéo de personnes ou d'autres cibles dynamiques.
  • Transmission cohérente de la mémoireLa fusion régionale adaptative de la mémoire permet d'obtenir des résultats cohérents en matière de codage entre les images vidéo.
  • Traitement des frontières de haute qualitéLes images de l'appareil photo numérique sont plus faciles à lire et à comprendre que les images de l'appareil photo numérique sont plus faciles à lire et à comprendre que les images de l'appareil photo numérique sont plus faciles à comprendre.
  • Prédiction du masque de la première imagePrévoit la couleur alpha des images suivantes sur la base du masque de segmentation de la première image, sans entrée auxiliaire supplémentaire.
  • Soutien à l'Open SourceLe code complet et la documentation sont fournis, ce qui permet une optimisation définie par l'utilisateur ou un développement secondaire.
  • Compatibilité multiplateformeIl fonctionne sur plusieurs systèmes d'exploitation et est facile à intégrer par les développeurs dans les flux de travail existants.

 

Utiliser l'aide

Processus d'installation

MatAnyone est un projet open source GitHub qui nécessite un environnement de programmation Python de base et des outils Git. Voici les étapes pour installer MatAnyone :

1. préparation à l'environnement

  • système d'exploitationWindows, Linux ou macOS sont pris en charge.
  • dépendance logicielle: :
    • Python 3.8 ou supérieur.
    • Git (pour cloner le code depuis GitHub).
    • Conda (recommandé pour la création d'environnements virtuels).
  • exigences en matière de matériel: Un GPU (par exemple une carte graphique NVIDIA) est recommandé pour accélérer le processus d'inférence ; un CPU peut également fonctionner, mais à une vitesse plus lente.

2. téléchargement du code

Ouvrez un terminal ou une ligne de commande et entrez la commande suivante pour cloner le dépôt MatAnyone :

git clone https://github.com/pq-yang/MatAnyone.git
cd MatAnyone

Cette opération permet de télécharger les fichiers du projet dans un répertoire local.

3. création d'environnements virtuels

Utilisez Conda pour créer et activer un environnement Python distinct et éviter les conflits de dépendances :

conda create -n matanyone python=3.8 -y
conda activate matanyone

4. installation des dépendances

Dans le répertoire racine du projet, exécutez la commande suivante pour installer les bibliothèques Python requises :

pip install -r requirements.txt

Dépendances requirements.txt Toutes les bibliothèques nécessaires au projet sont incluses, telles que PyTorch, OpenCV, etc. Si vous rencontrez des problèmes de réseau, essayez de changer la source de pip (par exemple en utilisant pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt).

5. téléchargement de modèles pré-entraînés

MatAnyone nécessite des fichiers de modèles pré-entraînés pour fonctionner. Les auteurs fournissent un lien pour télécharger le modèle sur la page du projet (généralement dans README.md), que l'utilisateur doit télécharger manuellement et placer dans un dossier spécifié (par ex. models/ (Catalogue). Démarches spécifiques :

  • Visitez la page du projet GitHub (https://github.com/pq-yang/MatAnyone).
  • Trouvez le lien de téléchargement du modèle dans le README (qui peut pointer vers Google Drive ou Hugging Face).
  • Téléchargez et décompressez les fichiers du modèle dans le répertoire MatAnyone/models/ Catalogue.

6. vérification de l'installation

Exécutez la commande suivante pour vérifier si l'environnement a été configuré avec succès :

python test.py

Si aucune erreur n'est signalée, l'installation est terminée et vous pouvez commencer à l'utiliser.

Principales fonctions

La fonction principale de MatAnyone est l'incrustation vidéo spécifiée par la cible, et voici les principales étapes de son utilisation :

Fonction 1 : Clé vidéo ciblée

  1. Préparer l'entrée de la vidéo: :
    • Placez le fichier vidéo à traiter (par ex. input_video.mp4) dans le répertoire du projet sous l'onglet data/ (vous pouvez créer ce dossier manuellement s'il n'existe pas).
    • Assurez-vous que le format vidéo est pris en charge (par exemple MP4, AVI) et que la résolution est modérée (une résolution trop élevée peut nécessiter davantage de ressources informatiques).
  2. Générer le masque de la première image: :
    • Utilisez un outil externe tel que Photoshop ou un outil de segmentation open source pour générer un masque de segmentation de l'objet cible pour la première image de la vidéo (au format PNG, avec du blanc pour la zone cible et du noir pour l'arrière-plan).
    • Nom du fichier de masque mask_frame1.pngmettre en data/masks/ Dossier.
  3. Exécuter la commande de clavetage: :
    Allez dans le répertoire du projet dans le terminal et exécutez la commande suivante :

    python inference.py --video data/input_video.mp4 --mask data/masks/mask_frame1.png --output output/
    
    • --video Spécifie le chemin vidéo d'entrée.
    • --mask Spécifie le premier chemin du masque de trame.
    • --output Spécifiez le dossier de sortie et le résultat sera enregistré sous la forme d'un fichier vidéo avec un arrière-plan transparent.
  4. Voir les résultats: :
    • Une fois le traitement terminé, ouvrir le output/ la vidéo d'incrustation générée sera stockée sous la forme d'une séquence d'images ou d'une vidéo complète (en fonction de la configuration).

Fonction 2 : Diffusion cohérente de la mémoire

  • théorieMatAnyone : MatAnyone garantit la cohérence des résultats de l'incrustation dans la dimension temporelle en mémorisant les caractéristiques de l'image précédente et en les intégrant dans le traitement de l'image actuelle.
  • gréementLe programme ne nécessite pas de configuration supplémentaire, cette fonction est intégrée dans le processus d'inférence. Tant que le masque de la première image est fourni, le programme propagera automatiquement la mémoire image par image.
  • Conseils d'optimisation: :
    • En cas de changement soudain de l'éclairage dans la vidéo, ajustez les paramètres dans le fichier de configuration (par exemple, l'éclairage de l'image). memory_fusion_rate), pour une description des paramètres, voir config.yaml Documentation.
    • Exemple de commande d'ajustement :
      python inference.py --video data/input_video.mp4 --mask data/masks/mask_frame1.png --config config.yaml --output output/
      

Fonction 3 : Traitement des frontières de haute qualité

  • Méthode d'habilitationActivé par défaut, aucune action supplémentaire n'est requise. Le programme optimise automatiquement les détails des bords.
  • vérifier l'efficacitéLes vidéos avec des arrière-plans complexes (par exemple, les cheveux d'un personnage qui se balancent dans le vent) sont traitées de manière à ce que les bordures soient naturelles dans la vidéo de sortie.
  • effet de renforcementSi les résultats ne sont pas satisfaisants, essayez d'augmenter la résolution de l'inférence en ajoutant la commande --resolution 1080 Paramètres :
    python inference.py --video data/input_video.mp4 --mask data/masks/mask_frame1.png --resolution 1080 --output output/
    

Précautions d'emploi

  • ressource informatiqueSi vous utilisez un processeur, il est recommandé de raccourcir la durée de la vidéo (moins de 30 secondes) afin de réduire le temps d'attente.
  • Qualité du masque de la première imageLa précision du masque affecte directement les résultats des images suivantes et il est recommandé d'effectuer un tracé minutieux, en particulier dans les régions de bordures.
  • référence de la documentationEn cas de problème, consulter README.md Vous pouvez également contacter l'auteur à l'adresse peiqingyang99@outlook.com pour obtenir de l'aide.
  • Soutien communautaireLa page GitHub Issues contient les commentaires et les solutions des utilisateurs, et il est recommandé de la consulter régulièrement pour obtenir des mises à jour.

Avec les étapes ci-dessus, les utilisateurs peuvent rapidement commencer à utiliser MatAnyone et compléter l'ensemble du processus, de l'installation à l'incrustation vidéo. Qu'il s'agisse de montage professionnel ou de recherche et développement, MatAnyone offre une assistance technique stable.

© 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...