OpenVINO.CSharp.API 2024.1.0.1

There is a newer version of this package available.
See the version list below for details.
dotnet add package OpenVINO.CSharp.API --version 2024.1.0.1                
NuGet\Install-Package OpenVINO.CSharp.API -Version 2024.1.0.1                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="OpenVINO.CSharp.API" Version="2024.1.0.1" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add OpenVINO.CSharp.API --version 2024.1.0.1                
#r "nuget: OpenVINO.CSharp.API, 2024.1.0.1"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install OpenVINO.CSharp.API as a Cake Addin
#addin nuget:?package=OpenVINO.CSharp.API&version=2024.1.0.1

// Install OpenVINO.CSharp.API as a Cake Tool
#tool nuget:?package=OpenVINO.CSharp.API&version=2024.1.0.1                

📚 简介(Introduction)

   英特尔发行版 OpenVINO™工具套件基于oneAPI 而开发,可以加快高性能计算机视觉和深度学习视觉应用开发速度工具套件,适用于从边缘到云的各种英特尔平台上,帮助用户更快地将更准确的真实世界结果部署到生产系统中。通过简化的开发工作流程, OpenVINO™可赋能开发者在现实世界中部署高性能应用程序和算法。

  然而 OpenVINO™未提供 C# 语言接口,这对在 C# 中使用 OpenVINO™ 带来了很多麻烦,对此推出了 OpenVINO™ C# API,旨在推动 OpenVINO™在C#领域的应用,目前 OpenVINO™ C# API 已经更新迭代起到 csharp3.1 版本,相比于之前版本,OpenVINO™ C# API 3.1 版本做了较大程度上的更新.

  在OpenVINO™ C# API 3.0 版本时,由原来的重构 C++ API 改为直接读取 OpenVINO™ 官方 C API,使得应用更加灵活,所支持的功能更加丰富。OpenVINO™ C# API 3.0 接口参考 OpenVINO™ C++ API 来实现,因此在使用时更加接近 C++ API,这对熟悉使用C++ API的朋友会更加友好。

  当前推出的最新版本为 OpenVINO™ C# API 3.1 预发布版本,该版本在 3.0 版本上进行了进一步更新,完善了所有测试代码,并改进了一些错误,后续将根据最新版推出相关的案例项目与应用。

  最后,如果各位在使用中有什么问题,可以与我沟通联系,也欢迎广大C#开发者加入到OpenVINO™ C# API 开发中。

  Intel Distribution [OpenVINO™](www.openvino. ai) tool suite is developed based on the oneAPI and can accelerate the development speed of high-performance computer vision and deep learning visual applications. It is suitable for various Intel platforms from the edge to the cloud, helping users deploy more accurate real-world results to production systems faster. By simplifying the development workflow, OpenVINO™ Empowering developers to deploy high-performance applications and algorithms in the real world.

  However, OpenVINO™ does not provide a C # language interface, which brings a lot of trouble to using OpenVINO™ in C #. Therefore, OpenVINO™ C# API has been launched to promote the application of OpenVINO™ in the C # field. Currently, OpenVINO™ C# API has been updated and iterated to **csharp3.1 ** version, and compared to the previous version, OpenVINO™ C# API 3.1 has undergone significant updates

  In version 3.0 of OpenVINO™ C# API, the original refactoring of the C++API was changed to directly reading the official C API of OpenVINO™, making the application more flexible and supporting a richer range of functions. The OpenVINO™ C# API 3.0 interface is implemented based on OpenVINO™ C# API, so it is closer to the C++API when used, which is more friendly for friends who are familiar with using the C++API.

  The latest version currently released is **OpenVINO™ C# API 3.1 ** pre release version, which has been further updated on version 3.0, improving all test codes and addressing some errors. Relevant case projects and applications will be released based on the latest version in the future.

  Finally, if you have any questions during use, you can communicate and contact me. We also welcome C # developers to join us in OpenVINO™ C# API development.

NuGet Package

Core Managed Libraries

