From 65062acfcea3ac81c5451abca411ac0792e67956 Mon Sep 17 00:00:00 2001
From: SOULOFCINDER <841135647@qq.com>
Date: Thu, 30 Mar 2023 11:36:03 +0800
Subject: [PATCH] inital
---
trocr_small_handwritten/app.py | 33 ++++++++++++++++++
trocr_small_handwritten/ocr_example.jpg | Bin 0 -> 4472 bytes
.../trocr-small-handwritten | 1 +
3 files changed, 34 insertions(+)
create mode 100644 trocr_small_handwritten/app.py
create mode 100644 trocr_small_handwritten/ocr_example.jpg
create mode 160000 trocr_small_handwritten/trocr-small-handwritten
diff --git a/trocr_small_handwritten/app.py b/trocr_small_handwritten/app.py
new file mode 100644
index 0000000..7c08d26
--- /dev/null
+++ b/trocr_small_handwritten/app.py
@@ -0,0 +1,33 @@
+import gradio as gr
+from PIL import Image
+from transformers import TrOCRProcessor, VisionEncoderDecoderModel
+
+
+def inference(img):
+ pretrained_model_path = "trocr-small-handwritten"
+ image = img.convert("RGB")
+
+ processor = TrOCRProcessor.from_pretrained(pretrained_model_path)
+ model = VisionEncoderDecoderModel.from_pretrained(pretrained_model_path)
+ pixel_values = processor(images=image, return_tensors="pt").pixel_values
+
+ generated_ids = model.generate(pixel_values)
+ generated_text = processor.batch_decode(generated_ids, skip_special_tokens=True)[0]
+ print(generated_text)
+
+title = "OCR:trocr-small-handwritten"
+description = "Gradio Demo for trocr-small-handwritten. To use it, simply upload your image, or click one of the examples to load them."
+article = "
Github Repo Pytorch
"
+examples=[['ocr_example.jpg']]
+
+
+demo = gr.Interface(
+ fn=inference,
+ inputs=[gr.inputs.Image(type="pil")],
+ outputs=gr.outputs.Textbox(),
+ title=title,
+ description=description,
+ article=article,
+ examples=examples)
+
+demo.launch()
\ No newline at end of file
diff --git a/trocr_small_handwritten/ocr_example.jpg b/trocr_small_handwritten/ocr_example.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..ad2a528402338b49118a44e483aee0aeed068be6
GIT binary patch
literal 4472
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
K&@XHgU;o*(eW6(Z
literal 0
HcmV?d00001
diff --git a/trocr_small_handwritten/trocr-small-handwritten b/trocr_small_handwritten/trocr-small-handwritten
new file mode 160000
index 0000000..55eb201
--- /dev/null
+++ b/trocr_small_handwritten/trocr-small-handwritten
@@ -0,0 +1 @@
+Subproject commit 55eb2010aeaaa246defc329d42939e0253d55c99