视觉任务-目标跟踪检测DeepSort 与yolov5目标检测部署实践

目标跟踪检测算法DeepSort在window server 2012R 运行配置部署

目录

1.代码环境搭建
2. 报错解决方案
3. 运行调试
4. 演示演示结果

1 .代码环境搭建

  1. pycharm 2022
  2. python 3.8
  3. 2012R server
  4. 项目代码文件 https://github.com/mikel-brostrom/Yolov5_DeepSort_OSNet.git

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-22UsiFdk-1651371952077)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20220501095326668.png)]

  1. 文件夹 torchreid (https://github.com/KaiyangZhou/deep-person-reid.git)

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-sAhtNReZ-1651371952078)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20220501095031659.png)]

    整理一下,目录结构大致是这样的

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Y9psgiOB-1651371952079)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20220501095520916.png)]

    安装包,配置国内源比较快一点,我用的是清华源,至此基本完成项目配置

pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple/

小结:

pycharm 建立项目要熟练的使用,不然要搞的晕头转向,还有环境的切换,个人简易可以随便拉个python项目用conda下载包,换源,卸载包,这类的操作熟练,反正我就好烦,我电脑直接盘不够用,直接搞服务器了,

2. 报错解决方案

1. from .cv2 import * DLL laod failed 找不到指定模块

13e37f4f03ab2dc16dad2605884d8a55.png

原因:缺少相关库文件;

在网上检索了一下,目前有几种解决:

  1. 安装 visual studio c++;
  2. 下载相关的DLL 包,然后激活;
  3. CV2 与python 版本不匹配,下载相应的cv2 包对应相同的版本
  4. 综上,我都没有成功,2021R server服务器报错,以下是我的解决方案:

### [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-WkunzD0v-1651371952083)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20220501093257630.png)]

用户界面和基础结构这下面三个全选中,然后等待安装,安装完成后会重启服务器,再次连接就行了,安装时间一般为5-10 分钟

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-APgmTVcs-1651371952084)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20220501093532314.png)]

2.)目标主机无法连接,缺少权重文件.

在这里插入图片描述

这个需要到谷歌盘下载,不翻墙是下载不了的,下载不了是运行不了的,这个是权重的分享链接
这个是分享的链接
链接:https://pan.baidu.com/s/1jGcxCNi4agTdVz-IkN_UIA
提取码:1111

在这里插入图片描述

3. 运行调试

运行参数就这些,调整这些运行参数,来完成相应的功能

在这里插入图片描述

官方文档的用法,参考下,

Tracking can be run on most video formats

