🚀 泰语TrOCR模型
泰语TrOCR模型是一个针对泰语和英语的光学字符识别(OCR)任务进行微调的模型。它基于TrOCR架构,结合了视觉变换器编码器和基于Electra的文本解码器,能高效处理手写文本行图像,在资源受限的环境中也能实现高精度的字符识别。
🚀 快速开始
泰语TrOCR是TrOCR基础手写模型的微调版本,专为泰语和英语的光学字符识别(OCR)而设计。这个多语言模型能够熟练处理这两种语言的手写文本行图像,采用TrOCR架构,结合了视觉变换器编码器和基于Electra的文本解码器。泰语TrOCR设计紧凑、轻量级,针对资源受限环境进行了高效部署优化,同时在字符识别方面实现了高精度。
- 编码器:TrOCR基础手写模型
- 解码器:Electra Small(使用泰语语料库训练)
✨ 主要特性
- 多语言支持:支持泰语和英语两种语言的手写文本识别。
- 高效轻量:设计紧凑,适合在资源受限的环境中部署。
- 高精度识别:在多种文档类型上的字符错误率(CER)较低。
📦 安装指南
本模型基于transformers
库,你可以使用以下命令安装所需依赖:
pip install transformers requests pillow
💻 使用示例
基础用法
from transformers import TrOCRProcessor, VisionEncoderDecoderModel
from PIL import Image
import requests
processor = TrOCRProcessor.from_pretrained('openthaigpt/thai-trocr')
model = VisionEncoderDecoderModel.from_pretrained('openthaigpt/thai-trocr')
url = 'your_image_url_here'
image = Image.open(requests.get(url, stream=True).raw).convert("RGB")
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)
📚 详细文档
模型性能比较
本节详细介绍了开源的泰语TrOCR模型与其他广泛使用的OCR系统(即EasyOCR和Tesseract)的性能比较。下表根据平均字符错误率(CER)突出了它们在各种文档类型上的各自性能。
文档类型 |
泰语TrOCR |
EasyOCR |
Tesseract |
手写文档 |
0.190034 |
0.410738 |
1.032375 |
PDF文档 |
0.057597 |
0.085937 |
0.761595 |
PDF文档(英 - 泰双语) |
0.053968 |
0.308075 |
1.061107 |
真实文档 |
0.147440 |
0.293482 |
0.915707 |
场景文本 |
0.134182 |
0.390583 |
2.408704 |
调整后均值 |
0.123600 |
0.298474 |
1.269101 |
⚠️ 重要提示
测试数据集(https://huggingface.co/datasets/openthaigpt/thai-ocr-evaluation )仅包含104张图像,这可能会限制这些结果的普遍性。我们正在增加测试数据集的数量。
关键见解
- 字符错误率(CER):该指标评估模型错误预测字符的百分比。CER越低,性能越好。如表所示,泰语TrOCR在所有文档类型上始终优于EasyOCR和Tesseract,平均CER显著更低,使其成为比较中最准确的模型。
- 模型性能:泰语TrOCR模型在处理PDF文档(仅泰语文本和英 - 泰双语)方面特别有效,并且在读取场景文本和手写内容方面比竞争模型有显著改进。
- Tesseract的局限性:需要注意的是,在本次比较中,Tesseract一次仅支持单语言输入。为了进行本次基准测试,它仅在泰语设置下进行了测试,这可能导致其CER值较高。
- 评估数据集来源:评估数据集来自openthaigpt/thai-ocr-evaluation。
📄 许可证
本项目采用Apache 2.0许可证。
💰 赞助

👨💻 作者
- Suchut Sapsathien (suchut@outlook.com)
- Jillaphat Jaroenkantasima (autsadang41@gmail.com)