世界启动Ⅷ--AI视频制作-方案与创新

news2024/9/20 18:54:38

1.文本/图片生成视频顾名思义,就是输入一段文本描述/上传一张图片即可生成对应的视频。我们常见的Runway、Pika、NeverEnds、Pixverse、svd等都属于此类。比如runway的影视风格Pika的动漫风格NeverEnds的人像模特当然还有一些外延应用,例如最近比较火的阿里的“全民舞王”,底层基于Diffusion Model,再结合了Controlnet等其他技术,后文也会讲到。

2.视频到视频的生成通常分为风格迁移类型、视频内部的替换、局部重绘、视频AI高清化。如WonderStudio的人物CG替换:

DomoAI的视频风格转换涉及技术包括:视频序列帧生成和 Contorlnet 处理、视频风格迁移Lora、视频放大、面部修复等。

视频换脸常见的有Faceswap、DeepFacelab等。涉及技术包括:人脸检测、特征提取、人脸转换、优化等。

3.数字人类以Heygen和D-iD为代表,通过人脸检测Face detection、语音克隆TTS、口型同步Lip sync技术等组合实现。

4.视频编辑类型素材匹配可以根据你给定的主题或者需求,通过搜索现有素材拼接成一个完成的视频。我们平时剪辑最常用的剪映就是其中的一种,可以在线搜索素材匹配你的文本需求。

关键部分剪辑 将长视频转化为所需的短视频,适用于访谈节目类。涉及技术可能包括使用OpenCV和TensorFlow来分析视频内容,识别关键片段,然后使用MoviePy来剪辑和组装这些片段,形成短视频。

视频高清化通过超分算法、降噪算法、以及插帧等功能共同实现视频质量的提升。

生成式AI视频技术大家可以感受到,上述AI视频的应用可谓是五花八门,但底层的技术不外乎以下3种:

GAN、Diffusion Model以及这两年在大模型领域大火的Transformer架构。

当然也包括变分自编码器(Variational Autoencoder, VAE)和Diffusion的前身DDPM(Denoising Diffusion Probabilistic Model),我们这里不详细展开,主要用通俗的语言介绍前面3种。

1.生成式对抗网络 GANGenerative adversarial networks

顾名思义,GAN包括一个生成器和一个判别器。生成器就像一个画家,根据文字描述尽力画出真实般的图像,而判别器就像一个鉴定师,努力分辨哪些画是真实的哪些是生成器画的。两者不断竞争,生成器变得越来越擅长画出逼真图像,判别器变得越来越聪明分辨真伪,最终实现较为逼真的图像生成。"是不是很像小时候老师拿着戒尺在旁边指导你学习"GAN也同时存在一些短板:失真:与扩散模型生成的图像相比,GAN往往有更多的伪影和失真。训练稳定性:GAN的训练过程涉及一个生成器和一个判别器的对抗过程,这可能导致训练不稳定和难以调优。相比之下,扩散模型的训练过程更加稳定,因为它们不依赖于对抗训练。多样性:相比于GAN,扩散模型在生成图像时能够展现出更高的多样性,这意味着它们能够产生更加丰富和多变的图像,而不会过分依赖于训练数据集中的特定模式。大约在2020年左右,扩散模型在学术界和工业界开始获得更多的关注,尤其是当它们在图像生成的各个方面表现出色时。但这并不意味着GAN已经完全过时,在风格迁移和超分方面也得到广泛的探索和应用。

2.扩散模型 Diffusion ModelDiffusion Models 的灵感来自 non-equilibrium thermodynamics (非平衡热力学)。

理论首先定义扩散步骤的马尔可夫链,以缓慢地将随机噪声添加到数据中,然后学习逆向扩散过程以从噪声中构造所需的数据样本。通俗地解释扩散模型的工作方式有点像雕刻家,从一块粗糙的石头(或者在我们的例子中是一张模糊、无序的图像)开始,逐渐细化和调整,直到形成一个精细的雕塑(即清晰、有意义的图像)。

目前我们熟知的Runway、Pika其实都是基于Diffusion模型的。但是其中细节又有所不同。对于这两个产品存在以下两种技术架构:Pika - Per Frame在“Per Frame”架构中,扩散模型针对视频中的每一帧单独处理,就像它们是独立的图片一样。

这种方法的优势在于它可以保证每一帧的图像质量。然而无法有效地捕捉视频中的时间连贯性和动态变化,因为每一帧都是独立处理的。因此会损失一定的精度,我们看到Pika早期生成视频有点“糊”可能也与此有关。

