语言:
- 泰语
- 英语
指标:
- 字符错误率(CER)
标签:
- 文本识别转换器(TrOCR)
- 图像转文本
管道标签: 图像转文本
库名称: transformers
许可证: apache-2.0
泰文TrOCR模型
简介
ThaiTrOCR是基于TrOCR基础手写体模型微调而成的版本,专为泰语和英语的光学字符识别(OCR)而设计。这一多语言模型能熟练处理两种语言的手写文本行图像,其架构结合了视觉Transformer编码器与基于Electra的文本解码器。ThaiTrOCR设计紧凑轻量,在资源受限环境中仍能高效部署,同时实现高精度的字符识别。
- 编码器: TrOCR基础手写体版
- 解码器: Electra小型版(使用泰语语料训练)
训练数据集
- pythainlp/thai-wiki-dataset-v3
- pythainlp/thaigov-corpus
- Salesforce/wikitext
使用方法
以下是在PyTorch中使用该模型的示例:
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 = '图片URL地址'
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)
模型性能对比
本节详细对比开源ThaiTrOCR模型与主流OCR系统(EasyOCR和Tesseract)的性能表现。下表基于平均字符错误率(CER)展示各模型在不同文档类型上的表现。
文档类型 |
ThaiTrOCR |
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值越低表示性能越优。如表所示,ThaiTrOCR在所有文档类型上均显著优于EasyOCR和Tesseract,平均CER值最低,成为对比中最精准的模型。
- 模型表现:ThaiTrOCR在处理PDF文档(纯泰文及英泰双语)时表现尤为突出,在场景文本和手写内容识别上也大幅领先竞品。
- Tesseract限制:需注意Tesseract在此次对比中仅支持单语言输入(设置为泰语模式),这可能是其CER值较高的重要原因。
- 评估数据集源自openthaigpt/thai-ocr-evaluation。
赞助方
作者
- Suchut Sapsathien (suchut@outlook.com)
- Jillaphat Jaroenkantasima (autsadang41@gmail.com)