在机器学习和教育场景中,从复杂文档中提取结构化数据一直是痛点。
但在日常教学或构建机器学习数据集时,常规 OCR 工具往往力不从心,尤其面对多语言文字、数学公式、图表示意图、复杂排版的学术材料,准确率低、结构混乱,严重影响效率。
今天为大家推荐一款专为“教育场景”和“机器学习训练”量身定制的 OCR 神器:Versatile-OCR-Program。

它不仅支持多语言和多模态内容,还能自动生成自然语言描述,将复杂文档转化为 AI 友好的格式。
结合了 DocLayout-YOLO、Google Vision 和 MathPix 等技术,支持从复杂教育材料(如试卷、学术 PDF)中提取文本、数学公式、表格和图表。
这款工具的核心目标是“结构化与语义化”。它通过两阶段处理(初始提取 + 语义解释),将密集科学内容转化为 JSON 或 Markdown 格式输出,特别适合考试风格文档的处理。
测试显示,其在 EJU 生物学和东京大学数学数据集上的准确率高达 90-95%。
主要功能
-
• 多语言支持:包括日语、韩语和英语,同时也可扩展支持其他更多的语言。 -
• 多模态提取:借助 MathPix 和 DocLayout-YOLO 技术,可精准识别文本、数学公式、表格、图表和示意图。 -
• 上下文语义标注:为视觉元素(如图表)生成自然语言描述,如“此图展示了xx的四个阶段”。 -
• 结构化输出:支持 JSON 和 Markdown 格式,包含数学表达式、表格摘要和图像说明。 -
• 高准确率:在真实学术数据集(如 EJU、东京大学数学)上,准确率达 90-95%。
快速使用
Versatile-OCR-Program 的安装和使用简单,支持 Python 环境。
安装部署
克隆仓库:
git clone https://github.com/ses4255/Versatile-OCR-Program.git
cd Versatile-OCR-Program
安装依赖:
pip install --no-cache-dir -e .
也可以直接使用Dockerfile直接构建(项目中有提供)
docker build -t "NAME:Dockerfile"
使用方法
第一阶段:初始提取,提取文本、表格和图形的原始数据。
python ocr_stage1.py --input exam.pdf --output_dir ./temp
第二阶段:语义输出,生成结构化 JSON 文件。
python ocr_stage2.py --input_dir ./temp --output result.json
场景应用示例
1、教育数据集制作
-
• 自动批量转换教辅PDF、真题试卷为可训练数据 -
• 输出结构化Markdown用于知识图谱搭建、FAQ系统
2、教学辅助系统
-
• 为教师提供快速提取讲义内容、自动生成图文解释的工具 -
• 配合语音朗读/ChatGPT类对话生成,生成智能讲题机器人
3、教育AI模型训练
-
• 用高质量JSON作为训练数据,提升数学/理科模型解题准确率 -
• 特别适合fine-tune 多模态大模型,比如图+文本输入训练
4、自学党神器
-
• 将整套教材PDF转换成Markdown,配合Logseq/Obsidian沉浸式学习
-每道题自动加“语义解析”,训练自己的AI老师
写在最后
Versatile-OCR-Program 并不是又一个“识别图片上文字”的工具。而是一个完整的教育材料数字化、结构化、语义化工具链。
输出不仅是干巴巴的文字,还能结构化输出,保留排版,也可自动生成语义注解与自动说明,极度贴心!
GitHub 项目地址:https://github.com/ses4255/Versatile-OCR-Program

● 一款改变你视频下载体验的神器:MediaGo
● 新一代开源语音库CoQui TTS冲到了GitHub 20.5k Star
● 最新最全 VSCODE 插件推荐(2023版)
● Star 50.3k!超棒的国产远程桌面开源应用火了!
● 超牛的AI物理引擎项目,刚开源不到一天,就飙升到超9K Star!突破物理仿真极限!

(文:开源星探)