当前位置: 首页 > web >正文

LaTeX OCR - 数学公式识别系统

文章目录

    • 一、关于 LaTeX OCR
      • 1、项目概览
      • 架构图
      • 2、相关链接资源
      • 3、功能特性
    • 二、安装配置
      • 基础环境要求
      • Linux 安装
      • Mac 安装
    • 三、使用指南
      • 1、快速训练(小数据集)
      • 2、完整训练(大数据集)
    • 四、可视化功能
      • 训练过程可视化
      • 预测过程可视化
    • 五、模型评估
    • 六、技术细节
      • 数据处理流程
      • 模型架构


一、关于 LaTeX OCR

1、项目概览

基于 Seq2Seq + Attention + Beam Search 架构的数学公式识别系统,可将数学公式图片转换为 LaTeX 代码。

在这里插入图片描述


架构图

在这里插入图片描述


2、相关链接资源

  • GitHub:https://github.com/LinXueyuanStdio/LaTeX_OCR
  • 增强版:https://github.com/LinXueyuanStdio/LaTeX_OCR_PRO
  • 数据集来源:im2latex-100k , arXiv:1609.04938
  • 参考论文:
    • Show, Attend and Tell
    • Harvard’s paper and dataset
    • Seq2Seq for LaTeX generation

3、功能特性

1、多平台支持

  • 支持 Linux/Mac/Windows 系统
  • 提供一键安装脚本

2、可视化训练

  • 集成 TensorBoard 训练过程可视化
  • 支持注意力机制可视化

3、评估指标

  • 支持 perplexity/EditDistance/BLEU-4/ExactMatchScore 四种评估指标

二、安装配置

基础环境要求

  1. Python 3.5 + TensorFlow 1.12.2
  2. LaTeX (latex 转 pdf)
  3. Ghostscript (图片处理)
  4. ImageMagick (pdf 转 png)

Linux 安装

一键安装

make install-linux

或分步安装

# 创建环境 
virtualenv env35 --python=python3.5
source env35/bin/activate
pip install -r requirements.txt# 安装 latex (latex 转 pdf)
sudo apt-get install texlive-latex-base texlive-latex-extra# 安装 ghostscript
sudo apt-get update && sudo apt-get install ghostscript libgs-dev# 安装 magick (pdf 转 png)
wget http://www.imagemagick.org/download/ImageMagick.tar.gz
tar -xvf ImageMagick.tar.gz
cd ImageMagick-7.*
./configure --with-gslib=yes
make
sudo make install
sudo ldconfig /usr/local/lib
rm ImageMagick.tar.gz
rm -r ImageMagick-7.*

Mac 安装

一键安装

make install-mac

分步安装

sudo pip install -r requirements.txt
wget http://www.imagemagick.org/download/ImageMagick.tar.gz
tar -xvf ImageMagick.tar.gz
cd ImageMagick-7.*
./configure --with-gslib=yes
make
sudo make install
rm ImageMagick.tar.gz
rm -r ImageMagick-7.*

三、使用指南

1、快速训练(小数据集)

一键训练(约2分钟)

make small

分步执行

python build.py --data=configs/data_small.json --vocab=configs/vocab_small.json
python train.py --data=configs/data_small.json --vocab=configs/vocab_small.json --training=configs/training_small.json --model=configs/model.json --output=results/small/
python evaluate_txt.py --results=results/small/
python evaluate_img.py --results=results/small/

2、完整训练(大数据集)

一键训练(2-3小时)

make full

分步执行

python build.py --data=configs/data.json --vocab=configs/vocab.json
python train.py --data=configs/data.json --vocab=configs/vocab.json --training=configs/training.json --model=configs/model.json --output=results/full/
python evaluate_txt.py --results=results/full/
python evaluate_img.py --results=results/full/

四、可视化功能

训练过程可视化

# 小数据集
cd results/small
tensorboard --logdir ./# 大数据集
cd results/full
tensorboard --logdir ./

预测过程可视化

python visualize_attention.py --image=data/images_test/6.png --vocab=configs/vocab.json --model=configs/model.json --output=results/full/

五、模型评估

指标训练分数测试分数
perplexity1.391.44
EditDistance81.6880.45
BLEU-478.2175.42
ExactMatchScore13.9312.44

六、技术细节

数据处理流程

  1. 获取 LaTeX 公式数据
  2. 公式规范化处理
  3. 生成图片数据集
  4. 构建字典和映射文件

模型架构

  • Encoder: CNN
  • Decoder: LSTM/GRU
  • 注意力机制层
  • Beam Search/Greedy 输出策略

伊织 xAI 2025-05-18(日)

http://www.xdnf.cn/news/7159.html

相关文章:

  • DAY26 函数定义与参数
  • 【Git】基本操作
  • 有源晶振与无源晶振 旁路模式与非旁路模式 深度剖析
  • Go语言--语法基础5--基本数据类型--类型转换
  • LabVIEW汽车CAN总线检测系统开发
  • C++.备考知识点
  • Milvus向量数据库
  • Apache Spark:大数据处理与分析的统一引擎
  • iOS 内存分区
  • 聚类算法K-means和Dbscan的对比
  • Blender建小房子流程
  • 符合Python风格的对象(再谈向量类)
  • Adapter适配器模式
  • 10.13 LangChain工具调用实战:@tool装饰器+小样本提示,日处理10w+调用秘籍
  • inverse-design-of-grating-coupler-3d
  • 大模型在胫骨平台骨折预测及治疗方案制定中的应用研究
  • linux下的 xargs命令使用详解
  • GC全场景分析
  • tensorflow图像分类预测
  • matlab分段函数
  • 第二章:安卓端启动流程详解与疑难杂症调试手册
  • Open CASCADE学习|几何体切片处理:OpenMP与OSD_Parallel并行方案深度解析
  • 【Linux】简易版Shell实现(附源码)
  • 1.QPushBotton 以及 对象树
  • Redis学习打卡-Day3-分布式ID生成策略、分布式锁
  • 【Bluedroid】蓝牙HID DEVICE错误报告处理全流程源码解析
  • 从坏道扫描到错误修复:HD Tune实战指南
  • 学习黑客Active Directory 入门指南(三)
  • 07 负载均衡
  • 使用Next.js优化静态网站:以书法字体生成器为例