htr_demo / app.py
Gabriel's picture
test docker & added singeltons
3b057c5
raw
history blame
No virus
5.63 kB
import gradio as gr
from helper.gradio_config import css, js, theme
from helper.text import TextAbout, TextApp, TextHowTo, TextRiksarkivet, TextRoadmap
from tabs.htr_tool import htr_tool_tab
from tabs.stepwise_htr_tool import stepwise_htr_tool_tab
with gr.Blocks(title="HTR Riksarkivet", theme=theme, css=css) as demo:
gr.Markdown(TextApp.title_markdown)
with gr.Tabs():
with gr.Tab("HTR Tool"):
htr_tool_tab.render()
with gr.Tab("Stepwise HTR Tool"):
stepwise_htr_tool_tab.render()
with gr.Tab("How to use"):
with gr.Tabs():
with gr.Tab("HTR Tool"):
with gr.Row().style(equal_height=False):
with gr.Column():
gr.Markdown(TextHowTo.htr_tool)
with gr.Column():
gr.Markdown(TextHowTo.both_htr_tool_video)
gr.Video(
value="https://github.com/Borg93/htr_gradio_file_placeholder/raw/main/eating_spaghetti.mp4",
label="How to use HTR Tool",
)
gr.Markdown(TextHowTo.reach_out)
with gr.Tab("Stepwise HTR Tool"):
with gr.Row().style(equal_height=False):
with gr.Column():
gr.Markdown(TextHowTo.stepwise_htr_tool)
with gr.Row():
with gr.Accordion("The tabs for the Stepwise HTR Tool:", open=False):
with gr.Tabs():
with gr.Tab("1. Region Segmentation"):
gr.Markdown(TextHowTo.stepwise_htr_tool_tab1)
with gr.Tab("2. Line Segmentation"):
gr.Markdown(TextHowTo.stepwise_htr_tool_tab2)
with gr.Tab("3. Transcribe Text"):
gr.Markdown(TextHowTo.stepwise_htr_tool_tab3)
with gr.Tab("4. Explore Results"):
gr.Markdown(TextHowTo.stepwise_htr_tool_tab4)
gr.Markdown(TextHowTo.stepwise_htr_tool_end)
with gr.Column():
gr.Markdown(TextHowTo.both_htr_tool_video)
gr.Video(
value="https://github.com/Borg93/htr_gradio_file_placeholder/raw/main/eating_spaghetti.mp4",
label="How to use Stepwise HTR Tool",
)
gr.Markdown(TextHowTo.reach_out)
with gr.Tab("About"):
with gr.Tabs():
with gr.Tab("Project"):
with gr.Row():
with gr.Column():
gr.Markdown(TextAbout.intro_and_pipeline_overview_text)
with gr.Row():
with gr.Tabs():
with gr.Tab("I. Binarization"):
gr.Markdown(TextAbout.binarization)
with gr.Tab("II. Region Segmentation"):
gr.Markdown(TextAbout.text_region_segment)
with gr.Tab("III. Line Segmentation"):
gr.Markdown(TextAbout.text_line_segmentation)
with gr.Tab("IV. Transcriber"):
gr.Markdown(TextAbout.text_htr)
with gr.Row():
gr.Markdown(TextAbout.text_data)
with gr.Column():
gr.Markdown(TextAbout.filler_text_data)
gr.Markdown(TextAbout.text_models)
with gr.Row():
with gr.Tabs():
with gr.Tab("Region Segmentation"):
gr.Markdown(TextAbout.text_models_region)
with gr.Tab("Line Segmentation"):
gr.Markdown(TextAbout.text_line_segmentation)
with gr.Tab("Transcriber"):
gr.Markdown(TextAbout.text_models_htr)
with gr.Tab("Roadmap"):
with gr.Row():
with gr.Column():
gr.Markdown(TextRoadmap.roadmap)
with gr.Column():
gr.Markdown(TextRoadmap.notebook)
with gr.Tab("Riksarkivet"):
with gr.Row():
gr.Markdown(TextRiksarkivet.riksarkivet)
# callback.setup([fast_track_input_region_image], "flagged_data_points")
# flagging_button.click(lambda *args: callback.flag(args), [fast_track_input_region_image], None, preprocess=False)
# flagging_button.click(lambda: (gr.update(value="Flagged")), outputs=flagging_button)
# fast_track_input_region_image.change(lambda: (gr.update(value="Flag")), outputs=flagging_button)
demo.load(None, None, None, _js=js)
demo.queue(concurrency_count=5, max_size=20)
if __name__ == "__main__":
demo.launch(server_name="0.0.0.0", server_port=7860, show_api=False, show_error=True)