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

图片公式识别@文档公式识别@表格识别@在线和离线OCR工具

文章目录

    • abstract
    • 普通文字识别
    • 本地软件识别公式
      • 扩展插件下载
      • 小结
    • 在线识别
      • 网站/API👺
      • Quicker整合(推荐)
      • 可视化编辑和识别公式
      • 其他
      • 多模态大模型识别图片中的公式
      • 排版
    • 开源模型

abstract

  • 本文介绍免费图片文本识别(OCR)工具,包括普通文字识别,公式识别,甚至是手写公式和文字
  • 重点在于免费和好用,不失选择的多样性
  • 虽然公式识别的难度远大于普通文字的识别难度,但是随着技术的发展,公式识别也会像文本识别那样易用,免费
  • 其他重要的AI应用(这里不展开)
    • 还有表格识别,尤其是复杂表格的识别
    • 逼真(接近真人播音员朗读效果)的文本朗读语言生成
  • 本文内容可能会随着时间的逝去而过时,某些东西将来可能不那么好用,也可能变得好用,也可能出现更好的工具

普通文字识别

  • 这类软件或平台十分的多,早已普及,比如qq/微信都有文本识别的功能
    • 有人把微信里的ocr功能作为后台设计了一个本地OCR,并且接入语音朗读
  • 那么主要比较的是识别速度和精度,以及易用程度,比如能否离线识别,连续识别的体验,跨平台如何,费用等方面
  • 当然能够识别公式的平台通常也能识别普通文本(但是个别模型为了提高公式识别精度,仅设计为用来识别公式)

本地软件识别公式

  • Umi-OCR: Umi-OCR (gitee.com)
    • 是一款免费、开源、可批量的离线 OCR 软件,基于 PaddleOCR,适用于 Windows10/11 平台
    • 该链接同步github链接,源链接访问比较慢:hiroi-sora/Umi-OCR: OCR software, free and offline. (github.com)
    • 软件主体和软件的插件可以用镜像加速下载

扩展插件下载

  • hiroi-sora/Umi-OCR_plugins: Umi-OCR 插件库 (github.com)

  • 该软件是多功能OCR软件,可以用于普通图片中文本识别,也可以识别二维码,甚至数学公式

    • 识别数学公式需要下载插件中的体积较大的模型
    • hiroi-sora/Umi-OCR_plugins: Umi-OCR 插件库 (github.com)
    • 插件名为win7开头,表示:平台兼容win7 以上(win10,11都可以用),64 位
  • 请仔细阅读仓库介绍和使用说明

小结

  • 软件有多个模型供下载使用,识别公式的速度不是很快,模型推理时对于磁盘有一定的读写量
  • 在有需要说别的时候,我个人会优先使用在线工具识别

在线识别

网站/API👺

  • Document & Formula OCR Service (simpletex.cn)👺
    • 目前免费,支持手写符号识别,图片公式识别,文档公式识别
    • 并且有灵活的使用方式,包括api方式看起来很不错
    • 在线公式编辑器Document Editor (simpletex.net)
  • Doc2X
    • 精度也是不错的,有一定量的免费额度,次数蛮多的
    • 可以识别公式,也可以识别表格,包含公式的表格也不在话下,能够导出到word文件等
  • Pix2Text (P2T) - Free Mathpix Alternative (breezedeus.com)
    • 模型在成长期
    • 有免费额度,有开源版的模型

Quicker整合(推荐)

  • 如果经常使用,推荐用Quicker整合,实现截屏识别

  • 公式识别3 动作信息 - Quicker (getquicker.net)👺

    • 使用Quicker软件(需要常驻后台)及其动作插件动作实现截图识别公式,查看该链接教程进行配置
    • 可以选择多种api,教程中给出了推荐,目前用simpletex提供的api来识别很不错
    • 经常使用的话十分推荐此方案,如果只是偶尔用用,那么用在线网站就够了
  • Doc2X - by 蓝莓派 - 动作信息 - Quicker (getquicker.net)

可视化编辑和识别公式

  • 在线LaTeX公式编辑器-编辑器 (latexlive.com)
    • 需要登录,每个账户每天有少量免费次数(可能会调整)
    • 这类普通账户有免费次数的机制有的人会注册几个账号,甚至叫亲朋好友帮忙注册,不太优雅,用得多的话可以用其他免费的代替品

