如何使用稳定扩散来创建 AI 生成的图像
像 ChatGPT 这样的人工智能聊天机器人最近变得异常强大——它们遍布新闻!但不要忘记 AI 图像生成器(如 Stable Diffusion、DALL-E 和 Midjourney)。只要提供几句话,他们几乎可以制作任何图像。按照本教程学习如何通过在计算机上运行稳定扩散来免费且不受任何限制地执行此操作。
很高兴知道:了解如何修复 ChatGPT 的内部服务器错误。
- 什么是稳定扩散?
- 系统要求
- 安装 AUTOMATIC1111 Web UI
- 安装模型
- 运行并配置 Web UI
- 使用txt2txt生成概念图像
- 查找用于过去图像的提示
- 使用 img2img 生成相似图像
- 使用 inpaint 更改图像的一部分
- 提升您的形象
- 经常问的问题
什么是稳定扩散?
Stable Diffusion 是一种免费开源的文本到图像机器学习模型。基本上,它是一个程序,可让您使用文本描述图片,然后为您创建图像。它获得了数十亿张图像和随附的文本描述,并被教导如何分析和重建它们。
Stable Diffusion 不是您直接使用的程序 - 将其视为其他程序使用的底层软件工具。本教程介绍如何在计算机上安装稳定扩散程序。请注意,有许多程序和网站使用稳定扩散,但许多程序和网站会向您收取费用,并且不会给您太多的控制权。
系统要求
您应该实现的目标的粗略指南如下:
- macOS: Apple Silicon(M 系列芯片)
- Windows 或 Linux:NVIDIA 或 AMD GPU
- RAM: 16GB 以获得最佳效果
- GPU VRAM:至少 4GB
- 存储空间:至少 15GB
安装 AUTOMATIC1111 Web UI
我们正在使用 AUTOMATIC1111 Web UI 程序(可在所有主要桌面操作系统上使用)来访问稳定扩散。确保记下“stable-diffiusion-webui”目录的下载位置。
macOS 上的 AUTOMATIC1111 Web UI
- 在终端中,输入以下命令安装 Homebrew:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
很高兴知道:在本指南中了解有关如何使用 Homebrew 的更多信息。
- 将用于将 Homebrew 添加到 PATH 的两个命令复制并输入。
- 退出并重新打开终端,然后输入:
brew install cmake protobuf rust python@3.10 git wget
- 进入 :
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui
Windows 上的 AUTOMATIC1111 Web UI
- 下载Python 3.10的最新稳定版本。
- 运行Python安装程序,选中“将python.exe添加到PATH”,然后单击“立即安装”。
- 转到 GitHub 上的 AUTOMATIC1111 Web UI 存储库,单击“代码”,然后单击“下载 ZIP”并解压。
Linux 上的 AUTOMATIC1111 Web UI
- 打开终端。
- 根据您的 Linux 风格,输入以下命令之一:
基于 Debian,包括 Ubuntu:
sudo apt-get update sudo apt install wget git python3 python3-venv
基于红帽:
sudo dnf install wget git python3
基于拱门:
sudo pacman -S wget git python3
- 通过执行以下命令安装在“/home/$ (whoami)/stable-diffusion-webui/”中:
bash <(wget -qO- https://raw.githubusercontent.com/AUTOMATIC1111/stable-diffusion-webui/master/webui.sh)
提示:获取帮助来决定是否应该购买外部 GPU。
安装模型
在开始使用 Web UI 之前,您仍然需要至少添加一个模型。
- 去奇维泰。
- 单击下载按钮上的下拉箭头并选择“Model SafeTensor”。
- 将步骤 2 中下载的 .safetensors 文件移动到“stable-diffiusion-webui/models/Stable-diffusion”文件夹中。
运行并配置 Web UI
此时,您已准备好在 Web 浏览器中运行并开始使用 Stable Diffusion 程序。
- 在终端中,打开“stable-diffusion-webui”目录并输入命令
./webui.sh --xformers
(适用于 Linux/macOS)或./webui-user.bat
代码> 对于 Windows。完成后,选择并复制“在本地 URL 上运行”旁边的 URL,该 URL 应类似于 http://127.0.0.1:7860。
- 将链接粘贴到浏览器地址栏中,然后按 Enter。将出现 Web UI 网站。
- 让我们更改一些设置以获得更好的结果。转到“设置 -> 稳定扩散”。
- 向下滚动并选中“在 K 采样器中启用量化以获得更清晰的结果”。
- 向上滚动并单击“应用设置”,然后单击“重新加载 UI”。
仅供参考:如果您需要查找图像源,请使用 Google。
使用txt2txt生成概念图像
现在到了有趣的部分:创建一些初始图像并搜索最接近您想要的外观的图像。
- 转到“txt2img”选项卡。
- 在第一个提示文本框中,输入描述图像的文字,并用逗号分隔。它有助于包含描述图像风格的词语,例如“现实”、“详细”或“特写肖像”。
- 在下面的否定提示文本框中,输入您不希望图像呈现的关键字。例如,如果您想创建逼真的图像,请添加“视频游戏”、“艺术”和“插图”等词语。
- 向下滚动并将“批量大小”设置为“4”。这将使稳定扩散根据提示产生四个不同的图像。
- 如果您希望稳定扩散更严格地遵循提示关键字,请将“CFG Scale”设置为更高的值;如果您希望它更具创意,则将“CFG Scale”设置为更低的值。较低的值(如默认值 7)通常会生成质量好且富有创意的图像。
- 暂时将其他设置保留为默认值。单击顶部的大“生成”按钮,稳定扩散开始工作。
- 在“生成”按钮下方,单击图像缩略图进行预览并确定您是否喜欢其中任何一个。
如果您不喜欢任何图像,请重复步骤 1 至 5,并稍加改动。
如果您总体上喜欢一张图像,但想要对其进行修改或修复问题(面部扭曲、解剖问题等),请单击“发送到 img2img”或“发送到 inpaint”。这将复制您的图像并提示到相应的选项卡,您可以在其中改进图像。
如果图像非常有趣或非常好,请单击“保存”按钮,然后单击“下载”按钮。
查找用于过去图像的提示
生成一些图像后,在事后获取用于创建图像的提示和设置会很有帮助。
- 单击“PNG 信息”选项卡。
- 将图像上传到框中。所有提示和图像的其他详细信息将显示在右侧。
提示:使用这些 Windows 工具之一来批量编辑图像。
使用 img2img 生成相似图像
您可以使用 img2img 功能生成模仿任何基础图像整体外观的新图像。
- 在“img2img”选项卡上,确保您使用的是之前生成的具有相同提示的图像。
- 将“去噪强度”值设置得更高或更低,以重新生成更多或更少的图像(0.50 重新生成 50%,1 重新生成 100%)。
- 单击“生成”并查看差异。如果您不满意,请在调整设置后重复步骤 1 到 3。
- 或者,单击“发送到img2img”以根据新图像继续进行修改。
- 重写提示以向图像添加全新元素并根据需要调整其他设置。
- 单击“生成”并查看结果。
使用 inpaint 更改图像的一部分
修复功能是一个强大的工具,可让您使用鼠标“绘制”要重新生成的图像部分,从而对基本图像进行精确的点校正。你没有画的部分不会改变。
- 在“img2img 选项卡 -> Inpaint 选项卡”上,确保您使用的是之前生成的图像。
- 如果您想要新的视觉元素,请更改提示。
- 使用鼠标在要更改的图像部分上进行绘制。
- 将“采样方法”更改为 DDIM,推荐用于修复。
- 设置“去噪强度”,如果要进行极端更改,请选择更高的值。
- 单击“生成”并查看结果。
稳定扩散可能无法在第一次尝试时解决所有问题,因此您可以单击“发送到修复”并根据需要多次重复上述步骤。
须知:浏览这些网站以查找具有透明背景的图像。
提升您的形象
到目前为止,您一直在创建 512 x 512 像素的相对较小的图像,但如果提高图像的分辨率,它也会增加视觉细节的水平。
安装终极 SD 高档扩展
- 单击“扩展 -> 可用 -> 加载自”。
- 向下滚动找到“终极 SD 高档操作”,然后单击“安装”。
- 向上滚动并单击“已安装”选项卡。选中“ultimate-upscale-for-automatic1111”,然后单击“应用并重新启动 UI”。
调整图像大小
- 在“img2img”选项卡上,确保您使用的是之前生成的具有相同提示的图像。在提示输入的前面,添加诸如“4k”、“UHD”、“高分辨率照片”、“RAW”、“特写”、“皮肤毛孔”和“详细的眼睛”等短语,以进一步磨练它。在负面提示输入的前面,添加“自拍”、“模糊”、“低分辨率”和“手机摄像头”等短语来远离这些内容。
- 将“去噪强度”设置为较低值(约 0.25),并将“宽度”和“高度”值加倍。
- 在“脚本”下拉列表中,选择“Ultimate SD upscale”,然后在“Upscaler”下选中“R-ESRGAN 4x+”选项。
- 单击“生成”并查看结果。您应该注意到细微的变化和更清晰的细节。
您可以通过单击“发送到 img2img”并重复这些步骤,同时进一步增加“宽度”和“高度”值并调整“去噪强度”来进一步提高分辨率。
经常问的问题
稳定扩散、DALL-E 和中途有什么区别?
这三个程序都是人工智能程序,可以根据文本提示创建几乎任何图像。最大的区别是只有Stable Diffusion是完全免费和开源的。您无需支付任何费用即可在计算机上运行它,任何人都可以学习和改进稳定扩散代码。不过,您需要自己安装它,这使得使用起来更加困难。
DALL-E 和 Midjourney 都是闭源的。 DALL-E 主要可以通过其网站访问,每月提供有限数量的图像生成,然后才会要求您付费。 Midjourney 主要可以通过其 Discord 服务器上的命令进行访问,并且具有不同的订阅级别。
稳定扩散中的模型是什么?
模型是代表根据特定图像和关键字训练的 AI 算法的文件。不同的模型更擅长创建不同类型的图像 - 您可能有一个擅长创建现实人物的模型,另一个擅长创建 2D 卡通人物,还有一个最适合创建风景画。
我们在本指南中安装的 Deliberate 模型是一种流行的模型,适用于大多数图像,但您可以在 Civitai 或 Hugging Face 等网站上查看各种模型。只要您下载 .safetensors 文件,就可以使用本指南中的相同说明将其导入 AUTOMATIC1111 Web UI。
SafeTensor 和 PickleTensor 有什么区别?
简而言之,始终使用 SafeTensor 来保护您的计算机免受安全威胁。
虽然 SafeTensor 和 PickleTensor 都是用于存储稳定扩散模型的文件格式,但 PickleTensor 是较旧且安全性较低的格式。 PickleTensor 模型可以在您的系统上执行任意代码(包括恶意软件)。
我应该使用批量大小还是批量计数设置?
您可以同时使用两者。批次是一组并行生成的图像。批次大小设置控制单个批次中有多少图像。批次计数设置控制单代中运行的批次数量;每个批次按顺序运行。
如果批次计数为 2,批次大小为 4,则将生成两个批次,总共八张图像。
如果您更喜欢自己画画,请查看我们的 Windows 草图应用程序列表。
<小>图片来源:Pixabay。所有截图均由 Brandon Li 提供。