图生图基本参数

  • 图生图功能主要包括六大类:图生图 / img2img涂鸦绘制 / sketch局部绘制 / inpaint局部绘制之涂鸦蒙版 / inpaint sketch局部绘制之上传蒙版 / inpaint upload批量处理 / batch
  • 而图生图的基本参数包括但不限于以下几种:
  • Resize mode: 缩放模式,包括 拉伸/Just resize裁剪/crop and resize填充/resize and fill仅调整大小(潜空间放大/just resize (latent ipscale) ,缩放模式指的是当原图和要生成的图的宽和高不一致的时候,选择的缩放模式,一般选择裁剪,如果原图和生成图的宽高一致的时候,选择任意均可
  • Mask blur: 蒙版模糊度,在 0-64 之间调节,就是将我们涂抹区域,从边缘向中间透明过渡。数值较小的时候,边缘越锐利,所以一个合适的值会让图片看起来更真实,数值一般默认即可
  • Masked content: 蒙版蒙住的内容,包括 填充/fill原图/original潜在噪声/latent noise无潜在空间/latent nothing。这是一种预处理的步骤,其中填充是指使用蒙版边缘图像的颜色填充,不过颜色已经被高度模糊;原图则是同原图一样不改变任何细节;而潜在噪声则是使用噪点进行填充;而无潜在空间就是噪点值为0的状态,可以看到只有原图保留了原来的画面,所以一般选择原图即可
  • Mask transparency: 蒙版的透明度,一般默认为0,即不透明,因为透明度越高,AI发挥的空间越小,基本上当透明度大于60,预处理就会失去作用
  • Mask mode: 蒙版模式,包括 绘制蒙版内容/inpaint masked绘制非蒙版内容/inpaint not masked,这个很好理解,选择第一个就是只在蒙版区域重绘,另一种则相反,正常一般默认第一个即可
  • Inpaint area: 绘制区域,包括 全图/whole picture仅蒙版/only masked。全图重绘是指在原图大小的基础下绘制蒙版区域,优点就是内容与原图融合的更好,缺点是不够细节;而蒙版重绘是只处理的时候将蒙版区域进行放大到原图的尺寸,画完之后再缩小放到原图的相应的位置,优点就是细节更好,缺点也是细节太多,与原图融合的不够好
  • Denoising strength: 重绘强度,默认0.75,低强度就是基本不重绘,越高重绘越强,融合越不好,所以默认即可
  • 虽然图生图的参数比较多,但大多数的时候,我们选择默认即可,因为很多时候,只需要正确的选择而非过多的选择,个人也仅仅设置一下缩放模式、采样器、采样步骤和宽高进行出图

个人常用出图参数

图生图(img2img)

  • 可以根据你上传的图片生成一张在原图基础上创作的新图片
  • 可以通过修改 Prompt 去自定义想要的结果图片,比如白色头发,红色眼睛等等

图生图

涂鸦绘制(Sketch)

  • 在原图基础上涂鸦后,进行二次创作,这是最基础的用法,当然也可以进行线稿的上色
  • 模型要选择好,如果想要生成二次元的,记得选择二次元模型,下图测试选择的是真人模型
  • 在进行线稿上色的时候,设置 缩放模式为裁剪 采样器是 DPM++ 2M Karras 采样步骤设置的是30 脚本 Script 中选择是图像迭代 Loopback 迭代次数设置成多少生成的图片就是多少张,一般设置2-4,防止显卡撑不住 最终的重绘强度 Final denoising strenght 设置成了 0.88 重绘曲线选择 Linear 迭代中反推提示词选择 DeepBooru,生成的最终图片效果还是很棒的

线稿上色

局部绘制(Inpaint)

  • 在局部绘制中,我们只需要将需要重绘的地方圈出来,然后加上 Prompt 提示词即可
  • 其中蒙版的黑色画笔并不是一种真的颜色,它是一片代表透明(不可见)属性的区域
  • 比如,将图片中的女生头发换成一头白发,只需要将图片上的头发区域涂上蒙版,然后在 Prompt 中输入 white hair 提示词即可
  • 当然这里只作为测试,如果想要更好的效果,自己设置更多的 Prompt 进行描述,除了头发,其他任何区域都可以进行重绘

一键换发

涂鸦蒙版(Inpaint sketch)

  • 相比于局部重绘,多了一个蒙版透明度的配置,这是因为这里的蒙版是可以自定义颜色的
  • 在局部绘制中画笔只有黑色,而在涂鸦蒙版中蒙版的颜色会影响到原图,选择什么颜色最终重绘都会往这个颜色上靠
  • 蒙版透明度按照需要颜色的程度调节,最好不要超过40
  • 比如将动漫女生衣服换成红色的旗袍,只需要将衣服用红色的画笔涂抹,然后在 Prompt 中输入中国旗袍的英文解释即可,因为涂鸦蒙版的颜色是会影响到原图的,所以如果是用蓝色涂抹衣服,最终将会生成蓝色的旗袍

一键换衣

上传蒙版(Inpaint upload)

  • 跟涂鸦蒙版其实差不多,只是上传的蒙版需要借助其他工具如PS的处理,相比直接手涂肯定是更精确

  • 上传蒙版的蒙版在制作时可以设置部分透明的效果(不同程度的灰),还有边缘的羽化等等。此时需要注意具有相同效果的蒙版模糊的使用

    需要注意的一点是,在上传蒙版中,白色代表重绘,黑色代表不处理。也不用细分,如果弄错了,在蒙版模式中选择重绘非蒙版就可以

  • 为了方便测试,就将图片放到涂鸦蒙版中,用黑白两色把原图进行圈出,截图上传到上传蒙版中了,顺便加了 Prompt 的参数是天空、建筑物、人物等,可以看出 AI 只在白色区域进行了重绘,而圈出的黑色是没有重绘的

  • 还有最后一个批量处理功能,用的不多,也不用讲太细,只要输入图片所在目录路径、图片处理后保存的路径以及蒙版路劲即可批量处理

自定义蒙版

最新版本 Stable Diffusion 开源 AI 绘画工具之图生图进阶篇的更多相关文章

  1. 基于Docker安装的Stable Diffusion使用CPU进行AI绘画

    基于Docker安装的Stable Diffusion使用CPU进行AI绘画 由于博主的电脑是为了敲代码考虑买的,所以专门买的高U低显,i9配核显,用Stable Diffusion进行AI绘画的话倒 ...

  2. AI绘画提示词创作指南:DALL·E 2、Midjourney和 Stable Diffusion最全大比拼 ⛵

    作者:韩信子@ShowMeAI 深度学习实战系列:https://www.showmeai.tech/tutorials/42 自然语言处理实战系列:https://www.showmeai.tech ...

  3. SpringBoot 整合 Elastic Stack 最新版本(7.14.1)分布式日志解决方案,开源微服务全栈项目【有来商城】的日志落地实践

    一. 前言 日志对于一个程序的重要程度不用过多的言语修饰,本篇将以实战的方式讲述开源微服务全栈项目 有来商城 是如何整合当下主流日志解决方案 ELK +Filebeat . 话不多说,先看实现的效果图 ...

  4. 【我的Android进阶之旅】如何快速寻找Android第三方开源库在Jcenter上的最新版本

    问题描述 解决方法 先了解compile comsquareupokhttpokhttp240的意义 了解Jcenter和Maven jcenter Maven Central 理解jcenter和M ...

  5. 阿里巴巴开源 Dragonwell JDK 最新版本 8.1.1-GA 发布

    导读:新版本主要有三大变化:同步了 OpenJDK 上游社区 jdk8u222-ga 的最新更新:带来了正式的 feature:G1ElasticHeap:发布了用户期待的 Windows 实验版本 ...

  6. 全链路监控系统开源Pinpoint入门视频教程(最新版本1.8)

    pinpoint支持的模块 源码:https://github.com/naver/pinpoint技术概述:https://skyao.gitbooks.io/learning-pinpoint/c ...

  7. AI 也开源:50 大开源 AI 项目 (转)

    这些开源AI项目专注于机器学习.深度学习.神经网络及其他应用场合. 自IT界早期以来,研制出能像人类那样“思考”的机器一直是研究人员的一大目标.在过去几年,计算机科学家们在人工智能(AI)领域已取得了 ...

  8. 【转】Win7环境下VS2010配置Cocos2d-x-2.1.4最新版本的开发环境(亲测)

    http://blog.csdn.net/ccf19881030/article/details/9204801 很久以前使用博客园博主子龙山人的一篇博文<Cocos2d-x win7+vs20 ...

  9. Linux(Fedora)下NodeJs升级最新版本(制定版本)

    Linux(Fedora)下NodeJs升级最新版本(制定版本) 首先安装n模块: npm install -g n 升级node.js到最新稳定版 n stable 升级node.js到制定版本 n ...

  10. 关于最新版本的log4net使用中遇到的问题

    Quartz.NET是一个开源的作业调度框架,是OpenSymphony 的 Quartz API的.NET移植,它用C#写成,可用于winform和asp.net应用中.它提供了巨大的灵活性而不牺牲 ...

随机推荐

  1. 测试Lock锁

    package com.company;import java.util.concurrent.locks.ReentrantLock;//测试Lock锁public class TestLock i ...

  2. 3Des加密解密,java c#通用。

    1.需要实现对其他系统的单点登陆,我们实现的方法很简单,就是将当前系统的账号通过加密去获取 需要直接登陆上的系统的token,然后访问需直接登陆的系统就带着token,就相当于登陆了. 2.然后呢,我 ...

  3. jmeter性能测试小小实践

    一.测试步骤 测试计划 / 线程组 / http请求 / 监听器 / 运行脚本 / 查看报告 二.线程组 线程组:虚拟用户数 ramp up period:设置虚拟用户数需要多长的时间全部启动,如果线 ...

  4. Vue3 向window注入方法 TS警告 元素隐式具有 "any" 类型,因为索引表达式的类型不为 "number" 问题解决。

    window['funcName'] = function(){}; // 'funcName'会标红警告 (window as any).funcName = function(){}; // 正确 ...

  5. algorithm learning for Leetcode (1)

    Leetcode 算法学习(一) 前言:最近学校要求必须学习C++,着重提升技能板块.为了快速升级,我在GitHub上发现了一个开源的学习号召: https://labuladong.github.i ...

  6. Ensemble learning A survey 论文阅读

    Ensemble learning A survey是2018年发表的一篇关于集成学习的综述性论文 发展 在Surowiecki的书中The Wisdom of Crowds,当符合以下标准时,大众的 ...

  7. [问题解决]Win32- OPENFILENAME 结构体报错或者找不到情况

    问题:OPENFILENAME结构体.GetOpenFileName()和 GetSaveFileName()函数都找不到了,在头文件<framework.h>中已经包含<windo ...

  8. SpringCloud之旅

    现在大部分公司的项目架构都选择了微服务,我们公司也不例外,那么什么是微服务呢?今天就来开启SpringCloud之旅! SpringCloud是基于SpringBoot的一整套的微服务架构.他提供了微 ...

  9. JavaScript 字符串和正则相关的方法

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  10. 廖雪峰python教程

    来源于廖雪峰博客园python教程 8-25 编程语言分类 机器语言 计算机内部只能接受二进制代码,用二进制代码0和1描述的指令称为机器指令,全部机器指令的集合构成计算机的机器语言,用机器语言编程的程 ...