Stable Diffusion教程:图生图

“图生图”是 Stable Diffusion的 核心功能之一,它的主要能力是根据现有的图片 + 提示词生成新的改造图片,这在日常的工作和生活中都特别有用。

话不多说,让我们看看它都有什么神奇的魔法吧。

基本使用

本节以生成人物的二次元风格的照片为例,具体步骤如下:

1、在Stable Diffusion 大模型这里选择一个二次元模型:

2、在“图生图”这里上传一张人物肖像照,并编写对应的提示词和反向提示词。这里提示词是可选的,但是不填写可能会导致生成的图片效果质量不佳。

提示词:

best quality, masterpiece, super high resolution, 4k, adult women, asia, full body:1.4, long black hair, looking at viewer, beautiful detailed eyes, small breasts, white t-shirt:1.6, white pants:1.6, wide shot:1.3, strolling, beach:1.3, tree, beautiful detailed sky, blue sky

反向提示词:

deformed,bad anatomy,disfigured,poorly drawn face,out of frame,bad hands,unclear eyes,cloned face,bad face, disfigured, deformed, cross-eye

3、设置 Stable Diffusino的相关参数:

(1)缩放模式:因为参考图片和新生成的图片尺寸可能不一致,所以我们需要选择生成新图片时怎么处理参考图片。

这里有四种模式:拉伸、裁剪、填充和直接缩放,如果没有特殊需求,大家应该都不会喜欢拉伸和直接缩放的效果,它们的效果如下图所示:

当然如果参考图片和新生成图片的尺寸是一样的,这个【缩放模式】怎么设置都没有问题。

(2)采样器、采样步数:大部分采样器的效果差别不是很大,一般 Euler a 和20步采样就够了,其它的可以试试DPM+系列。后边会有文章专门讲采样器。

(3)生成图片的尺寸:一般保持和原图一样,也可以更改,更改时需要考虑【缩放模式】的影响。

(4)生成次数和每次数量:默认都是1,也就是只生成一次且每次只生成一张图片。增加【生成次数】会明显增加生成时间,增加【每次数量】会明显增大显存使用。

(5)提示词引导系数:默认为7,值越大生成图片越贴近提示词的描述,值越小AI自我发挥的越多,常见的设置是 5-12。

(6)重绘强度:新生成的图片会多大程度上改变参考图片,值越大新图片自由发挥的越多,越不像参考图片。这里我们不想让人物的二次元照片与原图相差太大,所以值设置的比较小。相同的值在不同的模型或者图片上的效果都可能是不同的,所以实际处理图片时还需根据效果进行调整。

然后我们就可以生成图片了,下边是我使用不同的重绘幅度做的图:

涂鸦绘制

涂鸦绘制就是在原图上画一个代表某种事物的形状,然后让Stable Diffusion结合我们的提示词在图片中生成对应的元素。下面这个例子是给女孩添加一副天使的翅膀。

1、选择合适的大模型,提示词中声明你想要在画面中出现的元素。

2、在下面的 Generation 选项卡中选择“涂鸦绘制”,上传一张要涂鸦的图片,然后使用画笔工具在图片上画出你想要的形状,这里可以选择我们想要的颜色。天使的翅膀我想是白色的,但不应该是纯白,所以我这里选择一个有点灰的白色。

3、Stable Diffusion 的参数没什么好说的,注意缩放模式和图片尺寸的搭配,重绘强度建议从0.5开始,然后根据实际出图效果调整。

4、然后就可以生成图片了,看下边的效果。

可以看到,翅膀是画出来了,不过画面上的其它部分也产生了一些变化,涂鸦绘制是整张图片的重绘,某些场景下这不够完美,解决这个问题需要使用下文介绍的涂鸦蒙版。

使用这个技术,我们还可以在图片上写几个字,Stable Diffusion会把文字处理成画笔书写的效果,比较好看一些。

局部绘制

