Dalle-3、Sora、Stable Diffusion 3 掀起AIGC新浪潮
随着科技的飞速发展,我们迎来了视觉AIGC高光时刻,一个充满无限可能与机遇的新时代。在这个时代里,三大里程碑Dalle-3、Sora和Stable Diffusion 3以其炸裂式的技术发展,引领着AIGC领域的新浪潮。文章首先做相应简要介绍,后半部分着重做新兴技术拆解分析,看看究竟哪些模块值得借鉴!
Dalle-3在2023年9月以其强大的图像生成能力惊艳了世人。它从精细化的文本描述入手,融合进了GPT-4的丰富caption能力,另外还引入了早已验证成功了latent空间替代逐pixel的预测,大幅提高了生成图像的质量和多样性。Dalle-3的出现,极大地推动了视觉AIGC领域的发展,为后续的效果创新奠定了坚实的基础。以下是官方样例:
紧随其后的是2024年2月15的Sora,它在通用视频生成领域取得了突破性的进展。Sora引入了先进的DiTs模块替换掉了UNET,并且将视频处理成了Transformer结构中的visual patch,极大的提升了视频生成的性能,引发了业界广泛的关注。
压轴的是2024年2月22的Stable Diffusion 3,即图像生成领域的最新SOTA。它引入了更为先进的扩散过程和噪声估计技术Flow Matching,精细化的文本描述配合多模DiTs,使得生成的图像更具指令跟随能力,尤其在图像中文本控制的表现上刷新了新高度。Stable Diffusion 3的出现,不仅提升了扩散模型在图像生成任务中的性能,还为其他领域如自然语言处理、语音识别等提供了可借鉴的技术思路。以下是官方样例:
这三大技术的崛起,标志着视觉AIGC元年技术大爆炸的到来。它们不仅在各自领域内取得了卓越的成就,还在相互融合中催生出更多新的应用场景和商业模式。未来,随着技术的不断进步和创新,我们有理由相信,视觉AIGC将会为人类带来更多的惊喜和可能。
一、Dalle-3
论文题目:Improving Image Generation with Better Captions,https://cdn.openai.com/papers/dall-e-3.pdf
体验入口:Bing AI - 搜索,https://cn.bing.com/create
发布时间:2023.9
亮点:
1.)精细化caption
论文着重宣传部分。caption生成模块使用了CLIP(Contrastive Language-Image Pretraining)图像编码器和GPT语言模型(GPT-4),可为每张图像生成细致的文字描述。以下是用GPT-4生成更加精细化caption的例子:
2.)LDM diffusion
图像生成模块先用VAE将高分辨率图像压缩为低维向量,降低学习难度,然后使用T5 Transformer将文本编码为向量,并通过GroupNorm层将其注入LDM diffusion模型而且像素级diffusion,指导图像生成方向。与SDXL类似在潜空间进行diffusion是DALL-E 3比前两代生成的图片质量更好的核心原因之一。
二、Sora
论文题目:Video generation models as world simulators,https://openai.com/research/video-generation-models-as-world-simulators
体验入口:Video generation models as world simulators
发布时间:2024.2.15
亮点:
1.)visual patch
Sora将视频数据转换成Transformer大模型可以使用的tokens。这个过程涉及到将视频中的多帧图像进行深度学习压缩,并加上第三维的时间信息,形成patches。这些patches作为tokens,可以应用于Transformer模型中。这种数据转换方式使得Sora能够处理和理解视频数据,为后续的视频生成和处理打下基础。:
2.)diffusion transformer(DiTs)
Sora运用扩散模型来处理视频生成的连续性和细节刻画问题,而Transformer则用于理解并整合复杂的时空上下文信息。通过这样的组合方式,Sora能够高效且创造性地生成高质量的视频内容。具体来讲,使用Transformers替换扩散模型中U-Net主干网络,分析发现,这种Diffusion Transformers(DiTs)不仅速度更快(更高的Gflops),而且在ImageNet 512×512和256×256的类别条件图片生成任务上,取得了更好的效果,256×256上实现了SOTA的FID指标(2.27)。DiTs论文:Scalable Diffusion Models with Transformers,https://arxiv.org/abs/2212.09748。
其中DiTs结构如下:
三、SD-3
论文题目:Scaling Rectified Flow Transformers for High-Resolution Image Synthesis,https://arxiv.org/pdf/2403.03206.pdf
体验入口:https://stability.ai/stablediffusion3
发布时间:2024.02.22
该图表以 SD3 为基准,基于人类偏好评估,展示了 SD3 在视觉美学、提示遵循和排版等方面相对于其他竞争模型的优势。
亮点:
1.)diffusion transformer(DiTs)
与Sora类似用Latent Diffusion Transformer(DiTs) 换掉扩散模型中的 U-Net 结构。SD 3架构图如下所示:
具体来讲,多模态扩散是基座,该架构是建立在 DiT基础上。原始DiT 只考虑类别条件下的图像生成,并使用调制机制来对扩散过程的时间步和类别标签进行条件约束。MM-DiT有如下特点。
1、输入侧:简单文本特征+timestep,丰富文本特征,带噪latent特征+位置编码。
2、多模态DiT:如图 2b 所示,为文本和图像两种模态使用两组独立的权重,然后将两种模态转化后的特征连接起来进行attention后继续分拆出来文本与图像分支,如此嵌套。最终达到文本控制的最大化。
2.)Flow Matching
Flow Matching是一个新的生成模型框架,这项研究为基于连续归一化流(CNF)的生成建模引入了一种新范式,实现了以前所未有的规模训练 CNF。这个框架不依赖复杂的模拟或对数似然估计,而是直接处理生成目标概率路径的向量场。简单来说,Flow Matching给我们提供了一张地图(向量场)和一条路线(概率路径),让我们能够更清晰地了解数据是如何生成的。通过这张地图和路线,我们可以更轻松地训练生成模型,让它学习从噪声中生成出我们想要的数据。Flow Matching还提出了一个叫做条件Flow Matching (CFM)的损失函数,这个函数让模型的训练变得更容易。同时,它还支持各种概率路径,包括diffusion路径和OT路径,这让我们在训练模型时有了更多的选择。使用 Flow Matching 技术的意义则在于提升采样效率。Flow Matching论文:Flow Matching for Generative Modeling,https://arxiv.org/pdf/2210.02747.pdf。
图2和图6是Flow Matching对比diffusion和OT示意图
————————————————
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/sunbaigui/article/details/136898729
相关文章:
Dalle-3、Sora、Stable Diffusion 3 掀起AIGC新浪潮
随着科技的飞速发展,我们迎来了视觉AIGC高光时刻,一个充满无限可能与机遇的新时代。在这个时代里,三大里程碑Dalle-3、Sora和Stable Diffusion 3以其炸裂式的技术发展,引领着AIGC领域的新浪潮。文章首先做相应简要介绍,…...
Unity 视频组件 VideoPlayer
组件添加: 在自己定义的组件下(例如:Panel) 点击 Inspector 面板中的 AddComponent ,输入“VideoPlayer”。 资源 这里 视频资源有两种形式,第一种是 VideoClip ,需要将视频文件拖拽到该属性字段…...
RSTP环路避免实验(华为)
思科设备参考:RSTP环路避免实验(思科) 一,技术简介 RSTP (Rapid Spanning Tree Protocol) 是从STP发展而来 • RSTP标准版本为IEEE802.1w • RSTP具备STP的所有功能,可以兼容STP运行 • RSTP和STP有所不同 减少了…...
Arduino IDE工程代码多文件编程和中文设置
一、esp8266模块信息 二、中英文切换 点击文件( File )–选择首选项( Preference )—选择语言( Language )—选择中文–点击确定( OK ) 三、多文件编程 在Arduino编程中,将代码分割成多个文件是一种很好的做法,特别是项目变得越来越大和复杂时。这样…...
【微服务】Eureka(服务注册,服务发现)
文章目录 1.基本介绍1.学前说明2.当前架构分析1.示意图2.问题分析 3.引出Eureka1.项目架构分析2.上图解读 2.创建单机版的Eureka1.创建 e-commerce-eureka-server-9001 子模块2.检查父子pom.xml1.子 pom.xml2.父 pom.xml 3.pom.xml 引入依赖4.application.yml 配置eureka服务5.…...
windows上ssh设置代理,直接访问公司内网
ssh设置代理一般来说很简单,对于无密码或者可以支持密钥登录的,都比较无脑 难的地方在于使用用户名密码认证来使用一个http的代理或者socks5的代理,密码如何设置?特殊字符如何处理? 直接上答案,.ssh/conf…...
C++ union用法
在C中,union是一种特殊的数据类型,可以在同一个内存位置存储不同的数据类型。它的用法如下: 1. 声明union类型:使用关键字union加上union名称来声明一个union类型。 c union UnionName { dataType1 member1; dataType2 …...
JavaSE_运算符 案例分析
/*符号在字符串中的操作: 表示连接,会将其他内容和字符串连接在一起,形成一个字符串目标:理解符号在字符串中的作用会将其他内容和字符串连接在一起,形成一个字符串*/ public class Operator03 {public static void main(String[] args) {System.out.println("5 5 "…...
15、Spring Cloud Alibaba Sentinel实现熔断与限流
注:本篇文章主要参考周阳老师讲解的cloud进行整理的! 1、Sentinel 1.1、官网 https://sentinelguard.io/zh-cn/ 等价对标 Spring Cloud Circuit Breaker 1.2、是什么 https://github.com/alibaba/Sentinel/wiki 1.3、去哪下 https://github.com/alibab…...
Linux logout命令教程:如何安全地退出Linux会话(附实例详解和注意事项)
Linux logout命令介绍 logout命令用于退出当前的登录Shell。这个命令可以被普通用户用来结束他们自己的会话。 Linux logout命令适用的Linux版本 logout命令在所有主流的Linux发行版中都是可用的,包括但不限于Debian、Ubuntu、Alpine、Arch Linux、Kali Linux、R…...
数据结构——顺序表(C语言版)
顺序表是数据结构中最基本的一种线性表,它以一段连续的存储空间来存储数据元素,元素之间的顺序由它们在内存中的位置来决定。在C语言中,我们通常使用数组来实现顺序表。 目录 顺序表的结构定义 顺序表的基本操作 应用实例 顺序表的结构定义…...
Knative 助力 XTransfer 加速应用云原生 Serverless 化
作者:元毅 公司介绍 XTransfer 是一站式外贸企业跨境金融和风控服务公司,致力于帮助中小微企业大幅降低全球展业的门槛和成本,提升全球竞争力。公司连续7年专注 B2B 外贸金融服务,已成为中国 B2B 外贸金融第一平台,目…...
服务器离线配置vscode连接,conda虚拟环境
记录一下服务器离线配置问题,以备不时之需。 服务器离线配置 vscode连接参考:vscode-server离线安装-CSDN博客 服务器离线配置conda虚拟环境:Conda 环境离线迁移(服务器断网情况下搭建虚拟环境envs) - 知乎 上次两个…...
各种需要使用的方法-->vue/微信小程序/layui
各种需要使用的方法-->vue/微信小程序/layui 1、vue里样式不起作用的方法,可以通过deep穿透的方式2、 js获取本周、上周、本月、上月日期3、ArrayBuffer Blob 格式转换ArrayBuffer与Blob的区别ArrayBuffer转BlobBlob转ArrayBuffer需要借助fileReader对象 4、使用…...
360奇酷刷机 360刷机助手 QGDP360手机QGDP刷机
360奇酷刷机 360刷机助手 QGDP破解版360手机QGDP刷机 360手机刷机资源下载链接:360rom.github.io 参考:360手机-360刷机360刷机包twrp、root 360奇酷刷机:360高通驱动安装 360手机刷机驱动;手机内置,可通过USB文件传输…...
2299. 强密码检验器 II
文章目录 题意思路代码 题意 题目链接 判断是否合法密码 思路 if 代码 class Solution { public:bool strongPasswordCheckerII(string password) {if (password.size() < 8)return false;int visit 0;for (size_t i 0; i < password.size(); i){char &ch pa…...
跟着cherno手搓游戏引擎【29】Batch简单合批
思路: CPU和GPU都开辟同样大小的一大块内存(为了存储顶点信息) 索引在程序运行时生成对应规则后绑定到索引缓冲中 动态生成顶点信息(现在改成Drawquad只是确定图形顶点的位置) 然后在Endscene,将CPU的动…...
粘包/半包及解决方案
一、粘包/半包介绍 1:粘包 粘包(Packet Concatenation)通常发生在基于流式传输协议(如 TCP)的通信中,因为 TCP 是面向流的传输协议,它不保证数据包的边界,而是将数据视为连续的字节…...
2024华为软件精英挑战赛记录
前言 本次主要是记录自己第一次参加华为软件挑战赛的经历。第一次参加比赛还是缺少经验,训练赛中拿到赛区的20多名,最后在正式赛中被反超了,只拿了40多名,实在是感到可惜。 题目:本次题目是一个智慧港口的问题。10个机…...
数据可视化艺术:Matplotlib与Seaborn实战
目录 1.Matplotlib基础绘图与定制化 1.1. 基础绘图 1.2. 定制化 2.Seaborn高级图表类型与样式设定 2.1. 高级图表类型 2.2. 样式设定 3.实战:绘制多维度数据可视化报告 4.总结 1. 前言 在数据科学领域,数据可视化扮演着至关重要的角色。通过图形化…...
Vue记事本应用实现教程
文章目录 1. 项目介绍2. 开发环境准备3. 设计应用界面4. 创建Vue实例和数据模型5. 实现记事本功能5.1 添加新记事项5.2 删除记事项5.3 清空所有记事 6. 添加样式7. 功能扩展:显示创建时间8. 功能扩展:记事项搜索9. 完整代码10. Vue知识点解析10.1 数据绑…...
label-studio的使用教程(导入本地路径)
文章目录 1. 准备环境2. 脚本启动2.1 Windows2.2 Linux 3. 安装label-studio机器学习后端3.1 pip安装(推荐)3.2 GitHub仓库安装 4. 后端配置4.1 yolo环境4.2 引入后端模型4.3 修改脚本4.4 启动后端 5. 标注工程5.1 创建工程5.2 配置图片路径5.3 配置工程类型标签5.4 配置模型5.…...
【机器视觉】单目测距——运动结构恢复
ps:图是随便找的,为了凑个封面 前言 在前面对光流法进行进一步改进,希望将2D光流推广至3D场景流时,发现2D转3D过程中存在尺度歧义问题,需要补全摄像头拍摄图像中缺失的深度信息,否则解空间不收敛…...
sipsak:SIP瑞士军刀!全参数详细教程!Kali Linux教程!
简介 sipsak 是一个面向会话初始协议 (SIP) 应用程序开发人员和管理员的小型命令行工具。它可以用于对 SIP 应用程序和设备进行一些简单的测试。 sipsak 是一款 SIP 压力和诊断实用程序。它通过 sip-uri 向服务器发送 SIP 请求,并检查收到的响应。它以以下模式之一…...
django blank 与 null的区别
1.blank blank控制表单验证时是否允许字段为空 2.null null控制数据库层面是否为空 但是,要注意以下几点: Django的表单验证与null无关:null参数控制的是数据库层面字段是否可以为NULL,而blank参数控制的是Django表单验证时字…...
深入浅出Diffusion模型:从原理到实践的全方位教程
I. 引言:生成式AI的黎明 – Diffusion模型是什么? 近年来,生成式人工智能(Generative AI)领域取得了爆炸性的进展,模型能够根据简单的文本提示创作出逼真的图像、连贯的文本,乃至更多令人惊叹的…...
pgsql:还原数据库后出现重复序列导致“more than one owned sequence found“报错问题的解决
问题: pgsql数据库通过备份数据库文件进行还原时,如果表中有自增序列,还原后可能会出现重复的序列,此时若向表中插入新行时会出现“more than one owned sequence found”的报错提示。 点击菜单“其它”-》“序列”,…...
高分辨率图像合成归一化流扩展
大家读完觉得有帮助记得关注和点赞!!! 1 摘要 我们提出了STARFlow,一种基于归一化流的可扩展生成模型,它在高分辨率图像合成方面取得了强大的性能。STARFlow的主要构建块是Transformer自回归流(TARFlow&am…...
【QT控件】显示类控件
目录 一、Label 二、LCD Number 三、ProgressBar 四、Calendar Widget QT专栏:QT_uyeonashi的博客-CSDN博客 一、Label QLabel 可以用来显示文本和图片. 核心属性如下 代码示例: 显示不同格式的文本 1) 在界面上创建三个 QLabel 尺寸放大一些. objectName 分别…...
使用python进行图像处理—图像滤波(5)
图像滤波是图像处理中最基本和最重要的操作之一。它的目的是在空间域上修改图像的像素值,以达到平滑(去噪)、锐化、边缘检测等效果。滤波通常通过卷积操作实现。 5.1卷积(Convolution)原理 卷积是滤波的核心。它是一种数学运算,…...
