PaddleOCRSharp 2.3.0已经发布nuget包。
项目开源地址:https://gitee.com/raoyutian/paddle-ocrsharp
2.3.0更新内容:
1.增加表格识别功能
2.同步更新飞桨PaddleOCR最新版本C++代码
3.适配paddle_inference预测库到最新2.4.1版本
4.识别参数增加use_tensorrt属性,当使用GPU预测时,是否启用tensorrt,默认false
如何使用呢?
随便打开一个Microsoft Visual Studio,新建一个 X64位的 WinForms项目,从下面列表中随便选择一个NET框架。
net35;net40;net45;net451;net452;net46;net461;net462;net47;net471;net472;net48;
netstandard2.0;netcoreapp3.1;
net5.0;net6.0;net7.0;
创建完窗口后,切换到【程序包管理控制台】,输入下面命令并回车:
Install-Package PaddleOCRSharp -Version 2.3.0
完成PaddleOCRSharp的依赖包安装。
在窗口界面拖放一个按钮,并双击,在按钮的点击事件中,输入以下代码:
OpenFileDialog ofd = new OpenFileDialog();
ofd.Filter = "*.*|*.bmp;*.jpg;*.jpeg;*.tiff;*.tiff;*.png";
if (ofd.ShowDialog() != DialogResult.OK) return;
var imagebyte = File.ReadAllBytes(ofd.FileName);
Bitmap bitmap = new Bitmap(new MemoryStream(imagebyte));
OCRModelConfig config = ;
OCRParameter oCRParameter = new OCRParameter ();
OCRResult ocrResult = new OCRResult();
//建议程序全局初始化一次即可,不必每次识别都初始化,容易报错。
PaddleOCREngine engine = new PaddleOCREngine(config, oCRParameter);
{
ocrResult = engine.DetectText(bitmap );
}
if (ocrResult != )
{
MessageBox.Show(ocrResult.Text,"识别结果");
}
然后按F5运行,点击按钮,选择一个本地图片,进行OCR文字识别。
弹出识别结果,说明你已经上手学会了如何使用OCR,就这么简单。
表格识别效果:
原图:
表格识别结果:
PaddleOCRSharp项目是一个基于百度飞桨PaddleOCR的C++代码修改并封装的.NET的OCR工具类库。包含文本识别、文本检测、表格识别功能。本项目针对小图识别不准的情况下做了优化,比飞桨原代码识别准确率有所提高。包含总模型仅8.6M的超轻量级中文OCR,单模型支持中英文数字组合识别、竖排文本识别、长文本识别。同时支持多种文本检测。项目封装极其简化,实际调用仅几行代码,极大的方便了中下游开发者的使用和降低了PaddleOCR的使用入门级别,同时提供不同的.NET框架使用,方便各个行业应用开发与部署。Nuget包即装即用,可以离线部署,不需要网络就可以识别的高精度中英文OCR。
本项目中PaddleOCR.dll文件是基于开源项目PaddleOCR的C++代码修改而成的C++动态库,基于opencv的x64编译而成的。
本项目已经适配PaddleOCR2.6以上开发版C++代码,并支持PP-OCRv3模型。同时支持表格识别, 超轻量OCR系统PP-OCRv3:中英文、纯英文以及多语言场景精度再提升5% - 11%!。