$ python track.py --source 0  # webcam
                           img.jpg  # image
                           vid.mp4  # video
                           path/  # directory
                           path/*.jpg  # glob
                           'https://youtu.be/Zgi9g1ksQHc'  # YouTube
                           'rtsp://example.com/media.mp4'  # RTSP, RTMP, HTTP stream

1. Yolov5

There is a clear trade-off between model inference speed and accuracy. In order to make it possible to fulfill your inference speed/accuracy needs you can select a Yolov5 family model for automatic download

$ python track.py --source 0 --yolo_model yolov5n.pt --img 640
                                          yolov5s.pt
                                          yolov5m.pt
                                          yolov5l.pt 
                                          yolov5x.pt --img 1280
                                          ...

2. DeepSort

The above applies to DeepSort models as well. Choose a ReID model based on your needs from this ReID model zoo

$ python track.py --source 0 --deep_sort_model osnet_x0_25_market1501
                                               osnet_x0_5_market1501
                                               osnet_x0_75_msmt17
                                               osnet_x1_0_msmt17
                                               ...

3. Filter tracked classes

By default the tracker tracks all MS COCO classes.

If you only want to track persons I recommend you to get these weights for increased performance

python3 track.py --source 0 --yolo_model yolov5/weights/crowdhuman_yolov5m.pt --classes 0  # tracks persons, only

If you want to track a subset of the MS COCO classes, add their corresponding index after the classes flag

python3 track.py --source 0 --yolo_model yolov5s.pt --classes 16 17  # tracks cats and dogs, only

Here is a list of all the possible objects that a Yolov5 model trained on MS COCO can detect. Notice that the indexing for the classes in this repo starts at zero.

4. MOT compliant results

Can be saved to your experiment folder runs/track/<yolo_model>_<deep_sort_model>/ by

python3 track.py --source ... --save-txt

5. 在命令行使用报错,可以使用pycharm 配置运行

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-uk6Pzhew-1651371952091)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20220501101909949.png)]

按照参考文档的方法进行使用,

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6BUAJ2o0-1651371952093)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20220501102000076.png)]

4. 最后演示结果

目标跟踪

  • 5
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 11
    评论
### 回答1: 目标检测是计算机视觉领域的一个重要任务,它可以在图像或视频中自动识别出特定的物体,并标注出它们的位置和类别。Yolov5是一种目标检测算法,它基于深度学习技术,可以快速、准确地检测出图像中的目标。 如果想要训练自己的目标检测模型,可以使用Yolov5进行训练。首先需要准备好训练数据集,包括标注好的图片和对应的标签文件。然后,可以使用Yolov5提供的命令行工具进行模型训练,具体步骤如下: 1. 安装Yolov5:可以在GitHub上下载Yolov5的源代码,并按照官方文档进行安装。 2. 准备数据集:将标注好的图片和标签文件放在同一个文件夹中,并将文件夹路径记录下来。 3. 配置训练参数:可以根据自己的需求,调整Yolov5的训练参数,如学习率、批次大小等。 4. 开始训练:使用命令行工具运行训练命令,等待训练完成。 5. 测试模型:训练完成后,可以使用Yolov5提供的测试工具对模型进行测试,检查模型的准确率和召回率等指标。 通过以上步骤,就可以训练出自己的目标检测模型了。当然,要想训练出高质量的模型,还需要不断调整参数、优化数据集等。 ### 回答2: 目标检测是计算机视觉领域中的一项核心任务,它的主要目的是在一张图像或者视频中确定出特定的物体或物体组合出现的位置和数量。随着深度学习算法的发展,目标检测的效果不断提升。其中,yolov5是近年来较为优秀的目标检测算法之一,其在速度和精度方面表现优异,在各种场景中都有广泛的应用。 训练一个自己的目标检测模型,需要几个步骤。首先,需要收集训练所需的图像和标签。这些图像可以是自己拍摄的,也可以从公开数据集中获取。而标签则应该明确指出图像中感兴趣的物体,以及它们所在的位置,标签的格式可以是PASCAL VOC和COCO等通用格式。 接下来,利用yolov5 进行模型的训练。yolov5的训练过程需要使用到PyTorch框架,因此需要先安装相应的环境和依赖。在训练时,应该选择合适的超参数,例如学习率、批量大小、迭代次数等等。调整这些参数的过程需要有一定经验和调试,才能得到一个较好的模型。 在训练结束后,需要对模型进行测试。测试的方法主要有两种,一是使用一些测试数据集来进行准确率和召回率的评估,二是在实际应用场景中进行验证。这些验证可以帮助我们找到模型的不足和改进之处。 总的来说,yolov5作为目标检测领域的研究热点,在实际应用场景中也有非常大的发展空间。通过学习利用yolov5训练自己的目标检测模型,可以更好地理解目标检测的原理和方法,并为自己的实际应用提供有力的技术支持。 ### 回答3: 目标检测是计算机视觉领域中的一个重要问题,其主要应用于自动驾驶、无人机、安防监控、智能制造等领域。而yolov5是近年来比较流行的目标检测算法之一,具有较高的实时性和精度,本文将介绍如何利用yolov5训练自己的目标检测模型。 首先需要获取待检测的图片和标注。图片可以通过网络爬虫或者手动采集,标注可以使用标注工具进行标注,常用的工具有LabelImg、VoTT等。标注工具会在图片上框选出待检测物体的位置,并将其标注信息保存为xml或json格式的文件。 然后需要安装yolov5,可以通过github获取源码并按照说明进行安装。yolov5提供了一些预训练模型,可以使用它们进行fine-tune。选择合适的预训练模型并加载权重文件,然后修改配置文件进行自定义设置。常见的配置有训练集路径、测试集路径、类别数、batch size、学习率等参数。 接下来需要将标注信息转换为yolov5所需的格式。yolov5使用的标注格式为txt文件,每个txt文件对应一张图片,文件中每一行表示一个待检测物体,包括其所在的类别、中心坐标、宽度和高度,这些信息由标注工具提供。 然后进行训练。运行yolov5提供的训练脚本,可以使用GPU或者CPU进行训练。训练过程中有许多参数需要设置,例如训练轮数、优化器类型、loss函数等。在训练过程中可以监控模型的训练损失和精度,以确定训练时间和训练轮数。训练完成后,可以保存训练好的模型并进行推理。 最后就是模型推理。将待检测的图片输入模型,模型将会返回每个检测框的置信度和类别概率,根据一定的置信度阈值和NMS算法可以得到最终的检测结果。通常将置信度阈值设置为0.5~0.7之间,NMS阈值设置为0.5。 利用yolov5训练自己的目标检测模型需要完成许多工作,从数据采集到模型推理都需要逐一进行。但是通过这样的过程,用户可以深入了解目标检测的原理和流程,并且可以根据具体需求进行自定义设置,得到更好的效果。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

骑驴的猫

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值