提速15%,PaddleOCRSharp新版v4.3发布

paddleocrsharp,v4 · 浏览次数 : 0

小编点评

## PaddleOCRSharp v4.3版本简介 **主要更新内容:** 1. **性能提升 10-15%:**优化提速技术,降低包大小,优化内存使用,修复 Pascal 语句调用出现的问题。 2. **模型压缩:**重新编译 OpenCV 库,裁剪不必要的功能,将 OpenCV 库从 62M 减少到 10M,满足项目实际使用中可以随意改变参数的需求。 3. **参数优化:**增加两个属性字段 `m_rec` 和 `m_m_max_side_len`,方便开发者根据需要进行模型调整。 4. **修复问题:**修复 Pascal 语句调用出现的一个浮点运算问题。 **其他改进:** * 改进 API 接口和文档说明,提升使用体验。 * 支持多种开发语言的直接 API 调用。

正文

PaddleOCRSharp v4.3版本,已经于5月23日发布。该版本的发布,在不影响识别精度的同时,带来了10%~15%速度的提升。

项目地址:https://gitee.com/raoyutian/PaddleOCRSharp

项目简介

PaddleOCRSharp 作者是广州英田信息科技有限公司的创始人明月心 (raoyutian) ,是一个基于百度飞桨PaddleOCR的开源代码编写的.NET版本OCR工具类库。项目核心组件PaddleOCR.dll,由C++编写,根据百度飞桨PaddleOCR的C++代码修改并优化而成。目前已经支持C++、.NET、Python、Golang、Rust等开发语言的直接API接口调用。项目包含文本识别、文本检测、表格识别功能。本项目针对小图识别不准的情况下做了优化,比飞桨原代码识别准确率有所提高。包含总模型仅8.6M的超轻量级中文OCR,单模型支持中英文数字组合识别、竖排文本识别、长文本识别。同时支持中英文、纯英文以及多种语言文本检测识别。

PaddleOCRSharp封装极其简化,实际调用仅几行代码,极大地方便了中下游开发者的使用和降低了PaddleOCR的使用入门级别,同时提供不同的.NET框架使用,方便各个行业应用开发与部署。Nuget包即装即用,可以离线部署,不需要网络就可以识别的高精度中英文OCR。

PaddleOCRSharp支持官方所有公开的通用OCR模型,PPOCRV2、PPOCRV3、PPOCRV4。

本项目目前支持以下.NET框架:

net35;net40;net45;net451;net452;net46;net461;net462;net47;net471;net472;net48;net481;
netstandard2.0;netcoreapp3.1;
net5.0;net6.0;net7.0;net8.0

  

特点

★ 高度集成:PaddleOCRSharp将百度飞桨PaddleOCR的核心功能完美集成到.NET平台,让开发者无需关心底层实现,只需调用相应接口即可实现OCR功能。

★ 性能卓越:得益于百度飞桨PaddleOCR的高效算法和C++代码的优化,PaddleOCRSharp在保持高度集成的同时,也保证了卓越的性能表现。

★ 易于使用:PaddleOCRSharp提供了丰富的API接口和详细的文档说明,让开发者能够轻松上手,快速实现OCR功能。

★ 扩展性强:PaddleOCRSharp支持自定义模型加载和训练,开发者可以根据自己的需求进行模型扩展和优化。

★ 离线免费:PaddleOCRSharp支持离线绿色部署,无其他依赖需要安装。

应用场景

PaddleOCRSharp适用于各种需要OCR技术的.NET开发场景,如文档数字化处理、自动识别表单数据、车牌识别等。无论是企业级应用还是个人开发者,PaddleOCRSharp都能提供强大的OCR支持。

最后看下本次主要更新的内容:

1.优化提速10~15%。

2.降低包大小。

3.优化内存使用。

4.修复Pascal语言调用出现的一个浮点运算问题

5.ModifyParameter参数增加两个属性字段:m_rec,m_m_max_side_len

作者明月心 (raoyutian)通过重新编译底层飞桨paddle_inference推理库,优化代码,才有15%的速度提升。重新编译opencv库,裁剪不必要的功能,使得opencv库从62M减少到10M,为了满足在项目实际使用过程中可以随便改变参数,比如,有时不需要识别,有时候不需要检测,通过动态调整参数ModifyParameter均可实现。图片

PaddleOCRSharp使用示例:

首先安装PaddleOCRSharp库,在nuget包管理器中搜索PaddleOCRSharp安装最新版即可。

//极致精简一行代码实现OCR文字识别
var text = new PaddleOCRSharp.PaddleOCREngine().DetectText("图片文件").Text;

 

更多信息关注微信公众号或者加入QQ群交流

 

 

与提速15%,PaddleOCRSharp新版v4.3发布相似的内容:

提速15%,PaddleOCRSharp新版v4.3发布

PaddleOCRSharp v4.3版本,已经于5月23日发布。该版本的发布,在不影响识别精度的同时,带来了10%~15%速度的提升。 项目地址:https://gitee.com/raoyutian/PaddleOCRSharp 项目简介 PaddleOCRSharp 作者是广州英田信息科技有限

【转帖】让互联网更快:新一代QUIC协议在腾讯的技术实践分享

https://www.cnblogs.com/jb2011/p/8458549.html 本文来自腾讯资深研发工程师罗成在InfoQ的技术分享。 1、前言 如果:你的 App,在不需要任何修改的情况下就能提升 15% 以上的访问速度,特别是弱网络的时候能够提升 20% 以上的访问速度。 如果:你的

微信小程序生态15- 批量提交微信小程序审核的一种方式

大家好!我是sum墨,一个一线的底层码农,平时喜欢研究和思考一些技术相关的问题并整理成文,限于本人水平,如果文章和代码有表述不当之处,还请不吝赐教。 以下是『微信小程序生态系列文章』正文! # 需求背景 我们是一个提供SaaS服务的小程序服务商,会给每一个客户申请一个专属的小程序,到目前为止已经差不

质效提升 | 聊聊QA与业务测试

上面一篇文章《质效提升 | QA不做业务需求测试,你怎么看》主要讨论的是QA 和业务需求测试相关的问题,文章发出后收到了很多小伙伴的反馈,这里把很多有意义的反馈放在下面,希望对你有用。 约翰同学:QA 和测试的职能不同吧。很多时候混淆了?scmroad:是的,对于国外来说QA 和 Tester,区别

DeepViT:字节提出深层ViT的训练策略 | 2021 arxiv

作者发现深层ViT出现的注意力崩溃问题,提出了新颖的Re-attention机制来解决,计算量和内存开销都很少,在增加ViT深度时能够保持性能不断提高 来源:晓飞的算法工程笔记 公众号 论文: DeepViT: Towards Deeper Vision Transformer 论文地址:https

4.6 C++ Boost 函数绑定回调库

Boost库中提供了函数对象库,可以轻松地把函数的参数和返回值进行绑定,并用于回调函数。这个库的核心就是bind函数和function类。bind函数可以将一个函数或函数对象和其参数进行绑定,返回一个新的函数对象。通过这个新的函数对象,我们就可以将原有的函数或函数对象当做参数传来传去,并可以传递附加的参数,方便实现参数绑定和回调函数。function类用于表示一种特定的函数签名,可以在不知道具体函

阅读翻译Prompting Engineering Guides之Introduction(提示工程简介)

阅读翻译Prompting Engineering Guides之Introduction(提示工程简介) 关于 首次发表日期:2024-07-19 Prompting Engineering Guides官网: https://www.promptingguide.ai/zh 使用ChatGPT和

我从 Python 潮流周刊提取了 800 个链接,精选文章、开源项目、播客视频集锦

你好,我是豌豆花下猫。前几天,我重新整理了 Python 潮流周刊的往期分享,推出了第 1 季的图文版电子书,受到了很多读者的一致好评。 但是,合集和电子书的篇幅很长,阅读起来要花不少时间。所以,为了方便大家阅读,我打算将合集进一步整理,分门别类将原始内容的标题罗列出来。 本文总计约 800 个链接

FreeSWITCH添加h264编码及pcap视频提取

操作系统 :CentOS 7.6_x64、Windows 10_x64 FreeSWITCH版本 :1.10.9 Python版本:3.9.2 一、启用h264相关模块 这里以 mod_openh264 为例进行演示。 1、安装open_h264库 获取 open_h264 源码: git clon

滴滴面试:谈谈你对Netty线程模型的理解?

Netty 线程模型是指 Netty 框架为了提供高性能、高并发的网络通信,而设计的管理和利用线程的策略和机制。 Netty 线程模型被称为 Reactor(响应式)模型/模式,它是基于 NIO 多路复用模型的一种升级,它的核心思想是将 IO 事件和业务处理进行分离,使用一个或多个线程来执行任务的一