Runway - Per Clip“Per Clip”架构则是将整个视频片段作为一个单一的实体来处理。在这种方法中,扩散模型考虑了视频中帧与帧之间的时间关系和连贯性。其优势在于能够更好地捕捉和生成视频的时间动态,包括运动和行为的连贯性。更完整地保留了训练视频数据的精度。

然而,“Per Clip”方法可能需要更复杂的模型和更多的计算资源,因为它需要处理整个视频片段中的时间依赖性。

对比Pika的Per Frame架构,Per Clip更完整地保留了训练视频素材的信息,成本较高的同时天花板也相对较高。

由于扩散模型本身就是计算密集型的,所以在生成长视频时,这种计算负担会急剧增加,并且时间一致性也是对扩散模型一项不小的考验。而Transformer架构特别擅长处理长序列数据,这对于生成长视频来说是一个重要优势,它们能够更好地理解和维持视频内容在时间上的连贯性。

3.Transformer架构(LLM架构)在语言模型中,Transformer通过分析大量文本来学习语言的规则和结构,进而通过概率推演出后续文本。

当我们将这种架构应用于图像生成时,相比于扩散模型是从混乱中创造出秩序和意义,Transformer在图像生成中的应用类似于学习和模仿视觉世界的“语言”。例如,它会学习颜色、形状和对象如何在视觉上组合和交互,然后使用这些信息来生成新的图像。

Transformer架构有其独特优势,包括明确的密度建模和更稳定的训练过程。它们能够利用帧与帧之间的关联,生成连贯且自然的视频内容。

除此之外,diffusion Model目前最大的模型也就 7 到 8 个 billion 参数规模,但 transformer 模型最大可能已经达到 trillion 级,完全两个量级。

然而,自Transformer架构面临着计算资源、训练数据量和时间的挑战。相比于扩散模型,需要更多的模型参数,对计算资源和数据集的需求相对更高。

所以在早期算力以及数据量紧凑的时候Transformer架构生成视频/图像没有得到充分的探索和应用。

AI视频外延技术及应用“照片跳舞”——Animate anyone基于扩散模型+Controlnet相关等技术技术概述:网络从多帧噪声作为初始输入开始,采用基于Stable Diffusion (SD)设计的去噪UNet结构。和我们熟悉的Animatediff类似,再结合类似Controlnet的姿势控制和一致性优化等技术。

网络核心包括三个关键部分:

1、ReferenceNet,负责编码参考图像中角色的外观特征,确保视觉一致性。

2、Pose Guider,用于编码运动控制信号,实现角色动作的精确控制;

3、Temporal Layer,它处理时间序列信息,保证角色运动在连续帧之间的流畅性和自然性。

这三个组件的结合使网络能够生成在视觉上一致、动作上可控且时间上连贯的动画角色

“真人视频转化为动漫”——DomoAI基础模型也是基于Diffusion Model,另外结合了风格迁移。

第一步ControlNet Passes Export,用于提取控制通道,作为制作初始原始动画帧的基础。

第二步是Animation Raw - LCM,这是工作流的核心,主要用于渲染主要的原始动画。

第三步是AnimateDiff Refiner - LCM,用于进一步增强原始动画,添加细节、放大和细化。

最后是AnimateDiff Face Fix - LCM,专门用于改善经过细化工作流处理后仍不理想的面部图像。

“AI视频换脸”——Faceswap总体上,换脸主要分为以下三个过程:人脸检测-特征提取-人脸转换-后处理

AI视频换脸技术,通常被称为“深度伪造”(Deepfake),基于深度学习,特别是使用了类似GAN(生成对抗网络)或自编码器的模型。

因为该技术使用风险较大,因此不在这里详细介绍。

AI视频技术展望“未来的大一统?”——Transformer架构不仅能看得见,而且能听得着Google近期发布了一个专注于视频生成的VideoPoet,能够一站式生成视频、音频、支持更长的视频生成,还对现有视频生成中比较普遍动作一致性提供了很好的解决方案,尤其是大范围 motion 的连贯性。

VideoPoet和绝大多数视频领域使用模型不同,没有走 diffusion 的路线,而是沿着 transformer 架构开发,将多个视频生成功能集成到单个 LLM (大语言模型 Transformer架构)中,证明了transformer除了有杰出的文本生成能力,并且在视频生成上拥有极大潜力。

此外还能同时生成声音,并且支持语言控制修改视频。VideoPoet的小熊打鼓(含声音)“diffusion 最大的模型也就 7 到 8 个 billion 参数规模,但 transformer 模型最大可能已经达到 trillion 级。

在语言模型方面,大公司花了 5 年时间、投入数百亿美元,才把模型做到现在规模,而且,随着模型规模的增大,大模型架构成本也成倍增长。

