0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

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

英特爾物聯(lián)網(wǎng) ? 來源:CSharp與邊緣模型部署 ? 2024-08-30 16:27 ? 次閱讀

以下文章來源于CSharp與邊緣模型部署 ,作者椒顏PiPi蝦

作者:顏國進(jìn)

英特爾邊緣計算創(chuàng)新大使

YOLO-World是一個融合了實時目標(biāo)檢測與增強現(xiàn)實(AR)技術(shù)的創(chuàng)新平臺,旨在將現(xiàn)實世界與數(shù)字世界無縫對接。該平臺以YOLO(You Only Look Once)算法為核心,實現(xiàn)了對視頻中物體的快速準(zhǔn)確識別,并通過AR技術(shù)將虛擬元素與真實場景相結(jié)合,為用戶帶來沉浸式的交互體驗。在本文中,我們將結(jié)合OpenVINO C# API使用最新發(fā)布的OpenVINO 2024.0部署 YOLO-World實現(xiàn)實時開放詞匯對象檢測:

OpenVINO C# API項目鏈接:

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

使用OpenVINO C# API 部署 YOLO-World全部源碼:

https://github.com/guojin-yan/OpenVINO-CSharp-API-Samples/tree/master/model_samples/yolo-world/yolo-world-opencvsharp-net4.8

1前言

1OpenVINO C# API

英特爾發(fā)行版OpenVINO工具套件基于oneAPI而開發(fā),可以加快高性能計算機視覺深度學(xué)習(xí)視覺應(yīng)用開發(fā)速度工具套件,適用于從邊緣到云的各種英特爾平臺上,幫助用戶更快地將更準(zhǔn)確的真實世界結(jié)果部署到生產(chǎn)系統(tǒng)中。通過簡化的開發(fā)工作流程,OpenVINO可賦能開發(fā)者在現(xiàn)實世界中部署高性能應(yīng)用程序和算法。

wKgaombRhkWATb94AAJXBZDBmVM540.png

2024年3月7日,英特爾發(fā)布了開源 OpenVINO 2024.0 工具包,用于在各種硬件上優(yōu)化和部署人工智能推理。OpenVINO是英特爾出色的開源AI工具包,不僅可以在x86_64 CPU上加速AI推斷,還可以在ARM CPU和其他架構(gòu)、英特爾集成顯卡和獨立顯卡等硬件上加速AI推斷,包括最近推出的NPU 插件,用于利用新酷睿超“Meteor Lake”系統(tǒng)芯片中的英特爾神經(jīng)處理單元。OpenVINO 2024.0 更注重生成式人工智能(GenAI),為TensorFlow句子編碼模型提供了更好的開箱即用體驗,支持專家混合(MoE)。同時還提高了LLM的INT4權(quán)重壓縮質(zhì)量,增強了LLM在英特爾CPU上的性能,簡化了Hugging Face模型的優(yōu)化和轉(zhuǎn)換,并改進(jìn)了其他Hugging Face集成。

OpenVINO C# API是一個OpenVINO的.Net wrapper,應(yīng)用最新的OpenVINO庫開發(fā),通過 OpenVINOC API實現(xiàn).Net對OpenVINO Runtime調(diào)用,使用習(xí)慣與OpenVINO C++ API一致。OpenVINO C# API 由于是基于OpenVINO開發(fā),所支持的平臺與OpenVINO完全一致,具體信息可以參考OpenVINO。通過使用OpenVINO C# API,可以在 .NET、.NET Framework等框架下使用C#語言實現(xiàn)深度學(xué)習(xí)模型在指定平臺推理加速。

2YOLO-World

YOLO-World是一種創(chuàng)新的實時開放詞匯對象檢測技術(shù),由騰訊AI實驗室開發(fā)。它旨在解決傳統(tǒng)目標(biāo)檢測方法在開放場景中受預(yù)定義類別限制的問題,通過視覺語言建模和大規(guī)模數(shù)據(jù)集預(yù)訓(xùn)練,增強了YOLO系列檢測器對開放詞匯的檢測能力。

