本文档详细介绍了 Stable Diffusion Web UI 中的主要用户界面组件。它涵盖了用户交互的核心 UI 元素之间的组织、功能和关系。有关特定生成控件的详细信息,请参阅图像生成控件。有关扩展面板的信息,请参阅附加网络面板。
Stable Diffusion Web UI 提供了一个全面的界面,用于使用 Stable Diffusion 模型生成和操作图像。该界面使用 Gradio 库构建,并组织成几个主要选项卡,每个选项卡都包含用于图像生成不同方面的各种组件。
主界面分为以下主要组件
来源:modules/ui.py253-506 该图显示了主 UI 组件及其层次结构。
顶行包含最常用的控件,并且在主要的生成选项卡(txt2img 和 img2img)之间是一致的。它通过 Toprow 类实现。
提示界面包括
来源:modules/ui.py66-84 modules/ui.py254-263 modules/ui.py283-286
顶行实现是在 create_ui() 函数中为 txt2img 和 img2img 界面创建的,其中 Toprow 类负责创建提示字段和相关按钮。
UI 由几个主选项卡组成,每个选项卡提供不同的功能
| Tab键 | 描述 | 主要功能 |
|---|---|---|
| txt2img | 文本到图像生成 | 从文本提示生成图像 |
| img2img | 图像到图像转换 | 使用提示修改现有图像 |
| Extras | 后期处理工具 | 放大、修复人脸和处理图像 |
| PNG Info | 图像元数据查看器 | 查看和提取图像中的生成参数 |
| 训练 | 模型训练工具 | 训练 embeddings、hypernetworks |
| 设置 | UI 配置 | 配置应用程序设置 |
| 扩展 | 扩展管理 | 管理和配置已安装的扩展 |
txt2img 选项卡是使用文本提示生成图像的主要界面。它包括:
txt2img 选项卡是在 create_ui() 函数中使用 Gradio Blocks 布局创建的。
img2img 选项卡允许使用文本提示转换现有图像。它包括:
输入图像选项卡:
生成设置:与 txt2img 类似,但具有去噪强度等附加参数
输出面板:显示转换后的图像
img2img 选项卡是在 create_ui() 函数中,在 txt2img 选项卡之后创建的。
来源:modules/ui.py502-616 modules/img2img.py152-253
生成设置控制图像的创建方式。这些设置分为几部分:
用于设置输出图像尺寸的控件
来源:modules/ui.py288-300 modules/ui.py622-660
用于采样过程的控件
采样器选择决定了用于生成图像的算法。采样器通过 sd_samplers.py 模块进行管理。
来源:modules/ui.py301-304 modules/sd_samplers.py10-59
Hires Fix 功能允许生成初始低分辨率图像,然后进行放大和优化
输出面板显示生成结果,并提供处理生成图像的工具
输出面板是使用 create_output_panel() 函数创建的。
来源:modules/ui.py230-231 modules/ui.py379
下图说明了用户输入如何流经系统以生成图像
来源:modules/processing.py817-863 modules/txt2img.py14-120 modules/img2img.py152-253
下图将 UI 组件映射到它们对应的代码实体
来源:modules/ui.py253-263 modules/processing.py136-227 modules/txt2img.py14-54 modules/img2img.py152-215
UI 主要通过 modules/ui.py 中的 create_ui() 函数构建,该函数使用 Gradio 组件设置整个界面。代码中的关键结构包括:
modules/ui_components.py 中定义,用于专用 UI 元素UI 创建遵循以下通用模式:
UI 可通过以下方式进行自定义:
cmd_opts 中UI 的外观和行为由 shared.opts 对象中的选项控制,该对象从配置文件和命令行参数初始化。
刷新此 Wiki
最后索引时间2025年4月17日(82a973)