模型:

microsoft/trocr-large-str

英文

TrOCR(在STR基准上进行细调的大型模型)

TrOCR模型在IC13、IC15、IIIT5K、SVT的训练集上进行了细调。该模型由Li等人在 TrOCR: Transformer-based Optical Character Recognition with Pre-trained Models 论文中介绍,并于 this repository 首次发布。

模型描述

TrOCR模型是一个编码器-解码器模型,由图像Transformer作为编码器和文本Transformer作为解码器组成。图像编码器使用BEiT的权重进行初始化,而文本解码器使用RoBERTa的权重进行初始化。

图像以固定大小的补丁序列(分辨率为16x16)的形式提供给模型,并进行线性嵌入。在将序列馈送到Transformer编码器的层之前,还添加了绝对位置嵌入。接下来,Transformer文本解码器自回归生成标记。

预期用途和限制

您可以使用原始模型对单行文本图像进行光学字符识别(OCR)。可查看 model hub 以寻找您感兴趣的任务的细调版本。

如何使用

以下是在PyTorch中使用此模型的方法:

from transformers import TrOCRProcessor, VisionEncoderDecoderModel
from PIL import Image
import requests

# load image from the IIIT-5k dataset
url = 'https://i.postimg.cc/ZKwLg2Gw/367-14.png'
image = Image.open(requests.get(url, stream=True).raw).convert("RGB")

processor = TrOCRProcessor.from_pretrained('microsoft/trocr-large-str')
model = VisionEncoderDecoderModel.from_pretrained('microsoft/trocr-large-str')
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]

BibTeX条目和引用信息

@misc{li2021trocr,
      title={TrOCR: Transformer-based Optical Character Recognition with Pre-trained Models}, 
      author={Minghao Li and Tengchao Lv and Lei Cui and Yijuan Lu and Dinei Florencio and Cha Zhang and Zhoujun Li and Furu Wei},
      year={2021},
      eprint={2109.10282},
      archivePrefix={arXiv},
      primaryClass={cs.CL}
}