該技術(shù)的核心思想在于,利用一個可重參數(shù)化的視覺語言路徑聚合網(wǎng)絡(luò)(RepVL-PAN)來連接文本和圖像特征,并引入基于區(qū)域的文本對比損失進(jìn)行預(yù)訓(xùn)練。這種設(shè)計使得YOLO-World能夠在沒有見過具體樣本的情況下,檢測出廣泛的物體類別。同時,它還能在保持高性能的同時,降低計算要求,從而適用于實時應(yīng)用。

通過這種方式,YOLO-World能夠增強對開放詞匯的檢測能力,使其能夠在沒有預(yù)先定義類別的情況下識別出廣泛的物體。這種能力使得YOLO-World在實時應(yīng)用中,如自動駕駛、視頻監(jiān)控、工業(yè)質(zhì)檢等領(lǐng)域具有廣泛的應(yīng)用前景。同時,YOLO-World還通過優(yōu)化模型架構(gòu)和訓(xùn)練策略,實現(xiàn)了高性能和實時性的平衡。它能夠在保持高準(zhǔn)確率的同時,降低計算要求,從而滿足實際應(yīng)用中對于實時性的需求。

總的來說,YOLO-World是一種高效、實時且靈活的開放詞匯目標(biāo)檢測器,具有廣泛的應(yīng)用前景和巨大的潛力。它不僅能夠解決傳統(tǒng)目標(biāo)檢測方法在開放場景中的局限性,還能夠為各行業(yè)提供實時、準(zhǔn)確的物體檢測解決方案。

2模型獲取

YOLO-World模型可以通過[YOLO-World GitHub](https://github.com/AILab-CVC/YOLO-World.git)獲取,小編嘗試了一下,步驟比較復(fù)雜,且配置起來比較麻煩,因此如果是初學(xué)者,不建議使用,下面介紹一個比較簡單的導(dǎo)出方式:通過Ultralytics 導(dǎo)出。

Ultralytics 提供了一系列用于計算機視覺任務(wù)的工具,包括目標(biāo)檢測、圖像分類、語義分割和人臉識別等。這些工具基于流行的深度學(xué)習(xí)框架如PyTorch,并通過簡化復(fù)雜任務(wù)的實現(xiàn)過程,使用戶能夠更輕松地進(jìn)行模型訓(xùn)練和性能評估。

首先安裝Ultralytics 環(huán)境:

Ultralytics 可以通過pip安裝,在環(huán)境中輸入以下指令即可:

pip install ultralytics

然后通過Python導(dǎo)出模型:

模型導(dǎo)出代碼如下所示:

from ultralytics import YOLO
# Initialize a YOLO-World model
model = YOLO('yolov8s-worldv2.pt')
# Define custom classes
model.set_classes(["person", "bus"])
# Export the model
model.export(format='onnx')

模型導(dǎo)出后結(jié)構(gòu)如下圖所示:

wKgZombRhnKANB7EAAIOYk6m67c735.png

與其他模型不同的時,YOLO-World模型在推理時需要指定目標(biāo)對象名稱,因此其輸入包括一個目標(biāo)對象名稱的節(jié)點,但是目前ONNX模型不支持字符輸入。因此在模型導(dǎo)出時,根據(jù)自己的模型需求,對需要進(jìn)行識別的對象名稱,進(jìn)行定義;接著在導(dǎo)出模型時,會將定義的類別字符轉(zhuǎn)換為權(quán)重,直接加載到模型中。

這樣在模型推理時,就無需再進(jìn)行文本權(quán)重轉(zhuǎn)換,提升模型推理的速度;但這樣也會導(dǎo)致導(dǎo)出的模型無法再修改類別,如果需要更改類別,就需要重新導(dǎo)出模型。

3項目配置

1源碼下載與項目配置

首先使用Git克隆項目源碼。輸入以下指令:

git clone https://github.com/guojin-yan/OpenVINO-CSharp-API-Samples.git

代碼下載完成后,使VS 2022打開解決方案Samples.sln文件,找到y(tǒng)olo-world-opencvsharp-net4.8項目,如下圖所示:

wKgaombRhn-ALBbsAAIkZTWJ2Do025.png

接下來安裝依賴項。首先是安裝OpenVINO C# API項目依賴,通過NuGet安裝一下包即可:

OpenVINO.CSharp.API
OpenVINO.runtime.win
OpenVINO.CSharp.API.Extensions
OpenVINO.CSharp.API.Extensions.OpenCvSharp

關(guān)于在不同平臺上搭建 OpenVINO C# API 開發(fā)環(huán)境請參考以下文章:

《在Windows上搭建OpenVINOC#開發(fā)環(huán)境》:

https://github.com/guojin-yan/OpenVINO-CSharp-API/blob/csharp3.1/docs/inatall/Install_OpenVINO_CSharp_Windows_cn.md

《在Linux上搭建OpenVINOC#開發(fā)環(huán)境》

https://github.com/guojin-yan/OpenVINO-CSharp-API/blob/csharp3.1/docs/inatall/Install_OpenVINO_CSharp_Linux_cn.md

《在MacOS上搭建OpenVINOC#開發(fā)環(huán)境》

https://github.com/guojin-yan/OpenVINO-CSharp-API/blob/csharp3.1/docs/inatall/Install_OpenVINO_CSharp_MacOS_cn.md

接下來安裝使用到的圖像處理庫 OpenCvSharp,通過NuGet安裝一下包即可:

OpenCvSharp4
OpenCvSharp4.Extensions
OpenCvSharp4.runtime.win

關(guān)于在其他平臺上搭建 OpenCvSharp 開發(fā)環(huán)境請點擊參閱以下文章:《【OpenCV】在Linux上使用OpenCvSharp》、《【OpenCV】在MacOS上使用OpenCvSharp》。

添加完成項目依賴后,項目的配置文件如下所示:



 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

2定義模型預(yù)測方法

使用OpenVINO C# API部署模型主要包括以下幾個步驟:

初始化 OpenVINO Runtime Core

讀取本地模型(將圖片數(shù)據(jù)預(yù)處理方式編譯到模型)

將模型編譯到指定設(shè)備

創(chuàng)建推理通道

處理圖像輸入數(shù)據(jù)

設(shè)置推理輸入數(shù)據(jù)

模型推理

獲取推理結(jié)果

處理結(jié)果數(shù)據(jù)

下面根據(jù)模型部署流程,詳細(xì)介紹一下該模型的部署代碼:

該項目主要使用到OpenCvSharp與OpenVINO C# API這兩個工具包,因此需要添加以下命名空間:

using OpenCvSharp;
using OpenVinoSharp;
using OpenVinoSharp.Extensions.process;

1) 初始化 OpenVINO Runtime Core

