码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 【OpenVINO】 使用 OpenVINO CSharp API 部署 PaddleOCR 项目介绍


    合集 - OpenVINO C# API(3)
    1.【OpenVINO】 使用 OpenVINO CSharp API 部署 PaddleOCR 项目介绍01-10
    2.【OpenVINO™】在 Windows 上使用 OpenVINO™ C# API 部署 Yolov8-obb 实现任意方向的目标检测02-013.【OpenVINO™】在 MacOS 上使用 OpenVINO™ C# API 部署 Yolov502-06
    收起
    前言:
      在之前的项目中,我们已经使用 OpenVINOTM CSharp API 部署 PaddleOCR 全系列模型,但随着PaddleOCRv4版本发布以及OpenVINO CSharp API版本迭代,上一版本的项目已经不再适用。因此在推出的最新项目中,已经完成了对PaddleOCRv4的匹配,并且采用了最新版本的 OpenVINOTM CSharp API,可以更快的实现在不同平台进行部署,减少使用者在使用时的步骤以及问题。

    目录
    • 1. 项目介绍
    • 2. 项目环境
      • 2.1 NuGet Package
      • 2.2 安装方式
    • 3. 快速开始
      • 3.1 获取项目源码
      • 3.2 获取预测模型
      • 3.3 OCR识别
    • 4. Contact

    1. 项目介绍

      该项目主要基于开发的[OpenVINOTM C# API](OpenVINOTM C# API)项目,基于 C# 编程语言在.NET框架下使用OpenVINOTM 部署工具部署百度飞桨下的 PaddleOCR 系列模型,实现图片文字识别、版面分析以及表格识别等功能。

      项目提供了简单的案例以及二次开发的API接口,大家可以根据自己需求进行再次开发与使用。

      项目PaddleOCR-OpenVINO-CSharp链接为:

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

    2. 项目环境

      在本项目中主要使用的是自己开发的OpenVINOTM C# API项目以及OpenCvSharp4项目,所使用NuGet Package程序包以及安装方式如下所示

    2.1 NuGet Package

    • OpenVINO.CSharp.API >= 2023.2.0.2
    • OpenVINO.runtime.win >= 2023.2.0.1
    • OpenCvSharp4.Windows >= 4.8.0.20230708
    • OpenCvSharp4.Extensions >= 4.8.0.20230708

    2.2 安装方式

      NuGet Package 可以通过Visual Studio 安装或者通过dotnet命令安装,安装方式如下:

    dotnet add package OpenVINO.CSharp.API
    dotnet add package OpenVINO.runtime.win
    dotnet add package OpenCvSharp4.Windows
    dotnet add package OpenCvSharp4.Extensions
    

    3. 快速开始

    3.1 获取项目源码

    git clone https://github.com/guojin-yan/PaddleOCR-OpenVINO-CSharp.git
    cd PaddleOCR-OpenVINO-CSharp
    

    3.2 获取预测模型

      项目中所使用的模型均来自于 PaddleOCR ,模型目录可以参考

    • PP-OCR 系列模型列表

    • PP-Structure 系列模型列表

    注意:

      经过测试,OpenVINO目前已经支持PP-OCR 系列模型列表、PP-Structure 系列模型列表中的所有模型,并且支持Paddlepaddle格式的模型,用户在下载后可以直接使用,但是表格识别模型ppstructure_mobile_v2.0_SLANet需要进行转换才可以使用,需要固定模行输入形状为[1, 3, 488, 488],转换方式keyi 参考该文章:Paddle2ONNX.

      为了方便大家快速使用,此处提供了模型的快速下载方式:

    cd model
    ./ocr_model_download.sh
    ./stru_model_download.sh
    

      下载后模型文件目录结构为:

    model
       ├──── paddle
                ├──── ch_ppocr_mobile_v2.0_cls_infer
                ├──── ch_PP-OCRv4_det_infer
                ├──── ch_PP-OCRv4_rec_infer
                ├──── ch_ppstructure_mobile_v2.0_SLANet_infer
                ├──── en_ppstructure_mobile_v2.0_SLANet_infer
                ├──── picodet_lcnet_x1_0_fgd_layout_cdla_infer
    

    image

    3.3 OCR识别

      可以直接通过Visual Studio直接运行该项目或者通过dotnet run指令运行该项目,dotnet run命令如下:

    cd PaddleOCR-OpenVINO-CSharp/sample
    dotnet run ./../../
    

      程序运行后输出如下图所示:

    image
    image

    4. Contact

      如果您准备使用OpenVINO部署PaddleOCR模型,欢迎参考本案例。在使用中有任何问题,可以通过以下方式与我联系。

    image

  • 相关阅读:
    基于区块链的隐私计算 - 原理和实践
    JAVA:实现Excel和PDF上下标
    【刷题训练】牛客:JZ31 栈的压入、弹出序列
    Img标签的src地址自动拼接本地域名(localhost:8080)导致图片不显示问题
    tf.compat.v1.global_variables
    一文详解视觉Transformer模型压缩和加速策略(量化/低秩近似/蒸馏/剪枝)
    终于可以一行代码也不用改了!ShardingSphere 原生驱动问世
    LeetCode--287. 寻找重复数(C++描述)
    PHP 危险函数2-代码执行语句
    JavaWeb基础
  • 原文地址:https://www.cnblogs.com/guojin-blogs/p/17956244
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号