局部绘制是只更改原图片的部分区域,具体方式是使用画笔涂抹盖住一些部分,然后我们可以选择只重新绘制盖住的部分,或者只重新绘制没有盖住的部分。在 Stable Diffusion 中盖住的部分称为蒙版内容。

这里以把姑娘的头发颜色修改成金色为例。

1、基础模型选择一个匹配照片风格的;为了修改颜色,我们需要在提示词中着重描述重绘需求。提示词可以只描述要重绘的部分,也可以是一个完整的图片描述,重绘幅度较大时建议只描述要重绘的部分,否则重绘的部分可能与原图衔接不好。

2、在 Generation 选项卡中点击“局部绘制”,上传一张图片后,使用画笔工具涂抹要重绘的部分。

3、其它 Stable Diffusion 参数如下:

(1)蒙版模糊度:设置重绘部分与原图的衔接处的模糊度,起到渐变的作用,让衔接看起来比较自然。衔接不好时可以调大一点看看。

(2)蒙版模式:绘制蒙版内容,也就是绘制被蒙住的内容;绘制非蒙版内容,也就是绘制没有蒙住的部分。怎么选择?我的经验是哪个涂抹的少选择哪个,给自己减少一些工作。比如这里要重绘头发,头发的区域相比整个图片要小很多,我们就涂抹头发,这里选择绘制蒙版内容;如果头发的区域很大,我们就可以涂抹其它区域,然后这里选择绘制非蒙版内容。

(3)绘制区域:选择全图时Stable Diffusion会先重绘整张图片,最后出图时再替换到原图中;仅蒙版时,Stable Diffusion只绘制需要重绘的部分。个人感觉出图效果没有太大差别,有兴趣的可以多试试对比下。

(4)仅蒙版绘制参考半径:绘制区域仅蒙版时,绘制区域向外拓展的数量,单位是像素。使用这个参数可以解决蒙版边缘不好涂抹的问题,效果类似我们手动涂抹时向外多涂抹一点,让新生成的部分与原图衔接的更好。

(5)图片尺寸:根据需要设置,注意选择合适的缩放模式。我这里只改颜色,所以和原图保持一致。

(6)重绘强度:多大程度上改变原图的内容。因为改头发颜色还是相对困难的,所以我这里火力全开,设置为最大的1。默认是0.75,需要根据实际出图效果调整设置。

4、最后给大家看下局部重绘的效果:

可以看到头发已经变成金色的了,但是头发的外形也发生了一些变化,这说明 Stable Diffusion是重新绘制,而不是简单的上色;而且只有蒙版蒙住的部分重新绘制了,其它部分都没什么变化。

这个技术用途比较大,比如给模特换衣服,当然如果要换指定的衣服还得结合其它技术才行。

局部绘制(涂鸦蒙版)

上面我们介绍了涂鸦绘制,但是涂鸦绘制会重绘整张图片,涂鸦蒙版可以解决这个问题。

还是以给人物加上天使的翅膀为例。

1、选择匹配画面风格的大模型,填写想要绘制的画面内容,上传图片,选择合适的颜色,在图片上画出想要的形状。

2、Stable Diffusion 的参数中多了一个蒙版透明度,值越大绘制的内容越透明;另外这里的重绘强度我们可以选择的高一点,因为重绘只针对图片的部分画面,我们不需要担心其它部分会被改变的太多。

3、话不多说,还是看一下效果:

4、再分享几个例子:

给姑娘头上戴上一朵小黄花。

给姑娘剪个头发。

在天上画个地图(区域有点小了,大家可以试试大图)。

局部绘制(上传蒙版)

上面我们演示了涂鸦蒙版的效果,但是这种手绘的蒙版还有个问题:不够精准,绘制起来也比较麻烦。

上传蒙版可以解决这个问题,我们可以使用别的工具来制作一个精准的模版,然后上传到局部绘制,再进行重绘。

还是以本文的姑娘照片为例,我们将使用上传蒙版分别重绘人物和背景。

1、选择匹配画面风格的大模型,在提示词中编写想要重绘的内容。

提示词1(绘制蒙版内容,亚洲姑娘换成金发碧眼的美国姑娘):

