《Debian 系统上部署 YOLO11》

《Debian 系统上部署 YOLO11》

一、系统环境准备(基础必做)

首先更新Debian软件源并安装核心依赖,确保后续操作不报错:

bash 复制代码
# 1. 更新系统包列表并升级现有包
sudo apt update && sudo apt upgrade -y

# 2. 安装基础依赖(Python3、pip、虚拟环境、编译工具等)
sudo apt install -y git python3 python3-pip python3-venv python3-dev build-essential
  • 解释:python3-venv用于创建隔离的Python虚拟环境(避免污染系统Python),build-essential用于编译部分依赖包。

二、创建并激活Python虚拟环境(推荐)

虚拟环境能隔离项目依赖,是Python项目的最佳实践,新手务必使用:

bash 复制代码
# 1. 创建虚拟环境目录(命名为yolo11_env,可自定义)
python3 -m venv yolo11_env

# 2. 激活虚拟环境(激活后命令行前缀会显示 (yolo11_env))
source yolo11_env/bin/activate
  • 注意:后续所有操作都要在激活虚拟环境的状态下执行;退出虚拟环境可执行deactivate

三、安装YOLO11核心库(ultralytics)

YOLO11是Ultralytics官方维护的版本,直接安装ultralytics库即可,内置所有YOLO11模型:

bash 复制代码
# 1. 升级pip到最新版(避免安装依赖时出错)
pip install --upgrade pip

# 2. 安装ultralytics(核心库,包含YOLO11)
pip install ultralytics

(可选)GPU加速配置(有NVIDIA显卡才需要)

如果你的Debian机器有NVIDIA显卡,可配置CUDA加速(检测速度提升10倍以上):

步骤1:安装NVIDIA驱动
bash 复制代码
# 1. 添加Debian非免费源(Debian 11/12需开启contrib/non-free)
sudo apt edit-sources
# 编辑时确保源包含:main contrib non-free non-free-firmware(以Debian 12为例)
# 示例源:deb http://deb.debian.org/debian bookworm main contrib non-free non-free-firmware

# 2. 安装NVIDIA驱动并重启
sudo apt update
sudo apt install -y nvidia-driver firmware-misc-nonfree
sudo reboot  # 重启后驱动生效

# 3. 验证驱动是否安装成功(能看到显卡信息即正常)
nvidia-smi
步骤2:安装带CUDA的PyTorch(YOLO11依赖)
bash 复制代码
# 1. 卸载可能冲突的CPU版PyTorch(如果已装)
pip uninstall -y torch torchvision torchaudio

# 2. 安装适配CUDA 12.1的PyTorch(Debian通用版本)
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121

# 3. 重新升级ultralytics,确保适配GPU
pip install --upgrade ultralytics

四、验证YOLO11部署成功

方式1:命令行快速测试(最简)

激活虚拟环境后,运行以下命令,自动下载YOLO11n(轻量模型)并检测示例图片:

bash 复制代码
# 检查ultralytics环境
yolo check

# 运行YOLO11n预测(CPU/GPU自动识别)
yolo predict model=yolo11n.pt source='https://ultralytics.com/images/bus.jpg'
  • 结果:检测后的图片会保存在runs/predict/目录下,打开即可看到目标检测框。

方式2:Python代码验证(更灵活)

创建test_yolo11.py文件,写入以下代码:

python 复制代码
from ultralytics import YOLO

# 加载YOLO11n模型(n=nano,轻量版;可选s/m/l/x,模型越大精度越高)
model = YOLO("yolo11n.pt")

# 1. 检测网络图片
results = model("https://ultralytics.com/images/bus.jpg")

# 2. 打印检测结果(类别、置信度、坐标)
for result in results:
    boxes = result.boxes
    print("检测到的目标类别ID:", boxes.cls.numpy())  # 类别ID转numpy更易读
    print("目标置信度:", boxes.conf.numpy())        # 置信度(0-1)
    print("检测框坐标(x1,y1,x2,y2):", boxes.xyxy.numpy())

# 3. 保存检测后的图片到本地
result.save(filename="bus_detection.jpg")
print("检测结果已保存为 bus_detection.jpg")

运行代码:

bash 复制代码
python test_yolo11.py
  • 成功运行后,本地会生成bus_detection.jpg,打开可见公交车、行人等目标的检测框。

五、常见使用场景示例

  1. 检测本地图片:
bash 复制代码
yolo predict model=yolo11n.pt source=/home/yourname/photo.jpg
  1. 检测本地视频:
bash 复制代码
yolo predict model=yolo11n.pt source=/home/yourname/video.mp4
  1. 实时摄像头检测:
bash 复制代码
yolo predict model=yolo11n.pt source=0  # 0表示默认摄像头

总结

  1. Debian部署YOLO11的核心是:先配置Python虚拟环境,再安装ultralytics库(内置YOLO11),无需手动编译源码;
  2. CPU部署只需基础步骤,GPU部署需额外安装NVIDIA驱动+带CUDA的PyTorch,能大幅提升检测速度;
  3. 验证部署成功的关键:运行yolo predict或Python测试代码,能加载模型并输出检测结果即完成部署。
相关推荐
程序员清洒14 分钟前
CANN模型安全:从对抗防御到隐私保护的全栈安全实战
人工智能·深度学习·安全
island131418 分钟前
CANN ops-nn 算子库深度解析:神经网络计算引擎的底层架构、硬件映射与融合优化机制
人工智能·神经网络·架构
小白|21 分钟前
CANN与实时音视频AI:构建低延迟智能通信系统的全栈实践
人工智能·实时音视频
Kiyra22 分钟前
作为后端开发你不得不知的 AI 知识——Prompt(提示词)
人工智能·prompt
艾莉丝努力练剑25 分钟前
实时视频流处理:利用ops-cv构建高性能CV应用
人工智能·cann
程序猿追25 分钟前
深度解析CANN ops-nn仓库 神经网络算子的性能优化与实践
人工智能·神经网络·性能优化
User_芊芊君子28 分钟前
CANN_PTO_ISA虚拟指令集全解析打造跨平台高性能计算的抽象层
人工智能·深度学习·神经网络
初恋叫萱萱31 分钟前
CANN 生态安全加固指南:构建可信、鲁棒、可审计的边缘 AI 系统
人工智能·安全
机器视觉的发动机37 分钟前
AI算力中心的能耗挑战与未来破局之路
开发语言·人工智能·自动化·视觉检测·机器视觉
铁蛋AI编程实战40 分钟前
通义千问 3.5 Turbo GGUF 量化版本地部署教程:4G 显存即可运行,数据永不泄露
java·人工智能·python