【AI绘图】一、stable diffusion的发展史

news2024/11/27 6:35:42

一、stable diffusion的发展史

本文目标:学习交流 对于熟悉SD的同学,一起学习和交流使用过程中的技巧和心得。 帮助新手
帮助没有尝试过SD但又对它感兴趣的同学快速入门,并且能够独立生成以上效果图。

1.发展史介绍:

  • 2015年的时候,有几位大佬基于非平衡热力学提出了一个纯数学的生成模型 (Sohl-Dickstein et al., 2015)。不过那个时候他们没有用代码实现,所以这篇工作并没有火起来。
  • 2019年斯坦福大学(Song et al)与2020年谷歌大脑 (Ho et
    al)根据15年发布的文章,编写了两篇论文,但是影响范围并不是很大。
  • 2020年谷歌大脑的几位大佬又把这个模型实现了出来,因为这个模型一些极其优秀的特性,所以它现在火了起来。
  • 2022年9月初,AIGC 进入大众视野里程碑的一件事,下面这幅使用 MidJourney 生成的数字油画《空间歌剧院》
    在这里插入图片描述
    在美国科罗拉多州博览会 (Colorado State Fair) 的艺术比赛中夺得了第一名,之后大赛评委并未对该幅作品进行改判,并认为即使它是 AI 生成的作品,也依旧配得上这样的成绩,这一新闻被报道后引发了圈内外的广泛讨论。
    AI是否应该与人同台竞争,确实需要进一步探究,但真正吸引公众眼光的,其实是AI画作的展现出的超高水平:无论是《空间歌剧院》还是《大西洋月刊》的几幅AI插画,都达到了足以以假乱真的地步,无论是构图、线条还是色彩,都很自然流畅,并没有刻板印象中的机械呆板。人们惊奇地发现,AI作画已经发展到了难以想象的地步。

AIGC工具对比

在目前的三大新兴文本转图像模型中,Stable Diffusion诞生得最晚,但由于拥有发展良好的开源社区,它的用户关注度和应用广度都超越Midjourney和DALL-E。

DALL-E

2021 年 1 月,OpenAI 推出了 DALL-E 模型,通过 120 亿参数版本的 GPT-3 Transformer 模型来理解自然语言输入并生成相应的图片。但是它的推出主要用于研究,所以访问权限仅限于小部分测试版用户。这个模型不稳定对于细节理解处理不完善,且会出现严重的逻辑或者事实错误,但是作为开创者,还是得专门提出来的。

在发布 DALL-E 时还发布了 CLIP (Contrastive Language-Image Pre-training,对比图文预训练)。CLIP 是一种神经网络,为输入的图像返回最佳的标题。它所做的事情与 DALL-E 所做的相反 —— 它是将图像转换为文本,而 DALL-E 是将文本转换为图像。引入 CLIP 的目的是为了学习物体的视觉和文字表示之间的联系。

2022 年 4 月,OpenAI 发布了新版本的 DALL-E 2 ,它是 DALL-E 的升级版本,另外能对所生成的图像进行二次编辑,现在即使是新用户也需要充值才能生成新图。

MidJourney

MidJourney 的 v1 是 2022 年 2 月发布的,它火出圈是由于 22 年 7 月份的 v3 版本。

它的特点是综合能力比较全面,艺术性很强,非常像艺术家制作的作品,另外图像生成速度更快,早期主要是很多艺术家会借助 Midjourney 作为创作灵感。另外,因为 Midjourney 搭载在 Discord 频道上,所以有非常良好的社区讨论环境和用户基础。

第二次火其实就是今年 3 月份发布 V5, 官方说这个版本在生成图像的人物真实程度、手指细节等方面都有了显著改善,并且在提示词理解的准确性、审美多样性和语言理解方面也都取得了进步。

在这里插入图片描述

Stable Diffusion

Stable Diffusion 算法上基于 2021 年 12 月提出的潜在扩散模型(LDM / Latent Diffusion Model)和 2015 年提出的扩散模型(DM / Diffusion Model,它是基于 Google 的 Transformer 模型),所以名字里有 Diffusion,我猜 Stable 表示现在算法已经稳定下来了。

