开源OCR模型对比

devtools/2024/10/22 14:39:23/

引言

目前,开源的项目中有很多 OCR 模型,但是没有一个统一的基准来衡量哪个是更好一些的。
面对这么多的模型,让我们有些不知所措。为此,最近一段时间以来,我一直想要构建这样一个基准,现在来看,已经初步具有雏形。

为了能更好地评测各个模型效果,收集标注了两个开源评测集:

  • text_det_test_dataset
  • text_rec_test_dataset

为了能够方便计算各个模型指标,整理开源了两个计算常用指标的库:

  • TextDetMetric
  • TextRecMetric

以下结果均是基于以上 4 个库来的,其指标结果仅仅代表在指定评测集上效果,不代表在其他测试集上结果也是如此,仅供参考。

以下表格中推理时间是基于 MacBook Pro M2 运行所得,不同机器会有差别,请侧重查看彼此之间的比较。

指标计算都是在相同参数下计算得来,差别仅在于模型文件不同。

对应模型下载地址,参见:link。

文本检测模型

评测依赖仓库:

  • rapidocr_onnxruntime==1.3.16: link
  • 计算指标库 TextDetMetric: link
  • 测试集 text_det_test_dataset: link

详情可以移步AI Studio运行查看。

模型模型大小PrecisionRecallH-meanSpeed(s/img)
ch_PP-OCRv4_det_infer.onnx4.5M0.83010.86590.84760.2256
ch_PP-OCRv3_det_infer.onnx2.3M0.80210.84570.82340.1660
ch_PP-OCRv2_det_infer.onnx2.2M0.75790.80100.77880.1570
ch_PP-OCRv4_det_server_infer.onnx108M0.79220.85330.82163.9093
ch_ppocr_server_v2.0_det_infer.onnx47M0.72980.81280.76910.7419
读光-文字检测-轻量化端侧 DBNet 行检测模型-中英-通用领域5.8M0.76660.81280.78900.6636
读光-文字检测-DBNet 行检测模型-中英-通用领域47.2M0.77490.81670.79520.4121
读光-文字检测-行检测模型-中英-通用领域 未跑通312M----

不同推理引擎下,效果比较:

推理引擎模型模型大小PrecisionRecallH-meanSpeed(s/img)
rapidocr_onnxruntime==1.3.16ch_PP-OCRv4_det_infer.onnx4.5M0.83010.86590.84760.2256
rapidocr_openvino==1.3.16ch_PP-OCRv4_det_infer.onnx4.5M0.83390.86290.84810.6447
rapidocr_paddle==1.3.18ch_PP-OCRv4_det_infer.onnx4.5M0.83010.86590.84760.9924
文本识别模型

评测依赖仓库:

  • rapidocr_onnxruntime==1.3.16: link
  • 计算指标库 TextRecMetric: link
  • 测试集 text_rec_test_dataset: link
模型对应 PaddleOCR 分支模型大小Exact MatchChar MatchSpeed(s/img)
ch_PP-OCRv4_rec_infer.onnxrelease/v2.710M0.83230.93550.6836
ch_PP-OCRv3_rec_infer.onnxrelease/v2.611M0.70970.89190.6362
ch_PP-OCRv4_rec_server_infer.onnxrelease/v2.786M0.79680.93810.6967
ch_PP-OCRv2_rec_infer.onnxrelease/v2.38.0M0.63870.83980.6138
ch_ppocr_mobile_v2.0_rec_infer.onnxrelease/v2.04.3M0.53230.78230.5575
读光-文字识别-行识别模型-中英-文档印刷体文本领域-73M0.59680.7705-
读光-文字识别-行识别模型-中英-通用领域-73M0.58390.7615-
读光-文字识别-行识别模型-中英-自然场景文本领域-73M0.59030.7779-
读光-文字识别-轻量化端侧识别模型-中英-通用领域-7.4M0.54840.7515-
读光-文字识别-CRNN 模型-中英-通用领域-46M0.59350.7671-
OFA 文字识别-中文-通用场景-base 未跑通-----