Core core = new Core();

2) 讀取本地模型

Model model = core.read_model(tb_model_path.Text);

3) 將模型編譯到指定設(shè)備

CompiledModel compiled_model = core.compile_model(model, cb_device.SelectedItem.ToString());

4) 創(chuàng)建推理通道

InferRequest request = compiled_model.create_infer_request();

5) 處理圖像輸入數(shù)據(jù)

Mat image = Cv2.ImRead(tb_input_path.Text);
Mat mat = new Mat();
Cv2.CvtColor(image, mat, ColorConversionCodes.BGR2RGB);
mat = OpenVinoSharp.Extensions.process.Resize.letterbox_img(mat, (int)input_shape[2], out factor);
mat = Normalize.run(mat, true);
float[] input_data = Permute.run(mat);

6) 設(shè)置推理輸入數(shù)據(jù)

Tensor input_tensor = request.get_input_tensor();
input_tensor.set_data(input_data);

7) 模型推理

request.infer();

8) 獲取推理結(jié)果

Tensor output_boxes = request.get_tensor("boxes");
float[] boxes = output_boxes.get_data((int)output_boxes.get_size());
Tensor output_scores = request.get_tensor("scores");
float[] scores = output_scores.get_data((int)output_scores.get_size());
Tensor output_labels = request.get_tensor("labels");
int[] labels = output_labels.get_data((int)output_labels.get_size());

9) 處理結(jié)果數(shù)據(jù)

