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

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*

http://www.xdnf.cn/news/4654.html

相关文章:

  • Linux开发工具【中】
  • 适配国产化,私有化部署的局域网即时通讯工具-BeeWorks
  • 【已解决】WORD域相关问题;错误 未找到引用源;复制域出错;交叉引用域到底是个啥
  • 一种机载扫描雷达实时超分辨成像方法——论文阅读
  • 148.WEB渗透测试-MySQL基础(三)
  • 第四章 OpenCV篇—图像梯度与边缘检测—Python
  • 详细聊聊 Synchronized,以及锁的升级过程
  • 二极管的动态特性
  • AI(学习笔记第二课) 使用langchain进行AI开发
  • Coco AI 开源应用程序 - 搜索、连接、协作、您的个人 AI 搜索和助手,都在一个空间中。
  • 【CTFer成长之路】举足轻重的信息搜集
  • 数据结构之串
  • 【PmHub后端篇】PmHub Gateway全局过滤器:接口调用耗时统计及黑白名单配置技术深度解析
  • 57.[前端开发-前端工程化]Day04-webpack插件模式-搭建本地服务器
  • XML语言
  • 企业开发平台大变革:AI 代理 + 平台工程重构数字化转型路径
  • Android单例模式知识总结
  • 02_JVM
  • Mockoon 使用教程
  • 为什么使用Less替代原始CSS?
  • 学习黑客MAC 地址
  • 数字孪生市场格局生变:中国2025年规模214亿,工业制造领域占比超40%
  • 安卓应用卡顿、性能低下的背后原因
  • 【文献阅读】Depth Anything Unleashing the Power of Large-Scale Unlabeled Data
  • 2025-05-08 Unity 网络基础9——FTP通信
  • Linux的基础开发工具
  • 手机上使用的记录笔记的软件推荐哪一款
  • SAP 交货单行项目含税金额计算报cx_sy_zerodivide处理
  • 云手机虚拟地址技术的运营场景
  • n8n - 开放灵活的智能自动化工作流平台