Package Description Link
OpenVINO.CSharp.API OpenVINO C# API core libraries NuGet Gallery
OpenVINO.CSharp.API.Extensions OpenVINO C# API core extensions libraries NuGet Gallery
OpenVINO.CSharp.API.Extensions.OpenCvSharp OpenVINO C# API core extensions libraries use OpenCvSharp NuGet Gallery
OpenVINO.CSharp.API.Extensions.EmguCV OpenVINO C# API core extensions libraries use EmguCV NuGet Gallery

Native Runtime Libraries

Package Description Link
OpenVINO.runtime.win Native bindings for Windows NuGet Gallery
OpenVINO.runtime.ubuntu.22-x86_64 Native bindings for ubuntu.22-x86_64 NuGet Gallery
OpenVINO.runtime.ubuntu.20-x86_64 Native bindings for ubuntu.20-x86_64 NuGet Gallery
OpenVINO.runtime.ubuntu.18-x86_64 Native bindings for ubuntu.18-x86_64 NuGet Gallery
OpenVINO.runtime.debian9-arm64 Native bindings for debian9-arm64 NuGet Gallery
OpenVINO.runtime.debian9-armhf Native bindings for debian9-armhf NuGet Gallery
OpenVINO.runtime.centos7-x86_64 Native bindings for centos7-x86_64 NuGet Gallery
OpenVINO.runtime.rhel8-x86_64 Native bindings for rhel8-x86_64 NuGet Gallery
OpenVINO.runtime.macos-x86_64 Native bindings for macos-x86_64 NuGet Gallery
OpenVINO.runtime.macos-arm64 Native bindings for macos-arm64 NuGet Gallery

Integration Library

Package Description Link
OpenVINO.CSharp.Windows All-in-one package for Windows NuGet Gallery

如何安装(Installation )

以下提供了OpenVINO™ C# API在不同平台的安装方法,可以根据自己使用平台进行安装。

The following provides installation methods for OpenVINO™ C# API on different platforms, which can be installed according to your own platform.

Windows

通过dotnet add package指令安装或通过Visual Studio安装以下程序包

dotnet add package OpenVINO.CSharp.API
dotnet add package OpenVINO.runtime.win
或者安装集成包——>
dotnet add package OpenVINO.CSharp.Windows

Linux

   linux平台我们根据官方编译的平台制作了对应的NuGet Package,以ubuntu.22-x86_64为例,通过dotnet add package指令安装:

dotnet add package OpenVINO.CSharp.API
dotnet add package OpenVINO.runtime.ubuntu.22-x86_64

  运行一次程序后,添加环境变量:

export LD_LIBRARY_PATH={Program generated executable file directory}/runtimes/ubuntu.22-x86_64/native
例如——>
export LD_LIBRARY_PATH=/home/ygj/Program/sample1/bin/Debug/net6.0/runtimes/ubuntu.22-x86_64/native

  如果对于一个全新平台(未安装过OpenVINO C++),需要安装一下依赖环境,切换到{Program generated executable file directory}/runtimes/ubuntu.22-x86_64/native目录下,运行以下指令:

sudo -E ./install_openvino_dependencies.sh

Mac OS

通过dotnet add package指令安装以下程序包

dotnet add package OpenVINO.CSharp.API
dotnet add package OpenVINO.runtime.macos-arm64

🏷开始使用(Usage)

如果你不知道如何使用,通过下面代码简单了解使用方法。

If you don't know how to use it, simply understand the usage method through the following code.

using OpenVinoSharp;  // 引用命名空间
namespace test
{
    internal class Program
    {
        static void Main(string[] args)
        {
            using Core core = new Core();  // 初始化 Core 核心
            using Model model = core.read_model("./model.xml");  // 读取模型文件
            using CompiledModel compiled_model = core.compiled_model(model, "AUTO");  // 将模型加载到设备
            using InferRequest infer_request = compiled_model.create_infer_request();  // 创建推理通道
            using Tensor input_tensor = infer_request.get_tensor("images");  // 获取输入节点Tensor
            infer_request.infer();  // 模型推理
            using Tensor output_tensor = infer_request.get_tensor("output0");  // 获取输出节点Tensor
        }
    }
}