best quality, masterpiece, super high resolution, 4k, 1girl, american, full body:1.4, long golden hair, looking at viewer, beautiful detailed eyes, brown t-shirt:1.31, blue jeans:1.31

提示词2(绘制非蒙版内容,背景换成战火纷飞的街道):

best quality, masterpiece, super high resolution, 4k, 1girl standing in the middle of war-torn streets

反向提示词:

deformed,bad anatomy,disfigured,poorly drawn face,out of frame,bad hands,bad fingers,unclear eyes,cloned face,bad face, disfigured, deformed, cross-eye, EasyNegative

2、在“局部绘制(上传蒙版)”中分别上传原图和蒙版图。

蒙版图可以使用 Stable Diffusion WebUI 的一个抠图插件制作:stable-diffusion-webui-rembg

3、Stable Diffusion 参数设置。注意我们这里要使用两种蒙版模式分别绘制。

4、然后就可以生成图片了,效果图如下:

批量处理

“批量处理”可以完成一组图片的“图生图”处理。

1、我们首先还得选择一个大模型,编写相关的提示词(不过这个提示词也可以不填,具体原因后边的内容会有说明)。

2、再往下看,“批量处理”有一组特别的参数,如下图所示:

(1)输入目录:原图所在的目录,必须设置。

(2)输出目录:新生成图片的存放目录,必须设置。

(3)批量绘制遮罩图片目录:如果需要根据蒙版进行局部绘制,这里制定蒙版图片所在的目录,蒙版图片的文件名需要和“输入目录”中的文件名一一对应。

(4)Controlnet输入目录:如果使用Controlnet,这里需要指定Controlnet中使用的参考图片。留空则使用“输入目录”中的文件。

(5)PNG info:提取一组图片中的信息作为批量“图生图”时每张图片的参数。比如我们提前生成好了一组图片,现在想把它们转换为另外的风格,通过启用这个参数,就可以在生成新图片时使用原图片的生成信息,以最大化保留原图中的各种元素。启用这个参数,需要勾选上“Append png info to prompts”,它还有几个子参数:

  • “PNG info directory”设置用来提取生成参数的图片目录,其中的图片文件名需要和“输入目录”中的文件名一一对应,默认为“输入目录”;
  • “Parameters to Take from png info” 为想要使用的图片生成参数,按照自己的需要勾选就可以了,注意如果勾选了提示词,它会被追加到“图生图”的提示词中。如果我们想完全使用这些图片的提示词,可以把页面上方“图生图”的提示词和反向提示词留空。

3、再往下,是 Stable Diffusion 的一些标准参数。注意如果勾选了“Append png info to prompts”,生成图片时下图红框中的参数会被替换掉。

批量生成后,我们可以在输出目录找到新生成的图片,图片处理效果上面都演示过了,这里就不展示了。

总结

通过以上演示,我们可以看到,图生图能够参考原图,再依据我们的指令生成新图。在这个重绘的过程中,我们可以使用涂鸦、蒙版等来影响出图的效果,这是一种精准控制的能力,不过这还不够,如果需要更多的精准控制,我们需要使用ControlNet:Stable Diffusion基础:精准控制之ControlNet

写在最后

感兴趣的小伙伴,赠送全套AIGC学习资料,包含AI绘画、AI人工智能等前沿科技教程和软件工具,具体看这里。

AIGC技术的未来发展前景广阔,随着人工智能技术的不断发展,AIGC技术也将不断提高。未来,AIGC技术将在游戏和计算领域得到更广泛的应用,使游戏和计算系统具有更高效、更智能、更灵活的特性。同时,AIGC技术也将与人工智能技术紧密结合,在更多的领域得到广泛应用,对程序员来说影响至关重要。未来,AIGC技术将继续得到提高,同时也将与人工智能技术紧密结合,在更多的领域得到广泛应用。

在这里插入图片描述

一、AIGC所有方向的学习路线

AIGC所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照下面的知识点去找对应的学习资源,保证自己学得较为全面。

