博客中介绍了如何基于SageMakerNotebook快速搭建托管的AI作画可视化环境(链接见)


------正文内容展示,开始汲取新知识啦------

前言

感谢各位读者对《生花妙笔》系列的关注和喜爱。 在本系列的第一篇博客中,我们介绍了如何基于SageMaker Notebook快速构建托管的AI绘画可视化环境(链接见注释),并收到了一些积极的评论。 反馈和建议正在对当前方案不断迭代。 在本文中,我们将向您介绍: 1. 解决方案的新功能:ControlNet 和图像浏览器插件支持; 2、在电商/广告行业,基于该解决方案新版本,搭载最新的可视化工具Grounded-SAM,用于可控生成文字和图片,加速营销素材的输出; 3.本解决方案的常见问题及解答。

注:请参考之前的博客《新花笔笔新手来-快速构建托管稳定扩散-基于SageMaker Notebook的AI绘画可视化环境》并部署最新版本的解决方案。 下面的内容将介绍最新的解决方案。 我们仍然建议您将解决方案部署在us-east-1区域,并根据您的需求选择ml.g4或ml.g5系列实例规格。

计划第一部分新功能1 扩展和插件

1.1 控制网

ControlNet是一个基于Stable Diffusion WebUI的插件。 它引入了文森图功能的新控制方法,可以额外控制人物的姿势、景深、线条图的着色等,并且可以更稳定地控制输出屏幕。 ControlNet 针对每种类型的输入分别训练了模型,目前公开的有以下 8 个模型。 分别是:canny、深度、hed、mlsd、normal、openpose、scribble、segmentation,模型描述如下表所示。

预处理名称

对应型号

型号说明

精明的

控制精明

边缘检测。 通过从原始图片中提取线条图来生成具有相同构图的图片。

深度

控制深度

深度检测。 捕获图片的深度并获取图片的前景和背景的关系。

赫德

控制_hed

检测到边缘,但保留更多细节,有利于重新着色和风格化。

最小二乘法

控制_mlsd

线段识别和字符识别极差,非常适合建筑。

法线贴图

控制正常

从图片生成法线贴图,非常适合 CG 建模者。

开放式

控制开放姿势

提取角色骨架姿势。

openpose_hand

控制开放姿势

提取角色+手部骨骼姿势。

控制开放姿势

提取黑白手稿。

假涂鸦

控制涂鸦

涂鸦风格提取(非常强大的模型)。

分割

控制段

语义分割。

本方案最新版本的WebUIVersion – 0405默认支持ControlNet插件(参见本文第三部分常见问题1),只需按照以下步骤下载模型,即可开始使用ControlNet插件立即地。

图片[1]-博客中介绍了如何基于SageMakerNotebook快速搭建托管的AI作画可视化环境(链接见)-知新网

cd SageMaker/sd-webui
./download-controlnet-models.sh

图片[2]-博客中介绍了如何基于SageMakerNotebook快速搭建托管的AI作画可视化环境(链接见)-知新网

1.2 图片浏览器

新增对图像浏览器插件的支持,您可以轻松查看生成的历史图像,如下图。

图片[3]-博客中介绍了如何基于SageMakerNotebook快速搭建托管的AI作画可视化环境(链接见)-知新网

2 地区支持

添加了 2 个美国西部(俄勒冈)区域

第二部分 电商创意1代背景介绍

在电商图像素材的生成中,一个非常常见的任务就是对图像的某一部分进行定向修改。 过去,更多的设计师需要使用专业的图像编辑软件,经过长时间的工作才能实现。 然而,凭借今天的人工智能能力,我们可以更轻松、更高效地完成这项任务。

在本文中,我们将向您展示如何在新版升华妙笔上使用Stable Diffusion WebUI和Grounded-SAM来实现如下图所示的端到端图像编辑效果,包括1.实现无代码图像编辑(手动遮罩),适合不熟悉代码开发的设计师和创作者,2.使用代码自动实现图像编辑(自动遮罩),适合对AIGC感兴趣的开发者和爱好者。

图片[4]-博客中介绍了如何基于SageMakerNotebook快速搭建托管的AI作画可视化环境(链接见)-知新网

