0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

C#集成OpenVINO™:简化AI模型部署

英特尔物联网 来源:英特尔物联网 作者:英特尔物联网 2025-02-17 10:03 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

C#不仅在PC游戏开发、大型商业系统领域应用广泛,还成为开源测控机器视觉运动控制,以及PC数集与分析领域中的主流开发语言!

在开源测控、机器视觉、数采与分析三大领域中,如何快速将AI模型集成到应用程序中,实现AI赋能和应用增值?最容易的方式是:在C#中,使用OpenVINO工具套件集成AI模型。

cba4a74e-eab3-11ef-9310-92fbcf53809c.png

1

什么是OpenVINO 工具套件?

OpenVINO 工具套件是一个用于优化和部署人工智能(AI)模型,提升AI推理性能的开源工具集合,不仅支持以卷积神经网络(CNN)为核心组件的预测式AI模型(Predictive AI),还支持以Transformer为核心组件的生成式AI模型(Generative AI)。

OpenVINO工具套件支持对基于PyTorch、TensorFlow、PaddlePaddle等主流深度学习框架训练好的模型进行优化,提升其在英特尔 CPU、独立显卡、集成显卡、NPU等硬件上的AI推理计算性能。

2

什么是OpenVINO C# API

OpenVINO C# API 是一个开源的 OpenVINO 的 .Net wrapper(包装器)项目,它基于最新的OpenVINO Runtime库开发,通过调用官方的OpenVINO C API ,允许开发者在 .NET 和 .NET Framework 环境中使用 C# 语言调用AI模型,并实现AI模型在英特尔 CPU、独立显卡、集成显卡、NPU上的推理加速。

OpenVINO C# API的GitHub仓:https://github.com/guojin-yan/OpenVINO-CSharp-API

cbbd657c-eab3-11ef-9310-92fbcf53809c.png

为了方便开发者使用,OpenVINO C# API提供了NuGet Package,可以通过NuGet管理工具直接进行安装。

3

搭建OpenVINO C# API开发环境

搭建OpenVINO C# API开发环境共分三步:

1. 安装.NET 8.0

2. 在VS Code中配置C#开发环境

3. 使用NuGet安装OpenVINO C# API依赖项

本节依次介绍。

1.安装.NET 8.0:

请进入.NET官网下载地址:https://dotnet.microsoft.com/zh-cn/download,下载.NET 8.0安装包。

cbff9334-eab3-11ef-9310-92fbcf53809c.png

下载完毕后,以管理员方式运行安装包,并按默认方式完成安装。

cc1ac794-eab3-11ef-9310-92fbcf53809c.png

安装完毕后,请启动“命令提示符”,然后输入 “dotnet --info” 指令,验证安装是否成功:

cc37ef86-eab3-11ef-9310-92fbcf53809c.png

2.在VS Code中配置C#开发环境:

