File size: 1,315 Bytes
96feb73
 
 
e6c1256
96feb73
 
 
 
e33424f
96feb73
e33424f
96feb73
 
 
 
 
 
 
e33424f
1b4da0d
 
 
 
 
 
 
 
 
 
 
 
 
96feb73
1b4da0d
 
 
 
 
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
from constants import RESOURCES
from data_preprocessing import RandomizeImageTransform
from utils import beam_search_decode

import streamlit as st
import PIL
import torch
import torchvision.transforms as T

MODEL_PATH = RESOURCES + "/model_2tcuvfsj.pt"

transformer = torch.load(MODEL_PATH)
image_transform = T.Compose((
    T.ToTensor(),
    RandomizeImageTransform(width=transformer.hparams['image_width'],
                            height=transformer.hparams['image_height'],
                            random_magnitude=0)
))

st.title("Image to TeX")

st.image("resources/frontend/fraction_derivative.png", width=500)
st.image("resources/frontend/positional_encoding.png")
st.image("resources/frontend/taylor_sequence_expanded.png")
# st.image("resources/frontend/taylor_sequence.png")
# st.image("resources/frontend/maclaurin_series.png")
# st.image("resources/frontend/gauss_distribution.png")

image_file = st.file_uploader("Upload an image with equation", type=([".png", ".jpg", ".jpeg"]))

if image_file is not None:
    image = PIL.Image.open(image_file)
    image = image.convert("RGB")
    texs = beam_search_decode(transformer, image, image_transform=image_transform)
    # streamlit latex doesn't support boldmath
    tex = texs[0].replace("\\boldmath", "")
    st.latex(tex)
    st.markdown(tex)