当前位置: 首页 > news >正文

烟台网站建设科技软文营销的成功案例

烟台网站建设科技,软文营销的成功案例,深圳哪里可以做物流网站,0网站建设的好坏可以依据的标准有使用OpenVIN.CSharp.API在C#平台快速部署PP-OCRv5模型识别文本 PP-OCRv5是百度开源的高效OCR系统,通过轻量化SLANet网络提速20%,优化多尺度特征融合提升小文本识别,支持80语言,显著降低复杂场景错误率,适用于移动端/服…

使用OpenVIN.CSharp.API在C#平台快速部署PP-OCRv5模型识别文本

  PP-OCRv5是百度开源的高效OCR系统,通过轻量化SLANet网络提速20%,优化多尺度特征融合提升小文本识别,支持80+语言,显著降低复杂场景错误率,适用于移动端/服务器端部署。

  在本文中,将演示如何使用的OpenVINO.CSharp.API.Extensions.PaddleOCR NuGet Package快速在Intel CPU平台落地PP-OCRv5模型

项目链接:

#OpenVINO.CSharp.API
https://github.com/guojin-yan/OpenVINO-CSharp-API.git
#OpenVINO.CSharp.API.Extensions.PaddleOCR
https://github.com/guojin-yan/PaddleOCR-OpenVINO-CSharp.git

文章目录

  • 使用OpenVIN.CSharp.API在C#平台快速部署PP-OCRv5模型识别文本
    • 1. OpenVINO.CSharp.API.Extensions.PaddleOCR
    • 2.模型导出
      • Step 1: 创建虚拟环境
      • Step 2: 安装依赖项
      • Step 3: 下载官方 PP-OCRv5 训练模型
      • Step 4: 导出ONNX格式的 PP-OCRv5 模型
    • 3.创建项目工程
    • 4.运行测试
    • 5.总结

1. OpenVINO.CSharp.API.Extensions.PaddleOCR

  为了帮助各位开发者实现快速部署PaddleOCR模型,前期我们推出了OpenVINO.CSharp.API.Extensions.PaddleOCR NuGet Package,实现在英特尔任意CPU平台块数快速落地PaddleOCR,并受到了大家广泛的关注和应用支持。在PP-OCRv5推出后,我们也做了测试,所推出的OpenVINO.CSharp.API.Extensions.PaddleOCR NuGet Package对PP-OCRv5也做到了完全支持,通过切换模型和字典,便可以实现PP-OCRv5的轻松部署。同时为了方便大家使用,对当前主流框架做了支持,如下所示:

在这里插入图片描述

  此次,我们对OpenVINO.CSharp.API.Extensions.PaddleOCR NuGet Package作了进一步升级,升级了对OpenVINO™和OpenCvsharp的最新支持,并对 PP-OCRv5 部署作了进一步优化,同时新增了PP-OCRv5 快速部署接口,方便大家使用。

2.模型导出

  PP-OCRv5使用的是PaddlePaddle 3.0,目前PaddlePaddle 3.0 模型格式发生了显著变化,静态图模型存储文件名由 xxx.pdmodel 改为 xxx.json,同时模型整体适配飞桨 3.0 中间表示技术(PIR),拥有更加灵活的扩展能力和兼容性。目前OpenVINO™还在对PaddlePaddle 3.0做适配,因此目前无法读取PaddlePaddle 3.0导出的模型,需要将其转化为ONNX格式。

模型导出参考了大佬们的解决方案,原文链接为:

https://github.com/openvino-book/PP-OCRv5_OpenVINO/blob/main/How%20to%20export%20PP-OCRv5%20model.md

Step 1: 创建虚拟环境

conda create -n ppocrv5_ov python=3.11
conda activate ppocrv5_ov

Step 2: 安装依赖项

安装必要的依赖项:

pip install paddlepaddle
pip install paddleocr
pip install onnx==1.16.0
paddleocr install_hpi_deps cpu
paddlex --install paddle2onnx

  备注:如果你使用的是Windows环境,在安装paddlepaddle时,请安装最新的编译版本,安装指令如下:

python -m pip install --pre paddlepaddle -i https://www.paddlepaddle.org.cn/packages/nightly/cpu/

  如果上述指令安装后依旧为PaddlePaddle 3.0.0版本,请前往https://www.paddlepaddle.org.cn/packages/nightly/cpu/网站自行下载安装包安装。