DetResult postprocess(float[] result, int categ_nums, float factor) 
{
  Mat result_data = new Mat(4 + categ_nums, 8400, MatType.CV_32F,result);
  result_data = result_data.T();


  // Storage results list
  List position_boxes = new List();
  List classIds = new List();
  List confidences = new List();
  // Preprocessing output results
  for (int i = 0; i < result_data.Rows; i++)
 ? ?{
 ? ? ? ?Mat classesScores = new Mat(result_data, new Rect(4, i, categ_nums, 1));
 ? ? ? ?Point maxClassIdPoint, minClassIdPoint;
 ? ? ? ?double maxScore, minScore;
 ? ? ? ?// Obtain the maximum value and its position in a set of data
 ? ? ? ?Cv2.MinMaxLoc(classesScores, out minScore, out maxScore,
 ? ? ? ? ? ?out minClassIdPoint, out maxClassIdPoint);
 ? ? ? ?// Confidence level between 0 ~ 1
 ? ? ? ?// Obtain identification box information
 ? ? ? ?if (maxScore > 0.25)
    {
      float cx = result_data.At(i, 0);
      float cy = result_data.At(i, 1);
      float ow = result_data.At(i, 2);
      float oh = result_data.At(i, 3);
      int x = (int)((cx - 0.5 * ow) * factor);
      int y = (int)((cy - 0.5 * oh) * factor);
      int width = (int)(ow * factor);
      int height = (int)(oh * factor);
      Rect box = new Rect();
      box.X = x;
      box.Y = y;
      box.Width = width;
      box.Height = height;


      position_boxes.Add(box);
      classIds.Add(maxClassIdPoint.X);
      confidences.Add((float)maxScore);
    }
  }
  // NMS non maximum suppression
  int[] indexes = new int[position_boxes.Count];
  float score = float.Parse(tb_score.Text);
  float nms = float.Parse(tb_nms.Text);
  CvDnn.NMSBoxes(position_boxes, confidences, score, nms, out indexes);
  DetResult re = new DetResult();
  // 
  for (int i = 0; i < indexes.Length; i++)
 ? ?{
 ? ? ? ?int index = indexes[i];
 ? ? ? ?re.add(classIds[index], confidences[index], position_boxes[index]);
 ? ?}
 ? ?return re;
}

以上就是使用OpenVINO C# API 部署YOLO-World模型的關(guān)鍵代碼,具體代碼可以下載項目源碼進(jìn)行查看。

4項目運行與演示

配置好項目后,點擊運行,本次我們提供給大家的是使用.NET Framework4.8開發(fā)的窗體應(yīng)用程序,如下圖所示,主要還包含五個部分,分別為推理設(shè)置區(qū)域、控制按鈕、推理信息輸出區(qū)域、原圖展示區(qū)域、推理結(jié)果展示區(qū)域。在使用時,用戶可以根據(jù)自己需求,選擇導(dǎo)出的模型以及待推理數(shù)據(jù),支持圖片數(shù)據(jù)以及視頻數(shù)據(jù),接著輸入自己導(dǎo)出的lables名稱,同時還可以修改推理設(shè)備、數(shù)據(jù)處理所需的參數(shù)等,接著就可以依次點擊加載模型、模型推理按鈕,進(jìn)行模型推理。最后模型推理結(jié)果如圖所示。

該模型在導(dǎo)出時,只定義了bus、person類別,因此在模型推理后,可以識別出圖片中的bus、person元素。

wKgZombRhruAbGuNAAEeESJ_pis145.png

接著又測試了導(dǎo)出時只定義person類別的模型,如下圖所示,最后識別出來的結(jié)果只有person。

wKgZombRhtiAf03wAAEU16zcf10952.png

最后,我們提供了一個行人檢測視頻案例,點擊此處查看視頻。

5總結(jié)

在該項目中,我們結(jié)合之前開發(fā)的OpenVINO C# API 項目部署YOLOv9模型,成功實現(xiàn)了對象目標(biāo)檢測與實例分割,并且根據(jù)不同開發(fā)者的使用習(xí)慣,同時提供了OpenCvSharp以及Emgu.CV兩種版本,供各位開發(fā)者使用。最后如果各位開發(fā)者在使用中有任何問題,歡迎大家與我聯(lián)系。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 英特爾
    +關(guān)注

    關(guān)注

    60

    文章

    9814

    瀏覽量

    171111
  • API
    API
    +關(guān)注

    關(guān)注

    2

    文章

    1463

    瀏覽量

    61670
  • 目標(biāo)檢測
    +關(guān)注

    關(guān)注

    0

    文章

    197

    瀏覽量

    15571
  • OpenVINO
    +關(guān)注

    關(guān)注

    0

    文章

    81

    瀏覽量

    155