2 场景模型使用

在本文中,我们将使用以下模型。

2.1 现实愿景

真实视觉是指生成真实图像的模型。 为不同年龄、种族和服装风格的人物创建高度逼真的肖像,看起来就像照片一样。

2.2 控制网

ControlNet是基于Stable Diffusion 1.5的预训练模型。 在作者Lvmin Zhang的论文中,他解释了ControlNet通过输入条件控制预训练的大规模扩散模型,可以使用输入图像中的边缘特征、深度特征或人体姿态。 骨架特征与文字提示一起准确指导SD 1.5中的图像生成结果。 ControlNet共有8个模型,本文使用Control_canny模型。

2.3 接地-SAM

Grounded-Segment-Anything (Grounded-SAM) 是基于 Grounding DINO(探测器)和 Segment AnythingModel(分段器)的多模态图像生成工作流程,是一个流行的开源项目。 Grounded-SAM可以直接与Stable Diffusion结合用于可控文本生成。

2.3.1 DINO 接地

Grounding DINO:一种零样本图像检测模型,可以通过文本描述来检测图像中的物体并生成矩形框。

2.3.2 分段任意模型(SAM)

Segment AnythingModel (SAM):一种高质量的图像分割模型,可以使用辅助点和辅助框作为图像分割的提示。 其训练集包括超过 10 亿个掩模和 1100 万张图像,是迄今为止最大的图像分割开源数据集。 官方声称 SAM 已经学会了“物体是什么”的一般概念,因此无需额外训练即可分割图像。

3 无需代码的图像编辑(手动遮罩)

实验步骤如下:

3.1 读者可以点击下载本实验所用图片。

3.2 在 CloudFormation-stack-output 中,找到 NotebookURL 链接并打开 SageMaker Notebook 实例。

图片[5]-博客中介绍了如何基于SageMakerNotebook快速搭建托管的AI作画可视化环境(链接见)-知新网

3.3 单击“Terminal”,依次输入以下命令,下载Realistic Vision V1.3模型。

cd SageMaker/
wget https://huggingface.co/SG161222/Realistic_Vision_V1.3/resolve/main/Realistic_Vision_V1.3-inpainting.ckpt
sudo mv Realistic_Vision_V1.3-inpainting.ckpt ./sd-webui/data/StableDiffusion/ 

在上面的脚本中,我们在 HuggingFace 上使用了 Realistic Vision V1.3 模型。 您也可以直接从CIVITAI官网下载Realistic Vision V2.0,两者最终的效果非常接近。

图片[6]-博客中介绍了如何基于SageMakerNotebook快速搭建托管的AI作画可视化环境(链接见)-知新网

3.4 在WebUI中,选择我们刚刚下载的预训练模型Realistic Vision V1.3作为基础模型,并选择img2img中的Inpaint函数作为我们的任务类型。 所谓Inpaint,其实是图像生成任务的一个子类,即通过掩码(Mask)完成图像,或者说部分图像生成。

图片[7]-博客中介绍了如何基于SageMakerNotebook快速搭建托管的AI作画可视化环境(链接见)-知新网

3.5 上传原图,用画笔手动绘制要编辑区域的遮罩。

图片[8]-博客中介绍了如何基于SageMakerNotebook快速搭建托管的AI作画可视化环境(链接见)-知新网

3.6 按照下图配置Inpaint相关参数。 这里我们选择只完成并生成mask部分。

图片[9]-博客中介绍了如何基于SageMakerNotebook快速搭建托管的AI作画可视化环境(链接见)-知新网

3.7 将原图上传至ControlNet,并按下图配置相关参数。 ControlNet 功能有助于增强对最终图像生成的控制。 这里我们选择Canny预处理器(Preprocessor),并选择对应的Canny模型(Model)来生成笔画图像,降低“Canny下阈值”可以帮助我们保留原始图像中更多的边缘细节,如图所示。 ControlNet模型的安装请参考FAQ,Canny的模型说明请参考ControlNet部分的模型定义表。

图片[10]-博客中介绍了如何基于SageMakerNotebook快速搭建托管的AI作画可视化环境(链接见)-知新网