在这里插入图片描述

在这里插入图片描述

二、AIGC必备工具

工具都帮大家整理好了,安装就可直接上手!
在这里插入图片描述

三、最新AIGC学习笔记

当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。
在这里插入图片描述
在这里插入图片描述

四、AIGC视频教程合集

观看全面零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。

在这里插入图片描述

五、实战案例

纸上得来终觉浅,要学会跟着视频一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
在这里插入图片描述

  • 28
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
【资源说明】 1、基于ChatGPT搭建微信聊天机器人实例源码+项目说明.zip 2、该资源包括项目的全部源码,下载可以直接使用! 3、本项目适合作为计算机、数学、电子信息等专业的课程设计、期末大作业和毕设项目,作为参考资料学习借鉴。 4、本资源作为“参考资料”如果需要实现其他功能,需要能看懂代码,并且热爱钻研,自行调试。 基于ChatGPT搭建微信聊天机器人实例源码+项目说明.zip > ChatGPT近期以强大的对话和信息整合能力风靡全网,可以写代码、改论文、讲故事,几乎无所不能,这让人不禁有个大胆的想法,能否用他的对话模型把我们的微信打造成一个智能机器人,可以在与好友对话中给出意想不到的回应,而且再也不用担心女朋友影响我们 ~~打游戏~~ 工作了。 最新版本支持的功能如下: - [x] **多端部署:** 有多种部署方式可选择且功能完备,目前已支持个人微信,微信公众号和企业微信应用等部署方式 - [x] **基础对话:** 私聊及群聊的消息智能回复,支持多轮会话上下文记忆,支持 GPT-3,GPT-3.5,GPT-4模型 - [x] **语音识别:** 可识别语音消息,通过文字或语音回复,支持 azure, baidu, google, openai等多种语音模型 - [x] **片生成:** 支持片生成 和 图生(如照片修复),可选择 Dell-E, stable diffusion, replicate模型 - [x] **丰富插件:** 支持个性化插件扩展,已实现多角色切换、文字冒险、敏感词过滤、聊天记录总结等插件 - [X] **Tool工具:** 与操作系统和互联网交互,支持最新信息搜索、数学计算、天气和资讯查询、网页总结,基于 [chatgpt-tool-hub](https://github.com/goldfishh/chatgpt-tool-hub) 实现 > 欢迎接入更多应用,参考 [Terminal代码](https://github.com/zhayujie/chatgpt-on-wechat/blob/master/channel/terminal/terminal_channel.py)实现接收和发送消息逻辑即可接入。 同时欢迎增加新的插件,参考 [插件说明文档](https://github.com/zhayujie/chatgpt-on-wechat/tree/master/plugins)。 **一键部署:** - 个人微信 [![Deploy on Railway](https://railway.app/button.svg)](https://railway.app/template/qApznZ?referralCode=RC3znh) - 企业微信应用号 [![Deploy on Railway](https://railway.app/button.svg)](https://railway.app/template/-FHS--?referralCode=RC3znh) # 演示 https://user-images.githubusercontent.com/26161723/233777277-e3b9928e-b88f-43e2-b0e0-3cbc923bc799.mp4 Demo made by [Visionn](https://www.wangpc.cc/) # 更新日志 >**2023.04.26:** 支持企业微信应用号部署,兼容插件,并支持语音片交互,支持Railway部署,[使用文档](https://github.com/zhayujie/chatgpt-on-wechat/blob/master/channel/wechatcom/README.md)。(contributed by [@lanvent](https://github.com/lanvent) in [#944](https://github.com/zhayujie/chatgpt-on-wechat/pull/944)) >**2023.04.05:** 支持微信公众号部署,兼容插件,并支持语音片交互,[使用文档](https://github.com/zhayujie/chatgpt-on-wechat/blob/master/channel/wechatmp/README.md)。(contributed by [@JS00000](https://github.com/JS00000) in [#686](https://github.com/zhayujie/chatgpt-on-wechat/pull/686))

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值