教程简述
在本教程中,您将学习如何在阿里云交互式建模(PAI-DSW)中,使用Stable-Diffusion-WebUI实现AI扩图功能。
随着AIGC技术的落地发展,越来越多的创新玩法闯进了我们视野,AI扩图便是其中之一。只需给AI一张图片,AI就会根据图像的上下文语义信息,预测和补充图像边界,生成一张尺寸更大的图像。AI扩图有时是拯救废片的神器,能够将半身照扩展为惊艳的全身照,有时也会翻车,生成的图像让人哭笑不得。
本教程使用Stable Diffusion WebUI实现AI扩图功能效果展示如下:
基于本教程可以体验:
新用户可免费领取价值万元的人工智能平台PAI 试用资源
学会如何快速在阿里云上创建一个交互式训练开发环境。
学会如何在DSW中启动WebUI。
学会如何在DSW实现AI扩图功能。
使用PAI-DSW快速启动SD WebUI
1.准备环境和资源
1.1 领取交互式建模PAI-DSW免费试用权益
前往活动页面,领取交互式建模PAI-DSW产品免费试用资源包
- 对于交互式建模 PAI-DSW 的新用户,阿里云提供了5000CUH 的免费试用资源,可以在活动页面中直接领取(试用规则请参照阿里云免费试用:https://free.aliyun.com/);或可以购买交互式建模 PAI-DSW 资源包参与活动,购买链接:PAI-DSW 100CUH资源包,价格 59 元起;如不购买资源包,PAI-DSW 会按量进行计费,计费标准详见阿里云产品定价。
1.2 创建PAI-DSW实例
1.前往人工智能平台PAI控制台,链接:https://pai.console.aliyun.com/
2.开通人工智能PAI并创建默认工作空间。请参见开通并创建默认工作空间。
3.在人工智能平台PAI控制台内,选择交互式建模PAI-DSW,或点击链接
4.点击创建实例(如上图)
5.自定义输入实例名称
6.选择实例机型,GPU分类-ecs.gn6v-c8g1.2xlarge(支持资源包抵扣),若无此机型库存可更换地域尝试;
7.选择镜像,stable-diffusion-webui-develop:1.0.0-pytorch2.01-gpu-py310-cu117-ubuntu22.04
8.点击“下一步”
9.确认【资源配置】及【镜像】如图所示,点击创建实例;
10.大约等到3-5分钟,实例状态变为「运行中」,实例创建完成;
1.3 在DSW中打开教程文件
1.单击需要打开的实例操作列下的打开,进入PAI-DSW实例开发环境。
2.在Notebook页签的Launcher页面,单击快速开始区域Tool下的浏览Gallery,打开Gallery页面
3.在DSW Gallery页面中,搜索并找到AI扩图神器:放飞你的想象力教程,单击教程卡片中的在DSW中打开。
4.右侧出现文件夹“demos”,点击“demos”文件夹,点击“stable_diffusion_inpaint”文件夹,点击“stable_diffusion_inpaint.ipynb”文件,打开已编写好的Notebook最佳实践教程,具体步骤如下图所示
5.完成以上步骤,顺利打开AI扩图神器:放飞你的想象力 Notebook最佳实践。
1.4 运行教程文件
1.在打开的教程文件stable_diffusion_inpaint.ipynb文件中,您可以直接看到教程文本,您可以在教程文件中直接运行每个代码片段。当成功运行结束一个步骤命令后,再顺次运行下个步骤的命令。
2.本教程一共3个运行步骤:
a.下载stable-diffusion-webui开源库
b.下载模型
c.启动WebUI
3.当第3步启动WebUI运行完成后,在返回的运行详情结果中单击URL链接,进入WebUI页面。后续您可以在该页面完成AI扩图。
2.完成部署开始体验AI扩图
为了实现AI扩图的能力,需要在Stable Diffusion WebUI页面进行如下配置。
2.1 进入图生图界面
进入图生图界面,Stable Diffusion模型和模型的VAE保持默认即可。
2.2 基本配置
图生图配置,完成图片上传和图生图参数配置。具体参考下图。
1.缩放模式:选择填充。
2.重绘幅度:选择1.0。 — 通常来说,重绘幅度参数越大,生成的图片和原来的图片相似度越低,但使用controlnet inpaint扩图时,需要拉满。
3.宽度和高度:填写扩图后的大小。
- 请根据原图尺寸以及扩图需求来设置尺寸。注意,扩图时原图片的比例不能保持相同。
- 本例设置宽度为1024,高度为512,期待看到图像水平延展的结果。
2.3 ControlNet配置
接下来,需要配置ControlNet,参数如下:
- 选择启用、Upload independent control image和Pixel Perfect。前两者是为了让ControlNet通过图片控制生图,后者是为了改善生成效果。这里上传跟上文一样的图片。
- Controltype:选择局部重绘。
- 预处理器:选择inpaint_only。
- 模型:选择control_v11p_sd15_inpaint,这是SD1.5的ControlNet扩图模型。
- ControlMode:选择Controlnet更重要。
- 画面缩放模式:选择调整大小并填充。
2.4 输入prompt,完成AI扩图
按照个人喜好,输入正向及负向prompt,完成AI扩图,以下为示例参考。
heart-shape balloons——心形气球
Christmas tree——圣诞树
本次活动主题:AI扩图后,图片里有一颗树。请由人工智能平台PAI(PAI-DSW)完成AI扩图后,上传符合活动主题的作品至活动页面 >> 「和PAI一起,每周玩转AI」第五期:使用 PAI-DSW 实现AI扩图功能
3.资源清理及后续
3.1 清理
- 在实验完成后,可前往对应产品控制台,停止或删除实例(两个操作均可),避免实例持续处于运行中,在超出免费试用额度后,带来额外的扣费;
- 后续仍考虑使用该实例>>停止;后续不再使用该实例>>删除,成功停止后即停止资源消耗。
3.2 后续
在试用有效期期间,您还可以继续使用DSW实例进行模型训练和推理验证。
本文为阿里云原创内容,未经允许不得转载。