”谷歌科学家蒋路如是说。本质上说基于大语言模型Transformer架构的视频模型仍是一个"语言模型",因为训练和模型框架没有改变。

只是输入的“语言”扩展到了视觉等其他模态,这些模态也可以离散化表示为符号。早期受到资源、算力、视频数据等多方面限制,我们没有看到Transformer在视频生成的杰出效果。但是最近几年随着GPT带来的大语言模型的飞速发展以及资金支持。

未来“一站式”文本、图像、声音、视频的多模态大模型将备受瞩目。AI视频也即将迎来GPT时刻?

值得注意的是,Transformer虽然是目前最当红的构架,具有高度可扩展和可并行的神经网络架构。但Transformer中完全注意力机制的记忆需求,与输入序列的长度呈二次方关系。

在处理视频等高维信号时,这种缩放会导致成本过高。因此,研究者提出了:窗口注意力潜在Transformer (W.A.L.T) :一种基于Transformer的潜在视频扩散模型 (LVDM) 方法。

欢迎你分享你的作品到我们的平台上:www.shxcj.com 或者 www.2img.ai 让更多的人看到你的才华。

创作不易,觉得不错的话,点个赞吧!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1948492.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C++客户端Qt开发——Qt窗口(工具栏)

2.工具栏 使用QToolBar表示工具栏对象&#xff0c;一个窗口可以有多个工具栏&#xff0c;也可以没有&#xff0c;工具栏往往也可以手动移动位置 ①设置工具栏 #include "mainwindow.h" #include "ui_mainwindow.h" #include<QToolBar> #include<…

JavaSE--基础语法--继承和多态(第三期)

一.继承 1.1我们为什么需要继承? 首先&#xff0c;Java中使用类对现实世界中实体来进行描述&#xff0c;类经过实例化之后的产物对象&#xff0c;则可以用来表示现实中的实体&#xff0c;但是 现实世界错综复杂&#xff0c;事物之间可能会存在一些关联&#xff0c;那在设计程…

开发AI自动直播工具需要了解的源代码!

随着人工智能技术的快速发展&#xff0c;AI自动直播工具成为了现代直播领域的一大创新&#xff0c;这些工具利用先进的算法和机器学习模型&#xff0c;能够自动化地生成、编辑和播出直播内容&#xff0c;极大地提高了直播的效率和质量。 然而&#xff0c;要开发一款功能强大的…

10 个顶级的PPT生成AI工具盘点,一文把所有好用软件尽收囊中!

你是否希望在工作中制作 PPT 演示文稿&#xff0c;与他人分享你的洞见&#xff0c;或是发表演讲&#xff1f;然而&#xff0c;使用传统的 PPT 制作方式既耗时又费力&#xff0c;步入 AI 时代后&#xff0c;人们寻求更智能、更简便的 PPT 演示文稿制作方法。 目前市场上出现了一…

谷粒商城实战笔记-65-商品服务-API-品牌管理-表单校验自定义校验器

文章目录 1&#xff0c;el-form品牌logo图片自定义显示2&#xff0c;重新导入和注册element-ui组件3&#xff0c;修改brand-add-or-update.vue控件的表单校验规则firstLetter 校验规则sort 校验规则 1&#xff0c;el-form品牌logo图片自定义显示 为了在品牌列表中自定义显示品…

本地部署VMware ESXi服务实现无公网IP远程访问管理服务器

文章目录 前言1. 下载安装ESXi2. 安装Cpolar工具3. 配置ESXi公网地址4. 远程访问ESXi5. 固定ESXi公网地址 前言 在虚拟化技术日益成熟的今天&#xff0c;VMware ESXi以其卓越的性能和稳定性&#xff0c;成为了众多企业构建虚拟化环境的首选。然而&#xff0c;随着远程办公和跨…

Codeforces Round 955 (Div. 2, with prizes from NEAR!) B. Collatz Conjecture(数学)

这道题考察的主要是通过数学对过程进行优化&#xff0c;而不是通过数学而得到结论&#xff08;让人摸不着头脑&#xff09;。 我们不需要把k次直接一次次的加&#xff0c;这样时间复杂度太大&#xff0c;那么我们现在探讨一次要加多少。 我们想要实现加一个数n&#xff0c;满足…

事务、函数和索引

什么是事务&#xff1f; 事务&#xff08;Transaction&#xff09;&#xff0c;就是将一组SQL语句放在同一批次内去执行&#xff0c;如果一个SQL语句出错&#xff0c;则该批次内 的所有SQL都将被取消执行。 特点 一个事务中如果有一个数据库操作失败&#xff0c;那么整个事务…

