wylupek commited on
Commit
be4fb45
·
1 Parent(s): 9e71349
Files changed (2) hide show
  1. .gitignore +4 -0
  2. gradio_api.py +37 -0
.gitignore ADDED
@@ -0,0 +1,4 @@
 
 
 
 
 
1
+ .idea/
2
+ .env
3
+ .tmp/
4
+ .venv/
gradio_api.py ADDED
@@ -0,0 +1,37 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import gradio as gr
2
+ import base64
3
+ import io
4
+ from PIL import Image
5
+
6
+
7
+ def base64_to_image(base64_str):
8
+ print("Base to image")
9
+ image_data = base64.b64decode(base64_str)
10
+ image = Image.open(io.BytesIO(image_data))
11
+ return image
12
+
13
+
14
+ def image_to_base64(image):
15
+ print("Image to base")
16
+ buffered = io.BytesIO()
17
+ image.save(buffered, format="PNG")
18
+ return base64.b64encode(buffered.getvalue()).decode("utf-8")
19
+
20
+
21
+ def convert_to_grayscale(base64_str):
22
+ image = base64_to_image(base64_str)
23
+ grayscale_image = image.convert("L")
24
+ return {
25
+ "grayscale_image": image_to_base64(grayscale_image),
26
+ "Normal": image_to_base64(grayscale_image)
27
+ }
28
+
29
+
30
+ iface = gr.Interface(
31
+ fn=convert_to_grayscale,
32
+ inputs=gr.Textbox(label="Base64 Image"),
33
+ outputs=gr.JSON(label="Base64 Grayscale Image"),
34
+ )
35
+
36
+
37
+ iface.launch()