一文教你StableDiffusion图生图批量处理!

2024-09-04 19:20

本文主要是介绍一文教你StableDiffusion图生图批量处理!,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

今天给大家讲解一下SD图生图的批量处理功能应该如何使用~

一、图生图批量处理功能的基本用法

首先打开webUI,在图生图页面下我们先找到批量处理的菜单:

最简单的批量处理方法只需要用到【输入目录】和【输出目录】两个功能:

第一步,需要建立一个输入目录的文件夹,大家注意不要用中文路径。

然后将要重绘的图片编号序号放到这个文件夹内:

接着我们将这个目录的路径粘贴到输入目录:

再建立一个文件夹用作输出图片用,注意路径也不要有中文:

将这个文件夹的路径粘贴到输出目录:

以上设置好之后我们就可以正常选择绘画模型,填写想要绘制的提示词和设置参数了。

例如我们想要重绘的是皮卡丘跳舞,那就在正向提示词中写入:一只皮卡丘在跳舞。

在下方设置重绘参数,注意重绘尺寸的宽高比例需要与重绘的图片一致:

最后我们点击生图,在输出的文件夹就会出现重绘后的图片了,注意如果输出文件夹没有出现重绘图,大家可以重新打开webUI尝试。

此时我们发现重绘的皮卡丘跟原图有点差异,为了提高重绘的精度,我们还需要学习下面这些进阶功能。

二、在批量处理中使用重绘蒙版

首先我们要了解什么是重绘蒙版?

重绘蒙版可以帮助我们更精细地控制重绘画面中元素的范围,例如我只想重绘皮卡丘而让图像的背景保持不变。

首先我们要用PS等软件给每张要重绘的图片绘制重绘蒙版(注意:白色区域是替换,黑色区域是保留不变的。)

将蒙版文件的目录贴入批量重绘蒙版目录 :

大家可以勾选这个Soft inpainting会让生成的图片过渡更加自然。

这张没有勾选能看到边缘过渡很硬~

这个勾选后的边缘就和缓多了。

最终我们在输出文件夹内就获得了我们用重绘蒙版获得的图片,可以看到背景跟原图基本保持了一致,只有皮卡丘被重绘了。

三、在批量处理中使用controlnet

为了让重绘的图片中皮卡丘的动作更加贴近原图,在这里我们还可以使用controlnet来批量重绘。

首先,打开controlnet点击启动、完美像素模式和上传独立控制的图像后选择批量处理,控制类型选择硬边缘,注意这里的目录可以先空着。

为了更好的控制图像,我们可以再增加一个controlnet,控制类型选择深度,输入目录同样不填。

然后我们回到上面的批量重绘那里,将原图的地址输入到这个controlnet输入目录这里:

最后我们就生成跟原图比较接近的重绘图像啦,经过测试,利用controlnet来批量重绘比重绘蒙版更方便效果也更好一些!

四、在批量处理中使用png图片信息

png图片信息适合当重绘不同的场景时使用。例如我们要重绘三张图,分别为一个皮卡丘、一棵树和一个初音未来:

然后针对这三个元素各自先用文生图生成一张图片:

**Prompt:**a pikachu,in the dance,best quality,masterpiece,best quality

**Prompt:**a tree,best quality,

masterpiece,HDR,UHD,8K,best quality,masterpiece

**Prompt:**hatsune miku,best quality,masterpiece,HDR,UHD,8K,best quality,masterpiece

将这三张携带有png信息的图片放置到一个文件夹内:

将目录填入png图片信息目录,打钩提示词、反向提示词、采样方法、迭代步数,并清空图生图的提示词 :

最后我们生图看一下效果:

原图

重绘后

原图

重绘后

原图

重绘后

今天的课程就到这里啦,后期精彩内容将持续更新,大家注意关注更新哦~

**END
**

▍****关注+星标,在线学习更多AIGC新工具!

扫描下方二维码获取超多AI前沿知识

在这里插入图片描述

近500G资料等你领取,包含但不仅限于Stable Diffusion、Midjourney、Fooocus:



写在最后

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

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

在这里插入图片描述

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

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

在这里插入图片描述

在这里插入图片描述

二、AIGC必备工具

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

三、最新AIGC学习笔记

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

