继续创造,加速生长!这是我参与「日新方案 10 月更文应战」的第11天,点击查看活动概况
导读
本文来自github,很实用的一个运用。
git库房地址:github.com/LeonLok/Mul…
这个存储库包括了我的方针检测和盯梢项目。所有这些都能够保管在云服务器上。
因为有ImageZMQ,你还能够运用自己的异步处理IP相机。
Deep SORT 和 YOLO v4
Check out我的Deep SORT repository:github.com/LeonLok/Dee… 2.0、异步视频处理和低置信度盯梢过滤。
交通流量计数
这个项目是方针计数运用的一个扩展。
功能
- 运用DETRAC数据集生成的244,617幅图画进行练习。能够在这里找到我创立的转化代码。
-
- 我把这篇论文:ieeexplore.ieee.org/document/89…
- 每个盯梢id只计数一次。
- 经过查看被盯梢方针的途径与计数线的穿插点对方针进行计数。
-
- 因此,那些跟丢了但用相同的ID重新盯梢的依然会被计数。
- 运用低置信度滤波进行盯梢,来自上面同样的论文。
-
- 供给更低的假阳性率。
- 盯梢方针显现均匀检测置信度。
- 盯梢的类别由最常见的检测类别确认。
- 显现检测结果是可选的(可是躲藏了均匀检测置信度)。
- 能够运用多个IP摄像头。
- 方向计数能够配置为根据视点。
- 每一小时的距离记载计数。
-
- 总的计数
- 根据类别的计数
- 记载每个计数方针的穿插详细信息。
-
- 穿插时间
- 穿插点坐标
- 穿插视点
- 能够保管在云服务器上。
注意,因为DETRAC不包括任何摩托车,它们是唯一被疏忽的车辆。此外,DETRAC数据集只包括我国的交通图画,因此因为缺乏练习数据,它很难正确地检测出其他国家的某些车辆。例如,它常常会将掀背车误归为suv,或者因为不同的色彩方案而无法识别出租车。
方针计数
这个项目最初计划成为一个运用程序,用于运用我自己的智能手机计算当时在多个房间的人数,服务器被长途保管。下面展现了对人和汽车的检测、盯梢和计数。
功能
- 对当时视场中的物体进行计数
- 盯梢可选
- 支持多个IP相机
- 每距离一个小时记载一次当时的计数
-
- 当时的总数
- 当时每个类别的计数
- 能够保管在云服务器上
运用我自己的智能手机作为IP相机
练习你自己的机动车盯梢模型
我运用DETRAC练习带有v3标示的数据集练习了YOLOv4和Deep SORT模型。我供给了将DETRAC练习图画和v3标示转化为正确格局的脚本,用于练习YOLOv4模型和Deep SORT盯梢模型。
Deep SORT 转化参数
DETRAC图画转化为Market 1501练习格局。
- 遮挡阈值 – 疏忽遮挡比率过高的车辆序列。
- 切断阈值 – 疏忽切断率过高的车辆序列。
- 呈现的次数 – 车辆序列太短(即没有满足的图画)被丢弃后,考虑遮挡和切断比率。
YOLO 转化参数
DETRAC图画被转化成Darknet YOLO练习格局。
- 遮挡阈值 – 疏忽遮挡比率过高的车辆序列。
- 切断阈值 – 疏忽切断率过高的车辆序列。
两种模型都在DETRAC练习集进步行了练习和评价,但因为短少v3标示,测验集还没有评价,我也没有MATLAB用于Deep SORT的评价软件。到目前为止,关于我的用例来说,它已经满足好了。
运用的硬件
- Nvidia GTX 1070 GPU
- i7-8700K CPU
为了让大家了解我们的希望,我能够运转两个流量计数流,每个流大约10fps(正如你在流量计数gif中看到的)。当然,这在很大程度上取决于流分辨率以及用于检测和盯梢的帧数。
YOLO v3 vs. YOLO v4
当我第一次开始方针计数项目时,我运用YOLOv3,盯梢帧率大约是10FPS,很难一次运转多个流。运用YOLOv4能够更容易地运转具有更高分辨率的两个流,并供给更好的检测精度。
依靠
- Tensorflow-GPU 1.14
- Keras 2.3.1
- opencv-python 4.2.0
- ImageZMQ
- numpy 1.18.2
- Flask 1.1.1
- pillow
这个项目是在Python 3.6上构建和测验的。
感谢相关贡献者
- github.com/miguelgrinb…
- github.com/Ma-Dan/kera…
- github.com/nwojke/deep…
- github.com/Qidian213/d…
- github.com/yehengchen/…
英文原文:github.com/LeonLok/Mul…