商业级免费OCR利器!Surya OCR:支持90+种语言识别,复杂布局识别,表格解析全覆盖!

❤️ 如果你也关注大模型与 AI 的发展现状,且对大模型应用开发非常感兴趣,我会快速跟你分享最新的感兴趣的 AI 应用和热点信息,也会不定期分享自己的想法和开源实例,欢迎关注我哦!

微信订阅号|搜一搜:蚝油菜花

在这里插入图片描述

🚀 快速阅读

  1. Surya 是一款功能强大的开源 OCR 工具包,支持超过 90 种语言的识别。
  2. Surya 能准确识别出文档中的文本,分析文本的阅读顺序,检测文档中的布局元素,如表格、图片和标题,及识别和解析表格内容。
  3. Surya 完全免费且用于商业用途,支持跨平台运行,包括 Windows、Mac 和 Linux 系统,适合处理敏感信息的离线环境。

正文(附运行示例)

Surya 是什么

Surya 是一款功能强大的开源 OCR(光学字符识别)工具包,专门用于文档识别,支持超过 90 种语言的识别。它能准确识别文档中的文本,分析文本的阅读顺序,检测文档中的布局元素(如表格、图片和标题),并识别和解析表格内容。Surya 以其高效的表格识别能力而闻名,性能优于许多现有的开源模型,如 Table Transformer。Surya 完全免费,可用于商业用途,支持在 Windows、Mac 和 Linux 系统上运行,非常适合处理敏感信息的离线环境。

Surya 的主要功能

  • 多语言 OCR 识别:Surya 支持超过 90 种语言的光学字符识别,能够处理包括中文、日文、韩文、阿拉伯文等多种语言的文档。
  • 表格识别:Surya 强化了表格识别功能,能够识别文档中的行、列和单元格,甚至包括旋转和复杂布局的表格。
  • 复杂布局识别:Surya 能够识别文档中的复杂布局,例如标题、图片等,处理文档中的各种元素。
  • 文本检测与阅读顺序:Surya 能够进行文本的行级检测,确定文本的阅读顺序,确保输出的文本内容顺序正确。

如何运行 Surya

Surya 的安装和使用都非常简单。首先,你需要安装 Python 3.10+和 PyTorch。然后,你可以使用 pip 安装 Surya:

pip install surya-ocr

模型权重将首次运行 Surya 时自动下载。

OCR(文本识别)

此命令将写入一个包含检测到的文本和边界框的 json 文件:

surya_ocr DATA_PATH
  • DATA_PATH可以是图像、PDF 或图像/PDF 文件夹
  • --langs是一个可选的(但建议)参数,用于指定 OCR 的语言。你可以用逗号分隔多种语言。使用语言名称或来自此处的双字母 ISO 代码。Surya 支持languages.py中的 90 多种语言。

文本行检测

此命令将写入一个包含检测到的边界框的 json 文件。

surya_detect DATA_PATH

布局分析

此命令将写入一个包含检测到的布局的 json 文件。

surya_layout DATA_PATH

阅读顺序

此命令将写入一个包含检测到的阅读顺序和布局的 json 文件。

surya_order DATA_PATH

表格识别

此命令将写入一个包含检测到的表格单元格和行/列 ID 的 json 文件,以及行/列边界框。

surya_table DATA_PATH

资源

  • Surya 的 GitHub 仓库:https://github.com/VikParuchuri/surya

❤️ 如果你也关注大模型与 AI 的发展现状,且对大模型应用开发非常感兴趣,我会快速跟你分享最新的感兴趣的 AI 应用和热点信息,也会不定期分享自己的想法和开源实例,欢迎关注我哦!

微信订阅号|搜一搜:蚝油菜花

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/891559.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

机器学习实战27-基于双向长短期记忆网络 BiLSTM 的黄金价格模型研究

大家好,我是微学AI,今天给大家介绍一下机器学习实战27-基于双向长短期记忆网络 BiLSTM 的黄金价格模型研究。本文针对黄金价格预测问题,展开基于改造后的长短期记忆网络BiLSTM的黄金价格模型研究。文章首先介绍了项目背景,随后详细…

青少年编程能力等级测评CPA C++(二级)试卷(1)

