分享

【强烈推荐】.NET开源的OCR文字识别工具

 Csharp小记 2023-10-29 发布于江苏

前言

现如今,大家对OCR的需求与日俱增,但是对我们.NET开发人员来说,却基本并没有什么趁手的工具,大部分都是基于Python去调用的,习惯了.NET优秀的语法,如果不是必要,其实是很不想去适应其他语言的。

这套源码我是从去年开始接触的,不过到最后因为没有实际应用,所以最近没有太多的关注,但是作者还是在不停的更新中,交流群也是非常活跃。












项目描述


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

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

本项目支持官方所有公开的通用OCR模型,PPOCRV2、PPOCRV3、PPOCRV4。如果使用v2模型,请设置OCR识别参数OCRParameter对象的属性rec_img_h=32,本项目默认使用V3模型,默认rec_img_h=48:

本项目只能在X64的CPU上编译和使用,只能在avx指令集上的CPU上使用。

本项目目前支持以下.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

本项目提供了两个SDK,一个是C++版本,一个是.net版本,.net版本是对C++版本的二次封装,其他语言开发亦是调用C++版本。同时也提供了Go、Python、C++的调用示例代码

支持的模型

OCR识别模型库支持官方所有的模型,也支持自己训练的模型。完全按照飞桨OCR接口搭桥。本项目部署自带的一种轻量版8.6M模型库、服务器版模型库(更准确,需要自行下载),可以自行更改模型库适用实际需求。

模型名称

模型大小

下载地址

备注

ch_PP-OCRv2

10M

中英文轻量v2


en_PP-OCRv2

4M

英文数字v2


ch_PP-OCRv3

12M

中英文轻量v3


en_PP-OCRv3

10M

英文数字v3


ch_PP-OCRv4

14M

中英文轻量v4


en_PP-OCRv4

12M

英文数字v4


代码预览

效果预览

☛☛☛点击此处下载源码☚☚☚

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多