🚀 TrOCR(大型模型)
TrOCR是一个基于Transformer架构的光学字符识别(OCR)模型,本项目推出了TrOCR大型模型的新版本,该版本在自行生成的西班牙语数据集上进行了微调。此模型适用于印刷字体识别,但不支持手写识别。
🚀 快速开始
以下是如何在PyTorch中使用该模型的示例代码:
from transformers import TrOCRProcessor, VisionEncoderDecoderModel
from PIL import Image
import requests
url = 'https://huggingface.co/qantev/trocr-large-spanish/resolve/main/example_1.png'
image = Image.open(requests.get(url, stream=True).raw).convert("RGB")
processor = TrOCRProcessor.from_pretrained('qantev/trocr-large-spanish')
model = VisionEncoderDecoderModel.from_pretrained('qantev/trocr-large-spanish')
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]
✨ 主要特性
- 基于Transformer架构:TrOCR模型架构基于Transformer框架,由图像Transformer作为编码器,文本Transformer作为解码器,能够利用预训练模型进行图像理解和语言建模,实现了先进的性能。
- 西班牙语微调:针对西班牙语进行了专门的微调,在西班牙语OCR任务上表现出色。
📚 详细文档
模型介绍
TrOCR模型架构基于Transformer框架,包含一个图像Transformer作为编码器和一个文本Transformer作为解码器。
编码器接收输入图像,将其分解为图像块并处理以获得视觉特征。解码器则利用这些特征,以自回归的方式生成词片序列,生成过程受视觉信息和先前预测的引导。
数据集
由于没有公开可用的西班牙语OCR训练和测试数据集,我们决定创建自己的数据集。具体做法是抓取了131,000个随机维基百科页面,并提取了2,000,000个样本,样本范围从单个单词到包含10个单词的句子。
随后,我们从这些样本中人工生成图像,并应用了各种数据增强技术,得到了如下结果:
注意:我们发现,在训练过程中实时生成图像比从现有文件夹中读取图像更快。
指标
遗憾的是,目前没有专门用于评估西班牙语OCR性能的基准数据集。为了展示我们的OCR效果,我们在西班牙语的XFUND数据集上对小型、基础和大型模型进行了基准测试,并与EasyOCR进行了比较。
属性 |
详情 |
模型类型 |
TrOCR(大型模型) |
训练数据 |
抓取131,000个随机维基百科页面,提取2,000,000个样本生成的数据集 |
模型 |
字符错误率 (CER) |
单词错误率 (WER) |
EasyOCR |
0.1916 |
0.3353 |
qantev/trocr-small-spanish |
0.1059 |
0.2545 |
qantev/trocr-base-spanish |
0.0732 |
0.2028 |
qantev/trocr-large-spanish |
0.0632 |
0.1817 |
⚠️ 重要提示
请注意,XFUND数据集中包含标注错误的数据,这可能会影响本基准测试的结果。
预期用途和限制
- 用途:该模型可用于印刷字体的西班牙语OCR任务。
- 限制:此模型未在手写文本上进行训练,因此可能无法准确识别手写内容。此外,在准确读取两行文本或垂直文本方面,其性能有限。该模型需要与文本检测模型结合使用。
📄 许可证
本项目采用MIT许可证。
📝 引用
@misc{lauar2024spanishtrocrleveragingtransfer,
title={Spanish TrOCR: Leveraging Transfer Learning for Language Adaptation},
author={Filipe Lauar and Valentin Laurent},
year={2024},
eprint={2407.06950},
archivePrefix={arXiv},
primaryClass={cs.AI},
url={https://arxiv.org/abs/2407.06950},
}
🤝 招聘信息
我们正在各个级别招聘(包括全职研究人员和实习生)!如果您有兴趣与我们一起从事计算机视觉、自然语言处理和文档人工智能方面的工作,请将您的简历发送至jobs@qantev.com,或在Qantev招聘板上申请众多开放职位。
📞 联系我们
如有任何问题,请通过research [at] qantev [dot] com与我们联系。