青少年编程能力等级测评CPA C(二级)试卷(1) 一、单项选择题(共20题,每题3.5分,共70分) CP2_1_1.下列C程序段中,对二维数组arr的正确定义是( &am…

PCL滤波器之面试总结

体素滤波器:降采样,减小体量。 处理前 处理后 直通滤波器:获得想要的区域。 接着上一步继续处理 索引滤波(ExtractIndices滤波器): 接上图:反选效果,实际上删除的是这几个点,上图…

Qml-Item的函数使用

Qml-Item的函数使用 Item的提供了一些函数用于处理item之间父子关系,焦点链,以及item之间的坐标转换,本文重点示范item之间的坐标转换 Item的函数 函数childAt(real x,real y) :在item所在坐标系中,返回点point(x,y…

python pip安装requirements.txt依赖与国内镜像

python pip安装requirements.txt依赖与国内镜像 如果网络通畅,直接pip安装依赖: pip install -r requirements.txt 如果需要国内的镜像,可以考虑使用阿里的,在后面加上: -i http://mirrors.aliyun.com/pypi/simple --…

(四)Python标识符与保留字

一、标识符规则 标识符用来识别变量、函数、类、模块以及对象的名称。 Python标识符可包括英文字母、数字以及下划线。 限制如下: 1、标识符第一个字符必须是字母表中字母或者下划线,变量名称间不得有空格; 2、Python标识符有大小写之分…

【SRE系列--DNS跨域转发】

1.DNS原理 1.1 简介 DNS(Domain Name Service的缩写)的作用就是根据域名查出IP地址。IP地址是由32位二进制数字组成,人们很难记住这些IP,相反,大家愿意使用比较容易记忆的主机名字。而电脑在处理IP数据报文时,是使用IP地址的&am…

高阶数据结构与算法——红黑树の奥秘

1.认识红黑树 1.1红黑树的概念 红⿊树是⼀棵⼆叉搜索树,他的每个结点增加⼀个存储位来表⽰结点的颜⾊,可以是红⾊或者⿊⾊。通过对任何⼀条从根到叶⼦的路径上各个结点的颜⾊进⾏约束,红⿊树确保没有⼀条路径会⽐其他路径⻓出2倍&#xff0c…

JDK安装环境配置保姆间教程

文章介绍了Java编程语言的基本知识,包括其创始人和发布年份,然后详细阐述了如何下载和安装JDK,以及如何配置JAVA_HOME和Path环境变量,以确保Java开发环境的正确设置。最后,作者提到在JDK1.5以后的版本中,无…

Python基础语法条件

注释 注释的作用 通过用自己熟悉的语言,在程序中对某些代码进行标注说明,这就是注释的作用,能够大大增强程序的可读性。 注释的分类及语法 注释分为两类:单行注释 和 多行注释。 单行注释 只能注释一行内容,语法如下…

离宝安羊台山登山口最近的停车场探寻

石岩龙眼山矿泉水厂有停车场,这个是距离宝安羊台山登山口最新的停车场了,但是停车位数量没有附近的大眼山停车场多。 石岩龙眼山矿泉水厂停车场的收费标准如下: 序号 收费项目 收费标准 1 小车临时停放 首小时10元 每增加1小时加收3元 3…

如何有效进行主机加固?深信达MCK提供答案

在数字化时代,企业面临的网络安全威胁日益严峻,尤其是勒索病毒等恶意软件的攻击,给企业带来了巨大的挑战。为了有效应对这些威胁,企业需要采取全面的网络安全防护措施,其中主机加固成为了关键的一环。深信达的MCK主机加…

dvwa:文件包含、文件上传

文件包含 本地文件包含(敏感信息泄露)和远程文件包含(命令执行) 本地文件包含一般包含一些本地的敏感文件,如:/etc/passwd或/etc/shadow等 远程文件包含能使得服务器代码执行,如包含黑客vps的…

uniapp引入ThorUI的方法

1、下载文件 2、复制相应的文件除了pages 3、往项目中复制即可 4、引入即可实现 5、添加easycome自动引入

交易所开发:构建安全、高效、可靠的数字资产交易平台

数字资产交易平台是加密市场中连接用户与数字货币的重要枢纽。开发一个安全、高效、可靠的交易所,不仅需要综合考虑技术架构、安全策略、用户体验等方面,还需严格遵循法规要求以确保合规性。本文总结了交易所开发的关键要素,包括其类型、核心…

16年408计算机网络

第一题: 解析: 首先我们要清楚R1,R2,R3是路由器(网络层),Switch是以太网交换机(数据链路层),Hub是集线器(物理层)。 由此可见路由器实现的最高功能层是3层&am…

【兼容多端】UNIAPP popper气泡弹层vue3+typescript unibest

最近要实习一个泡泡弹层。看了下市场的代码,要么写的不怎么好,要么过于复杂。于是拿个轮子自己加工。200行代码撸了个弹出层组件。兼容H5和APP和小程序。 功能: 1)只支持上下左右4个方向的弹层不支持侧边靠齐 2)不对屏幕边界适配 3)支持弹层…

【C语言】你不知道的知识小盲区——柔性数组

文章目录 一、什么是柔性数组二、柔性数组的特点三、柔性数组的使用四、柔性数组的优势 一、什么是柔性数组 也许你从来没有听说过柔性数组(flexible array)这个概念,但是它确实是存在的。在C99标准中,如果结构体的最后一个成员是…

【jQuery】 jQuery基础及选择器介绍(基本选择器 层次选择器 属性选择器 过滤选择器)

文章目录 jQuery基础1. 优势2. 版本3. 基本语法4. 选择器基本选择器层次选择器属性选择器过滤选择器基本过滤选择器可见性过滤选择器 注意事项 jQuery基础 jQuery 是一个功能强大且易于使用的 JavaScript 库,它极大地简化了前端开发的工作。无论是 DOM 操作、事件处…

健康推荐系统:SpringBoot技术实现

3系统分析 3.1可行性分析 通过对本基于智能推荐的卫生健康系统实行的目的初步调查和分析,提出可行性方案并对其一一进行论证。我们在这里主要从技术可行性、经济可行性、操作可行性等方面进行分析。 3.1.1技术可行性 本基于智能推荐的卫生健康系统采用SSM框架&#…