不同推理引擎下,效果比较:

推理引擎模型模型大小Exact MatchChar MatchSpeed(s/img)
rapidocr_onnxruntime==1.3.16ch_PP-OCRv4_rec_infer.onnx10M0.83230.93550.6836
rapidocr_openvino==1.3.16ch_PP-OCRv4_rec_infer.onnx10M0.83230.93550.6836
rapidocr_paddle==1.3.18ch_PP-OCRv4_rec_infer.onnx10M0.83230.93550.6836
  • 输入 Shape:

    • v2: [3, 32, 320]
    • v3~v4: [3, 48, 320]
  • 不同模型,实例化示例如下:

    from rapidocr_onnxruntime import RapidOCR# v3 or v4
    engine = RapidOCR(rec_model_path="models/ch_PP-OCRv3_rec_infer.onnx",
    )# v2
    engine = RapidOCR(rec_model_path="models/ch_ppocr_mobile_v2.0_rec_infer.onnx",rec_img_shape=[3, 32, 320],
    )
    

后续更新,请移步:link


http://www.ppmy.cn/devtools/6242.html

相关文章

【行为型模式】观察者模式

一、观察者模式概述​ 软件系统其实有点类似观察者模式,目的:一个对象的状态或行为的变化将导致其他对象的状态或行为也发生改变,他们之间将产生联动。 观察者模式属于对象行为型: 1.定义了对象之间一种一对多的依赖关系&#xff…

aws云靶场和一些杂记

aws靶场 在AWS靶场中,存在三个安全问题:1) 一个S3存储桶政策配置错误,允许公共访问,通过访问特定域名可获取flag。2) SQS消息队列的政策没有限制角色,允许发送和接收消息,通过aws sqs命令行工具的receive-…

机器学习周报第35周SE-LSTM

文章目录 week35 SE-LSTM摘要Abstract一、文献阅读1. 题目2. abstract3. 网络架构3.1 Savitsky-Golay 滤波器3.2 模型结构——SE-LSTM 4. 文献解读4.1 Introduction4.2 创新点4.3 实验过程4.3.1 训练参数4.3.2 数据集4.3.3 实验设置4.3.4 实验结果 5. python环境下基于scipy实现…

李沐47_转置卷积

转置卷积 1.卷积不会增大输入的高宽,要么不变,要么减半 2.转置卷积可以用来增大输入高宽 3.用id卷积卷,增大卷积核的数量可以达到增大特征图的目的 import torch from torch import nn from d2l import torch as d2l输入矩阵X和卷积核矩阵…

利用 Python 开发手机 App 实战

Python语言虽然很万能,但用它来开发app还是显得有点不对路,因此用Python开发的app应当是作为编码练习、或者自娱自乐所用,加上目前这方面的模块还不是特别成熟,bug比较多,总而言之,劝君莫轻入。 准备工作 …

kafka实验部署

一、前期准备 二、kafka实验 在zookeeper后继续进行操作 2.1 为ndoe1、node2、node3作出部署 2.1.1 解压kafka压缩包(node1举例) 2.1.2 操作 将解压后的kafka移动到kafka,进入到kafka下的config中,复制文件 2.1.2.1 编辑server.pr…

【Qt】探索Qt框架:跨平台GUI开发的利器

文章目录 1. Qt框架概述1.1. Qt框架的优点1.2. Qt框架支持的系统1.3. Qt开发环境 2. 搭建 Qt 开发环境2.1. Qt SDK 的下载和安装2.2. 新建项目: 3. Qt 框架内容简介总结 在当今软件开发领域,跨平台性和用户界面的友好性是至关重要的。而Qt框架作为一款跨平台的C图形…

代码随想录算法训练营第四十八天|leetcode72、583题

一、leetcode第583题 本题要求删除两个单词中的字母使得剩余字母均相同,因此设置dp数组,dp[i][j]的含义是0-(i-1)个字母和0-(j-1)个字母相同时需要删除的最少次数。递推公式在word1[i-1]word2[j-1]时&…