2022年7月Stable Diffusion的问世则震惊了全球,相比前辈们,Stable Diffusion已经成功的解决了细节及效率问题,通过算法迭代将AI绘图的精细度提升到了艺术品级别,并将生产效率提升到了秒级,创作所需的设备门槛也被拉到了民用水准。
2022年8月对于AI绘图来说,革命性的时刻已经来临,也得益于Stable Diffusion的开源性质,全球AI绘图产品迎来了日新月异的发展。这次AI创作大讨论,正是公众们直观地感受到了技术浪潮带来的影响,AI绘图正在走进千家万户,舆论热潮也随之而来。

2023 年 4 月,Stability AI 发布了 Beta 版本的 Stable Diffusion XL ,并提到在训练结束后参数稳定后会开源,并改善了需要输入非常长的提示词 (prompts),对于人体结构的处理有瑕疵,经常出现动作和人体结构异常。
在这里插入图片描述

MidJourney 和 Stable Diffusion 的对比

在目前的三大新兴文本转图像模型中,Stable Diffusion诞生得最晚,但由于拥有发展良好的开源社区,它的用户关注度和应用广度都超越Midjourney和DALL-E。

1.价格
MidJourney 毕竟是为了盈利的,远不如自己部署到自己服务器的开销要低。SD 完胜
友好程度。MidJourney 新手友好,注册即用,相对的 SD 需要有一定技术背景,甚至可以说设计师或者艺术创作者自己不具备部署能力。SD 小胜
2.功能
SD 除了支持 MidJourney 全部功能外还支持填充修复、自定义模型。SD 小胜
3.对细节的控制
类似于苹果 (MidJourney) 和安卓 (SD) 的区别,MidJourney 是商业产品,你无法了解它的背后的原理和代码逻辑,所以可控性差、细节优化难 (甚至越调越差),而 SD 由于是开源的且有强大的社区和相关的模型、扩展等,可以实现本地私有化部署,还能够精准局部调优,控制风格,SD 完胜的。
4.提示方法
Midjourney 是自然语言输入 (直接文字表达需求),而 SD 是各种带权重的提示词输入。SD 的提示词本文是非常考验输入者能力的,Midjourney 小胜。
5.效果
总体上觉得 MidJourney 的图更精致一点点,但是作为非算法开发者,我感觉 SD 目前输在模型训练的素材和方法上。MidJourney 小胜。
6.擅长的画风
MidJourney 注重表达和对细节的渲染,而 Stable-Diffusion 偏写实,如果你想艺术创作,MidJourney 更好,如果你已经有具体的需求,SD 更好。

AI绘画的突破对人类意味着什么

2022年的AI领域,基于文本生成图像的AI绘画模型是风头无两的主角。 从2月份的Disco Diffusion开始,4月 DALL-E 2和MidJourney邀请内测,5月和6月Google发布两大模型Imagen 和Parti(不开放内测只有论文,感觉略水),然后7月底,Stable Diffusion横空出世。

目前最新AI绘画的”创造力”开始追赶甚至几已比肩人类,这或许进一步打击了人类的尊严,从围棋阿法狗开始,人类在”智慧”这个点的尊严领地已经越来越小,而AI绘画的突破性进展则进一步把人类”想像力”和”创造力”的尊严都打碎了 — 或许还没完全破碎,但已经充满裂痕摇摇欲坠。

作者一直对人类的科技发展保持某种中性看法: 尽管我们寄望于科技让人类的生活变得更美好,但事实上正如核弹的发明,有些科学技术的出现是中性的,也可能是致命的。 完全取代人类的超级AI从实践来看似乎是一件越来越可能的事情。 人类需要思考的是,在不太远的将来,我们在所有领域面对AI都落荒而逃的时候,如何保持对世界的主导权。

有个朋友说的很对,如果AI最终学会了写代码 — 似乎没有什么必然的壁垒在阻止这件事的发生 –那么电影终结者的故事或许就要发生了。 如果这样太悲观,那么人类至少要考虑,如何与一个超越自己所有智慧和创造力的AI世界相处。

当然咯,乐观的角度而言,未来的世界只会更美好:人类通过AR/VR接入统一的或者个人的元宇宙,人类主人只要动动嘴皮子,无所不能的AI助理就能根据要求自动生成内容,甚至直接生成可供人类体验的故事/游戏/虚拟生活。

