调用YOLOv8所需的pytorch环境配置

第一步:创建conda虚拟环境(切记不要“科学上网”)

依赖库的要求Python>=3.8,PyTorch>=1.8.

1. 创建虚拟环境后,首先安装了python=3.10:

conda install python==3.10 

2. 运行pip install ultralytics

PyTorch>=1.8

3. 卸载由于第二步直接安装的组件pip3 uninstall torch torchvision,

根据自己显卡的版本安装对应的pytorch和torchvision,假设选择pytorch2.2版本,那么可以:

conda install pytorch==2.2.0 torchvision==0.17.0 torchaudio==2.2.0 pytorch-cuda=12.1 -c pytorch -c nvidia

第二步:下载YOLOv8源代码

YOLOv8模型可从Ultralytics工程中调用,项目网址:Ultralytics:YOLOv8 -Ultralytics YOLO 文档

4. # Install the ultralytics package from PyPI

pip install ultralytics

5. 在命令行中可以直接用yolo 命令来执行各种任务,以目标检测为例,运行下列代码: yolo predict model=yolov8n.pt imgsz=640 conf=0.25 

6. 下载项目后,在pycharm中打开,设置好python interpreter,选择预先搭建好的conda environment

总结:在安装环境和部署项目过程中的bug

1. 运行项目时,遇到RuntimeError: Numpy is not available

这是因为Numpy 版本太高,将现有Numpy卸载

pip uninstall numpy
安装numpy=1.26.4,解决此问题

pip install numpy=1.26.4 -i https://pypi.tuna.tsinghua.edu.cn/simple

2. 执行yolo train和predict等任务时,出现这个错误信息:NotImplementedError: Could not run 'torchvision::nms' with arguments from the 'CUDA' backend.

理解这个错误的原因似乎是在调用CUDA时无法调用nms计算单元?

排查此bug原因是torchvision版本与torch不匹配,如下所示,torch是cuda的,但是torchvision却配的是cpu版本。

pytorch                   2.2.0           py3.10_cuda12.1_cudnn8_0    pyto

torchvision               0.17.0                   pypi_0    pypi

解决方案:到torchvision官网 https://download.pytorch.org/whl/torchvision/ 找到与torch版本对应的torchvision-cuxx-whl,下载到anaconda/env文件夹中。参考https://zhuanlan.zhihu.com/p/589722755

PS. 配置环境用了conda install和pip install的两种方式来安装依赖包,但是在pycharm中选择编辑器时往往出现缺乏xx库的报错,我觉得可能和这些库的链接来源有关,尽量选择conda install方式来统一安装库,避免出现部分库识别不出的情况,特别是这些互相依赖的torch、torchvision库,最后我查了官网上的conda 而不是pip的方式,重新安装了torch(2.4.1)、torchvision(0.19.1)、torchvision(2.4.1)等。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值