其他

  • 著名的收费公式识别(具有少量的免费额度
    • Mathpix OCR User Guide: Examples of Rendered Math and Text
  • 图片转LaTeX公式在线 - LaTeX公式识别 - 照片转换成LaTeX公式 - 白描网页版 (baimiaoapp.com)

多模态大模型识别图片中的公式

  • 做以下测试具有时效性,测试时都是免费功能,后续可能会有优化,也可能不再免费

    模型示例评价(仅先测试时的版本)
    通义千问在这里插入图片描述效果尚可,需要等一会,复杂公式需要久一些
    点击通义回复的右下角复制按钮获得latex代码;但是默认缺乏排班,需要告诉模型追加源代码输出,而不仅仅是渲染后的公式
    文心一言在这里插入图片描述免费模型(3.5)测的,一般般,复杂公式识别不全,期待优化
  • 大模型很多,这里就举出两个例子,其他的模型比如智谱清言也可以识别,但是同样的例子出现了错误,将来可能会改进

排版

  • 注意到通义模型可以较好的识别公式,个别细节可能需要微调

  • 我们也可以继续和模型交谈,让他输出源代码,或者排版,甚至给出改进建议,例如我要求输出公式源代码而非展示markdown渲染结果

开源模型

  • Pix2Text/README_cn.md at main · breezedeus/Pix2Text (github.com)
  • 当然还有其他的,一般能用在线免费的,就不需要本地部署了

相关文章:

图片公式识别@文档公式识别@表格识别@在线和离线OCR工具

文章目录 abstract普通文字识别本地软件识别公式扩展插件下载小结 在线识别网站/API👺Quicker整合(推荐)可视化编辑和识别公式其他多模态大模型识别图片中的公式排版 开源模型 abstract 本文介绍免费图片文本识别(OCR)工具,包括普通文字识别,公式识别,甚至是手写公…...

Java高阶私房菜:JVM分代收集算法介绍和各垃圾收集器原理分解

目录 什么是分代收集算法 GC的分类和专业术语 什么是垃圾收集器 垃圾收集器的分类及组合 ​编辑 应关注的核心指标 Serial和ParNew收集器原理 Serial收集器 ParNew收集器 Parallel和CMS收集器原理 Parallel 收集器 CMS收集器 新一代垃圾收集器G1和ZGC G1垃圾收集器…...

为什么IB损失要在100epochs后再用?

在给定的代码中,参数start_ib_epoch用于控制从第几轮开始使用IB(Instance-Balanced)损失函数进行训练。具体来说,如果start_ib_epoch的值大于等于100,那么在训练的前100轮中将使用普通的交叉熵损失函数(CE&…...

《Video Mamba Suite》论文笔记(4)Mamba在时空建模中的作用

原文翻译 4.4 Mamba for Spatial-Temporal Modeling Tasks and datasets.最后,我们评估了 Mamba 的时空建模能力。与之前的小节类似,我们在 Epic-Kitchens-100 数据集 [13] 上评估模型在zero-shot多实例检索中的性能。 Baseline and competitor.ViViT…...

【备战软考(嵌入式系统设计师)】10 - 软件工程基础

这一部分的内容是概念比较多,不要理解,去感受。 涉及的知识点是嵌入式系统开发和维护的部分,也就是和管理相关的,而不是具体如何进行嵌入式系统开发的细节。 系统开发生命周期 按照顺序有下面几个阶段,我们主要要记…...

随手笔记-GNN(朴素图神经网络)

自己看代码随手写的一点备忘录,自己看的,不喜勿喷 GNN (《------ 代码) 刚开始我还在怀疑为什么没有加weigth bias,已经为什么权重才两个,原来是对node_feats进行的network的传播,而且自己内部直接进行了。 下面是一…...

C 语言指针怎么理解?

在今天的学习中,我注意到有位学员似乎对 C 语言指针的理解有些困惑。为了帮助大家更好地理解,我来举个例子。 C 语言指针就好比 Windows 桌面上常见的快捷方式。快捷方式可以指向某个游戏,这就是普通指针;它也可以指向另一个快捷…...

HTTP协议:通信机制、特点及实践应用

目录 前言 1. 运行机制 2. 通信方式 3. 主要特点 4. 统一资源标识符(URL) 5. HTTP报文 6. HTTP请求 7. HTTP响应 8. 实体 9. 持续连接 结语 前言 HTTP(Hypertext Transfer Protocol)是互联网上应用最广泛的一种协议&a…...

Leetcode—289. 生命游戏【中等】

2024每日刷题&#xff08;126&#xff09; Leetcode—289. 生命游戏 算法思想 实现代码 class Solution { public:void gameOfLife(vector<vector<int>>& board) {int rows board.size();int cols board[0].size();int neighbors[3] {0, 1, -1};vector<…...

系统运维(虚拟化)

1.VLAN VLAN&#xff08;Virtual Local Area Network&#xff09;即虚拟局域网&#xff0c;是将一个物理的LAN在逻辑上划分成多个广播域的通信技术。 每个VLAN是一个广播域&#xff0c;VLAN内的主机间可以直接通信&#xff0c;而VLAN间则不能直接互通。这样&#xff0c;广播报…...

Linux域名解析

1.hosts:windows c盘下面 Linux: /etc/hosts 作用:实现名字解析&#xff0c;主要为本地主机名、集群节点提供快速解析。平面式结构&#xff0c;集中式数据库。 缺点:不便于查询更新 2.DNS:域名系统 作用:实现名字解析(分层性&#xff0c;层次性) FQDN:完全合格域名/全称域…...

树形结构和列表的区别

树形结构和列表在数据组织、表示方式以及应用场景等方面存在明显的区别。 首先&#xff0c;树形结构是一种非线性的数据结构&#xff0c;表现为层次的嵌套结构。每个节点可以有多个子节点&#xff0c;这些子节点又可以有自己的子节点&#xff0c;形成一个层次分明的结构。这种一…...

Go中json的解析和反解析

在解析过程中&#xff0c;反向解析不包含其中的部分参数也不会报错&#xff0c;这是需要注意的一点 31 func main() { // E: main redeclared in this block 32 type A…...

SpringBoot+vue实现退出功能

目录 1. 创建点击事件 2. 编写退出逻辑 在Spring Boot 和 Vue.js 应用中实现退出功能&#xff0c;通常涉及到前端的用户界面操作和注销逻辑。 以下是实现退出功能的步骤&#xff1a; 1. 创建点击事件 在header.vue中创建一个点击事件 <span style"text-decoratio…...

Linux操作系统中管理磁盘的另外一种操作方式。即LVM——逻辑卷管理操作

在Linux操作系统中管理磁盘的一种方法名称——LVM&#xff0c;这种管理磁盘的优势。 1.使用LVM去管理磁盘可以在不影响原来数据的前提下去扩容磁盘空间或者是缩减磁盘空间。 在LVM中除了上层逻辑券可以扩容&#xff0c;下层的券组也可以扩容。 2.使用LVM管理的磁盘支持快照功…...

Lua 零基础入门

Lua 1.Lua是什么&#xff1f; 1.1 Lua的历史 Lua是由Roberto Ierusalimschy、Luiz Henrique de Figueiredo和Waldemar Celes于1993年创建的&#xff0c;当时他们是巴西里约热内卢天主教大学计算机图形技术组&#xff08;Tecgraf&#xff09;的成员。在开发Lua之前&#xff0…...

记录DemoApplication.java不变蓝问题

问题 解决方案 一、点击右下角加载 二、右键项目 勾选maven...

22_Scala集合Seq

文章目录 Seq序列1.构建集合2.List集合元素拼接&&集合拼接3.可变Seq&&List3.1 ListBuffer创建3.2 增删改查3.3 相互转化 Appendix1.Scala起别名2.Seq底层3.关于运算符操作: :4.空集合的表示 Seq序列 –Seq表示有序&#xff0c;数据可重复的集合 1.构建集合 …...

机器学习初学者 6 个核心算法!建议收藏,反复观看!

今天再来介绍机器学习算法的基本概念和适用场景&#xff01; 首先&#xff0c;引用一句英国统计学家George E. P. Box的名言&#xff1a;All models are wrong, but some are useful. 没有哪一种算法能够适用所有情况&#xff0c;只有针对某一种问题更有用的算法。 也就是说&…...

SpringBoot 打包所有依赖

SpringBoot 项目打包的时候可以通过插件 spring-boot-maven-plugin 来 repackage 项目&#xff0c;使得打的包中包含所有依赖&#xff0c;可以直接运行。例如&#xff1a; <plugins><plugin><groupId>org.springframework.boot</groupId><artifact…...

CTF show Web 红包题第六弹

提示 1.不是SQL注入 2.需要找关键源码 思路 进入页面发现是一个登录框&#xff0c;很难让人不联想到SQL注入&#xff0c;但提示都说了不是SQL注入&#xff0c;所以就不往这方面想了 ​ 先查看一下网页源码&#xff0c;发现一段JavaScript代码&#xff0c;有一个关键类ctfs…...

在HarmonyOS ArkTS ArkUI-X 5.0及以上版本中,手势开发全攻略:

在 HarmonyOS 应用开发中&#xff0c;手势交互是连接用户与设备的核心纽带。ArkTS 框架提供了丰富的手势处理能力&#xff0c;既支持点击、长按、拖拽等基础单一手势的精细控制&#xff0c;也能通过多种绑定策略解决父子组件的手势竞争问题。本文将结合官方开发文档&#xff0c…...

1688商品列表API与其他数据源的对接思路

将1688商品列表API与其他数据源对接时&#xff0c;需结合业务场景设计数据流转链路&#xff0c;重点关注数据格式兼容性、接口调用频率控制及数据一致性维护。以下是具体对接思路及关键技术点&#xff1a; 一、核心对接场景与目标 商品数据同步 场景&#xff1a;将1688商品信息…...

IoT/HCIP实验-3/LiteOS操作系统内核实验(任务、内存、信号量、CMSIS..)

文章目录 概述HelloWorld 工程C/C配置编译器主配置Makefile脚本烧录器主配置运行结果程序调用栈 任务管理实验实验结果osal 系统适配层osal_task_create 其他实验实验源码内存管理实验互斥锁实验信号量实验 CMISIS接口实验还是得JlINKCMSIS 简介LiteOS->CMSIS任务间消息交互…...

实现弹窗随键盘上移居中

实现弹窗随键盘上移的核心思路 在Android中&#xff0c;可以通过监听键盘的显示和隐藏事件&#xff0c;动态调整弹窗的位置。关键点在于获取键盘高度&#xff0c;并计算剩余屏幕空间以重新定位弹窗。 // 在Activity或Fragment中设置键盘监听 val rootView findViewById<V…...

HDFS分布式存储 zookeeper

hadoop介绍 狭义上hadoop是指apache的一款开源软件 用java语言实现开源框架&#xff0c;允许使用简单的变成模型跨计算机对大型集群进行分布式处理&#xff08;1.海量的数据存储 2.海量数据的计算&#xff09;Hadoop核心组件 hdfs&#xff08;分布式文件存储系统&#xff09;&a…...

通过MicroSip配置自己的freeswitch服务器进行调试记录

之前用docker安装的freeswitch的&#xff0c;启动是正常的&#xff0c; 但用下面的Microsip连接不上 主要原因有可能一下几个 1、通过下面命令可以看 [rootlocalhost default]# docker exec -it freeswitch fs_cli -x "sofia status profile internal"Name …...

命令行关闭Windows防火墙

命令行关闭Windows防火墙 引言一、防火墙:被低估的"智能安检员"二、优先尝试!90%问题无需关闭防火墙方案1:程序白名单(解决软件误拦截)方案2:开放特定端口(解决网游/开发端口不通)三、命令行极速关闭方案方法一:PowerShell(推荐Win10/11)​方法二:CMD命令…...

GraphRAG优化新思路-开源的ROGRAG框架

目前的如微软开源的GraphRAG的工作流程都较为复杂&#xff0c;难以孤立地评估各个组件的贡献&#xff0c;传统的检索方法在处理复杂推理任务时可能不够有效&#xff0c;特别是在需要理解实体间关系或多跳知识的情况下。先说结论&#xff0c;看完后感觉这个框架性能上不会比Grap…...

起重机起升机构的安全装置有哪些?

起重机起升机构的安全装置是保障吊装作业安全的关键部件&#xff0c;主要用于防止超载、失控、断绳等危险情况。以下是常见的安全装置及其功能和原理&#xff1a; 一、超载保护装置&#xff08;核心安全装置&#xff09; 1. 起重量限制器 功能&#xff1a;实时监测起升载荷&a…...