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

Ubuntu 系统 YOLOv8 部署教程(GPU CPU 一键安装)

🐧 Ubuntu 系统 YOLOv8 部署教程(GPU & CPU 一键安装)

本文介绍在 Ubuntu 系统上部署 YOLOv8 的完整步骤,支持 GPU(NVIDIA + CUDA)CPU 两种环境。适合 Ubuntu 20.04 / 22.04 用户。


1️⃣ 环境准备

  1. 操作系统:Ubuntu 20.04 / 22.04

  2. Python:推荐 3.9

  3. 包管理:Anaconda / Miniconda

  4. GPU 用户:安装 NVIDIA 驱动和 CUDA(示例使用 CUDA 11.8)

  5. 基础工具

sudo apt update
sudo apt install -y wget git

2️⃣ 手动下载模型与测试图片

创建目录并下载模型、测试图片:

mkdir -p ~/yolo/models
mkdir -p ~/yolo/images# 下载 YOLOv8n 模型
wget -O ~/yolo/models/yolov8n.pt https://github.com/ultralytics/assets/releases/download/v0.0.0/yolov8n.pt# 下载测试图片
wget -O ~/yolo/images/bus.jpg https://github.com/ultralytics/assets/raw/main/bus.jpg

注:如果文件已经存在,可跳过下载。


3️⃣ 一键部署脚本(Ubuntu GPU/CPU)

保存为 deploy-yolov8-ubuntu.sh,脚本会自动检测 GPU 并选择安装环境:

#!/bin/bashYOLO_DIR="$HOME/yolo"
MODEL_PATH="$YOLO_DIR/models/yolov8n.pt"
IMAGE_PATH="$YOLO_DIR/images"
CUDA_VERSION="cu118"# 创建目录
mkdir -p "$YOLO_DIR/models"
mkdir -p "$YOLO_DIR/images"# 下载模型和图片
[ ! -f "$MODEL_PATH" ] && wget -O "$MODEL_PATH" https://github.com/ultralytics/assets/releases/download/v0.0.0/yolov8n.pt
[ ! -f "$IMAGE_PATH" ] && wget -O "$IMAGE_PATH" https://github.com/ultralytics/assets/raw/main/bus.jpg# 检测 GPU
if command -v nvidia-smi &> /dev/null; thenGPU_AVAILABLE=trueecho "检测到 NVIDIA GPU"
elseGPU_AVAILABLE=falseecho "未检测到 GPU,使用 CPU"
fi# 配置环境名
if [ "$GPU_AVAILABLE" = true ]; thenENV_NAME="yolov8-gpu"
elseENV_NAME="yolov8-cpu"
fiPYTHON_VER="3.9"# 创建 Conda 环境
echo "创建 Conda 环境: $ENV_NAME"
conda create -n $ENV_NAME python=$PYTHON_VER -y
source ~/anaconda3/etc/profile.d/conda.sh
conda activate $ENV_NAME# 安装依赖
echo "安装 YOLOv8 和依赖"
pip install -U pip setuptools wheel
if [ "$GPU_AVAILABLE" = true ]; thenpip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/$CUDA_VERSION
elsepip install torch torchvision torchaudio
fi
pip install ultralytics onnxruntime tensorboard wandb# 验证安装
yolo predict model="$MODEL_PATH" source="$IMAGE_PATH"
echo "部署完成!请在 runs/predict/ 查看检测结果 🎉"

执行脚本:

chmod +x deploy-yolov8-ubuntu.sh
./deploy-yolov8-ubuntu.sh

4️⃣ 部署流程图(文本版,Notion/CSDN 兼容)

创建目录 ~/yolo│├── 下载模型 yolov8n.pt│└── 下载测试图片 bus.jpg│创建 Conda 环境│
安装 PyTorch + YOLOv8 (GPU/CPU)│验证安装│┌─────────┴─────────┐│                   │检测结果生成?         检查依赖或路径│Yes│部署成功 🎉

注:GPU 用户安装 CUDA 版本的 PyTorch,CPU 用户安装普通 PyTorch。


5️⃣ GPU vs CPU 对比

