OnnxRuntime – 模型部署笔记2,在Visual Studio中配置Onnx Rumtime C++开发环境
Onnx Runtime模型部署笔记系列:
1 下载Onnx Runtime
Onnx Runtime Github主页:https://github.com/microsoft/onnxruntime
在写文章时,当前Onnx Runtime的最新版本为1.14.1,
进入到Onnx Runtime 1.14.1版本Release页面,下载onnxruntime-win-x86-1.14.1.zip
、onnxruntime-win-x64-1.14.1.zip、onnxruntime-win-x64-gpu-1.14.1.zip,如下图所示
其中:
- onnxruntime-win-x86-1.14.1.zip为在Windows上使用CPU的x86包
- onnxruntime-win-x64-1.14.1.zip为在Windows上使用CPU的x64包
- onnxruntime-win-x64-gpu-1.14.1.zip为在Windows上除了使用CPU之外,还可以使用CUDA和TensorRT的x64包,从发布的版本上并没有对应的x86包,也就是不支持32位
2 解压Onnx Runtime
CPU
在onnxruntime-win-x86-1.14.1.zip、onnxruntime-win-x64-1.14.1.zip这两个使用CPU的包中,解压之后可以看到包含一个include文件夹和lib文件夹
include文件夹中为头文件所在的文件夹,而lib文件夹中包含了
- onnxruntime.dll
- onnxruntime.lib
- onnxruntime_providers_shared.dll
- onnxruntime_providers_shared.lib文件
看到头文件以及lib、dll文件之后基本就知道如何在Visual Studio中配置相应的环境了。
CPU+CUDA+TensorRT
onnxruntime-win-x64-gpu-1.14.1.zip解压之后也是相同的include文件夹和lib文件夹,include文件夹中为头文件所在的文件夹,而lib文件夹中除了包含了
- onnxruntime.dll
- onnxruntime.lib
- onnxruntime_providers_shared.dll
- onnxruntime_providers_shared.lib文件
还包含了支持CUDA和TensorRT的相关库文件
- onnxruntime_providers_cuda.dll
- onnxruntime_providers_cuda.lib
- onnxruntime_providers_tensorrt.dll
- onnxruntime_providers_tensorrt.lib
3 在Visual Studio配置Onnx Runtime开发环境
我们以只使用CPU为例,使用onnxruntime-win-x86-1.14.1.zip、onnxruntime-win-x64-1.14.1.zip在在Visual Studio配置开发环境,所有文件夹路径都使用相对路径,便于项目移动以及在其他电脑上也能顺利编译。
1 配置头文件目录
在项目属性-C++-常规-附加包含目录中,将相应的Onnx Runtime的头文件文件夹路径添加进去,如下图
2 配置lib目录
在项目属性-链接器-常规-附加库目录中,将Onnx Rumtime的lib文件夹路径添加进去,如下图
3 测试开发环境
如果上述步骤完成,在项目中新建一个main.cpp
文件,将下面的代码粘贴到main.cpp
中,
#include <iostream>
#include <onnxruntime_cxx_api.h>
int main()
{
Ort::Env env(ORT_LOGGING_LEVEL_WARNING, "test");
return 0;
}
如果上述代码可以编译完成则说明开发环境配置成功,需要记住的是,在运行程序时需要将onnxruntime.dll、onnxruntime_providers_shared.dll拷贝到exe所在目录,不然会弹出找不到相应dll的错误。
本文作者:StubbornHuang
版权声明:本文为站长原创文章,如果转载请注明原文链接!
原文标题:OnnxRuntime – 模型部署笔记2,在Visual Studio中配置Onnx Rumtime C++开发环境
原文链接:https://www.stubbornhuang.com/2548/
发布于:2023年03月20日 17:36:50
修改于:2023年06月21日 17:03:11
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
评论
50