前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >01:初见Stable Diffusion,一键玩转AI绘画

01:初见Stable Diffusion,一键玩转AI绘画

原创
作者头像
叫我阿柒啊
修改2024-06-25 07:58:20
3163
修改2024-06-25 07:58:20
举报
文章被收录于专栏:AI绘画之路入门到放弃之路

前言

在摩托车追焦群看到了机甲风的AI照片,觉得甚是炫酷。偶然看到了Stable Diffusion实现AI绘画的文章,所以就从一个使用者的角度,来开始学习Stable Diffusion。

我理解的AI绘画,会涉及卷积网络以及数学的知识。我深知自己几斤几两,所以不求甚解,学完知道Stable Diffusion是什么,有哪些组件以及组件功能。到后来如何安装使用Stable Diffusion实现AI绘画,这就是我的个人小目标。

关于Stable Diffusion

我是在家里的电脑上安装完Stable Diffusion Webui之后,从博客再到官方文档学习的Stable Diffusion的原理。虽然说webui封装了Stable Diffusion,底层模型对于用户透明,使用者不用再通过编码的方式去调用API使用模型。

但是webui上的组件、参数,我个人觉得还是研究一下比较有意思。当你以后和别人谈论起这个技术的时候,可以用自己的理解去互相交流。

在学习初期,晚上回家通过copy模板化的参数去实践。白天就学习Stable Diffusion的基本概念,以及实践中遇到的一些问题。

Stable Diffusion是什么

首先,Stable Diffusion属于一个被称作扩散模型的深度学习模型,而且是一个生成模型,用来生成与训练中看到的类似的新数据,这里的数据指的是图像。

Stable Diffusion是一个生成AI图片的潜在扩散模型(Latent diffusion model)。扩散模型有很多,例如OpenAI的DALL-E模型,Google的Imagen模型。

Stable Diffusion能干什么

  1. 文生图(txt2img):用的最多的就是文生图,根据输入的文本提示(text prompt),来生成相应的风格图片。
  2. 图生图(img2img):输入一张图片,然后根据输入的文本提示(text prompt),就可以得到另一张图片。可以实现图片细节的优化、图片风格转变等。如图:
  1. 照片编辑:可以修复老的或者残缺的照片。
  2. 制作视频:比如AI换脸。

在后面研究Stable Diffusion的过程中,只对1和2的文生图和图生图进行深入学习。

为什么要选择Stable Diffusion

上面提到过,扩散模型或者说AI绘画技术那么多,为什么要选择Stable Diffusion?

Stable Diffusion同样作为扩散模型,优势在于Latent,在学习Stable Diffusion原理的过程中,总是围绕着latent。部分扩散模型在图像空间(Image Space)进行运算,而上面提到的Imagen和DALL-E扩散模型都在像素空间(Pixel Space)中,来使模型更快。

如果模型在图像空间和像素空间进行的,一个512×512的图像,有三个颜色通道(红绿蓝),就是一个786432维度的空间,个人电脑上GPU是不可能提供足够的计算能力。

但是Stable Diffusion会将图片进行编码(encode),然后放到一个4×64×64的潜在空间(Letent Space)计算,这也就是为什么普通的个人电脑可以运行Stable Diffusion的原因。换句话说:不是我不选择其他的,是选择了也用不了

如何使用Stable Diffusion

我在学习Stable Diffusion的过程中,看到官网提供了很多online的免费网站(例如:Playground AI、Dream Studio等)可以去使用AI绘画功能,但是很可惜都是在外网,所以访问不了。

而国内的一些基本上都是需要充值才能使用。所以对于大部分人来说,自己动手搭建一套Stable Diffusion是比较最佳方案。

Stable Diffusion部署后,如果想直接使用还是有些难度的。国内一名大佬秋葉aaaki提供了Stable Diffusion的集成客户端/安装包,同时基于Stable Diffusion部署后,如果想直接使用还是有些难度的。

国内一名大佬秋葉aaaki基于开源Stable Diffusion WebUi,简称AUTOMATIC1111,集成了Stable Diffusion的客户端/安装包,同时基于只要配置环境、下载之后,就可以一键使用启动器傻瓜式运行。所以对使用者来说,甚至不了解Stable Diffusion,都可以使用。

所以大部分人,学到这里就可以去下载Stable Diffusion WebUi,去玩AI绘画了。

整合包安装

2024年1月更新了v4.6版本,无需下载python、git和cuda就能解压即用,我之前用的是v3版本,配置cuda费了挺多的时间。

cuda是Nvidia开发的一种编程接口,安装之后stable diffusion才能使用GPU(显卡)进行计算。同时还安装了一个用于深度神经网络的GPU加速库cudnn。最后就是安装python的torch和tensorflow-cpu模块。

不过有了v4.6版本之后,上面的步骤都去掉了(我之前鼓捣了一晚上,泪崩!),直接下载解压,一键启动。

启动之后,就会自动在浏览器打开web页面,一共两页才能翻到底。

从页面里可以看到有模型、VAE、Clip、提示词等众多参数,如何配置才能生成我们想要图片?为什么这样配置?这都是我们要思考和学习的,所以抱着这种目的开始找资料学习stable diffusion。

上面在讲stable diffusion功能时,用了一个苹果的案例,看看在webui中如何复现。我从网上随便找了一个苹果图片,然后使用prompt(apple,green,4k)和controlNet完成了图生图。

prompt、vae、controlNet都是stable diffusion学习中比较常用的名词,我在接下来的学习过程中就要去了解学习。

结语

这算是一个反向学习的过程,从需求结果出发,然后去开始学习理论。不过我刚开始就是学的理论,去看博客、找资料,整体地了解了Stable Diffusion是一个什么样的架构,工作流程和原理是怎么样的后来就是结合webui接着学的。

我正在参与2024腾讯技术创作特训营第五期有奖征文,快来和我瓜分大奖!

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 关于Stable Diffusion
    • Stable Diffusion是什么
      • Stable Diffusion能干什么
        • 为什么要选择Stable Diffusion
          • 如何使用Stable Diffusion
            • 整合包安装
            • 结语
            相关产品与服务
            大模型图像创作引擎
            大模型图像创作引擎是一款提供 AI 图像生成与处理能力的 API 技术服务,可以结合输入的文本或图片智能创作出与输入相关的图像内容,具有更强大的中文理解能力、更多样化的风格选择,更好支持中文场景下的建筑风景生成、古诗词理解、水墨剪纸等中国元素风格生成,以及各种动漫、游戏风格的高精度图像生成和风格转换,为高质量的内容创作、内容运营提供技术支持。
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档