Spaces:
Runtime error
Runtime error
TomatoFT
commited on
Commit
•
394b29c
1
Parent(s):
47f08a4
Fix: Debuging in the app code
Browse files
app.py
CHANGED
@@ -1,24 +1,48 @@
|
|
1 |
import gradio as gr
|
2 |
-
import
|
|
|
|
|
|
|
3 |
|
|
|
|
|
|
|
|
|
4 |
|
5 |
-
def
|
6 |
-
|
|
|
|
|
7 |
|
|
|
|
|
|
|
|
|
|
|
8 |
|
9 |
-
|
10 |
-
|
11 |
-
|
12 |
-
|
13 |
-
|
14 |
-
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
20 |
)
|
21 |
|
22 |
if __name__ == "__main__":
|
23 |
-
|
24 |
-
|
|
|
1 |
import gradio as gr
|
2 |
+
import PIL
|
3 |
+
import numpy as np
|
4 |
+
from PIL import Image, ImageDraw, ImageFont
|
5 |
+
from translate import Translator
|
6 |
|
7 |
+
def translate_text(text, src_lang='en', dest_lang='vi'):
|
8 |
+
translator = Translator(to_lang=dest_lang, from_lang=src_lang)
|
9 |
+
translation = translator.translate(text)
|
10 |
+
return translation
|
11 |
|
12 |
+
def process_image(image):
|
13 |
+
# Convert the uploaded image data to a PIL Image
|
14 |
+
image = Image.open(image).convert('RGB')
|
15 |
+
image.save('temp.jpg')
|
16 |
|
17 |
+
# Sample code to perform OCR and draw translated text (replace with your logic)
|
18 |
+
# Simulated results for demonstration purposes
|
19 |
+
result = [
|
20 |
+
([(100, 100), (200, 100), (200, 200), (100, 200)], ("Hello, how are you?", 0.95))
|
21 |
+
]
|
22 |
|
23 |
+
draw = PIL.ImageDraw.Draw(image)
|
24 |
+
for i, box in enumerate(result):
|
25 |
+
text = translate_text(box[1][0])
|
26 |
+
box = np.array(box[0]).astype(np.int32)
|
27 |
+
xmin = min(box[:, 0])
|
28 |
+
ymin = min(box[:, 1])
|
29 |
+
xmax = max(box[:, 0])
|
30 |
+
ymax = max(box[:, 1])
|
31 |
+
draw.rectangle((xmin, ymin, xmax, ymax), outline="red", width=1)
|
32 |
+
draw.text((xmin + 40, ymin + 40), f"{text}", fill="black", font=ImageFont.load_default())
|
33 |
+
|
34 |
+
# Save the processed image
|
35 |
+
processed_image_path = 'processed_image.jpg'
|
36 |
+
image.save(processed_image_path)
|
37 |
+
return processed_image_path
|
38 |
+
|
39 |
+
iface = gr.Interface(
|
40 |
+
fn=process_image,
|
41 |
+
inputs=gr.Image(type="filepath", label="Upload Image"),
|
42 |
+
outputs="image",
|
43 |
+
title="OCR Translation App",
|
44 |
+
description="Upload an image and see the processed image with translated text."
|
45 |
)
|
46 |
|
47 |
if __name__ == "__main__":
|
48 |
+
iface.launch(share=True)
|
|