当前位置: 首页 > news >正文

ai绘画|stable diffusion的发展史!简短易懂!!!

手把手教你入门绘图超强的AI绘画,用户只需要输入一段图片的文字描述,即可生成精美的绘画。给大家带来了全新保姆级教程资料包 (文末可获取)

一、stable diffusion的发展史

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

1.发展史介绍:

  • 2015年的时候,有几位大佬基于非平衡热力学提出了一个纯数学的生成模型 (Sohl-Dickstein et al.,
    2015)。不过那个时候他们没有用代码实现,所以这篇工作并没有火起来。
  • 2019年斯坦福大学(Song et al)与2020年谷歌大脑 (Ho
    etal)根据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助理就能根据要求自动生成内容,甚至直接生成可供人类体验的故事/游戏/虚拟生活。

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

AI绘画所有方向的学习路线思维导图

这里为大家提供了总的路线图。它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。如果下面这个学习路线能帮助大家将AI利用到自身工作上去,那么我的使命也就完成了:
在这里插入图片描述

👉stable diffusion新手0基础入门PDF👈

在这里插入图片描述

👉AI绘画必备工具👈

温馨提示:篇幅有限,已打包文件夹,获取方式在:文末
在这里插入图片描述

👉AI绘画基础+速成+进阶使用教程👈

观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。
在这里插入图片描述

👉12000+AI关键词大合集👈

在这里插入图片描述

这份完整版的AI绘画资料我已经打包好,戳下方蓝色字体,即可免费领取!

CSDN大礼包:《全套AI绘画基础学习资源包》免费分享

相关文章:

ai绘画|stable diffusion的发展史!简短易懂!!!

手把手教你入门绘图超强的AI绘画,用户只需要输入一段图片的文字描述,即可生成精美的绘画。给大家带来了全新保姆级教程资料包 (文末可获取) 一、stable diffusion的发展史 本文目标:学习交流 对于熟悉SD的同学&#x…...

水塘抽样算法

水塘抽样算法 1、问题描述 最近经常能看到面经中出现在大数据流中的随机抽样问题 即:当内存无法加载全部数据时,如何从包含未知大小的数据流中随机选取k个数据,并且要保证每个数据被抽取到的概率相等。 假设数据流含有N个数,我…...

easyui渲染隐藏域<input type=“hidden“ />为textbox可作为分割条使用

最近在修改前端代码的时候&#xff0c;偶然发现使用javascript代码渲染的方式将<input type"hidden" />渲染为textbox时&#xff0c;会显示一个神奇的效果&#xff0c;这个textbox输入框并不会隐藏&#xff0c;而是显示未一个细条&#xff0c;博主发现非常适合…...

100天精通Python(实用脚本篇)——第113天:基于Tesseract-OCR实现OCR图片文字识别实战

文章目录 专栏导读1. OCR技术介绍2. 模块介绍3. 模块安装4. 代码实战4.1 英文图片测试4.2 数字图片测试4.3 中文图片识别 书籍分享 专栏导读 &#x1f525;&#x1f525;本文已收录于《100天精通Python从入门到就业》&#xff1a;本专栏专门针对零基础和需要进阶提升的同学所准…...

Go七天实现RPC

0.前言 本文是学习自7天用Go从零实现RPC框架GeeRPC | 极客兔兔 在此基础上&#xff0c;加入自己的学习过程与理解。 1.RPC 框架 RPC(Remote Procedure Call&#xff0c;远程过程调用)是一种计算机通信协议&#xff0c;允许调用不同进程空间的程序。RPC 的客户端和服务器可以…...

Elasticsearch:和 LIamaIndex 的集成

LlamaIndex 是一个数据框架&#xff0c;供 LLM 应用程序摄取、构建和访问私有或特定领域的数据。 LlamaIndex 是开源的&#xff0c;可用于构建各种应用程序。 在 GitHub 上查看该项目。 安装 在 Docker 上设置 Elasticsearch 使用以下 docker 命令启动单节点 Elasticsearch 实…...

QT基础篇(14)QT操作office实例

1.QT操作office的基本方式 通过QT操作Office软件&#xff0c;可以使用Qt的QAxObject类来进行操作。下面是一个例子&#xff0c;展示了通过Qt操作Excel的基本方式&#xff1a; #include <QApplication> #include <QAxObject>int main(int argc, char *argv[]) {QA…...

重拾计网-第四弹 计算机网络性能指标

