File size: 1,275 Bytes
9404161
e8d15c7
9404161
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
e8d15c7
 
9404161
 
 
 
 
 
 
 
 
 
 
e8d15c7
9404161
 
e8d15c7
9404161
 
 
 
 
e8d15c7
9404161
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
from gradio_client import Client, file
import gradio as gr

client = Client("felixrosberg/face-swap")

def run_face_swap(target_img, source_img, slider_val, adv_slider_val, mode_list):
    result = client.predict(
        target=file(target_img),
        source=file(source_img),
        slider=slider_val,
        adv_slider=adv_slider_val,
        settings=mode_list,
        api_name="/run_inference"
    )
    return result

with gr.Blocks() as iface:
    gr.Markdown("## Ndërrimi i fytyrës me AI")

    with gr.Row():
        target = gr.Image(label="Fotoja objektiv (target)", type="filepath")
        source = gr.Image(label="Fotoja burim (source)", type="filepath")

    slider = gr.Slider(0, 100, value=100, label="Raporti i Anonimizimit (%)")
    adv_slider = gr.Slider(0, 100, value=100, label="Raporti i Mbrojtjes Kundër Sulmeve (%)")

    mode = gr.CheckboxGroup(
        choices=["Compare", "Anonymize", "Reconstruction Attack", "Adversarial Defense"],
        label="Modaliteti",
        value=[]
    )

    btn = gr.Button("🧙‍♂️ Ndërroni fytyrën")
    output_img = gr.Image(label="Rezultati")

    btn.click(
        fn=run_face_swap,
        inputs=[target, source, slider, adv_slider, mode],
        outputs=[output_img]
    )

iface.launch()