🚀 TrOCR(小型模型,在合成数学表达式数据集上微调)
TrOCR 模型在合成数学表达式数据集上进行了微调。该模型由 Li 等人在论文 TrOCR: Transformer-based Optical Character Recognition with Pre-trained Models 中提出,并首次在 此代码库 中发布。
免责声明:发布 TrOCR 的团队并未为此模型撰写模型卡片,此模型卡片由 Hugging Face 团队编写。
🚀 快速开始
您可以使用此原始模型对单行文本图像进行光学字符识别(OCR)。可查看模型中心,寻找针对您感兴趣的任务进行微调的版本。
✨ 主要特性
TrOCR 模型是一个编码器 - 解码器模型,由作为编码器的图像 Transformer 和作为解码器的文本 Transformer 组成。图像编码器的权重初始化为 BEiT 的权重,而文本解码器的权重初始化为 RoBERTa 的权重。
模型将图像表示为固定大小的图像块序列(分辨率为 16x16),并对其进行线性嵌入。在将序列输入到 Transformer 编码器的各层之前,还会添加绝对位置嵌入。随后,Transformer 文本解码器自回归地生成标记。
📚 详细文档
模型描述
TrOCR 模型是一个编码器 - 解码器模型,由作为编码器的图像 Transformer 和作为解码器的文本 Transformer 组成。图像编码器的权重初始化为 BEiT 的权重,而文本解码器的权重初始化为 RoBERTa 的权重。
模型将图像表示为固定大小的图像块序列(分辨率为 16x16),并对其进行线性嵌入。在将序列输入到 Transformer 编码器的各层之前,还会添加绝对位置嵌入。随后,Transformer 文本解码器自回归地生成标记。
预期用途和局限性
您可以使用此原始模型对单行文本图像进行光学字符识别(OCR)。可查看模型中心,寻找针对您感兴趣的任务进行微调的版本。
💻 使用示例
基础用法
from transformers import VisionEncoderDecoderModel, AutoFeatureExtractor, AutoTokenizer
from PIL import Image
import requests
url = 'https://drive.google.com/uc?export=view&id=15dUjO44YDe1Agw_Qi8MyODRHpUFaCFw-'
image = Image.open(requests.get(url, stream=True).raw).convert("RGB")
feature_extractor = AutoFeatureExtractor.from_pretrained('vukpetar/trocr-small-photomath')
tokenizer = AutoTokenizer.from_pretrained("vukpetar/trocr-small-photomath")
model = VisionEncoderDecoderModel.from_pretrained('vukpetar/trocr-small-photomath')
pixel_values = feature_extractor(images=image, return_tensors="pt").pixel_values
generated_ids = model.generate(pixel_values)
generated_text = tokenizer.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}
}