我们推出了大型 TrOCR 模型的新版本,该版本在我们自行生成的西班牙语数据集上进行了微调。TrOCR 架构最初由 Li 等人在论文《TrOCR: Transformer-based Optical Character Recognition with Pre-trained Models》(https://arxiv.org/abs/2109.10282)中提出,并可在相关的代码库(https://github.com/microsoft/unilm/tree/master/trocr)中获取。
此模型专为印刷字体设计,不支持手写识别。
我们正在招聘各个级别的人才(包括全职研究员和实习生)!如果您有兴趣与我们一起从事计算机视觉、自然语言处理和文档 AI 方面的工作,请将您的简历发送至 jobs@qantev.com,或通过 Qantev 招聘平台 申请众多开放职位。
TrOCR 模型架构基于 Transformer 框架,包含一个作为编码器的图像 Transformer 和一个作为解码器的文本 Transformer。
编码器接收输入图像,将其分解为图像块,并对这些图像块进行处理以获取视觉特征。然后,解码器利用这些特征,结合视觉信息和先前的预测,以自回归的方式生成词片序列。
这种设计使 TrOCR 能够利用预训练模型进行图像理解和语言建模,从而实现最先进的性能。
由于没有公开可用的西班牙语 OCR 训练和测试数据集,我们选择创建自己的数据集。这包括抓取 131,000 个随机的 Wikipedia 页面,并从中提取 2,000,000 个样本,样本范围从单个单词到包含 10 个单词的句子不等。
随后,我们根据这些样本人工生成图像,并应用了各种数据增强技术,得到了如下结果:
注意:我们发现,在训练过程中动态生成图像比从预先存在的文件夹中读取图像速度更快。
遗憾的是,目前尚无专门用于评估西班牙语光学字符识别(OCR)性能的既定基准数据集。为了展示我们OCR的有效性,我们在西班牙语版的XFUND数据集上提供了小型、基础型和大型模型的基准测试结果。此外,我们还纳入了与EasyOCR的对比分析。
| 模型 | 字符错误率(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数据集包含错误标记的数据,这可能会对本基准测试的结果产生影响。)
尽管此模型可免费使用,但必须注意的是,它并未在手写文本上进行训练,因此可能无法准确识别手写内容。此外,在准确读取两行文本或竖排文本时,其识别能力也有限。
此模型必须与文本检测模型配合使用。
以下是如何在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]@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},
}research [at] qantev [dot] com