这是一个更美好的盗梦空间,还是一个更美好的黑客帝国?

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

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

相关文章

汇编重复计算之使用循环与不循环使用区别

没有使用循环的汇编代码,计算ffff:0-ffff:b的累加之和 assume cs:code 表示code段与CS寄存关联 code segment 表示段开始 ,code ends表示段结束,end表示汇编程序结束 mov ax,0ffffh 表示将ffffh送入ax寄存器 mov ds,ax 表示将ax寄存器值送入ds寄存器 mov …

第二十四章 开发Productions - ObjectScript Productions - 定义业务服务

文章目录 第二十四章 开发Productions - ObjectScript Productions - 定义业务服务介绍关键原则定义业务服务类实施 OnProcessInput() 方法 第二十四章 开发Productions - ObjectScript Productions - 定义业务服务 本页介绍如何定义业务服务类。 提示: IRIS 提供…

高完整性系统 (2):Requirement 与 Design 阶段的风险控制——Hazards, HAZOP, Fault Tree

文章目录 安全性工程流程Hazards反事实推理(CounterFactual Reasoning)案例1案例2案例3 HAZOP: HAZARDS AND OPERABILITY STUDY案例1HAZOP 工作流程HAZOP 总结 Fault Tree AnalysisFault Tree 定义案例Node Symbolsanalysis outcomes 这节课主要介绍了高…

【Linux集锦01】CentOS的安装

Centos的安装 1.创建新的虚拟机2. 自定义3.下一步4.创建虚拟空白光盘5.安装Linux系统和Centos 7 发行版6.命名虚拟机名称和选择磁盘位置7.处理器配置 主要看自己的电脑的情况8.设置虚拟机内存9.网络设置 nat10.选择IO控制器类型11.选择磁盘类型12.创建新虚拟磁盘13.设置磁盘容量…

【MyBatis】2、MyBatis 的动态 SQL 和增删改操作

目录 一、添加(1) 基本插入(2) 设置新插入记录的主键&#xff08;id&#xff09;★ 二、更新三、删除四、动态 SQL(1) if 标签(2) where 标签(3) foreach 标签 五、起别名六、sql 标签七、在 MyBatis 中集成 druid 连接池 一、添加 (1) 基本插入 <mapper namespace"s…

qtcanpool 知 99:常见问题

文章目录 前言问题构建 fancydemo 报链接库错误 后语 前言 qtcanpool 是根据 qtcreator 整理出的一套通用的工程管理模板&#xff0c;同时集成一些常见的库和插件。就像 qtcanpool 名字一样&#xff0c;它是一个 qt 池&#xff0c;用户可以从中汲取所需。 对于初次使用 qtcan…

iPad触屏笔哪个牌子好用?平替电容笔推荐

电容笔可以说是人手必备的数码产品&#xff0c;市面上的电容笔品牌数不胜数&#xff0c;很多人都快赶不上它的步伐了&#xff0c;新品的大批量上升&#xff0c;说明市场上的电容笔的需求量日益扩大&#xff0c;越来越多人在学习上、办公上等使用&#xff0c;作为资深的电容笔发…

Kafka重平衡rebalance是什么

重平衡 背景&#xff1a; 假如你是一家公司的老板&#xff0c;手下有三名员工张三、李四、王五&#xff0c;现在你有三项工作A、B、C&#xff0c;正好安排给三人。 过了一个月后&#xff0c;员工王五离开了公司。这个时候只剩下两名员工&#xff0c;你只能把原先王五安排的…

每日学术速递6.3

CV - 计算机视觉 | ML - 机器学习 | RL - 强化学习 | NLP 自然语言处理 Subjects: cs.CV 1.Reconstructing the Minds Eye: fMRI-to-Image with Contrastive Learning and Diffusion Priors 标题&#xff1a;重建心灵之眼&#xff1a;fMRI-to-Image with Contrastive lear…

反向ajax实现

在过去的几年中&#xff0c;web开发已经发生了很大的变化。现如今&#xff0c;我们期望的是能够通过web快速、动态地访问应用。在这一新的文章系列中&#xff0c;我们学习如何使用反 向Ajax&#xff08;Reverse Ajax&#xff09;技术来开发事件驱动的web应用&#xff0c;以此来…

