公式识别任务各个链条全部打通

2023-12-10 05:20

本文主要是介绍公式识别任务各个链条全部打通,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

    • 引言
    • 公式识别任务是什么?
    • 公式识别任务解决方案初探
    • 使用建议
    • 写在最后

引言

随着LaTeX-OCR模型转换问题的解决,公式识别任务中各个链条已经全部打通。小伙伴们可以放开膀子干了。

解决业界问题的方案,并不是单独训练一个模型就完事了,而是有着上下游的依赖。这就像工厂中流水线作业一样,一个小东西的生产是依赖无数个中间阶段才完成的。

一个模型应用到产品中,也是有着类似的流水线的。相比于工厂中流水线,这里的链条只是更加隐蔽一些而已。

公式识别任务是什么?

公式识别任务:指的是将图像中公式识别为对应的LaTeX写法,便于后续加工处理。

image.png

公式识别任务距离我们最近的应用场景便是论文写作。在我上大学写毕业论文时,由于当时并不知道LaTeX这种东西可以用来写公式,整个毕业论文公式都是在Word上用鼠标点出来的,好不痛苦。

比较推荐大家学一学LaTeX排版,绝对是提效利器,用过的人都说好。

117812740-77b7b780-b262-11eb-81f6-fc19766ae2ae.gif

动图来自LaTeX-OCR

公式识别任务解决方案初探

解决公式识别任务,我这里姑且粗略地分为四个部分:公式识别数据集处理、训练识别模型、转换识别模型和部署使用。

image.png

取之开源,回馈开源,一直是我们的准则。以上四部分具体地址如下,除训练识别模型为lukas-blecher外,其余均经由我整理。欢迎大家多多使用和提建议。

预处理公式库ProcessLaTeXFormulaTools: https://github.com/SWHL/ProcessLaTeXFormulaTools

训练识别模型库LaTeX-OCR: https://github.com/lukas-blecher/LaTeX-OCR

转换模型为ONNX格式库ConvertLaTeXOCRToONNX: https://github.com/SWHL/ConvertLaTeXOCRToONNX

部署使用库RapidLaTeXOCR: https://github.com/RapidAI/RapidLaTeXOCR

使用建议

先尝试RapidLaTeXOCR中识别模型识别效果,是否满足场景需求。

如果不满足,再考虑结合自身场景,将上述四部分走一遍,定制化自己的公式识别模型。

写在最后

本篇文章只是简单介绍,具体请移步文中各个部分的仓库下查看。

如有具体微调,部署等需求,欢迎后台详细咨询。

这篇关于公式识别任务各个链条全部打通的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/476126

相关文章

Python Invoke自动化任务库的使用

《PythonInvoke自动化任务库的使用》Invoke是一个强大的Python库,用于编写自动化脚本,本文就来介绍一下PythonInvoke自动化任务库的使用,具有一定的参考价值,感兴趣的可以... 目录什么是 Invoke?如何安装 Invoke?Invoke 基础1. 运行测试2. 构建文档3.

解决Cron定时任务中Pytest脚本无法发送邮件的问题

《解决Cron定时任务中Pytest脚本无法发送邮件的问题》文章探讨解决在Cron定时任务中运行Pytest脚本时邮件发送失败的问题,先优化环境变量,再检查Pytest邮件配置,接着配置文件确保SMT... 目录引言1. 环境变量优化:确保Cron任务可以正确执行解决方案:1.1. 创建一个脚本1.2. 修

Java实现任务管理器性能网络监控数据的方法详解

《Java实现任务管理器性能网络监控数据的方法详解》在现代操作系统中,任务管理器是一个非常重要的工具,用于监控和管理计算机的运行状态,包括CPU使用率、内存占用等,对于开发者和系统管理员来说,了解这些... 目录引言一、背景知识二、准备工作1. Maven依赖2. Gradle依赖三、代码实现四、代码详解五

如何使用celery进行异步处理和定时任务(django)

《如何使用celery进行异步处理和定时任务(django)》文章介绍了Celery的基本概念、安装方法、如何使用Celery进行异步任务处理以及如何设置定时任务,通过Celery,可以在Web应用中... 目录一、celery的作用二、安装celery三、使用celery 异步执行任务四、使用celery

什么是cron? Linux系统下Cron定时任务使用指南

《什么是cron?Linux系统下Cron定时任务使用指南》在日常的Linux系统管理和维护中,定时执行任务是非常常见的需求,你可能需要每天执行备份任务、清理系统日志或运行特定的脚本,而不想每天... 在管理 linux 服务器的过程中,总有一些任务需要我们定期或重复执行。就比如备份任务,通常会选在服务器资

Python开发围棋游戏的实例代码(实现全部功能)

《Python开发围棋游戏的实例代码(实现全部功能)》围棋是一种古老而复杂的策略棋类游戏,起源于中国,已有超过2500年的历史,本文介绍了如何用Python开发一个简单的围棋游戏,实例代码涵盖了游戏的... 目录1. 围棋游戏概述1.1 游戏规则1.2 游戏设计思路2. 环境准备3. 创建棋盘3.1 棋盘类

阿里开源语音识别SenseVoiceWindows环境部署

SenseVoice介绍 SenseVoice 专注于高精度多语言语音识别、情感辨识和音频事件检测多语言识别: 采用超过 40 万小时数据训练,支持超过 50 种语言,识别效果上优于 Whisper 模型。富文本识别:具备优秀的情感识别,能够在测试数据上达到和超过目前最佳情感识别模型的效果。支持声音事件检测能力,支持音乐、掌声、笑声、哭声、咳嗽、喷嚏等多种常见人机交互事件进行检测。高效推

hdu 4565 推倒公式+矩阵快速幂

题意 求下式的值: Sn=⌈ (a+b√)n⌉%m S_n = \lceil\ (a + \sqrt{b}) ^ n \rceil\% m 其中: 0<a,m<215 0< a, m < 2^{15} 0<b,n<231 0 < b, n < 2^{31} (a−1)2<b<a2 (a-1)^2< b < a^2 解析 令: An=(a+b√)n A_n = (a +

FreeRTOS学习笔记(二)任务基础篇

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、 任务的基本内容1.1 任务的基本特点1.2 任务的状态1.3 任务控制块——任务的“身份证” 二、 任务的实现2.1 定义任务函数2.2 创建任务2.3 启动任务调度器2.4 任务的运行与切换2.4.1 利用延时函数2.4.2 利用中断 2.5 任务的通信与同步2.6 任务的删除2.7 任务的通知2

Flink任务重启策略

概述 Flink支持不同的重启策略,以在故障发生时控制作业如何重启集群在启动时会伴随一个默认的重启策略,在没有定义具体重启策略时会使用该默认策略。如果在工作提交时指定了一个重启策略,该策略会覆盖集群的默认策略默认的重启策略可以通过 Flink 的配置文件 flink-conf.yaml 指定。配置参数 restart-strategy 定义了哪个策略被使用。常用的重启策略: 固定间隔 (Fixe