长视频生成又有重大突破!DreamFactory:一致、连贯且引人入胜的长视频生成框架
文章链接:https://arxiv.org/pdf/2408.11788
亮点直击
- 多agent协作与关键帧迭代:提出了DreamFactory框架,模拟AI虚拟电影制作团队,利用多agent协作进行脚本编写、角色设计等,并引入关键帧迭代设计方法以保持视频段落的一致性。
- 监控机制与图像数据库:通过引入监控角色和集成图像向量数据库,确保了长视频生成过程中的图像一致性和稳定性。
- 优异的评估结果:在UTF-101和HMDB51数据集上测试,DreamFactory生成的视频在质量上显著优于传统方法,同时超越了网络上现有AI生成短视频的平均质量。
目前的视频生成模型在创建短小、逼真的片段方面表现出色,但在生成较长的多场景视频时存在困难。本文介绍了DreamFactory,这是一种基于大语言模型(LLM)的框架,旨在解决这一挑战。DreamFactory利用了多智能体协作的原则,并采用关键帧迭代设计方法,确保长视频中的一致性和风格。它使用了链式思维(COT)来解决大语言模型中固有的不确定性问题。DreamFactory能够生成长度较长、风格一致且复杂的视频。对这些长视频的评估也是一个挑战。同时提出了新的指标,如跨场景人脸距离评分和跨场景风格一致性评分。为了进一步推动这一领域的研究,本文贡献了包含150多个经过人工评分的视频的多场景视频数据集。DreamFactory为在视频生成中利用多智能体系统开辟了道路。
DreamFactory
DreamFactory框架利用多个大语言模型(LLM)来构建一个模拟的动画公司,分配CEO、导演和创作者等角色。给定一个故事后,这些角色通过社交互动和合作来创建视频。该框架使LLM能够通过使用小型视频生成模型作为工具来完成庞大的任务,从而模拟现实世界。
角色定义
在模拟动画公司DreamFactory的架构中,包含以下角色:CEO、电影导演、制片人、编剧、制片人和评论员。在DreamFactory框架内,这些角色与现实世界中的相似,承担确定电影风格、编写剧本和绘画等职责。
角色定义提示主要包括三部分:职位、任务和要求。例如,电影创作者的定义提示包括以下内容:(a)你是电影美术总监。现在,都在Dream Factory工作……(b)你的工作是根据导演给出的场景生成图片……以及(c)你必须遵守现实世界的规则,如颜色不变……。对于情节讨论等任务,也限制其讨论轮次不能超过特定数量(根据用户的设置和公司的规模定义)。使用以下提示来确保这一点:"你告诉我你的想法和故事,应该集思广益并互相批评对方的想法。在讨论超过5个想法后,任何一方都必须主动终止讨论,选择最佳风格,并以一个单词<INFO>回复,后跟最新的风格决定,例如卡通风格。"
在下图3的面板(a)和(b)中,展示了角色被定义和启动角色扮演的示意图。整个公司的完整架构在图8中得到了全面介绍。对于每个角色,定义了一张角色卡片,包括:
1)角色名称放在每张卡片的左上角;
2)角色所涉及的阶段放在卡片的右上角;
3)在每张角色卡片上,展示了角色所参与的对话和协作角色;
4)在卡片的右侧展示了角色的中间输出;
5)最后,将对话之外的相应文件或内容放在卡片的底部。
DreamFactory框架流程
本节介绍DreamFactory的具体流程。下图2展示了主要阶段并指出了哪些agent参与了对话。在深入探讨整个流程之前,有必要首先概述其基本组成部分:阶段和对话。如上图3所示,阶段代表一个完整的过程,它以一些文本或图像内容作为输入。由GPT组成的agent通过角色扮演、讨论和协作来处理这些输入,最终产生一些输出。对话是一个阶段的基本单元,通常一个阶段包含多轮对话。在固定的对话轮次之后,一个阶段接近结束,此时DreamFactory会保存该阶段生成的某些中间结论,这些结论是希望保留的。例如,在“风格决策”阶段,最终的结论将被保留。此外,在后续的阶段中,DreamFactory将提供必要的前期成果,例如在后续设计关键帧时调用之前的风格和脚本。
最近发现,大语言模型的能力受限于有限的推理能力,就像在现实生活中,过于复杂的情况会导致粗心和混乱。因此,该框架在视频领域的主要思想是将长视频的创作分解为特定的阶段,允许特定的大型模型扮演指定的角色,发挥其在分析具体问题上的强大能力。就像现实生活中的电影制作公司一样,DreamFactory采用经典的工作流程,从剧本创作开始,随后是绘图。总体而言,框架涵盖了六个主要阶段:任务定义、风格决策、故事提示、脚本设计和关键帧设计。最后一个阶段,即关键帧迭代设计的方法将在下一节介绍;此方法用于保持各阶段生成图像的一致性和连续性。在前四个阶段中,角色是通过对话进行的。
关键帧迭代设计
在生成长视频时,最具挑战性的问题是视频由一系列长序列的图像集合组成。因此,在生成时,模型需要保持长期一致的记忆,以确保模型生成的每一帧都能连贯地组成一致的视频。这种记忆包括两种类型:短期记忆知识和长期记忆系统。
短期记忆知识 嵌入在固定场景的视频中。在相邻帧之间,每一帧中的动画应保持连贯,角色应统一,颜色、风格等不应有显著变化。目前,最新的视频模型在短期记忆方面表现非常好。然而,仍然添加了一个监控器,以监督视频模型是否表现足够出色。如下图4所示,每一帧生成后都有一个审查过程。因此,为了保持短期一致性,引入的监督机制解决了这个问题。
长期记忆系统 则是困扰大多数当前模型的挑战,也是当今视频生成领域最紧迫的问题。特别是在基于GPT的全自动多智能体框架中,大语言模型固有的随机性和漂移现象使得这一问题难以解决。长期记忆意味着在场景转换之间,模型应能够保持绘图风格、角色连续性和叙事流程的一致性。为了维持长期记忆,引入了关键帧迭代设计方法,通过指导生成连续一致的图像,将长期记忆转化为短期记忆,并在每一步中迭代前进生成。如上图4所示,展示了每次迭代的过程。
在实际应用中,控制角色的细节是最具挑战性的方面。因此,在研究者们精心修改的提示下,特别强调了在多次实验中表现不佳的部分,关键帧迭代方法现在能够生成非常一致且具有实际价值的一系列图像。
实验
传统视频质量评估
评估指标 - 为了验证关键帧的连续性和框架生成视频的质量,在架构中嵌入了各种工具模型(如Runway、Diffusion、GPT)来评估由不同工具生成的视频的质量。在实验中,主要采用了以下评估指标:
(1) Fréchet Inception Distance (FID) 分数:衡量生成图像与真实图像之间的相似性。
(2) Inception Score (IS):评估生成图像的质量和多样性。
(3) CLIP 分数:评估生成图像的文本描述准确性。
(4) Fréchet Video Distance (FVD) 分数:FID在视频上的扩展,通过Fréchet距离比较真实视频与合成视频的特征分布。
(5) Kernel Video Distance (KVD):利用核函数比较真实视频与合成视频的特征分布。
在常规阶段,数据集包括由实验人员从COCO数据集中随机选择的70个关键词和简短句子的常规提示。这被用于评估基本工具模型生成的图像质量以及图像与文本之间的对齐程度。在脚本阶段,脚本填充阶段使用了从提供的数据集中随机提取的70个任务相关的脚本。这引导了模型根据相关情节生成内容,以评估DreamFactory框架中“动画部门”的功能。DreamFactory标签表示框架生成的与脚本对应的关键帧图像。
输出质量统计 - 使用DALL·E和Diffusion等模型生成的图像质量较高,达到了各项指标的最新水平。为了定量分析生成图像的质量,将与原始提示对应的图像输入GPT以获得GPT脚本,然后使用原始提示或GPT脚本作为提示生成1400张图像,从中计算FID、IS和CLIP分数。至于FVD和KVD,从多场景视频数据集中选择了100个样本,并手动提取了每个样本的10个关键帧,这些关键帧可用于生成多尺度视频。
下表1中的数据表明,使用脚本生成的图像质量平均比使用普通提示词生成的图像更为精细。这可能归因于GPT作为提示的有效性,并且当代模型通常擅长处理较长的提示。然而,在DreamFactory框架中,关键帧迭代设计与故事板创建、角色详细描述、场景设置、光照和风格确定的结合应用,显著提高了图像生成的质量。下表2中也显示出视频质量的类似提升。
多场景视频评估得分
跨场景面部距离得分 (Cross-Scene Face Distance Score, CSFD Score) - 在连续视频的生成中,角色一致性是首要问题。角色外观的不一致不仅会导致糟糕的视觉效果,还可能让观众难以理解剧情和内容。保持角色的一致性确保了围绕角色展开的故事情节的连贯性,并增强了视频的视觉吸引力。尤其是在长时长视频领域,一个视频通常由多个场景组成。这是一个前所未有的研究领域,迫切需要强有力的评估指标来评估跨复杂多场景视频中角色出现的一致性。在此背景下,实验性地引入了跨场景面部距离得分(CSFD Score)的概念,旨在验证不同场景中角色面部特征一致性的问题。在计算过程中,每个关键帧对应一个面部,并使用dlib库提取面部位置。通过面部识别库可以计算相似度得分。对于每一帧的面部部分,可以计算其与后续所有帧的相似度,然后取平均值。通过这种方法,可以准确地确定视频中的面部是否一致。相关的示意图和计算的伪代码在下面算法1中提供。
跨场景风格一致性得分 (Cross-Scene Style Consistency Score, CSSC Score) - 在长视频的制作中,保持风格一致性同样重要。一个一致的风格使视频看起来像一个连贯的整体。基于这一概念,研究者们引入了跨场景风格一致性得分(CSSC Score)。然而,目前还没有成熟的方法来快速确定视频的风格,因此在这一阶段,将依赖于大语言视觉模型的辅助。本质上,将视频分为几类,包括:动画、插画、折纸、油画、写实主义、赛博朋克和水墨画。
跨场景风格 - 一致性分数的计算方法如下:对于每个关键帧,使用由GPT-4V扮演的分类器来确定分类。一旦所有场景都被明确分为不同类别,计算最多数量类别的关键帧占总关键帧数的比例。下图6展示了一个部分输出,输入为“现实生活中一位老人制作传统的中国灯笼”。场景4展示了一个使用Dalle生成的动画灯笼,由GPT-4V担任分类器。可以观察到,在四个场景中,前三个被归类为写实风格,而第四个场景被分类为动漫风格。因此,不同风格的最大数量为三,导致跨场景风格一致性分数为75%。其他相关的示意图和计算的伪代码在算法2中提供。
平均关键帧CLIP分数 - 在生成多场景的长视频时,评估每个场景的关键帧与对应文本的一致性至关重要。为确保一致性,它们融入了大量额外信息,这可能在生成过程中导致与文本的偏差。这可能导致整体视频未能遵循脚本。因此,本节提出了平均关键帧CLIP分数,以确保关键帧场景与脚本的一致性。计算方法很简单:计算每个关键帧相对于场景提示期间生成场景的CLIP分数,并取平均值。
结果 - 在下表3中,本文的数据选择包括来自多场景视频数据集的70个以角色为中心的条目,这些条目由DreamFactory框架、GPT-4和DALL-E 3生成。基准模型使用了DALL-E 3,并输入了来自相同数据段的脚本。评估主要集中在以下三个指标上:
(1)跨场景面部距离分数(CSFD)
(2)跨场景风格一致性分数(CSSC)
(3)平均关键帧CLIP分数。
这些指标用于评估框架内面部特征的一致性、场景属性的一致性以及框架生成的提示与叙事和图像之间的对齐情况。
在跨场景人脸距离评分实验中,使用了face-recognition
库中的面部定位方法,来定位68个面部标志点,从而将肖像照片集中在面部区域。在图像编码阶段,使用了来自openai-clip
库的ViT模型对面部区域进行输入,并计算向量表示。随后,通过向量点积操作来确定最终的面部距离分数。由于面部图像之间的固有相似性,所有的分数大多都在0.5以上。具体的参考面部匹配分数对如下图7所示。在对CSSC分数和平均CLIP分数的分析中,使用了相同的一组随机选取的七十个样本作为数据。CSSC分数使用了GPT-4版本作为风格分析器。
结论
本文引入了DreamFactory:一个基于多agent的长视频生成框架。DreamFactory将多agent的理念引入视频生成领域,能够生成一致、连贯且引人入胜的长视频。DreamFactory引入了关键帧迭代设计方法,以确保不同帧之间风格、角色和场景的一致性,并且可以基于任何图像或视频生成工具构建。此外,DreamFactory还提出了新的评估指标,通过跨场景面部和风格一致性以及文本到视觉的对齐来验证其能力。在测试集上,DreamFactory框架能够实现高度一致的连续故事生成,标志着这一领域的重大突破。
本文转自 AI生成未来 ,作者:Zhifei Xie等