Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
S
Stable Diffusion Webui
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Locked Files
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Security & Compliance
Security & Compliance
Dependency List
License Compliance
Packages
Packages
List
Container Registry
Analytics
Analytics
CI / CD
Code Review
Insights
Issues
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
novelai-storage
Stable Diffusion Webui
Commits
443ca983
Commit
443ca983
authored
Oct 22, 2023
by
avantcontra
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix bug when using --gfpgan-models-path
parent
464fbcd9
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
20 additions
and
5 deletions
+20
-5
modules/gfpgan_model.py
modules/gfpgan_model.py
+20
-5
No files found.
modules/gfpgan_model.py
View file @
443ca983
...
...
@@ -9,6 +9,7 @@ from modules import paths, shared, devices, modelloader, errors
model_dir
=
"GFPGAN"
user_path
=
None
model_path
=
os
.
path
.
join
(
paths
.
models_path
,
model_dir
)
model_file_path
=
None
model_url
=
"https://github.com/TencentARC/GFPGAN/releases/download/v1.3.0/GFPGANv1.4.pth"
have_gfpgan
=
False
loaded_gfpgan_model
=
None
...
...
@@ -17,24 +18,32 @@ loaded_gfpgan_model = None
def
gfpgann
():
global
loaded_gfpgan_model
global
model_path
global
model_file_path
if
loaded_gfpgan_model
is
not
None
:
loaded_gfpgan_model
.
gfpgan
.
to
(
devices
.
device_gfpgan
)
return
loaded_gfpgan_model
if
gfpgan_constructor
is
None
:
return
None
models
=
modelloader
.
load_models
(
model_path
,
model_url
,
user_path
,
ext_filter
=
[
'.pth'
])
models
=
modelloader
.
load_models
(
model_path
,
model_url
,
user_path
,
ext_filter
=
"GFPGAN"
)
if
len
(
models
)
==
1
and
models
[
0
]
.
startswith
(
"http"
):
model_file
=
models
[
0
]
elif
len
(
models
)
!=
0
:
latest_file
=
max
(
models
,
key
=
os
.
path
.
getctime
)
gfp_models
=
[]
for
item
in
models
:
if
'GFPGAN'
in
os
.
path
.
basename
(
item
):
gfp_models
.
append
(
item
)
latest_file
=
max
(
gfp_models
,
key
=
os
.
path
.
getctime
)
model_file
=
latest_file
else
:
print
(
"Unable to load gfpgan model!"
)
return
None
if
hasattr
(
facexlib
.
detection
.
retinaface
,
'device'
):
facexlib
.
detection
.
retinaface
.
device
=
devices
.
device_gfpgan
model_file_path
=
model_file
model
=
gfpgan_constructor
(
model_path
=
model_file
,
upscale
=
1
,
arch
=
'clean'
,
channel_multiplier
=
2
,
bg_upsampler
=
None
,
device
=
devices
.
device_gfpgan
)
loaded_gfpgan_model
=
model
...
...
@@ -77,19 +86,25 @@ def setup_model(dirname):
global
user_path
global
have_gfpgan
global
gfpgan_constructor
global
model_file_path
facexlib_path
=
model_path
if
dirname
is
not
None
:
facexlib_path
=
dirname
load_file_from_url_orig
=
gfpgan
.
utils
.
load_file_from_url
facex_load_file_from_url_orig
=
facexlib
.
detection
.
load_file_from_url
facex_load_file_from_url_orig2
=
facexlib
.
parsing
.
load_file_from_url
def
my_load_file_from_url
(
**
kwargs
):
return
load_file_from_url_orig
(
**
dict
(
kwargs
,
model_dir
=
model_path
))
return
load_file_from_url_orig
(
**
dict
(
kwargs
,
model_dir
=
model_
file_
path
))
def
facex_load_file_from_url
(
**
kwargs
):
return
facex_load_file_from_url_orig
(
**
dict
(
kwargs
,
save_dir
=
model
_path
,
model_dir
=
None
))
return
facex_load_file_from_url_orig
(
**
dict
(
kwargs
,
save_dir
=
facexlib
_path
,
model_dir
=
None
))
def
facex_load_file_from_url2
(
**
kwargs
):
return
facex_load_file_from_url_orig2
(
**
dict
(
kwargs
,
save_dir
=
model
_path
,
model_dir
=
None
))
return
facex_load_file_from_url_orig2
(
**
dict
(
kwargs
,
save_dir
=
facexlib
_path
,
model_dir
=
None
))
gfpgan
.
utils
.
load_file_from_url
=
my_load_file_from_url
facexlib
.
detection
.
load_file_from_url
=
facex_load_file_from_url
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment