LOGO OA教程 ERP教程 模切知识交流 PMS教程 CRM教程 开发文档 其他文档  
 
网站管理员

C#实现图片文字识别PaddleOCRSharp

admin
2023年9月4日 12:34 本文热度 795

这几年的AI的发展,使得文字识别难度大大降低、精度大大的提高。百度飞浆就是一个非常好的AI框架,而且是开源的。

我们利用百度飞浆就能快速简单的实现文字识别功能,几行代码就可以集成。

其中百度飞浆的PaddleOCR,就是专门针对文本识别的开发套件,包含的功能有:文本失败、文本检测、表格识别,支持中英文数字组合的识别、竖排、长文本识别,而且还针对小图做了优化,大大提升准确率。

下面我们一起来看看,如何使用百度飞浆实现文字识别:

一、新建项目

新建一个控制台项目。


二、安装依赖包

通过NuGet,安装依赖包:PaddleOCRSharp。

PaddleOCRSharp是Github的开源项目,是基于百度飞浆C++代码封装的.Net类库,其中支持PaddleOCR版本是release2.5。如果大家需要最新版本,或者其他模型,也可以自行封装。

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

安装依赖后,我们就可以看到很多dll库。


三、编写识别代码

识别图片的文字,并打印,代码如下:

using PaddleOCRSharp;

PaddleOCREngine engine;

//中英文模型V3模型

OCRModelConfig config = null;

//OCR参数

OCRParameter oCRParameter = new OCRParameter();

oCRParameter.cpu_math_library_num_threads = 6;//预测并发线程数

oCRParameter.enable_mkldnn = true;//是否使用mkldnn模型

oCRParameter.cls = false; //是否执行文字方向分类

oCRParameter.use_angle_cls = false;//是否开启方向检测

oCRParameter.det_db_score_mode = true;//是否使用多段线,即文字区域是用多段线还是用矩形,

oCRParameter.det_db_unclip_ratio = 1.6f;

oCRParameter.max_side_len = 2000;//初始化OCR引擎

engine = new PaddleOCREngine(config, oCRParameter);

var imagebyte = File.ReadAllBytes("1.png");

OCRResult ocrResult = engine.DetectText(imagebyte);

Console.WriteLine(ocrResult.Text);


四、执行效果如下

识别速度、效果还是非常好的。


该文章在 2023/9/4 12:34:14 编辑过
关键字查询
相关文章
正在查询...
点晴ERP是一款针对中小制造业的专业生产管理软件系统,系统成熟度和易用性得到了国内大量中小企业的青睐。
点晴PMS码头管理系统主要针对港口码头集装箱与散货日常运作、调度、堆场、车队、财务费用、相关报表等业务管理,结合码头的业务特点,围绕调度、堆场作业而开发的。集技术的先进性、管理的有效性于一体,是物流码头及其他港口类企业的高效ERP管理信息系统。
点晴WMS仓储管理系统提供了货物产品管理,销售管理,采购管理,仓储管理,仓库管理,保质期管理,货位管理,库位管理,生产管理,WMS管理系统,标签打印,条形码,二维码管理,批号管理软件。
点晴免费OA是一款软件和通用服务都免费,不限功能、不限时间、不限用户的免费OA协同办公管理系统。
Copyright 2010-2024 ClickSun All Rights Reserved