使用 OpenVINO 执行提供程序在 C# 中进行 YOLOv3 对象检测

  1. 对象检测示例使用来自 ONNX 模型动物园的 YOLOv3 深度学习 ONNX 模型。

  2. 该示例涉及将图像呈现给 ONNX Runtime (RT),后者使用 OpenVINO Execution Provider for ONNX RT 在英特尔® NCS2 棒 (MYRIADX 设备) 上运行推理。该示例使用 ImageSharp 进行图像处理,并使用 ONNX Runtime OpenVINO EP 进行推理。

此示例的源代码可在此处获取:here

如何构建

先决条件

  1. 为您操作系统(Mac、Windows 或 Linux)安装 .NET Core 3.1 或更高版本。

  2. 英特尔® OpenVINO 工具套件发行版 (Intel® Distribution of OpenVINO toolkit)

  3. 使用任何示例图像作为示例的输入。

  4. 从 ONNX 模型动物园下载最新的 YOLOv3 模型。此示例改编自 ONNX Model Zoo。 从 YOLOv3 下载最新版本的模型。

安装用于 OpenVINO Execution Provider 的 ONNX Runtime

构建步骤

构建说明

参考文档

文档

构建带有 openvino 风味的 onnxruntime 的 nuget 包

./build.sh --config Release --use_openvino MYRIAD_FP16 --build_shared_lib --build_nuget

构建示例 C# 应用程序

  1. 创建一个新的控制台项目
dotnet new console
  1. 安装 Onnxruntime 和 ImageSharp 的 NuGet 包

    1. 使用 VS19 打开 Visual C# 项目文件 (.csproj)。
    2. 右键单击项目,导航到管理 NuGet 包。
    3. 从 nuget.org 安装 SixLabors.ImageSharp 包。
    4. 从您的构建目录 nuget-artifacts 安装 Microsoft.ML.OnnxRuntime.Managed 和 Microsoft.ML.OnnxRuntime.Openvino。
  2. 编译示例

dotnet build
  1. 运行示例
dotnet run [path-to-model] [path-to-image] [path-to-output-image]

参考

fasterrcnn_csharp

resnet50_csharp