ps&#xff1a;本文章的图片内容来源都是来自于湖科大教书匠的视频&#xff0c;声明&#xff1a;仅供自己复习&#xff0c;里面加上了自己的理解 这里附上视频链接地址&#xff1a;1.5 计算机网络的性能指标&#xff08;1&#xff09;_哔哩哔哩_bilibili ​​​ 目录 &#x…...

【Vue】Vue 路由的配置及使用

目录捏 前言一、路由是什么&#xff1f;1.前端路由2.后端路由 二、路由配置1.安装路由2.配置路由 三、路由使用1.route 与 router2. 声明式导航3. 指定组件的呈现位置 四、嵌套路由&#xff08;多级路由&#xff09;五、路由重定向1.什么是路由重定向&#xff1f;2.设置 redire…...

网络安全事件分级指南

一、特别重大网络安全事件 符合下列情形之一的&#xff0c;为特别重大网络安全事件&#xff1a; 1.重要网络和信息系统遭受特别严重的系统损失&#xff0c;造成系统大面积瘫痪&#xff0c;丧失业务处理能力。 2.国家秘密信息、重要敏感信息、重要数据丢失或被窃取、篡改、假…...

uniapp组件库SwipeAction 滑动操作 使用方法

目录 #平台差异说明 #基本使用 #修改按钮样式 #点击事件 #API #Props #Event 该组件一般用于左滑唤出操作菜单的场景&#xff0c;用的最多的是左滑删除操作。 注意 如果把该组件通过v-for用于左滑删除的列表&#xff0c;请保证循环的:key是一个唯一值&#xff0c;可以…...

YARN节点故障的容错方案

YARN节点故障的容错方案 1. RM高可用1.1 选主和HA切换逻辑 2. NM高可用2.1 感知NM节点异常2.2 异常NM上的任务处理 4. 疑问和思考4,1 RM感知NM异常需要10min&#xff0c;对于app来说是否太长了&#xff1f; 5. 参考文档 本文主要探讨yarn集群的高可用容错方案和容错能力的探讨。…...

C++后端笔记

C后端笔记 资源整理一、高级语言程序设计1.1 进制1.2 程序结构基本知识1.3 数据类型ASCII码命名规则变量间的赋值浮点型变量的作用字符变量常变量 const运算符 二、高级语言程序设计&#xff08;荣&#xff09; 资源整理 C后端开发学习路线及推荐学习时间 C基础知识大全 C那…...

JavaEE中什么是Web容器?

Web容器&#xff08;也称为Servlet引擎&#xff09;是一个用于执行Java Servlet和JSP的服务器端环境。它负责管理和执行在其上运行的Web应用程序。 Tomcat是Web容器 Apache Tomcat 是一个流行的开源的Web容器&#xff0c;它实现了Java Servlet和JavaServer Pages&#xff08;…...

MySQL 8.0 架构 之错误日志文件(Error Log)(1)

文章目录 MySQL 8.0 架构 之错误日志文件&#xff08;Error Log&#xff09;&#xff08;1&#xff09;MySQL错误日志文件&#xff08;Error Log&#xff09;MySQL错误日志在哪里Window环境Linux环境 错误日志相关参数log_error_services 参考 【声明】文章仅供学习交流&#x…...

51单片机实验课一

实验任务一&#xff1a;实现控制8个发光管的亮&#xff08;灭&#xff09; #include <REGX52.H> void Delay1ms(unsigned int xms) //11.0592MHz {unsigned char i, j;while(xms){xms--;i 12;j 169;do{while (--j);} while (--i);} } void main() {while(1){P20;//八…...

【.NET Core】多线程之线程池(ThreadPool)详解(一)

【.NET Core】多线程之线程池&#xff08;ThreadPool&#xff09;详解&#xff08;一&#xff09; 文章目录 【.NET Core】多线程之线程池&#xff08;ThreadPool&#xff09;详解&#xff08;一&#xff09;一、概述二、线程池的应用范围三、线程池特性3.1 线程池线程中的异常…...

圆的参数方程是如何推导的?

圆的参数方程是如何推导的? 1. 圆的三种参数表示2. 三角函数万能公式3. 回到圆的参数方程1. 圆的三种参数表示 已知圆的第一种参数方程为: x 2 + y 2 = r x^2+y^2=r x2+y2=r   圆的图像如下: 通过上图,不难理解,圆的参数方程还可以用三角函数表示,也就是第二种参数表…...

sqlmap使用教程(2)-连接目标

