File size: 1,986 Bytes
c2eddce
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
b4d6bb3
 
 
afd3c08
b4d6bb3
c2eddce
 
 
b4d6bb3
 
c2eddce
 
 
 
 
 
 
 
 
 
fcaff26
c4bf23b
 
fcaff26
c2eddce
 
4da45b0
c4bf23b
4da45b0
c2eddce
 
 
4da45b0
a192b6f
c2eddce
 
4da45b0
 
c2eddce
 
 
 
 
 
 
 
 
 
 
 
a2fdd85
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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
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


"""
main.py

 How to run:
 python main.py

"""


def mainTest(inputpath, outpath):
    watermark = deep_nude_process(inputpath)
    watermark1 = cv2.cvtColor(watermark, cv2.COLOR_BGRA2RGBA)
    #cv2.imwrite(outpath, watermark1)
    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 = "input_" + str(index) + ".jpg"
    cv2.imwrite(inputpath, bgra)

    outputpath = "out_" + str(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'],
]


web = gr.Interface(inference,
                   inputs="image",
                   outputs="image",
                   title=title,
                   description=description,
                   examples=examples,
                   )

if __name__ == '__main__':
    web.launch()