3.8 参考下面模板输入提示词,点击生成。

提示=一件极其漂亮的梦幻白色蕾丝棉质连衣裙,精致的透明袖子,额外的细节,(高细节皮肤:1.2),8k uhd,单反,柔和的灯光,高品质,胶片颗粒,Fujifilm XT3,逼真

负提示=(虹膜变形、瞳孔变形、半写实、cgi、3d、渲染、草图、卡通、绘画、动漫:1.4)、文本、特写、裁剪、出框、最差质量、低质量、jpeg 伪像, 丑陋, 重复, 病态, 残缺, 额外的手指, 变异的手, 画得不好的手, 画得不好的脸, 突变, 变形, 模糊, 脱水, 不良的解剖结构, 不良的比例, 额外的四肢, 克隆的脸, 毁容, 毛比例, 畸形的李mbs 、缺胳膊、缺腿、多余的胳膊、多余的腿、手指融合、手指太多、脖子长

图片[11]-博客中介绍了如何基于SageMakerNotebook快速搭建托管的AI作画可视化环境(链接见)-知新网

3.9 等待生成后,可以得到如下结果。

图片[12]-博客中介绍了如何基于SageMakerNotebook快速搭建托管的AI作画可视化环境(链接见)-知新网

总结:虽然上面的流程简单易操作,但是如果每次都需要手动生成mask的话会非常耗时。 下面我们将通过代码来介绍图像编辑。

4编码和全自动图像编辑(自动遮罩)

在结合了Grounding DINO(检测器)和Segment Anything Model(分割器)两个关键组件后,Grounded-SAM成为极其强大的视觉应用组合,可以通过文本提示(Text Prompt)完成CV语义分割。 加上Stable Diffusion,无疑为多模态工程图像生成提供了更多可能。 实验步骤如下:

图片[13]-博客中介绍了如何基于SageMakerNotebook快速搭建托管的AI作画可视化环境(链接见)-知新网

图片来自

4.1 在 CloudFormation-Stack-Output 中,找到 NotebookURL 链接并打开 SageMaker Notebook 实例。

图片[14]-博客中介绍了如何基于SageMakerNotebook快速搭建托管的AI作画可视化环境(链接见)-知新网

4.2 单击“Terminal”,依次输入以下两行命令,将代码克隆到本地。

cd SageMaker/
git clone https://github.com/DearAmber/miaobishenghua2.git

图片[15]-博客中介绍了如何基于SageMakerNotebook快速搭建托管的AI作画可视化环境(链接见)-知新网

图片[16]-博客中介绍了如何基于SageMakerNotebook快速搭建托管的AI作画可视化环境(链接见)-知新网

4.3 在左侧路径中选择“miaobishenghua2”,双击“g-seg-local.ipynb”文件。 还要选择“conda_pytorch_p39”作为我们的环境。

图片[17]-博客中介绍了如何基于SageMakerNotebook快速搭建托管的AI作画可视化环境(链接见)-知新网

4.4 依次运行所有代码片段。 整个过程由三个主要部分组成。

4.4.1将通过文字描述展示如何使用Grounding DINO生成预测矩形。 例如,这里我们要选择一件绿色的衣服,那么我们可以输入“绿色衣服”作为提示词,得到下图。 我们还可以通过调整“box_threshold”来控制识别的置信度,调整“text_threshold”来控制提示词的相关性,从而过滤最终的结果(具体参见代码)。 矩形框的结果将作为下面分割任务的辅助提示(Prompt)。

图片[18]-博客中介绍了如何基于SageMakerNotebook快速搭建托管的AI作画可视化环境(链接见)-知新网

我们也可以尝试将提示词替换为“白色连衣裙,蓝色图案”,就会得到下面的矩形框。 图中最左边的裙子虽然也是白色的,但因为没有蓝色图案而没有被选中。

图片[19]-博客中介绍了如何基于SageMakerNotebook快速搭建托管的AI作画可视化环境(链接见)-知新网