Linux网络-pingtelnet

作者介绍&#xff1a;简历上没有一个精通的运维工程师。希望大家多多关注我&#xff0c;我尽量把自己会的都分享给大家&#xff0c;下面的思维导图也是预计更新的内容和当前进度(不定时更新)。 Linux服务器作为一个常用的网络服务器&#xff0c;主要的作用就是向客户端提供网络…

vue3前端开发-小兔鲜项目-关于详情页图片渲染的一些技术

vue3前端开发-小兔鲜项目-关于详情页图片渲染的一些技术&#xff01;经过前面几天的努力&#xff0c;我们现在已经可以正常渲染产品详情了。是时候汇总一下&#xff0c;基础的技术知识点了。 1&#xff1a;单页面组件内的抽离&#xff0c;是一种很重要的思想。当我们遇到了&…

leetcode日记(49)旋转链表

其实不难&#xff0c;就是根据kk%len判断需要旋转的位置&#xff0c;再将后半段接在前半段前面就行。 /*** Definition for singly-linked list.* struct ListNode {* int val;* ListNode *next;* ListNode() : val(0), next(nullptr) {}* ListNode(int x) : …

World of Warcraft [CLASSIC] Timebadge

游戏币【每个服务器实时金价不一样&#xff0c;本例子是5000-6000金】 1枚【魔兽世界时光徽章】 30天游戏时间。 5760金币游戏币&#xff0c;策划如何消耗游戏里面的金币总量&#xff0c;以及如何留住那些非人民币玩家呢 30天加上去了 World of Warcraft [CLASSIC] [魔兽世界…

VitePress Index.md 的设置:开发者指南

&#x1f49d;&#x1f49d;&#x1f49d;欢迎莅临我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:「stormsha的主页」…

使用vcpkg

概述 vcpkg 是 Microsoft 和 C 社区维护的免费开放源代码 C/C 包管理器。 它于 2016 年推出&#xff0c;可帮助开发人员将项目迁移到较新版本的 Visual Studio。 vcpkg 已演变成 Windows、macOS 和 Linux 上开发人员使用的跨平台工具。 vcpkg 拥有大量开放源代码库注册表和企业…

Linux-安装VMware-01

一、认识linux Linux 是一个开源的类 Unix 操作系统&#xff0c;由林纳斯托瓦兹&#xff08;Linus Torvalds&#xff09;于1991年首次发布。Linux 是许多计算机硬件的底层操作系统&#xff0c;特别是服务器、嵌入式系统和个人电脑。它支持多种架构&#xff0c;包括 x86、x64、A…

linux编译gcc源码详解

linux编译gcc源码详解 一、下载依赖包二、安装依赖2.1 安装m42.2 编译GMP2.3 编译MPFR2.4. 编译MPC2.5 设置环境变量三、gcc编译3.1 下载gcc3.2 编译gcc源码3.3 环境变量的配置一、下载依赖包 https://gcc.gnu.org/pub/gcc/infrastructure 命令下载依赖库,注意gcc编译时的依…

stm32cubeIDE与stm32cubeMX库文件安装路径自定义设置

1、 stm32cubeMX库文件安装路径自定义设置 打开stm32cubeMX软件&#xff0c;依次点击标题栏【Help】→【Updater Settings】 点击图中的【Browser】&#xff0c;选择自己想要存放库文件的文件夹&#xff0c;选择完成后点击【OK】即可设置成功。 PS&#xff1a;这里的路径建议…

python实现接缝雕刻算法

python实现接缝雕刻算法 接缝雕刻算法步骤详解Python实现详细解释优缺点应用领域接缝雕刻算法(Seam Carving Algorithm)是一种内容感知的图像缩放技术,可以智能地改变图像的尺寸,而不会明显影响其重要内容。它通过动态规划的方式寻找图像中的“接缝”,即在图像中从上到下或…

hadoop完全分布模式搭建

本次搭建是基于伪分布式进行的,所以配置之前需要搭建好伪分布式 我使用的ubuntu版本见下 虚拟机之前安装过在此不在记录 伪分布式的搭建过程在之前的第一次实验报告上有详细的记录 修改主机名

《Java初阶数据结构》----7.<优先级队列PriorityQueue>

前言 大家好&#xff0c;我目前在学习java。之前也学了一段时间&#xff0c;但是没有发布博客。时间过的真的很快。我会利用好这个暑假&#xff0c;来复习之前学过的内容&#xff0c;并整理好之前写过的博客进行发布。如果博客中有错误或者没有读懂的地方。热烈欢迎大家在评论区…