Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Overbill1683
Stable Diffusion Webui
提交
63a8861c
S
Stable Diffusion Webui
项目概览
Overbill1683
/
Stable Diffusion Webui
12 个月 前同步成功
通知
1779
Star
81
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
分析
仓库
DevOps
项目成员
Pages
S
Stable Diffusion Webui
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Pages
分析
分析
仓库分析
DevOps
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
提交
体验新版 GitCode,发现更多精彩内容 >>
未验证
提交
63a8861c
编写于
7月 30, 2023
作者:
A
AUTOMATIC1111
提交者:
GitHub
7月 30, 2023
浏览文件
操作
浏览文件
下载
差异文件
Merge pull request #12164 from AUTOMATIC1111/rework-img2img-batch-image-save
Rework img2img batch image save
上级
6f0abbb7
fb448381
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
9 addition
and
21 deletion
+9
-21
modules/img2img.py
modules/img2img.py
+9
-21
未找到文件。
modules/img2img.py
浏览文件 @
63a8861c
...
@@ -10,7 +10,6 @@ from modules import sd_samplers, images as imgutil
...
@@ -10,7 +10,6 @@ from modules import sd_samplers, images as imgutil
from
modules.generation_parameters_copypaste
import
create_override_settings_dict
,
parse_generation_parameters
from
modules.generation_parameters_copypaste
import
create_override_settings_dict
,
parse_generation_parameters
from
modules.processing
import
Processed
,
StableDiffusionProcessingImg2Img
,
process_images
from
modules.processing
import
Processed
,
StableDiffusionProcessingImg2Img
,
process_images
from
modules.shared
import
opts
,
state
from
modules.shared
import
opts
,
state
from
modules.images
import
save_image
import
modules.shared
as
shared
import
modules.shared
as
shared
import
modules.processing
as
processing
import
modules.processing
as
processing
from
modules.ui
import
plaintext_to_html
from
modules.ui
import
plaintext_to_html
...
@@ -18,6 +17,7 @@ import modules.scripts
...
@@ -18,6 +17,7 @@ import modules.scripts
def
process_batch
(
p
,
input_dir
,
output_dir
,
inpaint_mask_dir
,
args
,
to_scale
=
False
,
scale_by
=
1.0
,
use_png_info
=
False
,
png_info_props
=
None
,
png_info_dir
=
None
):
def
process_batch
(
p
,
input_dir
,
output_dir
,
inpaint_mask_dir
,
args
,
to_scale
=
False
,
scale_by
=
1.0
,
use_png_info
=
False
,
png_info_props
=
None
,
png_info_dir
=
None
):
output_dir
=
output_dir
.
strip
()
processing
.
fix_seed
(
p
)
processing
.
fix_seed
(
p
)
images
=
list
(
shared
.
walk_files
(
input_dir
,
allowed_extensions
=
(
".png"
,
".jpg"
,
".jpeg"
,
".webp"
,
".tif"
,
".tiff"
)))
images
=
list
(
shared
.
walk_files
(
input_dir
,
allowed_extensions
=
(
".png"
,
".jpg"
,
".jpeg"
,
".webp"
,
".tif"
,
".tiff"
)))
...
@@ -32,11 +32,6 @@ def process_batch(p, input_dir, output_dir, inpaint_mask_dir, args, to_scale=Fal
...
@@ -32,11 +32,6 @@ def process_batch(p, input_dir, output_dir, inpaint_mask_dir, args, to_scale=Fal
print
(
f
"Will process
{
len
(
images
)
}
images, creating
{
p
.
n_iter
*
p
.
batch_size
}
new images for each."
)
print
(
f
"Will process
{
len
(
images
)
}
images, creating
{
p
.
n_iter
*
p
.
batch_size
}
new images for each."
)
save_normally
=
output_dir
==
''
p
.
do_not_save_grid
=
True
p
.
do_not_save_samples
=
not
save_normally
state
.
job_count
=
len
(
images
)
*
p
.
n_iter
state
.
job_count
=
len
(
images
)
*
p
.
n_iter
# extract "default" params to use in case getting png info fails
# extract "default" params to use in case getting png info fails
...
@@ -111,21 +106,14 @@ def process_batch(p, input_dir, output_dir, inpaint_mask_dir, args, to_scale=Fal
...
@@ -111,21 +106,14 @@ def process_batch(p, input_dir, output_dir, inpaint_mask_dir, args, to_scale=Fal
proc
=
modules
.
scripts
.
scripts_img2img
.
run
(
p
,
*
args
)
proc
=
modules
.
scripts
.
scripts_img2img
.
run
(
p
,
*
args
)
if
proc
is
None
:
if
proc
is
None
:
proc
=
process_images
(
p
)
if
output_dir
:
p
.
outpath_samples
=
output_dir
for
n
,
processed_image
in
enumerate
(
proc
.
images
):
p
.
override_settings
[
'save_to_dirs'
]
=
False
filename
=
image_path
.
stem
if
p
.
n_iter
>
1
or
p
.
batch_size
>
1
:
infotext
=
proc
.
infotext
(
p
,
n
)
p
.
override_settings
[
'samples_filename_pattern'
]
=
f
'
{
image_path
.
stem
}
-[generation_number]'
relpath
=
os
.
path
.
dirname
(
os
.
path
.
relpath
(
image
,
input_dir
))
else
:
p
.
override_settings
[
'samples_filename_pattern'
]
=
f
'
{
image_path
.
stem
}
'
if
n
>
0
:
process_images
(
p
)
filename
+=
f
"-
{
n
}
"
if
not
save_normally
:
os
.
makedirs
(
os
.
path
.
join
(
output_dir
,
relpath
),
exist_ok
=
True
)
if
processed_image
.
mode
==
'RGBA'
:
processed_image
=
processed_image
.
convert
(
"RGB"
)
save_image
(
processed_image
,
os
.
path
.
join
(
output_dir
,
relpath
),
None
,
extension
=
opts
.
samples_format
,
info
=
infotext
,
forced_filename
=
filename
,
save_to_dirs
=
False
)
def
img2img
(
id_task
:
str
,
mode
:
int
,
prompt
:
str
,
negative_prompt
:
str
,
prompt_styles
,
init_img
,
sketch
,
init_img_with_mask
,
inpaint_color_sketch
,
inpaint_color_sketch_orig
,
init_img_inpaint
,
init_mask_inpaint
,
steps
:
int
,
sampler_index
:
int
,
mask_blur
:
int
,
mask_alpha
:
float
,
inpainting_fill
:
int
,
restore_faces
:
bool
,
tiling
:
bool
,
n_iter
:
int
,
batch_size
:
int
,
cfg_scale
:
float
,
image_cfg_scale
:
float
,
denoising_strength
:
float
,
seed
:
int
,
subseed
:
int
,
subseed_strength
:
float
,
seed_resize_from_h
:
int
,
seed_resize_from_w
:
int
,
seed_enable_extras
:
bool
,
selected_scale_tab
:
int
,
height
:
int
,
width
:
int
,
scale_by
:
float
,
resize_mode
:
int
,
inpaint_full_res
:
bool
,
inpaint_full_res_padding
:
int
,
inpainting_mask_invert
:
int
,
img2img_batch_input_dir
:
str
,
img2img_batch_output_dir
:
str
,
img2img_batch_inpaint_mask_dir
:
str
,
override_settings_texts
,
img2img_batch_use_png_info
:
bool
,
img2img_batch_png_info_props
:
list
,
img2img_batch_png_info_dir
:
str
,
request
:
gr
.
Request
,
*
args
):
def
img2img
(
id_task
:
str
,
mode
:
int
,
prompt
:
str
,
negative_prompt
:
str
,
prompt_styles
,
init_img
,
sketch
,
init_img_with_mask
,
inpaint_color_sketch
,
inpaint_color_sketch_orig
,
init_img_inpaint
,
init_mask_inpaint
,
steps
:
int
,
sampler_index
:
int
,
mask_blur
:
int
,
mask_alpha
:
float
,
inpainting_fill
:
int
,
restore_faces
:
bool
,
tiling
:
bool
,
n_iter
:
int
,
batch_size
:
int
,
cfg_scale
:
float
,
image_cfg_scale
:
float
,
denoising_strength
:
float
,
seed
:
int
,
subseed
:
int
,
subseed_strength
:
float
,
seed_resize_from_h
:
int
,
seed_resize_from_w
:
int
,
seed_enable_extras
:
bool
,
selected_scale_tab
:
int
,
height
:
int
,
width
:
int
,
scale_by
:
float
,
resize_mode
:
int
,
inpaint_full_res
:
bool
,
inpaint_full_res_padding
:
int
,
inpainting_mask_invert
:
int
,
img2img_batch_input_dir
:
str
,
img2img_batch_output_dir
:
str
,
img2img_batch_inpaint_mask_dir
:
str
,
override_settings_texts
,
img2img_batch_use_png_info
:
bool
,
img2img_batch_png_info_props
:
list
,
img2img_batch_png_info_dir
:
str
,
request
:
gr
.
Request
,
*
args
):
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录