四、AIGC视频教程合集

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

在这里插入图片描述

五、实战案例

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

若有侵权,请联系删除

这篇关于一文教你StableDiffusion图生图批量处理!的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1136808

相关文章

Java 中的 @SneakyThrows 注解使用方法(简化异常处理的利与弊)

《Java中的@SneakyThrows注解使用方法(简化异常处理的利与弊)》为了简化异常处理,Lombok提供了一个强大的注解@SneakyThrows,本文将详细介绍@SneakyThro... 目录1. @SneakyThrows 简介 1.1 什么是 Lombok?2. @SneakyThrows

在 Spring Boot 中实现异常处理最佳实践

《在SpringBoot中实现异常处理最佳实践》本文介绍如何在SpringBoot中实现异常处理,涵盖核心概念、实现方法、与先前查询的集成、性能分析、常见问题和最佳实践,感兴趣的朋友一起看看吧... 目录一、Spring Boot 异常处理的背景与核心概念1.1 为什么需要异常处理?1.2 Spring B

python处理带有时区的日期和时间数据

《python处理带有时区的日期和时间数据》这篇文章主要为大家详细介绍了如何在Python中使用pytz库处理时区信息,包括获取当前UTC时间,转换为特定时区等,有需要的小伙伴可以参考一下... 目录时区基本信息python datetime使用timezonepandas处理时区数据知识延展时区基本信息

SpringBoot整合mybatisPlus实现批量插入并获取ID详解

《SpringBoot整合mybatisPlus实现批量插入并获取ID详解》这篇文章主要为大家详细介绍了SpringBoot如何整合mybatisPlus实现批量插入并获取ID,文中的示例代码讲解详细... 目录【1】saveBATch(一万条数据总耗时:2478ms)【2】集合方式foreach(一万条数

Python Transformers库(NLP处理库)案例代码讲解

《PythonTransformers库(NLP处理库)案例代码讲解》本文介绍transformers库的全面讲解,包含基础知识、高级用法、案例代码及学习路径,内容经过组织,适合不同阶段的学习者,对... 目录一、基础知识1. Transformers 库简介2. 安装与环境配置3. 快速上手示例二、核心模

一文详解Java异常处理你都了解哪些知识

《一文详解Java异常处理你都了解哪些知识》:本文主要介绍Java异常处理的相关资料,包括异常的分类、捕获和处理异常的语法、常见的异常类型以及自定义异常的实现,文中通过代码介绍的非常详细,需要的朋... 目录前言一、什么是异常二、异常的分类2.1 受检异常2.2 非受检异常三、异常处理的语法3.1 try-

Python使用getopt处理命令行参数示例解析(最佳实践)

《Python使用getopt处理命令行参数示例解析(最佳实践)》getopt模块是Python标准库中一个简单但强大的命令行参数处理工具,它特别适合那些需要快速实现基本命令行参数解析的场景,或者需要... 目录为什么需要处理命令行参数?getopt模块基础实际应用示例与其他参数处理方式的比较常见问http

Java Response返回值的最佳处理方案

《JavaResponse返回值的最佳处理方案》在开发Web应用程序时,我们经常需要通过HTTP请求从服务器获取响应数据,这些数据可以是JSON、XML、甚至是文件,本篇文章将详细解析Java中处理... 目录摘要概述核心问题:关键技术点:源码解析示例 1:使用HttpURLConnection获取Resp

Java中Switch Case多个条件处理方法举例

《Java中SwitchCase多个条件处理方法举例》Java中switch语句用于根据变量值执行不同代码块,适用于多个条件的处理,:本文主要介绍Java中SwitchCase多个条件处理的相... 目录前言基本语法处理多个条件示例1:合并相同代码的多个case示例2:通过字符串合并多个case进阶用法使用

Java实现优雅日期处理的方案详解

《Java实现优雅日期处理的方案详解》在我们的日常工作中,需要经常处理各种格式,各种类似的的日期或者时间,下面我们就来看看如何使用java处理这样的日期问题吧,感兴趣的小伙伴可以跟随小编一起学习一下... 目录前言一、日期的坑1.1 日期格式化陷阱1.2 时区转换二、优雅方案的进阶之路2.1 线程安全重构2