当前位置: 首页 > news >正文

ubuntu yolov5(c++)算法部署

1.安装onnx 1.15.0

首先使用如下命令关闭 anaconda 对后续源码编译的影响;

# 禁用当前 conda 环境
conda deactivate# 确保 conda 初始化脚本不会自动激活 base 环境
conda config --set auto_activate_base false# 然后重新打开终端或执行
source ~/.bashrc

1.安装依赖项
sudo apt update
sudo apt install -y git cmake build-essential protobuf-compiler libprotobuf-dev# 更新 GSL,  确保是最新的版本
git clone https://github.com/microsoft/GSL.git
cd GSL && mkdir build && cd build
cmake .. && sudo make install# 更新 Google Test,  确保是最新的版本
git clone https://github.com/google/googletest.git
cd googletest && mkdir build && cd build
cmake .. && sudo make install2.克隆特定版本的ONNX仓库
git clone --recursive https://github.com/onnx/onnx.git
cd onnx
git checkout v1.15.0
git submodule update --init --recursive3.准备构建环境
mkdir build
cd build4.配置CMake
cmake .. \-DONNX_BUILD_TESTS=OFF \-DONNX_BUILD_BENCHMARKS=OFF \-DONNX_USE_PROTOBUF_SHARED_LIBS=ON \-DCMAKE_BUILD_TYPE=Release5.编译ONNX
make -j66.安装
sudo make install

2. 将ubuntu 系统上的cmake 版本升级到3.28.

卸载旧的版本sudo apt remove --purge cmake# 安装编译依赖
sudo apt update
sudo apt install -y build-essential libssl-dev wget# 下载源码(替换版本号)
wget https://github.com/Kitware/CMake/releases/download/v3.28.3/cmake-3.28.3.tar.gz
tar -xzvf cmake-3.28.3.tar.gz
cd cmake-3.28.3# 编译安装
./bootstrap
make -j6
sudo make install验证
cmake --version

3.安装onnx-runtime 1.15.0

1. 安装依赖项
sudo apt update
sudo apt install -y git cmake build-essential libssl-devsudo apt install -y libgtest-dev libgmock-dev2.克隆ONNX Runtime仓库
git clone --recursive https://github.com/microsoft/onnxruntime.git
cd onnxruntimegit checkout v1.15.0
git submodule update --init --recursive建议去以下网址手动下载对应版本的onnx runtime
https://github.com/microsoft/onnxruntime/releases?page=2
找到source code 下载并解压3.构建配置
./build.sh \--config Release \--build_shared_lib \--enable_pybind \--use_cuda \--cuda_home /usr/local/cuda \--cudnn_home /usr/local/cuda \--parallel $(nproc)--config Release	构建Release版本
--build_shared_lib	构建共享库(.so)
--parallel	并行构建
--skip_tests	跳过测试
--use_cuda	启用CUDA支持
--use_tensorrt	启用TensorRT支持
--use_openvino	启用OpenVINO支持
--use_dnnl	启用DNNL支持4. 安装选项
构建完成后,库文件位于:
./build/Linux/Release/系统安装
sudo cp ./build/Linux/Release/libonnxruntime.so* /usr/local/lib/
sudo ldconfig
sudo cp -r include/onnxruntime /usr/local/include/

3. 安装tensorrt

官网下载tensorrt deb 安装包
https://developer.nvidia.com/tensorrt解压并安装
tar -xzvf cudnn-linux-x86_64-8.9.4.25_cuda11-archive.tar.xz
sudo cp cudnn-*-archive/include/cudnn*.h /usr/local/cuda/include/
sudo cp -P cudnn-*-archive/lib/libcudnn* /usr/local/cuda/lib64/
sudo chmod a+r /usr/local/cuda/include/cudnn*.h /usr/local/cuda/lib64/libcudnn*

相关文章:

  • [特殊字符]【实战教程】用大模型LLM查询Neo4j图数据库(附完整代码)
  • 5、开放式PLC梯形图编程组件 - /自动化与控制组件/open-plc-programming
  • 秋招准备——2.跨时钟相关
  • 室内无人机自主巡检解决方案-自主方案
  • STM32-模电
  • Spring Cloud:概述,服务注册和服务发现,多机部署和负载均衡
  • 认识守卫-以及简单的示例和装饰器
  • 如何在macOS上通过SSHFS挂载远程文件系统
  • 驱动开发硬核特训 · Day 30(下篇): 深入解析 lm48100q I2C 音频编解码器驱动模型(基于 i.MX8MP)
  • Redis最新入门教程
  • 静态BFD配置
  • 信创生态核心技术栈:国产芯片架构适配与交叉编译优化指南
  • 2025最新:3分钟使用Docker快速部署Redis集群
  • node.js 实战——express图片保存到本地或服务器(七牛云、腾讯云、阿里云)
  • RISC-V hardfault分析工具,RTTHREAD-RVBACKTRACE
  • Marin说PCB之器件的3D数模匹配失效案例
  • 力扣刷题Day 43:矩阵置零(73)
  • MATLAB 在医疗行业的应用
  • 《AI大模型应知应会100篇》第52篇:OpenAI API 使用指南与最佳实践
  • 遗传算法求解异构车队VRPTW问题
  • “一节课、两小时”,体育正在回归“C位”
  • 巴总理召开国家指挥当局紧急会议
  • “仓促、有限”,美英公布贸易协议框架,两国分别获得了什么?
  • 上海楼市“银四”兑现:新房市场高端改善领跑,二手房量价企稳回升
  • 经彩申城!上海网络大V沙龙活动走进闵行
  • 巴基斯坦军方称印度袭击已致26死46伤