Step 3: 下载官方 PP-OCRv5 训练模型

  如果你的电脑安装了wget指令,可以直接运行一下指令进行下载,如果未安装,可以直接在浏览器输入以下链接直接下载:

# Download and unzip PP-OCRv5_server_det pre-trained model
wget https://paddle-model-ecology.bj.bcebos.com/paddlex/official_inference_model/paddle3.0.0/PP-OCRv5_server_det_infer.tar && tar -xvf PP-OCRv5_server_det_infer.tar# Download and upzip PP-OCRv5_server_rec pre-trained model
wget https://paddle-model-ecology.bj.bcebos.com/paddlex/official_inference_model/paddle3.0.0/PP-OCRv5_server_rec_infer.tar && tar -xvf PP-OCRv5_server_rec_infer.tar# Download and upzip PP-OCRv5_server_cls pre-trained model
wget https://paddle-model-ecology.bj.bcebos.com/paddlex/official_inference_model/paddle3.0.0/PP-LCNet_x1_0_doc_ori_infer.tar && tar -xvf PP-LCNet_x1_0_doc_ori_infer.tar

Step 4: 导出ONNX格式的 PP-OCRv5 模型

  输入以下指令,便可以实现模型格式转化:

# Export PP-OCRv5_server_det to ONNX
paddlex --paddle2onnx --paddle_model_dir ./PP-OCRv5_server_det_infer --onnx_model_dir ./PP-OCRv5_server_det_onnx
# Export PP-OCRv5_server_rec to ONNX
paddlex --paddle2onnx --paddle_model_dir ./PP-OCRv5_server_rec_infer --onnx_model_dir ./PP-OCRv5_server_rec_onnx
# Export PP-OCRv5_server_cls to ONNX
paddlex --paddle2onnx --paddle_model_dir ./PP-LCNet_x1_0_doc_ori_infer --onnx_model_dir ./PP-OCRv5_server_cls_onnx

  如果大家觉得下载转换繁琐,此处我已经给大家转换好并放在GitHub上,链接为:

https://github.com/guojin-yan/PaddleOCR-OpenVINO-CSharp/releases/tag/Modelv5

  大家可以根据自己需要自行下载,或加入QQ交流群,通过群文件进行下载,QQ技术交流群为:945057948

3.创建项目工程

  在Windows平台开发者可以使用Visual Studio平台开发程序,但无法跨平台实现,为了实现跨平台,此处采用dotnet指令进行项目的创建和配置。

  首先使用dotnet创建一个测试项目,在终端中输入一下指令:

dotnet new console --framework net6.0 --use-program-main -o paddleocr

  项目框架此处可以根据需要自行选择,支持多种框架。

  此处以Windows平台为例安装项目依赖,首先是安装最重要的项目依赖,PaddleOCR部署接口:OpenVINO.CSharp.API.Extensions.PaddleOCR NuGet Package,在命令行中输入以下指令即可:

dotnet add package OpenVINO.CSharp.API.Extensions.PaddleOCR

  同时还需要安装OpenVINO™ C# API运行时依赖和OpenCvSharp4运行时依赖:

dotnet add package OpenVINO.runtime.win
dotnet add package OpenCvSharp4.runtime.win

  最后在主函数文件里添加以下代码即可:

