Apex-X commited on
Commit
7089178
1 Parent(s): 50f463a

Upload app (3).py

Browse files
Files changed (1) hide show
  1. app (3).py +72 -0
app (3).py ADDED
@@ -0,0 +1,72 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # -* coding:UTF-8 -*
2
+ # !/usr/bin/env python
3
+ import numpy as np
4
+ import gradio as gr
5
+ import roop.globals
6
+ from roop.core import (
7
+ start,
8
+ decode_execution_providers,
9
+ suggest_max_memory,
10
+ suggest_execution_threads,
11
+ )
12
+ from roop.processors.frame.core import get_frame_processors_modules
13
+ from roop.utilities import normalize_output_path
14
+ import os
15
+ from PIL import Image
16
+
17
+
18
+ def swap_face(source_file, target_file,doFaceEnhancer):
19
+
20
+ source_path = "input.jpg"
21
+ target_path = "target.jpg"
22
+
23
+ source_image = Image.fromarray(source_file)
24
+ source_image.save(source_path)
25
+ target_image = Image.fromarray(target_file)
26
+ target_image.save(target_path)
27
+
28
+ print("source_path: ", source_path)
29
+ print("target_path: ", target_path)
30
+
31
+ roop.globals.source_path = source_path
32
+ roop.globals.target_path = target_path
33
+ output_path = "output.jpg"
34
+ roop.globals.output_path = normalize_output_path(
35
+ roop.globals.source_path, roop.globals.target_path, output_path
36
+ )
37
+ if doFaceEnhancer == True:
38
+ roop.globals.frame_processors = ["face_swapper","face_enhancer"]
39
+ else:
40
+ roop.globals.frame_processors = ["face_swapper"]
41
+ roop.globals.headless = True
42
+ roop.globals.keep_fps = True
43
+ roop.globals.keep_audio = True
44
+ roop.globals.keep_frames = False
45
+ roop.globals.many_faces = False
46
+ roop.globals.video_encoder = "libx264"
47
+ roop.globals.video_quality = 18
48
+ roop.globals.max_memory = suggest_max_memory()
49
+ roop.globals.execution_providers = decode_execution_providers(["cuda"])
50
+ roop.globals.execution_threads = suggest_execution_threads()
51
+
52
+ print(
53
+ "start process",
54
+ roop.globals.source_path,
55
+ roop.globals.target_path,
56
+ roop.globals.output_path,
57
+ )
58
+
59
+ for frame_processor in get_frame_processors_modules(
60
+ roop.globals.frame_processors
61
+ ):
62
+ if not frame_processor.pre_check():
63
+ return
64
+
65
+ start()
66
+ return output_path
67
+
68
+
69
+ app = gr.Interface(
70
+ fn=swap_face, inputs=[gr.Image(), gr.Image(),gr.Checkbox(label="face_enhancer?", info="do face enhancer?")], outputs="image"
71
+ )
72
+ app.launch()