作者:算力魔方創(chuàng)始人/英特爾創(chuàng)新大使劉力
C#不僅在PC游戲開發(fā)、大型商業(yè)系統(tǒng)領(lǐng)域應(yīng)用廣泛,還成為開源測控、機(jī)器視覺與運動控制,以及PC數(shù)集與分析領(lǐng)域中的主流開發(fā)語言!
在開源測控、機(jī)器視覺、數(shù)采與分析三大領(lǐng)域中,如何快速將AI模型集成到應(yīng)用程序中,實現(xiàn)AI賦能和應(yīng)用增值?最容易的方式是:在C#中,使用OpenVINO?工具套件集成AI模型。
一,什么是OpenVINO? 工具套件?
OpenVINO? 工具套件是一個用于優(yōu)化和部署人工智能(AI)模型,提升AI推理性能的開源工具集合,不僅支持以卷積神經(jīng)網(wǎng)絡(luò)(CNN)為核心組件的預(yù)測式AI模型(Predictive AI),還支持以Transformer為核心組件的生成式AI模型(Generative AI)。
OpenVINO?工具套件支持對基于PyTorch、TensorFlow、PaddlePaddle等主流深度學(xué)習(xí)框架訓(xùn)練好的模型進(jìn)行優(yōu)化,提升其在英特爾? CPU、獨立顯卡、集成顯卡、NPU等硬件上的AI推理計算性能。
二,什么是OpenVINO? C# API?
OpenVINO? C# API 是一個開源的 OpenVINO? 的 .Net wrapper(包裝器)項目,它基于最新的OpenVINO? Runtime庫開發(fā),通過調(diào)用官方的OpenVINO? C API ,允許開發(fā)者在 .NET 和 .NET Framework 環(huán)境中使用 C# 語言調(diào)用AI模型,并實現(xiàn)AI模型在英特爾? CPU、獨立顯卡、集成顯卡、NPU上的推理加速。
OpenVINO? C# API的GitHub倉:https://github.com/guojin-yan/OpenVINO-CSharp-API
為了方便開發(fā)者使用,OpenVINO? C# API提供了NuGet Package,可以通過NuGet管理工具直接進(jìn)行安裝。
三,搭建OpenVINO? C# API開發(fā)環(huán)境
搭建OpenVINO? C# API開發(fā)環(huán)境共分三步:
1.安裝.NET 8.0
2.在VS Code中配置C#開發(fā)環(huán)境
3.使用NuGet安裝OpenVINO? C# API依賴項
本節(jié)依次介紹。
1,安裝.NET 8.0:
請進(jìn)入.NET官網(wǎng)下載地址:https://dotnet.microsoft.com/zh-cn/download,下載.NET 8.0安裝包。
下載完畢后,以管理員方式運行安裝包,并按默認(rèn)方式完成安裝。
安裝完畢后,請啟動“命令提示符”,然后輸入 “dotnet --info” 指令,驗證安裝是否成功:
2,在VS Code中配置C#開發(fā)環(huán)境:
VS Code(Visual Studio Code)是一款由微軟開發(fā)的開源、免費、跨平臺的輕量級代碼編輯器;支持多種編程語言(如C、C++、C#、Java、Python、JavaScript等)的代碼編輯,具備語法高亮、代碼折疊、代碼補全、代碼重構(gòu)等功能;廣泛應(yīng)用于各類軟件開發(fā)領(lǐng)域。
[注意]:使用VS Studio的開發(fā)者,無需安裝VS Code的插件,可略過該小節(jié)!
首先,請從:https://code.visualstudio.com/,下載并安裝VS Code。
然后,啟動VS Code,在“Extensions:Marketplace”中搜索關(guān)鍵字:“C#”,依次安裝C#和C# Dev Kit插件。
接著,啟動“命令提示符”并輸入 “dotnet new console -o hello_world -f net8.0”命令,創(chuàng)建一個名叫“hello_world”的C# console項目。
最后,啟動VS Code,并用“File-->Open Folder...”打開hello_world文件夾,然后點擊“Run Project...”按鈕,若在Terminal中成功輸出“Hello, World!”說明在VS Code配置C#開發(fā)環(huán)境成功!
3,使用NuGet安裝OpenVINO? C# API:
首先,啟動“命令提示符”,用命令創(chuàng)建YOLOv8推理項目:
dotnet new console -o yolov8_async_csharp -f net8.0
然后,進(jìn)入“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
最后,使用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開發(fā)環(huán)境搭建完畢!
四,用C# 編寫OpenVINO?推理程序
首先,請從:
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”運行程序,結(jié)果如下視頻所示:
https://live.csdn.net/v/462063
五,總結(jié)
OpenVINO? C# API 易學(xué)易用,可以方便將AI模型集成到C#應(yīng)用程序中!
如果你有更好的文章,歡迎投稿!
稿件接收郵箱:nami.liu@pasuntech.com
更多精彩內(nèi)容請關(guān)注“算力魔方?”!
審核編輯 黃宇
-
AI
+關(guān)注
關(guān)注
87文章
33554瀏覽量
274198 -
OpenVINO
+關(guān)注
關(guān)注
0文章
112瀏覽量
380
發(fā)布評論請先 登錄
相關(guān)推薦
如何在Ollama中使用OpenVINO后端
OpenVINO中的量化模型與OpenVINO ESR模型結(jié)果不一致是怎么回事?
請問使用2022.2時是否可以讀取模型OpenVINO?層?
創(chuàng)建了用于OpenVINO?推理的自定義C++和Python代碼,從C++代碼中獲得的結(jié)果與Python代碼不同是為什么?
通過Docker映像OpenVINO? DL Workbench OpenVINO?安裝,無法上傳模型怎么解決?
請問是否可以在模型服務(wù)器中使用REST請求OpenVINO?預(yù)測?
為什么無法在運行時C++推理中讀取OpenVINO?模型?
C#集成OpenVINO?:簡化AI模型部署

使用OpenVINO C# API輕松部署飛槳PP-OCRv4模型

使用OpenVINO Model Server在哪吒開發(fā)板上部署模型

使用OpenVINO C# API部署YOLO-World實現(xiàn)實時開放詞匯對象檢測

用OpenVINO C# API在intel平臺部署YOLOv10目標(biāo)檢測模型

評論