💻 应用案例(Application)

获取更多应用案例请参考:OpenVINO-CSharp-API-Samples

For more application cases, please refer to: OpenVINO-CSharp-API-Samples

🗂API 文档(API Documentation)

如果想了解更多信息,可以参阅:OpenVINO™ C# API API Documented

If you want to learn more information, you can refer to: OpenVINO™ C# API API Documented

🎖 贡献(Contribution)

  如果您对OpenVINO™ 在C#使用感兴趣,有兴趣对开源社区做出自己的贡献,欢迎加入我们,一起开发OpenVINO™ C# API。

  如果你对该项目有一些想法或改进思路,欢迎联系我们,指导下我们的工作。

  If you are interested in using OpenVINO™ in C # and making your own contribution to the open source community, please join us to develop OpenVINO™ C# API together.   If you have any ideas or improvement ideas for this project, please feel free to contact us and guide our work.

🕿联系方式(Contact)

以下是我的联系方式:

E-mail:guojin_yjs@cumt.edu.cn

CSDN博客:https://guojin.blog.csdn.net

GitHub:https://github.com/guojin-yan

Gitee:https://gitee.com/guojin-yan

开源项目OpenVINO CSharp API:https://github.com/guojin-yan/OpenVINO-CSharp-API

视频网站:https://space.bilibili.com/222626791

微信公众号:CSharp与边缘模型部署

📖 许可证书(License)

本项目的发布受Apache 2.0 license许可认证。

The release of this project is certified under the Apache 2.0 license.

<div align=center><img src="https://s2.loli.net/2024/01/29/VIPU1MSwjEh2QAY.png" width=800></div>

Product Compatible and additional computed target framework versions.
.NET net5.0 is compatible.  net5.0-windows was computed.  net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
.NET Core netcoreapp3.1 is compatible. 
.NET Framework net46 is compatible.  net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 is compatible.  net48 is compatible.  net481 was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • .NETCoreApp 3.1

    • No dependencies.
  • .NETFramework 4.6

    • No dependencies.
  • .NETFramework 4.7.2

    • No dependencies.
  • .NETFramework 4.8

  • net5.0

    • No dependencies.
  • net6.0

    • No dependencies.
  • net8.0

    • No dependencies.

NuGet packages (5)

Showing the top 5 NuGet packages that depend on OpenVINO.CSharp.API:

Package Downloads
OpenVINO.CSharp.API.Extensions

Based on the C # platform, call the OpenVINO suite to deploy a deep learning model.

OpenVINO.CSharp.API.Extensions.OpenCvSharp

Based on the C # platform, call the OpenVINO suite to deploy a deep learning model.

OpenVINO.CSharp.Windows

OpenVINO wrapper for .NET. All-in-one package for Windows users.

OpenVINO.CSharp.API.Extensions.EmguCV

Based on the C # platform, call the OpenVINO suite to deploy a deep learning model.

OpenVINO.CSharp.API.Extensions.PaddleOCR

Deploy PaddleOCR model using OpenVINO C # API to achieve text image recognition.

GitHub repositories (1)

Showing the top 1 popular GitHub repositories that depend on OpenVINO.CSharp.API:

Repository Stars
guojin-yan/YoloDeployCsharp
Deploying Yolov8-det, Yolov8-pose, Yolov8-cls, and Yolov8-seg models based on C # programming language.
Version Downloads Last updated
2024.3.0.2 953 8/4/2024
2024.2.0.1 529 6/28/2024
2024.1.0.1 2,302 4/27/2024
2024.0.0.1 1,465 3/11/2024
2023.2.0.4 692 1/18/2024
2023.2.0.4-develop 476 12/30/2023
2023.2.0.3 578 11/30/2023
2023.2.0.2 332 11/26/2023
2023.2.0.1 306 11/24/2023
2023.1.0.1 627 10/22/2023

This version is a pre release version of OpenVINO™ C# API 3.0 and its features are not yet fully developed. If there are any issues during use, please feel free to contact me.