windows下配置YOLOvX教程

本文详细介绍了如何在已安装Anaconda的基础上,安装CUDA 11.1、cudnn,并匹配PyTorch 1.9.0版本。接着,通过conda创建新环境并安装YOLOX,包括YOLOX的依赖库apex和pypcocotools。最后,提供了测试YOLOvX模型在图像和视频上的步骤,以及解决可能遇到的模块导入错误的方法。
摘要由CSDN通过智能技术生成

0. 确保你的机器上已经安装好了Anaconda

1. 安装cuda和pytorch

CUDA和PyTorch要保证版本匹配。Pytoch下载页面
在这里插入图片描述

  • 比如这里pytoch是1.9.0版本,那么它所对应的CUDA版本就是10.2或者11.1。于是我们这里可以去找11.1版本的CUDA。
  • 本人习惯先安装CUDA,因为如果不是遇到新的问题,CUDA是在本机中可以长期保持不变的,而且重复卸载安装CUDA比较麻烦,当然这部分也有相关的教程可以参考。
  • 进入CUDA11.1下载页面,然后根据需要安装好CUDA11.1,具体安装教程可以参见这篇文章(随便找的,仅示意)。如果C盘有空间,就安装到C盘就可以。
  • 接下来需要安装cudnn,cudnn下载页面,进去需要注册登录才能下载,cudnn版本还是需要和CUDA11.1相适配,在下载页面根据英语指示,注意选择一下就可以。下载好后解压,然后复制到相应CUDA11.1安装目录即可,参见这篇文章
  • 准备好cudn和cudnn后就可以配置pytorch了。正如Pytorch界面所示,命令已经写好了。
  • 在Anaconda中创建好新的环境(我取名为YOLOvX_2)并进入这个环境的命令行界面。创建好后在开始菜单中打开Anaconda Powershell Prompt(Anaconda3)。
  • 执行命令conda activate YOLOvX_2
  • 然后安装pytorch,执行这条命令就可以了,由PyTorch官网给出。conda install pytorch torchvision torchaudio cudatoolkit=11.1 -c pytorch -c conda-forge

2. 配置YOLOvX(按照官方教程)

  • 去github下载YOLOX,下载成zip格式就可以了,然后找个你自己的工作目录下解压。接下来win+r,cmd进入windows系统的命令行,cd进入刚刚解压的YOLO目录里面。
  • Step1. Install YOLOX.
pip3 install -U pip
pip3 install -r requirements.txt #可以看见YOLOX的依赖文件都在这里面了
pip3 install -v -e .  # or  python3 setup.py develop
  • Step2. Install Apex(此处参考了这篇文章
    - 去github下载apex,解压到你的工作目录
    - cd进入apex
    - python setup.py install

  • Step3. Install pycocotools.

pip3 install cython
【这条为官方命令,本机测试不行】pip3 install 'git+https://github.com/cocodataset/cocoapi.git#subdirectory=PythonAPI'
【替代命令】pip install pycocotools

3. 运行测试

  • 在github上下载pretrained model,把它放在YOLOX目录下自己找个路径。
    在这里插入图片描述
  • 执行下面这条语句测试图片:
python tools/demo.py image -f exps/default/yolox_s.py -c ./yolox_s.pth.tar --path assets/dog.jpg --conf 0.25 --nms 0.45 --tsize 640 --save_result --device gpu
  • 测试视频(自己准备一条视频):
python tools/demo.py video -f exps/default/yolox_s.py -c ./yolox_s.pth.tar --path ./assets/lab.mp4 --conf 0.3 --nms 0.65 --tsize 640 --save_result --device gpu

写到最后:
如果你遇到报错ModuleNotFoundError: No module named ‘yolox’,参考文章
可以在from yolox.data.data_augment import preproc上面添加如下两行代码修改(注意路径替换成你自己的):

import sys
sys.path.append(r'D:\PYCHARMprojects\YOLOX-main')
  • 运行结果:

在这里插入图片描述

  • 经典狗子图:

在这里插入图片描述

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
YOLOvX结合Transformer是一种将YOLOvX目标检测算法与Transformer模型相结合的方法,旨在提高目标检测的性能和准确性。Transformer是一种基于自注意力机制的神经网络模型,它在自然语言处理领域取得了巨大成功,并逐渐应用于计算机视觉任务。 在YOLOvX结合Transformer的方法中,Swin Transformer是其中一种常用的Transformer模型。Swin Transformer是一种基于窗口注意力机制的Transformer模型,它通过将图像分割为多个窗口,并在每个窗口上应用自注意力机制来捕捉图像中的全局上下文信息。这种窗口注意力机制使得Swin Transformer能够处理大尺寸的图像,并在目标检测任务中取得了很好的效果。 下面是一个示例代码,展示了如何使用Swin Transformer结合YOLOvX进行目标检测: ```python # 导入必要的库和模块 import torch from torchvision.models import detection from swin_transformer import SwinTransformer # 加载YOLOvX模型和Swin Transformer模型 yolovx_model = detection.yolovx(pretrained=True) swin_transformer_model = SwinTransformer() # 将YOLOvX模型的特征提取部分替换为Swin Transformer模型 yolovx_model.backbone = swin_transformer_model # 输入图像 image = torch.randn(1, 3, 224, 224) # 使用YOLOvX结合Swin Transformer进行目标检测 output = yolovx_model(image) # 打印检测结果 print(output) ``` 这段代码首先导入了必要的库和模块,然后加载了预训练的YOLOvX模型和Swin Transformer模型。接着,将YOLOvX模型的特征提取部分替换为Swin Transformer模型。最后,输入图像并使用YOLOvX结合Swin Transformer进行目标检测,输出检测结果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值