【Android开发基础】更新\修改Adapter适配器数据(例:聊天功能等)

文章目录 一、引言二、解决方案1、需求一2、需求二&#xff08;1&#xff09;普通方法&#xff08;2&#xff09;观察者模式&#xff08;推荐&#xff09; 一、引言 描述&#xff1a;如何在主线程&#xff08;Activity/Fragment&#xff09;UI中修改子线程&#xff08;Adapter…

小白可以看懂的「GraphQL」,GraphQL到底是啥样

GraphQL是一种用于API的查询语言&#xff0c;可以在服务端定义GraphQL Schema&#xff0c;客户端可以向服务端发送GraphQL请求&#xff0c;服务端执行GraphQL查询&#xff0c;并将结果作为JSON返回给客户端。 下面是一个使用golang实现GraphQL的示例&#xff0c;首先需要安装g…

Ajax请求与浏览器缓存

在现代Web应用程序中&#xff0c;前端代码充斥着大量的Ajax请求&#xff0c;如果对于Ajax请求可以使用浏览器缓存&#xff0c;那么可以显著地减少网络请求&#xff0c;提高程序响应速度。 1. Ajax Request 使用jQuery框架可以很方便的进行Ajax请求&#xff0c;示例代码如下&a…

RISC-V 学习篇之特权架构下的中断异常处理

RISC-V 学习篇之特权架构下的中断异常处理 控制流和Trap特权架构简单的嵌入式系统的机器模式机器模式下的异常处理mtvec&#xff08;Machine Trap-Vector Base-Address&#xff09;mepc&#xff08;Machine Exception Program Counter)mcause&#xff08;Machine Cause&#xf…

Erlang/OTP 26 正式发布

导读Erlang 是一种通用的并发函数式程序设计语言。Erlang 也可以指 Erlang/OTP 的通称&#xff0c;开源电信平台 (OTP) 是 Erlang 的常用执行环境及一系列标准组件。 Erlang/OTP 26.0 已正式发布。这是一个重要版本更新&#xff0c;包含许多新特性、改进和不兼容的变化。 主要…

C++11右值

C11右值 类型与值类别左值纯右值将亡值内置类型类类型 左值引用和右值引用内置类型右值引用&#xff1a;具有右值引用自身为左值。右值引用与函数重载函数返回值 自定义类型右值引用构造函数的隐式转换右值引用与函数重载类类型作为函数的返回值 右值引用与函数模板泛化版本&am…

Java005——idea编写和运行第一个Java程序HelloWorld

1、首相需要了解什么是IDE&#xff08;集成开发环境&#xff09;&#xff1f; 2、了解Java有哪些主流的开发工具&#xff1f; 一、创建一个文件夹用来存放Java项目 二、创建一个空项目 点击idea首页新建项目按钮 创建一个空项目 这样空项目就创建好了 三、在空项目中新建一…

leetcode 数据库题 584,585,586,595,596,601,602,607,608,610

leetcode 数据库题 第三弹 584. 寻找用户推荐人585. 2016年的投资586. 订单最多的客户595. 大的国家596. 超过5名学生的课601. 体育馆的人流量602. 好友申请 II &#xff1a;谁有最多的好友607. 销售员608. 树节点610. 判断三角形小结 584. 寻找用户推荐人 https://leetcode.cn…

<数据结构>NO7.二叉树(附Oj练习题)

&#x1f447;二叉树的完整代码在&#x1f447; syseptember的gitee仓库&#xff1a;二叉树https://gitee.com/syseptember/data-structure/tree/1513789167062c75dc172366199ce7a6b0577cc7/BinaryTree2/BinaryTree2 目录 树的概念及结构 0x01.树的概念 0x02.树的相关概念 …

快速定位接口问题,JMeter方法论,跨线程组接口关联测试!

目录 【前言】 【步骤】 1. 准备工作 2. 创建线程组 3. 创建HTTP请求 4. 添加正则表达式提取器 5. 添加HTTP请求关联控制器 6. 设置断言和验证器 7. 运行测试 【代码】 【结论】 【前言】 在进行接口测试时&#xff0c;接口之间的关联经常是我们需要重点测试的点之…