File size: 1,849 Bytes
60efdc5
c2eddce
60efdc5
 
 
c2eddce
60efdc5
71be84f
60efdc5
 
c2eddce
60efdc5
c2eddce
 
b4d6bb3
 
 
 
c2eddce
b4d6bb3
 
c2eddce
 
 
 
 
 
 
 
 
fcaff26
92f472f
c4bf23b
fcaff26
92f472f
c2eddce
4da45b0
c4bf23b
4da45b0
60efdc5
c2eddce
4da45b0
a192b6f
c2eddce
 
4da45b0
 
c2eddce
 
92f472f
 
 
 
 
 
60efdc5
92f472f
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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
from run import process
import time
import subprocess
import os
import argparse
import cv2
import sys
from PIL import Image
import torch
import gradio as gr

TESTdevice = "cpu"
index = 1

def mainTest(inputpath, outpath):
    watermark = deep_nude_process(inputpath)
    watermark1 = cv2.cvtColor(watermark, cv2.COLOR_BGRA2RGBA)
    return watermark1

def deep_nude_process(inputpath):
    dress = cv2.imread(inputpath)
    h = dress.shape[0]
    w = dress.shape[1]
    dress = cv2.resize(dress, (512, 512), interpolation=cv2.INTER_CUBIC)
    watermark = process(dress)
    watermark = cv2.resize(watermark, (w, h), interpolation=cv2.INTER_CUBIC)
    return watermark

def inference(img):
    global index
    bgra = cv2.cvtColor(img, cv2.COLOR_RGBA2BGRA)
    inputpath = f"input_{index}.jpg"
    cv2.imwrite(inputpath, bgra)

    outputpath = f"out_{index}.jpg"
    index += 1
    print(time.strftime("START!!!!!!!!! %Y-%m-%d %H:%M:%S", time.localtime()))
    output = mainTest(inputpath, outputpath)
    print(time.strftime("Finish!!!!!!!!! %Y-%m-%d %H:%M:%S", time.localtime()))
    return output

title = "Undress AI"
description = "β›” Input photos of people, similar to the test picture at the bottom, and undress pictures will be produced. You may have to wait 30 seconds for a picture. πŸ”ž Do not upload personal photos πŸ”ž There is a queue system. According to the logic of first come, first served, only one picture will be made at a time. Must be able to at least see the outline of a human body β›”"

examples = [
    ['input.png', 'Test'],
    ['input.jpg', 'Test'],
]

with gr.Blocks() as demo:
    with gr.Column():
        image_input = gr.Image(type="numpy", label="Upload Image")
        process_button = gr.Button("Process Image")
    
    process_button.click(inference, inputs=image_input, outputs=image_input)

demo.launch()