File size: 1,131 Bytes
5a2689a
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
import easyocr
import cv2
from matplotlib import pyplot as plt
import numpy as np
from googletrans import Translator
import streamlit as st
from PIL import Image
import os
uploaded_image=st.file_uploader("Upload image",type=["jpg","png",])
if(uploaded_image!=None):
    display_image=Image.open(uploaded_image)
    display_image=display_image.convert("RGB")
    st.image(display_image)
    if st.button("Translate"):
        reader = easyocr.Reader(['de'])
        result = reader.readtext(np.array(display_image))
        img = np.array(display_image)
        font = cv2.FONT_HERSHEY_SIMPLEX
        for detection in result: 
            try:
                top_left = tuple(detection[0][0])
                bottom_right = tuple(detection[0][2])
                text = detection[1]
                translator=Translator()
                translation=translator.translate(text,dest="en")
                #img = cv2.rectangle(img,top_left,bottom_right,(0,255,0),3)
                img = cv2.putText(img,translation.text,top_left, font, 0.5,(255,0,0),1,cv2.LINE_AA)
            except:
                pass    
        st.image(img)