news 2026/5/6 15:31:58

YOLOv12目标检测模型一键部署教程:基于Ubuntu20。04的完整环境配置

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
YOLOv12目标检测模型一键部署教程:基于Ubuntu20。04的完整环境配置

YOLOv12目标检测模型一键部署教程:基于Ubuntu20.04的完整环境配置

你是不是刚拿到一个YOLOv12的模型权重文件,想在Ubuntu服务器上跑起来试试效果,结果被一堆环境依赖搞得头大?别担心,这篇教程就是为你准备的。咱们不聊复杂的原理,也不扯那些高大上的优化,就手把手地带你,在Ubuntu 20.04系统上,用最快、最稳的方式把YOLOv12部署起来,让它能正常识别图片里的东西。

整个过程,从启动服务器到看到第一个检测结果,顺利的话10分钟就能搞定。我会把每一步的命令、可能遇到的坑都讲清楚,保证你跟着做就能成功。咱们的目标很简单:先跑起来,看到效果,后面再慢慢研究。

1. 环境准备:选择与启动你的GPU服务器

部署深度学习模型,尤其是YOLO这种实时检测模型,有GPU支持会快很多。第一步就是找个带GPU的“地盘”。

1.1 选择合适的GPU镜像

现在很多云平台都提供预装了深度学习环境的镜像,这能省去我们大量配置基础环境的时间。在选择时,你可以关注以下几点:

  • 操作系统:确认是Ubuntu 20.04,这是目前兼容性非常好的一个长期支持版本。
  • CUDA版本:YOLOv12通常需要CUDA环境来加速。选择预装了CUDA 11.x或更高版本的镜像会非常方便。CUDA 11.7或11.8都是比较常见且稳定的选择。
  • 基础深度学习库:如果镜像里预装了Python、PyTorch、Torchvision这些,那就更完美了,几乎可以开箱即用。

假设你已经在某个云平台(例如CSDN星图镜像广场这类提供丰富AI镜像的地方)找到了一个合适的镜像,它包含了Ubuntu 20.04和CUDA 11.7。那么接下来就是启动它。

1.2 启动实例并登录

启动实例后,你会获得一个公网IP地址和登录密钥(通常是.pem文件)。在本地电脑上,打开终端,用ssh命令登录:

# 将 your-key.pem 替换为你的密钥文件路径,your-ip 替换为你的服务器公网IP ssh -i /path/to/your-key.pem ubuntu@your-server-ip

第一次登录可能会提示确认主机密钥,输入yes即可。登录成功后,你就进入了Ubuntu 20.04系统的命令行界面。首先,我们可以更新一下系统软件包列表,确保后续安装顺利:

sudo apt update

好了,我们的“地盘”已经就绪,接下来开始搭建YOLOv12需要的具体环境。

2. 搭建Python虚拟环境

直接在系统Python里安装各种包容易引起冲突,所以创建一个独立的虚拟环境是个好习惯。这里我们用conda来管理,它管理不同版本的Python和包非常方便。

2.1 安装Miniconda

如果你的镜像里没有预装conda,我们可以安装一个轻量版的Miniconda。

# 下载Miniconda安装脚本(这里以Python 3.9版本为例) wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh # 运行安装脚本 bash Miniconda3-latest-Linux-x86_64.sh

安装过程中,一直按回车阅读许可协议,输入yes同意,然后回车使用默认安装路径。最后,当询问是否初始化conda时,选择yes。安装完成后,关闭并重新打开终端,或者执行以下命令让配置生效:

source ~/.bashrc

现在,命令行前面应该会出现一个(base)字样,说明conda已经激活。

2.2 创建专属的YOLOv12环境

我们创建一个名为yolov12的新环境,并指定Python版本为3.8(这是一个与PyTorch系列兼容性很好的版本)。

conda create -n yolov12 python=3.8 -y

创建完成后,激活这个环境:

conda activate yolov12

激活后,命令行提示符前的(base)会变成(yolov12),这表示我们后续的所有操作都在这个独立的环境中进行。

3. 安装核心依赖:PyTorch与YOLO

环境搭好了,现在来安装最重要的两个部分:PyTorch深度学习框架和YOLOv12的官方代码库。

3.1 安装PyTorch

去PyTorch官网根据你的CUDA版本选择安装命令是最稳妥的。假设我们之前确认CUDA版本是11.7,那么安装命令如下:

# 安装PyTorch、Torchvision和Torchaudio,并指定CUDA 11.7版本 pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu117

注意:如果你的CUDA版本是11.8,就将cu117替换为cu118。安装完成后,可以验证一下:

python -c "import torch; print(torch.__version__); print(torch.cuda.is_available())"

如果输出PyTorch版本号并且显示True,恭喜你,PyTorch和GPU加速就配置好了。

3.2 安装YOLOv12

YOLO的作者团队通常会把最新代码发布在GitHub上。我们直接用pip从GitHub安装YOLOv12的ultralytics包,这是目前最主流、最方便的方式。

pip install ultralytics

这个命令会自动安装YOLOv12运行所需的所有依赖,包括OpenCV、Pillow、Matplotlib等等。安装过程可能需要一两分钟。

4. 下载模型与第一次推理

环境全部搞定,是时候请出主角——YOLOv12模型了。

4.1 下载预训练权重

Ultralytics的包设计得非常人性化。你不需要手动去下载权重文件。当你第一次使用某个模型(比如yolov12n.pt,这是YOLOv12的纳米轻量版)时,它会自动从云端下载对应的预训练权重到你的本地缓存中。

4.2 编写并运行测试脚本

让我们创建一个最简单的Python脚本,来验证一切是否正常。使用nanovim创建一个文件:

nano test_yolov12.py

在文件中输入以下代码:

from ultralytics import YOLO # 加载模型。如果是第一次运行,会自动下载 yolov12n.pt 权重文件 model = YOLO('yolov12n.pt') # 对一张图片进行推理(这里使用内置的示例图片,同样会自动下载) results = model('https://ultralytics.com/images/bus.jpg') # 将检测结果可视化并保存 results[0].save('result.jpg') print("检测完成!结果已保存为 'result.jpg'")

Ctrl+X,然后输入Y,再按回车保存并退出。现在运行这个脚本:

python test_yolov12.py

第一次运行会看到下载进度条,分别下载yolov12n.pt模型权重和示例图片bus.jpg。下载完成后,脚本会执行推理,并在当前目录下生成一张名为result.jpg的图片。

4.3 查看结果

由于我们在服务器上,没有图形界面,可以通过命令行工具将图片下载到本地查看。在你本地电脑的终端里执行:

# 将 your-ip 替换为你的服务器IP scp -i /path/to/your-key.pem ubuntu@your-server-ip:~/result.jpg ./result_downloaded.jpg

然后在你本地打开result_downloaded.jpg,你应该能看到一张公交车的图片,上面画着检测框,并标注了“bus”。看到这个,就说明你的YOLOv12已经成功部署并运行起来了!

5. 常见问题与小技巧

第一次部署难免会遇到点小麻烦,这里有几个常见问题的解决办法。

  • 问题:安装ultralytics时特别慢或报错

    • 解决:可以临时切换为国内的PyPI镜像源加速下载。例如使用清华源:
      pip install ultralytics -i https://pypi.tuna.tsinghua.edu.cn/simple
  • 问题:运行脚本时提示缺少某些库

    • 解决:通常ultralytics会自动安装依赖,但偶尔会有遗漏。你可以根据错误信息手动安装,比如pip install opencv-python-headless
  • 问题:想用自己本地的图片或视频测试

    • 解决:将你的文件上传到服务器。可以使用scp命令,例如在本地终端:
      scp -i /path/to/your-key.pem /path/to/your/image.jpg ubuntu@your-server-ip:~/
      然后在Python脚本里,把model(‘https://...‘)中的网址换成‘/home/ubuntu/your_image.jpg‘即可。
  • 小技巧:使用不同的YOLOv12模型

    • yolov12n.pt是最小的,速度最快,但精度稍低。你还可以尝试:
      • yolov12s.pt(小)
      • yolov12m.pt(中)
      • yolov12l.pt(大)
      • yolov12x.pt(超大) 只需在脚本中替换模型名称即可。模型越大,精度一般越高,但运行速度也越慢。

6. 总结与下一步

跟着上面这些步骤走一遍,你应该已经在Ubuntu 20.04上把YOLOv12给跑起来了。整个过程的核心其实就是三步:找个好用的带GPU和CUDA的镜像,创建一个干净的Python环境,然后用ultralytics这个强大的包把模型拉下来跑通。第一次成功看到检测框的时候,感觉还是挺不错的吧?

这只是一个开始。YOLOv12的能力远不止检测一张图片。接下来,你可以试着用它处理一段视频,看看实时检测的效果;或者把自己的数据集整理成YOLO格式,尝试用这个预训练模型进行微调,让它认识你特定的目标。ultralytics的文档里有很多例子,比如导出模型到不同格式(ONNX、TensorRT等)来进一步提升速度,都值得去摸索一下。

部署本身不是目的,让它为你所用才是。希望这篇教程帮你扫清了起步的障碍,让你能更专注于后续更有趣的应用和开发工作。


获取更多AI镜像

想探索更多AI镜像和应用场景?访问 CSDN星图镜像广场,提供丰富的预置镜像,覆盖大模型推理、图像生成、视频生成、模型微调等多个领域,支持一键部署。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/6 15:27:31

Kimi-VL-A3B-Thinking真实案例:OCR识别店铺名称准确率达99.2%效果验证

Kimi-VL-A3B-Thinking真实案例:OCR识别店铺名称准确率达99.2%效果验证 1. 模型效果惊艳展示 Kimi-VL-A3B-Thinking作为一款高效的多模态视觉语言模型,在OCR识别领域展现了惊人的准确率。我们通过实际测试验证,该模型在识别店铺名称任务中达…

作者头像 李华
网站建设 2026/4/10 11:48:12

把 SAP ABAP 权限管理做成制度,而不是做成一个人的能力

从项目现场真正容易失控的地方说起 很多团队谈 SAP 权限,注意力会直接落到 SU01、PFCG、SUIM、SUPC 这些事务码上,仿佛把事务会用了,权限治理就算落地了。可在真实的 SAP 项目里,最容易出问题的地方,往往不是某个授权对象少配了一位字段值,也不是哪个角色菜单漏挂了一笔…

作者头像 李华
网站建设 2026/4/10 11:48:12

性能测试|JMeter接口性能测试怎么做

在软件开发和运维过程中,接口性能测试是一项至关重要的工作。JMeter作为一款开源的Java应用,被广泛用于进行各种性能测试,包括接口性能测试。本文将详细介绍如何使用JMeter进行接口性能测试的过程和步骤。JMeter是Apache组织开发的基于Java的…

作者头像 李华
网站建设 2026/4/10 11:45:50

DCT-Net人像卡通化保姆级教程:从拍照到生成,一次搞定

DCT-Net人像卡通化保姆级教程:从拍照到生成,一次搞定 你是不是也想把自己的照片变成可爱的卡通头像,但试过几个工具后效果总是不尽如人意?别担心,今天我将带你从零开始,一步步完成从拍照到生成卡通头像的全…

作者头像 李华