原文標(biāo)題:使用OpenVINO? C# API部署YOLO-World實現(xiàn)實時開放詞匯對象檢測丨開發(fā)者實戰(zhàn)

文章出處:【微信號:英特爾物聯(lián)網(wǎng),微信公眾號:英特爾物聯(lián)網(wǎng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    基于C#OpenVINO?在英特爾獨立顯卡上部署PP-TinyPose模型

    作者:英特爾物聯(lián)網(wǎng)行業(yè)創(chuàng)新大使 楊雪鋒 OpenVINO 2022.2版開始支持英特爾獨立顯卡,還能通過“累計吞吐量”同時啟動集成顯卡 + 獨立顯卡助力全速 AI 推理。本文基于 C#
    的頭像 發(fā)表于 11-18 18:27 ?2382次閱讀

    如何使用OpenVINO C++ API部署FastSAM模型

    的位置和邊界。本文將介紹如何使用 OpenVINO C++ API 部署 FastSAM 模型,以實現(xiàn)快速高效的語義分割。在前文中我們發(fā)表了
    的頭像 發(fā)表于 11-17 09:53 ?780次閱讀
    如何使用<b class='flag-5'>OpenVINO</b> <b class='flag-5'>C</b>++ <b class='flag-5'>API</b><b class='flag-5'>部署</b>FastSAM模型

    【EASY EAI Nano】RV1126實時讀取攝像頭并進(jìn)行yolo檢測顯示

    實現(xiàn)了三個并行模塊,分別是 攝像頭讀取,使用opencv轉(zhuǎn)換到適合大小 yolo檢測 托管到Qt進(jìn)行現(xiàn)實 檢測的DEMO從每幀10次
    發(fā)表于 01-14 18:53

    為什么無法通過Heroku部署OpenVINO?工具套件?

    無法通過 Heroku 部署OpenVINO?工具套件: Importeror:libpython3.9.so.1.0:無法打開共享對象文件:無此類文件或目錄
    發(fā)表于 08-14 08:58

    解析OpenVINO? + SSD 實時對象檢測

    前面我們了解OpenVINO 如何部署圖像分類網(wǎng)絡(luò)ResNet,本文我們將會學(xué)習(xí)OpenVINO對象檢測網(wǎng)絡(luò)的
    的頭像 發(fā)表于 05-18 09:35 ?1895次閱讀
    解析<b class='flag-5'>OpenVINO</b>? + SSD <b class='flag-5'>實時</b><b class='flag-5'>對象</b><b class='flag-5'>檢測</b>

    C#實現(xiàn)ActiveX控件開發(fā)與部署---原理篇

    C#實現(xiàn)ActiveX控件開發(fā)與部署---原理篇(大工電源技術(shù)在線作業(yè))-該文檔為C#實現(xiàn)ActiveX控件開發(fā)與
    發(fā)表于 09-27 17:32 ?9次下載
    <b class='flag-5'>C#</b><b class='flag-5'>實現(xiàn)</b>ActiveX控件開發(fā)與<b class='flag-5'>部署</b>---原理篇

    C#實現(xiàn)ActiveX控件開發(fā)與部署

    C#實現(xiàn)ActiveX控件開發(fā)與部署(肇慶理士電源技術(shù)有限公司鳥瞰圖)-該文檔為C#實現(xiàn)ActiveX控件開發(fā)與
    發(fā)表于 09-27 17:36 ?6次下載
    <b class='flag-5'>C#</b><b class='flag-5'>實現(xiàn)</b>ActiveX控件開發(fā)與<b class='flag-5'>部署</b>

    OpenVINO? C# API詳解與演示

    OpenVINO C# API 支持 NuGet 程序包安裝方式,這與 OpenVINO C++ 庫的安裝過程相比,更加簡單。如果使用 Vi
    的頭像 發(fā)表于 10-13 16:39 ?673次閱讀
    <b class='flag-5'>OpenVINO</b>?  <b class='flag-5'>C#</b> <b class='flag-5'>API</b>詳解與演示

    基于OpenVINO Python API部署RT-DETR模型

    RT-DETR 是在 DETR 模型基礎(chǔ)上進(jìn)行改進(jìn)的,一種基于 DETR 架構(gòu)的實時端到端檢測器,它通過使用一系列新的技術(shù)和算法,實現(xiàn)了更高效的訓(xùn)練和推理,我們將在 Python、C+
    的頭像 發(fā)表于 10-20 11:15 ?848次閱讀
    基于<b class='flag-5'>OpenVINO</b> Python <b class='flag-5'>API</b><b class='flag-5'>部署</b>RT-DETR模型

    如何使用OpenVINO Python API部署FastSAM模型

    的位置和邊界。本文將介紹如何使用 OpenVINO Python API 部署 FastSAM 模型,以實現(xiàn)快速高效的語義分割。
    的頭像 發(fā)表于 10-27 11:04 ?635次閱讀

    基于OpenVINO C++ API部署RT-DETR模型

    RT-DETR 是在 DETR 模型基礎(chǔ)上進(jìn)行改進(jìn)的,一種基于 DETR 架構(gòu)的實時端到端檢測器,它通過使用一系列新的技術(shù)和算法,實現(xiàn)了更高效的訓(xùn)練和推理,在前文我們發(fā)表了《基于 OpenVI
    的頭像 發(fā)表于 11-03 14:30 ?704次閱讀
    基于<b class='flag-5'>OpenVINO</b> <b class='flag-5'>C</b>++ <b class='flag-5'>API</b><b class='flag-5'>部署</b>RT-DETR模型

    基于OpenVINO C# API部署RT-DETR模型

    C# 環(huán)境下使用該模型應(yīng)用到工業(yè)檢測中,因此在本文中,我們將向大家展示使用 OpenVINO Csharp API 部署 RT-DETR
    的頭像 發(fā)表于 11-10 16:59 ?657次閱讀
    基于<b class='flag-5'>OpenVINO</b> <b class='flag-5'>C#</b> <b class='flag-5'>API</b><b class='flag-5'>部署</b>RT-DETR模型

    OpenVINO? Java API應(yīng)用RT-DETR做目標(biāo)檢測器實戰(zhàn)

    本文將從零開始詳細(xì)介紹環(huán)境搭建的完整步驟,我們基于英特爾開發(fā)套件AIxBoard為硬件基礎(chǔ)實現(xiàn)了Java在Ubuntu 22.04系統(tǒng)上成功使用OpenVINO? Java API,并且成功運行了RT-DETR
    的頭像 發(fā)表于 03-18 15:04 ?694次閱讀
    <b class='flag-5'>OpenVINO</b>? Java <b class='flag-5'>API</b>應(yīng)用RT-DETR做目標(biāo)<b class='flag-5'>檢測</b>器實戰(zhàn)

    OpenVINO? C# API部署YOLOv9目標(biāo)檢測和實例分割模型

    YOLOv9模型是YOLO系列實時目標(biāo)檢測算法中的最新版本,代表著該系列在準(zhǔn)確性、速度和效率方面的又一次重大飛躍。
    的頭像 發(fā)表于 04-03 17:35 ?659次閱讀
    <b class='flag-5'>OpenVINO</b>? <b class='flag-5'>C#</b> <b class='flag-5'>API</b><b class='flag-5'>部署</b>YOLOv9目標(biāo)<b class='flag-5'>檢測</b>和實例分割模型

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

    的模型設(shè)計策略,從效率和精度兩個角度對YOLOs的各個組成部分進(jìn)行了全面優(yōu)化,大大降低了計算開銷,增強了性能。在本文中,我們將結(jié)合OpenVINO C# API使用最新發(fā)布的OpenVINO
    的頭像 發(fā)表于 06-21 09:23 ?860次閱讀
    用<b class='flag-5'>OpenVINO</b> <b class='flag-5'>C#</b> <b class='flag-5'>API</b>在intel平臺<b class='flag-5'>部署</b>YOLOv10目標(biāo)<b class='flag-5'>檢測</b>模型