


StreamingT2V, un générateur de vidéo longue de deux minutes et 1 200 images, est là, et le code sera open source
Plan large du champ de bataille, des stormtroopers courant...
invite : Plan large du champ de bataille, des stormtroopers courant...
Cette vidéo de 2 minutes avec 1 200 images est une vidéo générée à partir de texte (texte -à-vidéo). Même si les traces de l'IA sont encore évidentes, les personnages et les scènes font preuve d'une assez bonne cohérence.
Comment ça se fait ? Il faut savoir que bien que la qualité de génération et la qualité d'alignement du texte de la technologie vidéo Vincent aient été assez bonnes ces dernières années, la plupart des méthodes existantes se concentrent sur la génération de vidéos courtes (généralement de 16 ou 24 images). Cependant, les méthodes existantes qui fonctionnent pour les vidéos courtes échouent souvent avec les vidéos longues (≥ 64 images).
Même la génération de séquences courtes nécessite souvent une formation coûteuse, comme des étapes de formation dépassant 260 000 et des tailles de lots dépassant 4 500. Si vous ne vous entraînez pas sur des vidéos plus longues et n'utilisez pas un générateur de vidéos courtes pour produire de longues vidéos, les longues vidéos qui en résultent sont souvent de mauvaise qualité. La méthode autorégressive existante (génération d'une nouvelle vidéo courte en utilisant les dernières images de la vidéo courte, puis synthèse de la vidéo longue) présente également quelques problèmes tels qu'un changement de scène incohérent.
Afin de combler les lacunes des méthodes existantes, Picsart AI Research et d'autres institutions ont proposé conjointement une nouvelle méthode vidéo Vincent : StreamingT2V. Cette méthode utilise une technologie autorégressive et la combine à un module de mémoire long court terme, ce qui lui permet de générer de longues vidéos avec une forte cohérence temporelle.
- Titre de l'article : StreamingT2V : Génération de vidéos longues cohérentes, dynamiques et extensibles à partir de texte
- Adresse de l'article : https://arxiv.org/abs/2403.14773
- Adresse du projet : https ://streamingt2v.github.io/
Ce qui suit est un résultat de génération vidéo de 600 images d'une minute. Vous pouvez voir que les abeilles et les fleurs ont une excellente cohérence :
Par conséquent, l'équipe a proposé le. conditions Module d'attention (CAM). CAM utilise son mécanisme d'attention pour intégrer efficacement les informations des images précédentes afin de générer de nouvelles images, et peut gérer librement le mouvement dans les nouvelles images sans être limité par la structure ou la forme des images précédentes.
Afin de résoudre le problème des changements d'apparence des personnes et des objets dans la vidéo générée, l'équipe a également proposé le module de préservation de l'apparence (APM) : il peut extraire les informations d'apparence des objets ou des scènes globales à partir d'une image initiale ( frame d'ancrage) et utilisez ces informations pour réguler le processus de génération vidéo pour tous les blocs vidéo.
Pour améliorer encore la qualité et la résolution de la génération de vidéos longues, l'équipe a amélioré un modèle d'amélioration vidéo pour la tâche de génération autorégressive. Pour ce faire, l'équipe a sélectionné un modèle vidéo Vincent haute résolution et a utilisé la méthode SDEdit pour améliorer la qualité de 24 blocs vidéo consécutifs (avec 8 images superposées).
Pour faciliter la transition d'amélioration des blocs vidéo, ils ont également conçu une méthode de fusion aléatoire qui mélange les blocs vidéo améliorés qui se chevauchent de manière transparente.
Méthode
Tout d'abord, générez une vidéo de 5 secondes à une résolution de 256 × 256 (16 ips), puis améliorez-la à une résolution plus élevée (720 × 720). La figure 2 montre son flux de travail complet.
La partie de génération de vidéo longue comprend l'étape d'initialisation et l'étape de streaming T2V.
Parmi eux, la phase d'initialisation utilise un modèle vidéo Vincent pré-entraîné (par exemple, vous pouvez utiliser Modelscope) pour générer le premier bloc vidéo de 16 images tandis que la phase de streaming vidéo Vincent génère les images suivantes de manière autorégressive ; . Nouveau contenu.
Pour le processus autorégressif (voir Figure 3), le CAM nouvellement proposé par l'équipe peut utiliser les informations à court terme des 8 dernières images du bloc vidéo précédent pour obtenir une commutation transparente entre les blocs. En outre, ils utiliseront le module APM récemment proposé pour extraire les informations à long terme d'une image d'ancrage fixe, afin que le processus autorégressif puisse faire face de manière robuste aux changements de choses et aux détails de la scène au cours du processus de génération.
Après avoir généré de longues vidéos (80, 240, 600, 1200 images ou plus), ils améliorent ensuite la qualité de la vidéo grâce à l'étape de raffinement du streaming. Ce processus utilise un modèle vidéo court Vison haute résolution (par exemple, MS-Vid2Vid-XL) de manière autorégressive, associé à une méthode de mélange stochastique récemment proposée pour un traitement transparent des blocs vidéo. De plus, cette dernière étape ne nécessite pas de formation supplémentaire, ce qui rend cette méthode moins coûteuse en calcul.
Module d'attention conditionnelle
Tout d'abord, le modèle vidéo Vincent (court) pré-entraîné utilisé est noté Vidéo-LDM. Le module d'attention (CAM) est constitué d'un extracteur de fonctionnalités et d'un injecteur de fonctionnalités injectés dans Video-LDM UNet.
L'extracteur de fonctionnalités utilise un encodeur d'image image par image, suivi de la même couche d'encodeur utilisée par Video-LDM UNet jusqu'à la couche intermédiaire (et initialisée par le poids d'UNet).
Pour l'injection de fonctionnalités, la conception ici est de permettre à chaque connexion de saut à longue portée dans UNet de se concentrer sur les fonctionnalités correspondantes générées par CAM grâce à une attention croisée.
Module de préservation de l'apparence
Le module APM intègre la mémoire à long terme dans le processus de génération vidéo en utilisant les informations des images d'ancrage fixes. Cela permet de conserver les caractéristiques de la scène et de l'objet pendant la génération du patch vidéo.
Afin qu'APM puisse équilibrer le traitement des informations de guidage fournies par les cadres d'ancrage et les instructions textuelles, l'équipe a apporté deux améliorations : (1) Mélanger le jeton d'image CLIP du cadre d'ancrage avec le jeton de texte CLIP de l'instruction textuelle (2) Un poids est introduit pour chaque couche d'attention croisée afin d'utiliser l'attention croisée.
Amélioration vidéo autorégressive
Pour améliorer de manière autorégressive les blocs vidéo générés de 24 images, un Refiner Video-LDM haute résolution (1280x720) est utilisé ici, voir image 3). Ce processus est effectué en ajoutant d'abord une grande quantité de bruit au bloc vidéo d'entrée, puis en utilisant ce modèle de diffusion vidéo Vincent pour effectuer un traitement de débruitage.
Cependant, cette méthode n'est pas suffisante pour résoudre le problème de l'inadéquation des transitions entre les blocs vidéo.
À cette fin, la solution de l’équipe est une méthode de mélange aléatoire. Veuillez vous référer au document original pour plus de détails.
Expérience
Dans l'expérience, les mesures d'évaluation utilisées par l'équipe comprennent : le score SCuts pour évaluer la cohérence temporelle, l'erreur de torsion sensible au mouvement (MAWE) pour évaluer l'erreur de mouvement et de torsion, le score de similarité texte-image CLIP (CLIP) et score esthétique (AE) pour évaluer la qualité de l’alignement du texte.
Étude d'ablation
Pour évaluer l'efficacité de divers nouveaux composants, l'équipe a réalisé une étude d'ablation sur 75 invites échantillonnées au hasard dans l'ensemble de validation.
CAM pour le traitement conditionnel : CAM aide le modèle à générer des vidéos plus cohérentes, avec des scores SCuts 88 % inférieurs à ceux des autres modèles de base en comparaison.
Mémoire à long terme : La figure 6 montre que la mémoire à long terme peut grandement aider à maintenir la stabilité des caractéristiques des objets et des scènes pendant le processus de génération autorégressive.
Sur une mesure d'évaluation quantitative (score de réidentification de la personne), APM a obtenu une amélioration de 20 %.
Mélange aléatoire pour l'amélioration vidéo : par rapport aux deux autres benchmarks, le mixage aléatoire peut apporter des améliorations de qualité significatives. Cela peut également être vu sur la figure 4 : StreamingT2V peut obtenir des transitions plus fluides.
StreamingT2V par rapport au modèle de base
L'équipe a comparé l'intégration du StreamingT2V amélioré ci-dessus avec plusieurs modèles, y compris la méthode image-vidéo I2VGen en utilisant une approche autorégressive, par le biais de méthodes quantitatives et évaluations qualitatives XL, SVD, DynamiCrafter-XL, SEINE, méthode vidéo à vidéo SparseControl, méthode texte à vidéo longue FreeNoise.
Évaluation quantitative : comme le montre le tableau 8, l'évaluation quantitative sur l'ensemble de test montre que StreamingT2V fonctionne le mieux en termes de transition transparente des blocs vidéo et de cohérence des mouvements. Le score MAWE de la nouvelle méthode est également nettement meilleur que celui de toutes les autres méthodes – voire plus de 50 % inférieur à celui de la deuxième meilleure SEINE. Un comportement similaire est observé dans les scores SCuts.
De plus, StreamingT2V n'est que légèrement inférieur à SparseCtrl en termes de qualité d'image unique de la vidéo générée. Cela montre que cette nouvelle méthode est capable de générer de longues vidéos de haute qualité avec une meilleure cohérence temporelle et une meilleure dynamique de mouvement que les autres méthodes de comparaison.
Évaluation qualitative : La figure ci-dessous montre la comparaison des effets du StreamingT2V avec d'autres méthodes. On voit que la nouvelle méthode peut maintenir une meilleure cohérence tout en assurant l'effet dynamique de la vidéo.
Pour plus de détails sur la recherche, veuillez vous référer à l'article original.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Lors de la conversion des chaînes en objets dans vue.js, JSON.Parse () est préféré pour les chaînes JSON standard. Pour les chaînes JSON non standard, la chaîne peut être traitée en utilisant des expressions régulières et réduisez les méthodes en fonction du format ou du codé décodé par URL. Sélectionnez la méthode appropriée en fonction du format de chaîne et faites attention aux problèmes de sécurité et d'encodage pour éviter les bogues.