目录 连接目标 1.1 设置认证信息 1.2 配置代理 1.3 Tor匿名网络 1.4 检测WAF/IPS 1.5 调整连接选项 1.6 处理连接错误 连接目标 场景1&#xff1a;通过代理网络上网&#xff0c;需要进行相应配置才可以成功访问目标主机 场景2&#xff1a;目标网站需要进行身份认证后才…...

c++ http第一个服务

c http第一个服务 一、下载相关依赖&#xff1a;这是一个git开源项目 代码仓地址 二、演示代码&#xff0c;编译参数&#xff1a;g test.cpp -I/**** -lpthread #include <httplib.h> using namespace httplib;void wuhan(const Request &req, Response &res) …...

RestClient

什么是RestClient RestClient 是 Elasticsearch 官方提供的 Java 低级 REST 客户端&#xff0c;它允许HTTP与Elasticsearch 集群通信&#xff0c;而无需处理 JSON 序列化/反序列化等底层细节。它是 Elasticsearch Java API 客户端的基础。 RestClient 主要特点 轻量级&#xff…...

利用最小二乘法找圆心和半径

#include <iostream> #include <vector> #include <cmath> #include <Eigen/Dense> // 需安装Eigen库用于矩阵运算 // 定义点结构 struct Point { double x, y; Point(double x_, double y_) : x(x_), y(y_) {} }; // 最小二乘法求圆心和半径 …...

利用ngx_stream_return_module构建简易 TCP/UDP 响应网关

一、模块概述 ngx_stream_return_module 提供了一个极简的指令&#xff1a; return <value>;在收到客户端连接后&#xff0c;立即将 <value> 写回并关闭连接。<value> 支持内嵌文本和内置变量&#xff08;如 $time_iso8601、$remote_addr 等&#xff09;&a…...

高频面试之3Zookeeper

高频面试之3Zookeeper 文章目录 高频面试之3Zookeeper3.1 常用命令3.2 选举机制3.3 Zookeeper符合法则中哪两个&#xff1f;3.4 Zookeeper脑裂3.5 Zookeeper用来干嘛了 3.1 常用命令 ls、get、create、delete、deleteall3.2 选举机制 半数机制&#xff08;过半机制&#xff0…...

2021-03-15 iview一些问题

1.iview 在使用tree组件时&#xff0c;发现没有set类的方法&#xff0c;只有get&#xff0c;那么要改变tree值&#xff0c;只能遍历treeData&#xff0c;递归修改treeData的checked&#xff0c;发现无法更改&#xff0c;原因在于check模式下&#xff0c;子元素的勾选状态跟父节…...

【数据分析】R版IntelliGenes用于生物标志物发现的可解释机器学习

禁止商业或二改转载&#xff0c;仅供自学使用&#xff0c;侵权必究&#xff0c;如需截取部分内容请后台联系作者! 文章目录 介绍流程步骤1. 输入数据2. 特征选择3. 模型训练4. I-Genes 评分计算5. 输出结果 IntelliGenesR 安装包1. 特征选择2. 模型训练和评估3. I-Genes 评分计…...

【VLNs篇】07:NavRL—在动态环境中学习安全飞行

项目内容论文标题NavRL: 在动态环境中学习安全飞行 (NavRL: Learning Safe Flight in Dynamic Environments)核心问题解决无人机在包含静态和动态障碍物的复杂环境中进行安全、高效自主导航的挑战&#xff0c;克服传统方法和现有强化学习方法的局限性。核心算法基于近端策略优化…...

【从零学习JVM|第三篇】类的生命周期(高频面试题)

前言&#xff1a; 在Java编程中&#xff0c;类的生命周期是指类从被加载到内存中开始&#xff0c;到被卸载出内存为止的整个过程。了解类的生命周期对于理解Java程序的运行机制以及性能优化非常重要。本文会深入探寻类的生命周期&#xff0c;让读者对此有深刻印象。 目录 ​…...

4. TypeScript 类型推断与类型组合

一、类型推断 (一) 什么是类型推断 TypeScript 的类型推断会根据变量、函数返回值、对象和数组的赋值和使用方式&#xff0c;自动确定它们的类型。 这一特性减少了显式类型注解的需要&#xff0c;在保持类型安全的同时简化了代码。通过分析上下文和初始值&#xff0c;TypeSc…...

stm32wle5 lpuart DMA数据不接收

配置波特率9600时&#xff0c;需要使用外部低速晶振...