本文介绍如何快速搭建起yolov10环境,用于后续项目推理、模型训练。教程适用win、linux系统
yolo10是基于yolo8(ultralytics)的改进,环境配置跟yolo8几乎一模一样。
目录
重要说明:YOLO10环境分为CPU环境与GPU环境,选择任意一种即可。鼓励有英伟达显卡的用户优先选择GPU环境,项目检测、模型训练速度会快很多很多
****适合选择CPU环境的情况:****电脑上没有英伟达显卡(N卡)
****适合选择GPU环境的情况:****电脑上有英伟达独立显卡(显存大小不限)且已经安装好英伟达显卡驱动。注意一定是英伟达的独立显卡,不是AMD显卡更不是集成显卡!
英伟达显卡驱动如何安装可以查看本人之前写的教程
Tips :电脑上有英伟达显卡,如何知晓显卡驱动是否安装?
答:打开电脑的命令行窗口,键入 nvidia-smi命令,如果有输出则安装成功,如下图所示:
第1章节:创建虚拟环境
****说明:****anaconda、venv等都可以,虚拟环境的python版本应不低于3.8,我这里指定为3.10。
****前置条件:****电脑中已经安装配置好anaconda、或者miniconda、或者python venv虚拟环境中的任意一种(如果电脑中没有这些软件环境,可自行百度安装配置,网上教程很多,优先选择anaconda
下面以anaconda新建虚拟环境为例,在anaconda环境下新建一个虚拟环境。如果你的电脑中正确安装了anaconda,在电脑的windows徽标的"所有应用"中,可以看到anaconda目录,里面有 Anaconda Prompt和Anaconda Powershell Prompt(见下图)
然后我们点击Anaconda Powershell Prompt(优先推荐使用这种方式,其次是Anaconda Prompt),之后我们就进入了Anaconda Powershell Prompt命令行。
然后在命令行窗口中输入下面的命令新建一个名为yolo10的环境(我这里取虚拟环境名为yolo10,这里的虚拟环境名称是自己定义的,比如:yolov10,aaa,bbb等数字英文名称都是可以的,我这里python版本为3.10.0)
conda create -n yolo10 python==3.10.0
创建好环境之后,将anaconda由base环境切换到刚刚新建好的yolo10环境
切换到对应的conda环境之后,下面安装配置YOLO10的运行环境,首先介绍GPU环境,然后介绍CPU环境。
第2章节:GPU环境下YOLOV10环境配置
****说明:****如果你的电脑不具备GPU环境,请直接跳到下一章节。
前置要求:需要你的电脑有英伟达显卡且安装了显卡驱动(nvidia-smi命令有返回)
2.1 去 Pytorch官网安装GPU版本的Pytorch
在第1章节中,用anaconda创建好一个名为yolo10的虚拟环境之后,激活进入该环境中,进行下列操作。
不就是安装Pytorch吗?直接conda install pytorch 或者 pip install pytorch不就好了?如果这样做的话,就安装错了,这样安装的是cpu版本的pytorch并且没有为名为yolo10的虚拟环境安装cudatoolkit工具包(运行时环境) 。我们需要执行下面的命令之一,为名为yolo10的虚拟环境正确安装gpu版本的pytorch。在执行下面的命令之前,我们需要仔细确认自己电脑的英伟达显卡驱动支持的最高cuda版本。具体做法是,命令行窗口输入nvidia-smi,返回的 CUDA Version即为支持的CUDA最高版本。详细见下图所示:
可以看到,本人电脑的显卡驱动所支持的最高 CUDA版本是12.4(意思是最高可以安装cuda 12.4或者比cuda 12.4 低的,只低不高的原则 )。那么我们需要去pytorch官网找到与cuda 12.4版本对应的安装命令或者比CUDA12.4低的安装命令。
如上面截图所示(2024.06.05),这个页面上可以让我们选择安装方式(conda安装、pip安装....)对应的OS版本、CUDA版本等等,页面会自动生成安装命令。但是上面的页面所显示的支持CUDA 11.8和 CUDA12.1,而我们本地电脑所支持的最高版本是CUDA12.4,根据只低不高的原则。因此可以选择CUDA 11.8或 CUDA12.1,我们直接在页面上选择Pytorch版本(选择Stable),OS类型(这里选择windows),安装方式(这里选择Conda),语言选择Python,CUDA版本我这里选择12.1,然后就可以自动生成安装命令:
conda install pytorch torchvision torchaudio pytorch-cuda=12.1 -c pytorch -c nvidia
然后我们复制上面的命令在yolo10的conda虚拟环境中执行安装:
这里一般需要我们等待相当长一段时间(除非你的网络比较好或者之前安装过),安装速度一般自己电脑的网络而异,网络不好可能会安装中断,此时多次重试上面的命令即可。
如果你的电脑的显卡驱动所支持的最高CUDA版本既不是11.8也不是12.1,假如是11.7,那么需要进入历史版本界面(链接如下图红色方框所示)找CUDA 11.7的pytorch
进入pytorch历史版本页面后(如下面的截图所示)我们直接复制命令执行了就好了
可以看到CUDA11.7对应的conda 安装方式的命令是这样的(CUDA11.7对应着多个版本的torch,我这里选择torch2.0.1):
conda install pytorch==2.0.1 torchvision==0.15.2 torchaudio==2.0.2 pytorch-cuda=11.7 -c pytorch -c nvidia
我们直接复制,在名为yolo10的conda环境下执行即可
当然我们还可以选择pip命令安装,直接从页面复制命令在名为yolo10的conda环境命令行窗口执行(注意,conda安装、pip安装两种方式任选其一即可,不可重复)
第3章节:CPU环境下YOLO 10 环境配置
****说明:****在CPU环境下项目视频检测和摄像头检测速度会比较慢
在第1章节,为项目创建好虚拟环境之后(还是以名为yolo10的虚拟环境为例子)激活并进入该虚拟环境,后键入下面的命令(两种安装方式任选其一,切记不可重复):
1.Anaconda安装(默认anaconda源中最新版本的torch):
conda install pytorch torchvision torchaudio cpuonly -c pytorch
2.Pip 安装(我这里以2.0.1版本为例)
pip install torch==2.0.1 torchvision==0.15.2 torchaudio==2.0.2
下面不加版本号默认安装的是pip源中最新版本的torch
pip3 install torch torchvision torchaudio
第4章节:下载yolo10源码
去github下载yolo10源码:https://github.com/THU-MIG/yolov10
yolo10项目目录下 有一个 requirement.txt 环境依赖,截止到2024.7.10,该文件的环境依赖如下
毫无疑问直接pip install -r requirement.txt,无论你的电脑有没有英伟达显卡,直接安装requirements.txt,安装的是cpu版本的torch,对于模型训练来说,cpu版本的torch奇慢,并且onnxruntime-gpu仅限有英伟达显卡的用户才能安装成功。 前面几个章节已经给出了正确安装pytorch的步骤,我们的环境中已经有torch了,因此,把上面的requirement.txt中的torch、torchvision、以及onnxruntime-gpu注释掉(几乎用不到,除非你用了onnx模型推理),然后在上述anaconda中的yolo10虚拟环境中安装剩余的依赖即可。
关于如何安装onnxruntime-gpu可以参考本人之前写的文章。