Jangai commited on
Commit
fc26686
·
verified ·
1 Parent(s): d4ac4cb

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +9 -40
app.py CHANGED
@@ -1,49 +1,18 @@
1
  import gradio as gr
2
- from PIL import Image
3
- import torch
4
- from transformers import TrOCRProcessor, VisionEncoderDecoderModel
5
- import logging
6
 
7
- # Setup logging
8
- logging.basicConfig(level=logging.DEBUG)
9
- logger = logging.getLogger(__name__)
10
 
11
- # Load processor and model
12
- model_name = "microsoft/trocr-large-handwritten"
13
- processor = TrOCRProcessor.from_pretrained(model_name)
14
- model = VisionEncoderDecoderModel.from_pretrained(model_name)
15
-
16
- # Function to recognize handwriting
17
- def recognize_handwriting(image):
18
- try:
19
- logger.info("Received an image for handwriting recognition.")
20
-
21
- if image is None:
22
- logger.error("No image found in the input.")
23
- return "No image found"
24
-
25
- image = Image.fromarray(image).convert("RGB")
26
- pixel_values = processor(images=image, return_tensors="pt").pixel_values
27
- generated_ids = model.generate(pixel_values)
28
- generated_text = processor.batch_decode(generated_ids, skip_special_tokens=True)[0]
29
- logger.info("Handwriting recognized successfully.")
30
- return generated_text
31
- except Exception as e:
32
- logger.error(f"Error during handwriting recognition: {e}")
33
- return f"Error: {str(e)}"
34
-
35
- # Create Gradio interface
36
  with gr.Blocks() as demo:
37
- gr.Markdown("## Handwritten Text Recognition")
38
  with gr.Row():
39
  with gr.Column():
40
- image_input = gr.Image(tool="editor", type="numpy", label="Draw or Upload an Image")
41
- submit_button = gr.Button("Submit")
42
  with gr.Column():
43
- output_text = gr.Textbox(label="Recognized Text")
44
-
45
- submit_button.click(fn=recognize_handwriting, inputs=image_input, outputs=output_text)
46
 
47
- # Launch the app
48
  if __name__ == "__main__":
49
- demo.launch()
 
1
  import gradio as gr
2
+ import numpy as np
 
 
 
3
 
4
+ def display_sketch(image):
5
+ return image
 
6
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7
  with gr.Blocks() as demo:
8
+ gr.Markdown("## Sketchpad Visualization")
9
  with gr.Row():
10
  with gr.Column():
11
+ sketchpad = gr.Image(source="canvas", tool="sketch", type="numpy", label="Draw Something")
 
12
  with gr.Column():
13
+ output_image = gr.Image(type="numpy", label="Your Sketch")
14
+
15
+ sketchpad.change(fn=display_sketch, inputs=sketchpad, outputs=output_image)
16
 
 
17
  if __name__ == "__main__":
18
+ demo.launch()