L'article présente le fonctionnement de la base de données MySQL. Tout d'abord, vous devez installer un client MySQL, tel que MySQLWorkBench ou le client de ligne de commande. 1. Utilisez la commande MySQL-UROot-P pour vous connecter au serveur et connecter avec le mot de passe du compte racine; 2. Utilisez Createdatabase pour créer une base de données et utilisez Sélectionner une base de données; 3. Utilisez CreateTable pour créer une table, définissez des champs et des types de données; 4. Utilisez InsertInto pour insérer des données, remettre en question les données, mettre à jour les données par mise à jour et supprimer les données par Supprimer. Ce n'est qu'en maîtrisant ces étapes, en apprenant à faire face à des problèmes courants et à l'optimisation des performances de la base de données que vous pouvez utiliser efficacement MySQL.

Traiter efficacement 7 millions d'enregistrements et créer des cartes interactives avec la technologie géospatiale. Cet article explore comment traiter efficacement plus de 7 millions d'enregistrements en utilisant Laravel et MySQL et les convertir en visualisations de cartes interactives. Exigences initiales du projet de défi: extraire des informations précieuses en utilisant 7 millions d'enregistrements dans la base de données MySQL. Beaucoup de gens considèrent d'abord les langages de programmation, mais ignorent la base de données elle-même: peut-il répondre aux besoins? La migration des données ou l'ajustement structurel est-il requis? MySQL peut-il résister à une charge de données aussi importante? Analyse préliminaire: les filtres et les propriétés clés doivent être identifiés. Après analyse, il a été constaté que seuls quelques attributs étaient liés à la solution. Nous avons vérifié la faisabilité du filtre et établi certaines restrictions pour optimiser la recherche. Recherche de cartes basée sur la ville

