OpenCV-python小玩意17 YOLO目标检测之环境安装

0. 为什么是YOLO

在上一篇文章《OpenCV-python小玩意16 霍夫变换检测圆形和直线》中用霍夫变换去检测圆形和十字架这个目标,在实验室的条件下是没有问题的,但是对于更复杂的场景就不是特别适用了,比如这个目标变得模糊,光照条件变化较大。那么深度学习是这种复杂场景的利器。而YOLO从诞生之初起,就是目标检测最流行的框架。这次我想使用YOLOv8来完成目标检测。因为它非常适合这种端到端的检测,可以直接输出目标的位置和中心点坐标。v8版本目前是经过验证的,十分稳定的版本,它速度快、精度高、易于部署。今天我们的主要任务就是将YOLOv8的开发环境和训练环境安装好,而上半年我们购置的5060Ti显卡就要派上用场了。

1. Windows 11安装YOLO依赖环境

1.1 安装anaconda

当我们需要在电脑上安装不同版本的python时,需要借助一些工具,不然就是噩梦。那anaconda是一个不错的工具。

本次下载Anaconda3-5.3.1-Windows-x86_64,请各位看官在镜像中寻找该版本。

https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/

安装时就一直下一步就好了,并且它不建议将目录添加到PATH环境变量中,就按照它的办。

从Anaconda Prompt,进入anaconda命令行,执行如下命令:

bash 复制代码
conda --version
conda 4.5.11

正常显示版本号则无问题。

更新下国内源:

bash 复制代码
conda config --add channels http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes

查看源:

bash 复制代码
>conda config --show channels

channels:
  - http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
  - http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
  - defaults

删除源:

bash 复制代码
conda config --remove-key channels

1.2 创建python3.8虚拟环境

再次从Anaconda Prompt,进入anaconda命令行,执行如下命令:

bash 复制代码
conda create -n yolov8 python=3.8

经过验证,不使用源也是很快的:

bash 复制代码
Downloading and Extracting Packages
python-3.8.20        | 20.3 MB   | ################################################################################################################# | 100%
wheel-0.44.0         | 132 KB    | ################################################################################################################# | 100%
openssl-3.0.18       | 8.0 MB    | ################################################################################################################# | 100%
pip-24.2             | 2.4 MB    | ################################################################################################################# | 100%
libffi-3.4.4         | 152 KB    | ################################################################################################################# | 100%
ca-certificates-2025 | 168 KB    | ################################################################################################################# | 100%
sqlite-3.51.0        | 1.4 MB    | ################################################################################################################# | 100%
vs2015_runtime-14.44 | 19 KB     | ################################################################################################################# | 100%
vc14_runtime-14.44.3 | 1.5 MB    | ################################################################################################################# | 100%
ucrt-10.0.22621.0    | 1.2 MB    | ################################################################################################################# | 100%
vc-14.3              | 19 KB     | ################################################################################################################# | 100%
setuptools-75.1.0    | 1.7 MB    | ################################################################################################################# | 100%
Preparing transaction: done
Verifying transaction: done
Executing transaction: done
#
# To activate this environment, use
#
#     $ conda activate yolov8
#
# To deactivate an active environment, use
#
#     $ conda deactivate

查看所有虚拟环境

bash 复制代码
conda env list

切换到yolov8环境

bash 复制代码
conda activate yolov8

退出环境

bash 复制代码
conda deactivate

删掉这个虚拟环境:

bash 复制代码
conda remove -n yolov8 --all

1.3 创建python3.10虚拟环境

由于pytorch要求最低是python 3.9,所以上面的3.8权当是做个conda的使用测试吧。下面我们来安装3.10python

bash 复制代码
conda create -n yolov8 python=3.10

1.4 安装pytorch

pytorch的版本选择是与你的GPU息息相关的,只用cpu训练和推理就简单许多,可以跳过此步。查看cuda版本:

bash 复制代码
>nvidia-smi
Mon Nov 10 11:08:05 2025
+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 576.88                 Driver Version: 576.88         CUDA Version: 12.9     |
|-----------------------------------------+------------------------+----------------------+
| GPU  Name                  Driver-Model | Bus-Id          Disp.A | Volatile Uncorr. ECC |
| Fan  Temp   Perf          Pwr:Usage/Cap |           Memory-Usage | GPU-Util  Compute M. |
|                                         |                        |               MIG M. |
|=========================================+========================+======================|
|   0  NVIDIA GeForce RTX 5060 Ti   WDDM  |   00000000:01:00.0  On |                  N/A |
|  0%   39C    P8             10W /  180W |     868MiB /  16311MiB |      3%      Default |
|                                         |                        |                  N/A |
+-----------------------------------------+------------------------+----------------------+

