从零开始使用Surya-OCR最新版本0.6.1——最强文本检测模型:新添表单表格检测识别

目录

一、更新概述

二、环境安装

1.基础环境配置

2.模型参数下载

3.参数地址配置------settings.py

三、指令使用

1.命令指令运行


一、更新概述

surya项目Github地址:https://github.com/VikParuchuri/surya

号称今年最强OCR的surya近期迎来新的更新,Vik大佬更新了表格检测的模型。

最新surya------0.6.1版本的识别效果如下。现在还可以识别文章阅读的行文顺序,对表格内的数字信息也可以很好的提取。

二、环境安装

1.基础环境配置

在之前使用surya的0.3.0 版本中使用的是torch1.12.1 ,更新后的surya的0.6.0 版本需要更高的torch环境,因此需要重新创建虚拟环境,并安装高于2.3.0的Pytorch。

此处python版本虽然官方文档说和0.3.0版本一样3.9+ 即可,但使用3.9会红字报错,因为一些代码使用和书写规范在3.9后发生改变,最好使用版本在**3.10+**以上,如果坚持使用3.9,按下面使用部分报错修改处,处理源码。

python 复制代码
# 创建虚拟conda环境
conda create -n surya0.6 python=3.10
# 激活环境
conda activate surya0.6

# 安装更高版本pytorch
pip install torch==2.4.0 torchvision==0.19.0 torchaudio==2.4.0 --index-url https://download.pytorch.org/whl/cu118

# 或者官网稳定版2.4.1
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118


## cpu版本
pip install torch==2.4.0 torchvision==0.19.0 torchaudio==2.4.0 --index-url https://download.pytorch.org/whl/cpu

pytorch安装好了以后直接pip安装最新版surya即可。在编写此文时最新版的为0.6.1版本。

python 复制代码
# 安装最新版本surya
pip install --upgrade surya-ocr

最好将其最新的源码也下载下来,方便后续项目的查看和调试。

Github地址Surya:https://github.com/VikParuchuri/surya

2.模型参数下载

和之前一样如果想直接使用surya需要有良好的"科学上网"配置,因为源码或安装库里面都不直接下载好的了模型参数,第一次使用会到huggingface下载对应模型参数。

因此有两种解决办法,一是使用huggingface的国内镜像网站hf-mirror;或者提前下载好模型参数到项目目录,在设置中修改模型地址。本文选择后者。

huggingface作者surya模型参数保存地址:https://huggingface.co/vikp

(推荐) 国内hugging-mirror镜像地址:https://hf-mirror.com/models?search=vikp

下载好的模型参数可以在surya源码下载处新建一个huggingmodel子文件夹,下存放各种模型参数。

3.参数地址配置------settings.py

推荐将模型下载到本地后,再在surya项目环境安装包源码处修改全局参数中关于模型加载地址部分,这样更不容易报错。

首先打开在conda中安装的虚拟环境文件夹地址,在以下文件路径中。所有安装在虚拟环境中的库都在此路径下。

python 复制代码
miniconda\envs\surya0.6\Lib\site-packages

在所有安装库中找到surya名称的文件,再打开就可以看到settings.py文件了。

根据之前源码拆解博文修改其中的模型配置参数。

博文快速链接:https://blog.csdn.net/qq_58718853/article/details/137815688

三、指令使用

1.命令指令运行

有了上述环境准备后,可以直接使用指令快速使用。只需将实际本地图片地址替换下方Data_Path即可。

python 复制代码
# ocr文本检测识别
surya_ocr Data_Path

# detect文本行检测
surya_detect Data_Path

# layout板式分析
surya_layout Data_PATH

# table表格检测
surya_table Data_PATH

# order文本阅读顺序
surya_order Data_PATH

首先实验一下检测模型(只需要surya_det3)是否可以使用。结果会在项目项新建一个results文件夹。

再来测试一下ocr模型。(需要surya_det3和surya_rec2模型)

还有表格模型。(需要surya_rec2和surya_layout3和surya_tablerec模型)

2.可视化结果

只需在上述命令行指令后面加上"--images"即可完成可视化保存。

python 复制代码
# 可视化保存
surya_detect DataPath --images

本文随意截取了两张csdn界面的图像,使用surya进行识别检测测试。

文本行检测模型可视化结果如下。其检测框似乎还不错,至少有95%以上的正确框。

板式分析layout模型检测效果如下。

表格检测模型效果如下。

相关推荐
前端摸鱼匠18 小时前
YOLOv11 在零售领域实战:利用公开的商品检测数据集 (如 SKU110K 的子集),训练一个 YOLOv11 模型,用于识别货架上的各种商品
人工智能·yolo·目标检测·ai·目标跟踪·视觉检测·零售
深度学习lover19 小时前
<数据集>yolo微藻识别<目标检测>
人工智能·python·yolo·目标检测·计算机视觉·微藻识别
动物园猫21 小时前
电缆损坏目标检测数据集分享(YOLO系列)| 电缆断裂 雷击损伤 断股 烧蚀痕迹 输电线路巡检 目标检测标注
人工智能·yolo·目标检测
动物园猫21 小时前
道路表面缺陷数据集分享(YOLO系列分类检测)| 路面病害 目标检测 坑洼裂缝 训练集
yolo·目标检测·分类
gorgeous(๑>؂<๑)21 小时前
【CVPR26-韩国高丽大学】基于能量分离的开放世界目标检测未知目标方法
人工智能·目标检测·机器学习·计算机视觉·目标跟踪
云程笔记1 天前
002.计算机视觉与目标检测发展简史:从传统方法到深度学习
深度学习·yolo·目标检测·计算机视觉
weixin_408099672 天前
OCR 识别率提升实战:模糊 / 倾斜 / 反光图片全套优化方案(附 Python / Java / PHP 代码)
图像处理·人工智能·后端·python·ocr·api·抠图
weixin_408099672 天前
【实战教程】懒人精灵如何实现 OCR 文字识别?接口调用完整指南(附可运行示例)
java·前端·人工智能·后端·ocr·api·懒人精灵
蓦然乍醒2 天前
零成本实现文档智能:本地化 OCR 提取与 AI 处理全流程实战
人工智能·ocr
P-surp2 天前
tesseract ocr 文字识别
ocr