4.4.2 将展示如何使用 Segment Anything 根据上一步中的预测矩形生成分割掩码。 这里我们输入预测框作为辅助提示,并通过“multimask_output=False”将输出限制为只有一个分割掩码(具体参见代码),最终得到下图的结果。 Segment Anything本身也支持单点和多点作为辅助提示,这样我们就可以在只有原始图像的情况下快速自动批量生成蒙版。

图片[20]-博客中介绍了如何基于SageMakerNotebook快速搭建托管的AI作画可视化环境(链接见)-知新网

图片[21]-博客中介绍了如何基于SageMakerNotebook快速搭建托管的AI作画可视化环境(链接见)-知新网

4.4.3 我们将展示如何使用Stable Diffusion的Inpainting模型来替换上面遮罩中的内容。 我们使用ml.g5。 实验中使用2xlarge实例,请根据您的实例类型调整os.environ["CUDA_VISIBLE_DEVICES"] = "0"。 在这里,我们切换到 stable-diffusion-2-inpainting 模型来生成以下图像(详细信息请参阅代码)。

图片[22]-博客中介绍了如何基于SageMakerNotebook快速搭建托管的AI作画可视化环境(链接见)-知新网

总结:基于以上方法,我们可以更加轻松高效地实现全自动图像编辑和素材生成。 在实际的生产环境中,我们往往需要更复杂的工程架构来进一步优化整个工作流程。 需要说明的是,这部分代码中使用的Stable Diffusion来自HuggingFace扩散器,考虑到一般企业中,团队协作比较紧密(设计师和技术开发),建议使用Stable Diffusion WebUI API来实现编码图像生成和输出工作流程,保证参数等信息的统一。 此场景示例可作为全自动工作流程的快速验证参考。

第三部分 常见问题 1 如何更新到最新版本的方案(0405)?

安装方法请参考《盛华妙笔新手来-基于SageMaker Notebook快速构建托管稳定扩散-AI绘画可视化环境》的安装流程。 WebUIVersion 默认使用版本 0405。 尚不支持在现有环境中更新,需要重新安装。

图片[23]-博客中介绍了如何基于SageMakerNotebook快速搭建托管的AI作画可视化环境(链接见)-知新网

2 方案部署时出现服务配额问题如何处理?

在部署此解决方案之前,请确认相应区域的服务配额中已增加了SageMaker Notebook的相应资源配额(例如用于笔记本实例使用的ml.g4dn.2xlarge)。 具体步骤请参考链接。

3 如何使用从网上下载的模型?

图片[24]-博客中介绍了如何基于SageMakerNotebook快速搭建托管的AI作画可视化环境(链接见)-知新网

4 如何在Automatic和InvokeAI之间切换?

cd SageMaker/sd-webui

./startAuto.sh

./startInvoke.sh

5 关于版本管理

我们将保留最新的两个方案版本:0405和0316。

总结

本文介绍了之前系列博客解决方案的新功能,例如:新增对 ControlNet 和 Image Browser 插件的支持,以及新增对 2 美国西部(俄勒冈)地区的支持。 还详细介绍了基于该解决方案和相关SageMaker服务,使用Grounded-SAM生成电商广告行业营销素材的方法和步骤,包括: 1.通过ControlNet中的Canny模型进行无代码图像编辑和Inpaint 功能,以及 2. 通过 Grounded-SAM(Grounding DINO 和 Segment Anything)使用代码进行图像编辑。 此外,我们将继续在“美丽的花朵”系列中添加更多贴近客户场景的解决方案。 如果您有任何相关问题或需求,请随时联系我们进一步沟通。

温馨提示:本文最后更新于2023-07-29 17:11:23,某些文章具有时效性,若有错误或已失效,请私信客服或联系知新社长
------本文内容已结束,喜欢请分享------

感谢您的访问,Ctrl+D收藏本站吧。

© 版权声明
六月 30

知岛上的今时往日

THE END
点赞0投币 分享
评论 抢沙发
头像
善语结善缘,恶言伤人心。(禁止发送无意义的字符)
提交
头像

昵称

夸夸Ta
夸夸
还有吗!没看够!
取消
昵称表情代码图片

    暂无评论内容

社区求救信号帮助是一种美德