VS Code(Visual Studio Code)是一款由微软开发的开源、免费、跨平台的轻量级代码编辑器;支持多种编程语言(如C、C++、C#、JavaPython、JavaScript等)的代码编辑,具备语法高亮、代码折叠、代码补全、代码重构等功能;广泛应用于各类软件开发领域。

[注意]:使用VS Studio的开发者,无需安装VS Code的插件,可略过该小节!

首先,请从:https://code.visualstudio.com/,下载并安装VS Code。

然后,启动VS Code,在“Extensions:Marketplace”中搜索关键字:“C#”,依次安装C#和C# Dev Kit插件。

cc52685c-eab3-11ef-9310-92fbcf53809c.png

接着,启动“命令提示符”并输入 “dotnet new console -o hello_world -f net8.0”命令,创建一个名叫“hello_world”的C# console项目。

cc7a7d60-eab3-11ef-9310-92fbcf53809c.png

最后,启动VS Code,并用“File-->Open Folder...”打开hello_world文件夹,然后点击“Run Project...”按钮,若在Terminal中成功输出“Hello, World!”说明在VS Code配置C#开发环境成功!

cc97769a-eab3-11ef-9310-92fbcf53809c.png

3.使用NuGet安装OpenVINO C# API:

首先,启动“命令提示符”,用命令创建YOLOv8推理项目:

dotnet new console -o yolov8_async_csharp -f net8.0

然后,进入“yolov8_async_csharp”目录,使用NuGet安装OpenVINO C# API,命令如下:

dotnet add package OpenVINO.CSharp.API --version 2024.3.0.2
dotnet add package OpenVINO.runtime.win --version 2024.3.0.1
dotnet add package OpenVINO.CSharp.API.Extensions.OpenCvSharp --version 1.0.6.1

ccb6919c-eab3-11ef-9310-92fbcf53809c.png

最后,使用NuGet安装OpenCvSharp4:

dotnet add package OpenCvSharp4 --version 4.9.0.20240103
dotnet add package OpenCvSharp4.runtime.win --version 4.9.0.20240103

到此,OpenVINO C# API开发环境搭建完毕!

4

编写C# PP-OCRv4推理程序

首先,请从:

https://github.com/openvino-book/openvino_handbook/tree/main/chapter_5/C%23/yolov8_async_csharp

下载范例程序Program.cs(覆盖yolov8_asysc_csharp文件夹中的Program.cs),测试视频test_video.mp4和yolov8s IR格式模型,放入yolov8_asysc_csharp文件夹中。

然后,点击“Run project”或使用快捷键“Ctrl+F5”运行程序,结果如下视频所示:

5

总结

OpenVINO C# API 易学易用,可以方便将AI模型集成到C#应用程序中!

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • API
    API
    +关注

    关注

    2

    文章

    2476

    浏览量

    67025
  • AI
    AI
    +关注

    关注

    91

    文章

    41115

    浏览量

    302607
  • OpenVINO
    +关注

    关注

    0

    文章

    118

    浏览量

    818
  • AI大模型
    +关注

    关注

    0

    文章

    407

    浏览量

    1039

原文标题:开发者实战|C#中使用OpenVINO™:轻松集成AI模型!

文章出处:【微信号:英特尔物联网,微信公众号:英特尔物联网】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    AI模型训练与部署实战 | 线下免费培训

    你是否想系统了解AI落地全链路,但缺少一个完整的实战项目练手?模型部署环节繁多,缺乏一套清晰的实战路径?4月18日、4月25日、5月16日RT-Thread将分别在苏州、成都、南京举办“AI
    的头像 发表于 04-07 13:08 658次阅读
    <b class='flag-5'>AI</b><b class='flag-5'>模型</b>训练与<b class='flag-5'>部署</b>实战 | 线下免费培训

    【瑞萨AI挑战赛】手写数字识别模型在RA8P1 Titan Board上的部署

    最终的板端部署与运行,完整实现手写数字识别模型的端侧落地,为嵌入式AI开发提供可参考的实践方案。 一、RA8P1 Titan Board开发板硬件资源 RA8P1 Titan Board是瑞萨推出
    发表于 03-15 20:42

    AI端侧部署开发(SC171开发套件V2-FAS)

    AI端侧部署开发(SC171开发套件V2-FAS) 序列 课程名称 视频课程时长 视频课程链接 课件链接 工程源码 1 Fibo AI Stack模型转化指南 27分19秒 https
    发表于 02-11 11:44

    AI端侧部署开发(SC171开发套件V3)2026版

    AI端侧部署开发(SC171开发套件V3)2026版 序列 课程名称 视频课程时长 视频课程链接 课件链接 工程源码 1 Fibo AI Stack模型转化指南 27分19秒 http
    发表于 01-15 10:31

    AI智能体开发C#软件的临时方案

    AI智能体 (Agent) 可以帮你生成完整的C# 工程,包括主体代码、WinForm界面设计和引用添加。但是目前Visual Studio (VS) 的Agent功能好像还不太完善,时常出一些奇怪
    的头像 发表于 12-30 10:50 944次阅读
    <b class='flag-5'>AI</b>智能体开发<b class='flag-5'>C#</b>软件的临时方案

    1 GHz Arm® Cortex®-M85 MCU上部署AI模型

    本文将手把手带你实现实时人脸检测,并将完整流程开源。打通从数据采集、模型训练、量化转换,到集成部署的每一个环节。我们已为你准备好了数据集、训练代码、转换工具链与RT-Thread工程。只需跟随步骤
    的头像 发表于 12-02 21:04 9617次阅读
    1 GHz Arm® Cortex®-M85 MCU上<b class='flag-5'>部署</b><b class='flag-5'>AI</b><b class='flag-5'>模型</b>

    使用瑞萨RUHMI工具实现AI模型部署过程

    AI无处不在。你在部署AI,你的竞争对手也在部署AI,几乎所有人都在做AI。然而,
    的头像 发表于 10-17 10:00 2948次阅读
    使用瑞萨RUHMI工具实现<b class='flag-5'>AI</b><b class='flag-5'>模型</b><b class='flag-5'>部署</b>过程

    使用OpenVINO将PP-OCRv5模型部署在Intel显卡上

    是一个用于优化和部署人工智能(AI模型,提升AI推理性能的开源工具集合,不仅支持以卷积神经网络(CNN)为核心组件的预测式AI
    的头像 发表于 09-20 11:17 1415次阅读
    使用<b class='flag-5'>OpenVINO</b>将PP-OCRv5<b class='flag-5'>模型</b><b class='flag-5'>部署</b>在Intel显卡上

    ai_cube训练模型最后部署失败是什么原因?

    ai_cube训练模型最后部署失败是什么原因?文件保存路径里也没有中文 查看AICube/AI_Cube.log,看看报什么错?
    发表于 07-30 08:15

    无法在NPU上推理OpenVINO™优化的 TinyLlama 模型怎么解决?

    在 NPU 上推断 OpenVINO™优化的 TinyLlama 模型。 遇到的错误: get_shape was called on a descriptor::Tensor with dynamic shape
    发表于 07-11 06:58

    无法将Tensorflow Lite模型转换为OpenVINO™格式怎么处理?

    将 Tensorflow Lite 模型转换为 OpenVINO™ 格式。 遇到的错误: FrontEnd API failed with OpConversionFailure:No translator found for TFLite_Detection_PostP
    发表于 06-25 08:27

    无法将Openvino™ 2025.0与onnx运行时Openvino™ 执行提供程序 1.16.2 结合使用,怎么处理?

    使用OpenVINO™与英特尔 i5-8500 CPU 和超核处理器 630 iGPU 一起部署模型。 使用了 Microsoft.ML.OnnxRuntime.OpenVino
    发表于 06-24 06:31

    企业部署AI模型怎么做

    当下,AI模型已成为驱动决策自动化、服务智能化与产品创新的核心引擎。然而,企业面对动辄数百亿参数的大模型部署时,常陷入算力不足、响应延迟高、成本失控等困境。如何突破瓶颈,实现高效、稳
    的头像 发表于 06-04 09:26 1023次阅读

    如何使用Docker部署模型

    随着深度学习和大模型的快速发展,如何高效地部署这些模型成为了一个重要的挑战。Docker 作为一种轻量级的容器化技术,能够将模型及其依赖环境打包成一个可移植的容器,极大地
    的头像 发表于 05-24 16:39 1347次阅读

    OpenVINO C#如何运行YOLO11实例分割模型

    代码是我在OpenVINO-CSharp-API作者开源的YOLOv8对象检测的代码基础上修改而成。
    的头像 发表于 04-29 09:30 2231次阅读
    <b class='flag-5'>OpenVINO</b> <b class='flag-5'>C#</b>如何运行YOLO11实例分割<b class='flag-5'>模型</b>