来这里查找显卡驱动和cuda对应的版本:https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html

如下图:

来这里找到pytorch的版本与cuda的关系:https://pytorch.org/get-started/previous-versions/

安装pytorch

在上面的conda的yolov8虚拟环境中运行

bash 复制代码
conda activate yolov8

pip install torch==2.8.0 torchvision==0.23.0 torchaudio==2.8.0 --index-url https://download.pytorch.org/whl/cu129

速度也是很快的

bash 复制代码
Downloading https://download.pytorch.org/whl/cu129/torch-2.8.0%2Bcu129-cp310-cp310-win_amd64.whl (3571.8 MB)
   ---------------------------------------- 3.6/3.6 GB 38.2 MB/s  0:00:52

下面来试试安装是否成功:

bash 复制代码
>python
Python 3.10.19 | packaged by Anaconda, Inc. | (main, Oct 21 2025, 16:41:31) [MSC v.1929 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import torch
>>> x = torch.rand(5,3)
>>> print(x)
tensor([[0.1502, 0.5017, 0.5046],
        [0.5060, 0.7322, 0.8181],
        [0.9907, 0.2200, 0.8399],
        [0.4035, 0.6696, 0.9731],
        [0.1576, 0.0545, 0.4237]])
>>> print(torch.__version__)
2.8.0+cu129
>>> print('gpu:', torch.cuda.is_available())
gpu: True

删除pytorch:

bash 复制代码
pip3 uninstall torch torchvision torchaudio

1.5 安装yolov8 (ultralytics)

bash 复制代码
pip install ultralytics

2. 做个简单的测试

bash 复制代码
yolo predict model=yolov8n.pt source=C:\xxx\ultralytics\assets/bus.jpg

Ultralytics 8.3.227  Python-3.10.19 torch-2.8.0+cu129 CUDA:0 (NVIDIA GeForce RTX 5060 Ti, 16311MiB)
YOLOv8n summary (fused): 72 layers, 3,151,904 parameters, 0 gradients, 8.7 GFLOPs

image 1/1 C:\xxx\ultralytics\assets\bus.jpg: 640x480 4 persons, 1 bus, 1 stop sign, 39.5ms
Speed: 1.5ms preprocess, 39.5ms inference, 2.3ms postprocess per image at shape (1, 3, 640, 480)
Results saved to C:\xxx\runs\detect\predict

3. 最后

文章的编写在2025年11月份,发布就到了12月份。

接下来会完成目标识别模型的训练,用其导出onnx格式进行推理。对了,还有pycharm上的虚拟环境问题,总是选不到conda中的yolov8环境,导致包没有。

相关推荐
5Gcamera7 小时前
4G body camera BC310/BC310D user manual
人工智能·边缘计算·智能安全帽·执法记录仪·smarteye
爱喝可乐的老王7 小时前
机器学习中常用交叉验证总结
人工智能·机器学习
公链开发8 小时前
2026 Web3机构级风口:RWA Tokenization + ZK隐私系统定制开发全解析
人工智能·web3·区块链
wyw00008 小时前
目标检测之YOLO
人工智能·yolo·目标检测
发哥来了8 小时前
AI视频生成企业级方案选型指南:2025年核心能力与成本维度深度对比
大数据·人工智能
_codemonster8 小时前
强化学习入门到实战系列(四)马尔科夫决策过程
人工智能
北邮刘老师8 小时前
智能体治理:人工智能时代信息化系统的全新挑战与课题
大数据·人工智能·算法·机器学习·智能体互联网
laplace01239 小时前
第七章 构建自己的agent智能体框架
网络·人工智能·microsoft·agent
诗词在线9 小时前
中国古代诗词名句按主题分类有哪些?(爱国 / 思乡 / 送别)
人工智能·python·分类·数据挖掘
高锰酸钾_9 小时前
机器学习-L1正则化和L2正则化解决过拟合问题
人工智能·python·机器学习