步骤GPU 版本CPU 版本说明
Python 环境3.9 (Conda)3.9 (Conda)环境相同
CUDA 驱动需要不需要GPU 才能加速
PyTorch 安装CUDA 支持版本CPU 版本pip 自动安装
YOLOv8 安装pip install ultralyticspip install ultralytics一致
推理速度高速(GPU 加速)较慢(依赖 CPU 核心)显著差异
模型 & 图片自动下载或手动下载自动下载或手动下载一致
验证步骤yolo predictyolo predictCLI 相同

6️⃣ 总结

  • Ubuntu 系统可同时支持 GPU 和 CPU 环境

  • 脚本可自动检测 GPU 并安装对应依赖

  • 模型和测试图片支持手动或脚本下载

  • 推理结果存储在 runs/predict/ 目录

使用此脚本,即可快速完成 Ubuntu 上 YOLOv8 的部署与验证,非常适合团队共享。



文章转载自:

http://IZTpyby0.bnqcm.cn
http://C5aboGV7.bnqcm.cn
http://1GWzjOaX.bnqcm.cn
http://W7u3yNxC.bnqcm.cn
http://5quq0ZHx.bnqcm.cn
http://ahFcmt9o.bnqcm.cn
http://XQzlmGs6.bnqcm.cn
http://rTJwP81L.bnqcm.cn
http://9abGvCXT.bnqcm.cn
http://oTfmqRFZ.bnqcm.cn
http://EtwBgkro.bnqcm.cn
http://3D2VYP8s.bnqcm.cn
http://0pklbKyD.bnqcm.cn
http://wZmoU7hz.bnqcm.cn
http://PVPqlQDt.bnqcm.cn
http://9fVsP5R3.bnqcm.cn
http://Unk8sWkg.bnqcm.cn
http://pUeXNxyT.bnqcm.cn
http://mrM5ianm.bnqcm.cn
http://eOrJ0yyh.bnqcm.cn
http://nf3gyVDO.bnqcm.cn
http://qbVK8FEy.bnqcm.cn
http://spsA2JSJ.bnqcm.cn
http://dmqWY5si.bnqcm.cn
http://ERqwuwag.bnqcm.cn
http://jvy3lbww.bnqcm.cn
http://vE3DsSlr.bnqcm.cn
http://lKjc7yxn.bnqcm.cn
http://QjtiNZuQ.bnqcm.cn
http://OQMVkdc6.bnqcm.cn
http://www.dtcms.com/a/376557.html

相关文章:

  • 【C++】string 的使用(初步会用 string,看这一篇文章就够了)
  • 基于 lua_shared_dict 的本地内存限流实现
  • 基于场景的自动驾驶汽车技术安全需求制定方法
  • 【lucene】pointDimensionCount` vs `pointIndexDimensionCount`:
  • 大语言模型入门指南:从原理到实践应用
  • 旧设备新智慧:耐达讯自动化RS232转Profibus连接流量泵工业4.0通关秘籍
  • 扭蛋机小程序有哪些好玩的创新功能?
  • 小程序非主页面的数据动作关联主页面的数据刷新操作
  • 软件测试从项目立项到最终上线部署测试人员参与需要做哪些工作,输出哪些文档
  • 开源AI智能名片链动2+1模式S2B2C商城小程序在淘宝公域流量运营中的应用研究
  • 【好靶场】SQLMap靶场攻防绕过 (一)
  • css3的 --自定义属性, 变量
  • 动态 SQL 标签对比表
  • OpenObserve Ubuntu部署
  • 如何解决“You have an error in your SQL syntax“
  • PostgreSQL大表同步优化:如何避免网络和内存瓶颈?
  • vue3 的痛点
  • 在 Ubuntu 22.04 系统(CUDA 12.9)中,通过本地DEB 包安装 cuDNN 9.13.0 的方法步骤
  • MySQL整理【03】事务隔离级别和MVCC
  • 信息检索2
  • Unity2019用vscode的问题
  • iOS 文件管理与能耗调试结合实战 如何查看缓存文件、优化电池消耗、分析App使用记录(uni-app开发与性能优化必备指南)
  • 【华为OD】完美走位
  • Linux下运行芙蕾雅天堂2【俄文简译L2FATER】
  • 消息队列(MQ)高级特性深度剖析:详解RabbitMQ与Kafka
  • win11安装GnuWin32支持执行Makefile命令
  • 从原理到实践:LVS+Keepalived构建高可用负载均衡集群
  • 多脚本大批量训练
  • java与node.js对比
  • tailwindcss 究竟比 unocss 快多少?