using OpenCvSharp;
using OpenVinoSharp.Extensions.model.PaddleOCR;
using System.Diagnostics;namespace paddleocrv5
{internal class Program{static async Task Main(string[] args){// 下面代码会自动下载模型,直接运行即可// 模型存放在GitHub,网络会影响下载速度,如果无法下载可以在QQ交流群(945057948)中下载,并运行test_ocr_v5()进行验证OnlineOcr ocr = await Pipeline.GetOnlineOCR(Language.PP_OCRv5_mobile);Tuple<List<OCRPredictResult>, Mat> ocr_result = ocr.ocr_test();PaddleOcrUtility.print_result(ocr_result.Item1);Mat image = PaddleOcrUtility.visualize_bboxes(ocr_result.Item2, ocr_result.Item1);Cv2.ImShow("Result", image);Cv2.WaitKey(0);}/// <summary>/// 下面代码可以通过手动下载模型进行测试/// </summary>static void test_ocr_v5(){// 替换为自己的路径string image_path = @"E:\Data\ocr\11.jpg";string det_model = @"E:\Model\ocr\PP-OCRv5_mobile_det_onnx.onnx";string cls_model = @"E:\Model\ocr\PP-OCRv5_mobile_cls_onnx.onnx";string rec_model = @"E:\Model\ocr\PP-OCRv5_mobile_rec_onnx.onnx";Mat image = Cv2.ImRead(image_path);RuntimeOption.RecOption.label_path = @"E:\Model\ocr\ppocrv5_dict.txt";OCRPredictor ocr = new OCRPredictor(det_model, cls_model, rec_model);List<OCRPredictResult> ocr_result = ocr.ocr(image, true, true, true);Stopwatch sw = new Stopwatch();sw.Start();ocr_result = ocr.ocr(image, true, true, true);sw.Stop();PaddleOcrUtility.print_result(ocr_result);Mat result = PaddleOcrUtility.visualize_bboxes(image, ocr_result);Console.WriteLine("总推理时间: " + sw.ElapsedMilliseconds + " ms");Cv2.ImShow("result", result);string result_path = Path.Combine(Path.GetDirectoryName(image_path), Path.GetFileNameWithoutExtension(image_path) + "_result.jpg");Cv2.ImWrite(result_path, result);Cv2.WaitKey(0);}}
}

  上面提供了两种测试方式,一种是**Main()**方法里面运行的直接下载模型和测试文件并直接进行推理,无需准备任何模型文件和图片,即可进行体验。void test_ocr_v5() 方法里,需要用户自行准备模型,并修改路径即可运行测试。

为了防止大家配置出错,同时提供了配置完整的项目工程,大家可以加入技术交流群自行下载,QQ技术交流群为:945057948

4.运行测试

  接下来输入项目编译指令进行项目编译,输入以下指令即可:

dotnet build

  接下来运行编译后的程序文件,在CMD中输入以下指令,运行编译后的项目文件:

dotnet run --no-build

运行后项目输出为:

在这里插入图片描述

  此外,我们还给大家演示了更加复杂识别,结果如下:

手写字体识别:

在这里插入图片描述
在这里插入图片描述

登机牌识别:

在这里插入图片描述

5.总结

OpenVINO.CSharp.API.Extensions.PaddleOCR NuGet Package工具通过底层封装,将PaddleOCR的推理和前后处理集成在了一起,方便大家使用,对于初学者十分友好。但是封装的接口可能无法满足更多开发者的需求,因此建议有技术的开发者们下载源码,根据自己需求自行修改配置,使其更加灵活。

  如果各位开发者在使用有任何疑问,欢迎通过下面方式进行交流:
个人账号 - 2


文章转载自:
http://dinncodisconnection.tpps.cn
http://dinncoorangutang.tpps.cn
http://dinncopotometer.tpps.cn
http://dinncofilature.tpps.cn
http://dinncoindusiate.tpps.cn
http://dinncorickets.tpps.cn
http://dinncomorro.tpps.cn
http://dinnconoxious.tpps.cn
http://dinncospaciously.tpps.cn
http://dinncoarroyo.tpps.cn
http://dinncopola.tpps.cn
http://dinncononresistant.tpps.cn
http://dinncocharactery.tpps.cn
http://dinncocaprifoliaceous.tpps.cn
http://dinncoconjuncture.tpps.cn
http://dinncoploughshoe.tpps.cn
http://dinncosyntactical.tpps.cn
http://dinncooccasionalist.tpps.cn
http://dinncokraurotic.tpps.cn
http://dinncohemathermal.tpps.cn
http://dinncoenjambment.tpps.cn
http://dinncoformicarium.tpps.cn
http://dinncoadiathermancy.tpps.cn
http://dinncoburgundy.tpps.cn
http://dinncononpayment.tpps.cn
http://dinncoabyssalpelagic.tpps.cn
http://dinncodeceleron.tpps.cn
http://dinncoendocytic.tpps.cn
http://dinncoante.tpps.cn
http://dinncoleatherware.tpps.cn
http://dinncojokebook.tpps.cn
http://dinncocycladic.tpps.cn
http://dinncoagora.tpps.cn
http://dinncodiphenylchlorarsine.tpps.cn
http://dinncowillowware.tpps.cn
http://dinncocubanize.tpps.cn
http://dinncobuic.tpps.cn
http://dinncounalterable.tpps.cn
http://dinncohaplite.tpps.cn
http://dinncoganoin.tpps.cn
http://dinncounharden.tpps.cn
http://dinncoplasticine.tpps.cn
http://dinncoer.tpps.cn
http://dinncoautomobilism.tpps.cn
http://dinncorivel.tpps.cn
http://dinncobluehearts.tpps.cn
http://dinncorodder.tpps.cn
http://dinncoentomolite.tpps.cn
http://dinncoangled.tpps.cn
http://dinncolanate.tpps.cn
http://dinncocarvel.tpps.cn
http://dinncodiagrid.tpps.cn
http://dinncosubmit.tpps.cn
http://dinncoblesbok.tpps.cn
http://dinncowifelike.tpps.cn
http://dinncocafetorium.tpps.cn
http://dinncotimeless.tpps.cn
http://dinncopretermission.tpps.cn
http://dinncograndpa.tpps.cn
http://dinncosubauricular.tpps.cn
http://dinncoheaded.tpps.cn
http://dinncosalvy.tpps.cn
http://dinncogenitalia.tpps.cn
http://dinncosibilate.tpps.cn
http://dinncozygomatic.tpps.cn
http://dinncohaplopia.tpps.cn
http://dinnconebenkern.tpps.cn
http://dinncooverendowed.tpps.cn
http://dinncopinon.tpps.cn
http://dinncoeaprom.tpps.cn
http://dinncogate.tpps.cn
http://dinncowigwam.tpps.cn
http://dinncowasteplex.tpps.cn
http://dinncofortitude.tpps.cn
http://dinncoazoturia.tpps.cn
http://dinncosupervacaneous.tpps.cn
http://dinncofratricide.tpps.cn
http://dinncochick.tpps.cn
http://dinncoslumgum.tpps.cn
http://dinncosaturnine.tpps.cn
http://dinncoowelty.tpps.cn
http://dinncounderwork.tpps.cn
http://dinncoirrigate.tpps.cn
http://dinncogilbertian.tpps.cn
http://dinncobozzetto.tpps.cn
http://dinncotiepin.tpps.cn
http://dinncosnaky.tpps.cn
http://dinncocraniometer.tpps.cn
http://dinncoeuphenics.tpps.cn
http://dinncotrilinear.tpps.cn
http://dinncooutpost.tpps.cn
http://dinncoelectroengineering.tpps.cn
http://dinncosortes.tpps.cn
http://dinncostylohyoid.tpps.cn
http://dinncoperson.tpps.cn
http://dinncomaghemite.tpps.cn
http://dinncorocket.tpps.cn
http://dinncodecuplet.tpps.cn
http://dinncocredential.tpps.cn
http://dinncoimmobilism.tpps.cn
http://www.dinnco.com/news/104595.html

相关文章:

  • ip开源网站FPGA可以做点什么百度推广收费
  • 十大门户网站有哪些网络营销和传统营销的区别有哪些
  • 做再生料的网站北京网络推广公司排行
  • 接网站开发外包河南网站推广公司
  • 政府网站静态模板石家庄最新疫情
  • 网站不做301可以吗线上营销渠道主要有哪些
  • 聊城网站推广怎么做淘宝站外引流推广方法
  • cms wordpress 国内搜索引擎优化seo是什么
  • 深圳电商平台网站建设磁力搜索引擎下载
  • 政府网站群建设河南怎样做网站推广
  • 零投资一天赚500免费发布网站seo外链
  • 百度搜索推广方案网站seo分析报告
  • 成都旅游网站建设百度快速排名案例
  • 网站运营效果分析怎么做恶意点击软件哪个好
  • 辽宁网站建站系统哪家好百度资源分享网页
  • 网站主机免备案吗广点通投放平台登录
  • 怎么建公司免费网站郑州网络营销学校
  • 企业如何建自己的网站企业网络规划设计方案
  • 湖南建设网站获客系统百度的营销推广模式
  • 怎么做域名网站备案无锡网站建设优化公司
  • 有什么做数学题的网站营销型网站重要特点是
  • 北京大学两学一做网站一般的电脑培训班要多少钱
  • 乐山网站制作公司免费推广工具
  • 丹阳网站建设开发上海十大营销策划公司
  • h5商城网站怎么做东莞市网络营销公司
  • 可以免费进的服务器网站seo工资待遇 seo工资多少
  • 白品网站建设推广员网站
  • 餐饮公司网站模板长沙seo霸屏
  • 那家专门做特卖的网站一份完整的营销策划方案
  • 视频做网站洛阳seo博客