Yolov5_DeepSort_Pytorch 官网链接
克隆代码
- 在使用目标追踪的代码前
git clone --recurse-submodules https://github.com/mikel-brostrom/Yolov5_DeepSort_Pytorch.git
- 确保满足所有要求:Python 3.8或更高版本,所有要求.txt依赖项,包括torch> = 1.7。要安装,请运行:
pip install -r requirements.txt
注:以下是本人的步骤(仅供参考)
- (1)新建了一个conda的虚拟环境
conda create -n tracking python=3.8
- (2)激活该环境
conda activate tracking
- (3) 安装相应的环境依赖
pip install -r requirements.txt
小试牛刀
可提前下载
deep_sort_pytorch/deep_sort/deep/checkpoint/ckpt.t7
yolov5/weights/yolov5s.pt
下载链接 :
链接: https://pan.baidu.com/s/12IKhpJOKAT7qgOlc3IxrOg 提取码: q7k6
运行以下命令:
python track.py --source yolov5/mp4/streetscope.mp4 --save-vid --save-vid --visualize --yolo_weights yolov5/weights/yolov5s.pt
发现报错,内容为
RuntimeError: CUDA error: no kernel image is available for execution on the device
终端测试
python
import torch
torch.cuda.is_available()
结果为 True
以上只是检测CUDA是否安装正确并能被Pytorch检测到,并没有说明是否能正常使用,要想看Pytorch能不能调用cuda加速,还需要简单的测试一下:
所以继续验证
a = torch.Tensor([1,2])
a = a.cuda()
a
结果是报错
RuntimeError: CUDA error: no kernel image is available for execution on the device
于是我就参考pytorch官网重新下载torch
和torchvision
torch官网
根据 nvidia-smi 查询显卡的版本
pip install torch==1.8.0+cu111 torchvision==0.9.0+cu111 torchaudio==0.8.0 -f https://download.pytorch.org/whl/torch_stable.html
安装完成后
继续测试
a = torch.Tensor([1,2])
a = a.cuda()
a
即成功安装好环境配置
运行代码
1. track.py
python track.py --source yolov5/mp4/streetscope.mp4 --save-vid --save-vid --visualize --yolo_weights yolov5/weights/yolov5s.pt
运行过程
结果保存在 inference/output 里面
视频效果图如下
2. yolov5/detect.py
要修改 --weights 和 --source 的内容
--weights yolov5n.pt
yolov5s.pt
yolov5m.pt
yolov5l.pt
yolov5x.pt
--source data/images
img.jpg # image
vid.mp4 # video
path/ # directory
path/*.jpg # glob
'https://youtu.be/Zgi9g1ksQHc' # YouTube
'rtsp://example.com/media.mp4' # RTSP, RTMP, HTTP
举例
直接修改代码里面的参数,可直接右键运行,不用在终端运行
也可以用终端运行,命令行输入如下:
注: 是在主项目目录下运行
/app/yyq/slifeProject/object_tracking/Yolov5_DeepSort_Pytorch
python yolov5/detect.py --weights yolov5/weights/yolov5s.pt --source yolov5/data/images
运行过程如下
结果保存在 yolov5/runs/detect/exp 里面