Spaces:
Runtime error
Runtime error
Ahsen Khaliq
commited on
Commit
•
2592f72
1
Parent(s):
374175a
Create app.py
Browse files
app.py
ADDED
@@ -0,0 +1,47 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
import os
|
2 |
+
os.system("gdown https://drive.google.com/uc?id=1riNxV1BWMAXfmWZ3LrQbEkvzV8f7lOCp")
|
3 |
+
|
4 |
+
import onnxruntime
|
5 |
+
|
6 |
+
onnx_session = onnxruntime.InferenceSession("face_paint_512_v2_0.onnx")
|
7 |
+
|
8 |
+
input_name = onnx_session.get_inputs()[0].name
|
9 |
+
output_name = onnx_session.get_outputs()[0].name
|
10 |
+
|
11 |
+
side_length = 512
|
12 |
+
|
13 |
+
import cv2 as cv
|
14 |
+
import numpy as np
|
15 |
+
|
16 |
+
def inference(img):
|
17 |
+
image = numpy.array(img)
|
18 |
+
image = image[:, :, ::-1].copy()
|
19 |
+
image = cv.resize(image, dsize=(side_length, side_length))
|
20 |
+
x = cv.cvtColor(image, cv.COLOR_BGR2RGB)
|
21 |
+
|
22 |
+
x = np.array(x, dtype=np.float32)
|
23 |
+
x = x.transpose(2, 0, 1)
|
24 |
+
x = x * 2 - 1
|
25 |
+
x = x.reshape(-1, 3, side_length, side_length)
|
26 |
+
|
27 |
+
onnx_result = onnx_session.run([output_name], {input_name: x})
|
28 |
+
|
29 |
+
onnx_result = np.array(onnx_result).squeeze()
|
30 |
+
onnx_result = (onnx_result * 0.5 + 0.5).clip(0, 1)
|
31 |
+
onnx_result = onnx_result * 255
|
32 |
+
|
33 |
+
onnx_result = onnx_result.transpose(1, 2, 0).astype('uint8')
|
34 |
+
onnx_result = cv.cvtColor(onnx_result, cv.COLOR_RGB2BGR)
|
35 |
+
|
36 |
+
|
37 |
+
img = cv2.cvtColor(onnx_result, cv2.COLOR_BGR2RGB)
|
38 |
+
im_pil = Image.fromarray(img)
|
39 |
+
return im_pil
|
40 |
+
|
41 |
+
|
42 |
+
title = "Animeganv2"
|
43 |
+
description = "Gradio demo for AnimeGanv2 Face Portrait v2. To use it, simply upload your image, or click one of the examples to load them. Read more at the links below. Please use a cropped portrait picture for best results similar to the examples below"
|
44 |
+
article = "<p style='text-align: center'><a href='https://github.com/bryandlee/animegan2-pytorch' target='_blank'>Github Repo</a></p><p style='text-align: center'>samples from repo: <img src='https://user-images.githubusercontent.com/26464535/129888683-98bb6283-7bb8-4d1a-a04a-e795f5858dcf.gif' alt='animation'/> <img src='https://user-images.githubusercontent.com/26464535/137619176-59620b59-4e20-4d98-9559-a424f86b7f24.jpg' alt='animation'/></p>"
|
45 |
+
|
46 |
+
|
47 |
+
gr.Interface(inference, gr.inputs.Image(type="pil"), gr.outputs.Image(type="pil"),title=title,description=description,article=article,enable_queue=True).launch()
|