Il existe de nombreuses raisons pour lesquelles la startup MySQL échoue, et elle peut être diagnostiquée en vérifiant le journal des erreurs. Les causes courantes incluent les conflits de port (vérifier l'occupation du port et la configuration de modification), les problèmes d'autorisation (vérifier le service exécutant les autorisations des utilisateurs), les erreurs de fichier de configuration (vérifier les paramètres des paramètres), la corruption du répertoire de données (restaurer les données ou reconstruire l'espace de la table), les problèmes d'espace de la table InNODB (vérifier les fichiers IBDATA1), la défaillance du chargement du plug-in (vérification du journal des erreurs). Lors de la résolution de problèmes, vous devez les analyser en fonction du journal d'erreur, trouver la cause profonde du problème et développer l'habitude de sauvegarder régulièrement les données pour prévenir et résoudre des problèmes.

Résumé: Il existe les méthodes suivantes pour convertir les tableaux de chaîne Vue.js en tableaux d'objets: Méthode de base: utilisez la fonction de carte pour convenir à des données formatées régulières. Gameplay avancé: l'utilisation d'expressions régulières peut gérer des formats complexes, mais ils doivent être soigneusement écrits et considérés. Optimisation des performances: Considérant la grande quantité de données, des opérations asynchrones ou des bibliothèques efficaces de traitement des données peuvent être utilisées. MEILLEUR PRATIQUE: Effacer le style de code, utilisez des noms de variables significatifs et des commentaires pour garder le code concis.

Afin de définir le délai d'expiration de Vue Axios, nous pouvons créer une instance AxiOS et spécifier l'option Timeout: dans les paramètres globaux: vue.prototype. $ Axios = axios.create ({timeout: 5000}); Dans une seule demande: ce. $ axios.get ('/ api / utilisateurs', {timeout: 10000}).

L'optimisation des performances MySQL doit commencer à partir de trois aspects: configuration d'installation, indexation et optimisation des requêtes, surveillance et réglage. 1. Après l'installation, vous devez ajuster le fichier my.cnf en fonction de la configuration du serveur, tel que le paramètre innodb_buffer_pool_size, et fermer query_cache_size; 2. Créez un index approprié pour éviter les index excessifs et optimiser les instructions de requête, telles que l'utilisation de la commande Explication pour analyser le plan d'exécution; 3. Utilisez le propre outil de surveillance de MySQL (ShowProcessList, Showstatus) pour surveiller la santé de la base de données, et sauvegarde régulièrement et organisez la base de données. Ce n'est qu'en optimisant en continu ces étapes que les performances de la base de données MySQL peuvent être améliorées.

Ingénieur backend à distance Emploi Vacant Société: Emplacement du cercle: Bureau à distance Type d'emploi: Salaire à temps plein: 130 000 $ - 140 000 $ Description du poste Participez à la recherche et au développement des applications mobiles Circle et des fonctionnalités publiques liées à l'API couvrant l'intégralité du cycle de vie de développement logiciel. Les principales responsabilités complètent indépendamment les travaux de développement basés sur RubyOnRails et collaborent avec l'équipe frontale React / Redux / Relay. Créez les fonctionnalités de base et les améliorations des applications Web et travaillez en étroite collaboration avec les concepteurs et le leadership tout au long du processus de conception fonctionnelle. Promouvoir les processus de développement positifs et hiérarchiser la vitesse d'itération. Nécessite plus de 6 ans de backend d'applications Web complexe
