prithivMLmods commited on
Commit
167670a
·
verified ·
1 Parent(s): 6627004

Delete app.py

Browse files
Files changed (1) hide show
  1. app.py +0 -89
app.py DELETED
@@ -1,89 +0,0 @@
1
- # -*- coding:UTF-8 -*-
2
- # !/usr/bin/env python
3
- import spaces
4
- import numpy as np
5
- import gradio as gr
6
- import gradio.exceptions
7
- import roop.globals
8
- from roop.core import (
9
- start,
10
- decode_execution_providers,
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
- import uuid
17
- import onnxruntime as ort
18
- import cv2
19
- from roop.face_analyser import get_one_face
20
-
21
- @spaces.GPU()
22
- def swap_face(source_file, target_file, doFaceEnhancer):
23
- session_id = str(uuid.uuid4()) # Tạo một UUID duy nhất cho mỗi phiên làm việc
24
- session_dir = f"temp/{session_id}"
25
- os.makedirs(session_dir, exist_ok=True)
26
-
27
- source_path = os.path.join(session_dir, "input.jpg")
28
- target_path = os.path.join(session_dir, "target.jpg")
29
-
30
- source_image = Image.fromarray(source_file)
31
- source_image.save(source_path)
32
- target_image = Image.fromarray(target_file)
33
- target_image.save(target_path)
34
-
35
- print("source_path: ", source_path)
36
- print("target_path: ", target_path)
37
-
38
- # Check if a face is detected in the source image
39
- source_face = get_one_face(cv2.imread(source_path))
40
- if source_face is None:
41
- raise gradio.exceptions.Error("No face in source path detected.")
42
-
43
- # Check if a face is detected in the target image
44
- target_face = get_one_face(cv2.imread(target_path))
45
- if target_face is None:
46
- raise gradio.exceptions.Error("No face in target path detected.")
47
-
48
- output_path = os.path.join(session_dir, "output.jpg")
49
- normalized_output_path = normalize_output_path(source_path, target_path, output_path)
50
-
51
- frame_processors = ["face_swapper", "face_enhancer"] if doFaceEnhancer else ["face_swapper"]
52
-
53
-
54
- for frame_processor in get_frame_processors_modules(frame_processors):
55
- if not frame_processor.pre_check():
56
- print(f"Pre-check failed for {frame_processor}")
57
- raise gradio.exceptions.Error(f"Pre-check failed for {frame_processor}")
58
-
59
- roop.globals.source_path = source_path
60
- roop.globals.target_path = target_path
61
- roop.globals.output_path = normalized_output_path
62
- roop.globals.frame_processors = frame_processors
63
- roop.globals.headless = True
64
- roop.globals.keep_fps = True
65
- roop.globals.keep_audio = True
66
- roop.globals.keep_frames = False
67
- roop.globals.many_faces = False
68
- roop.globals.video_encoder = "libx264"
69
- roop.globals.video_quality = 18
70
- roop.globals.execution_providers = ["CUDAExecutionProvider"]
71
- roop.globals.reference_face_position = 0
72
- roop.globals.similar_face_distance = 0.6
73
- roop.globals.max_memory = 60
74
- roop.globals.execution_threads = 50
75
-
76
- start()
77
- return normalized_output_path
78
-
79
- app = gr.Interface(
80
- fn=swap_face,
81
- inputs=[
82
- gr.Image(),
83
- gr.Image(),
84
- gr.Checkbox(label="Face Enhancer?", info="Face enhancement")
85
- ],
86
- outputs="image",
87
- theme="prithivMLmods/Minecraft-Theme"
88
- )
89
- app.launch()