0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

利用YOLOv4和Deep SORT实现多摄像头实时目标跟踪和计数

新机器视觉 来源:AI公园 作者:AI公园 2021-04-01 14:31 次阅读

导读

本文来自github,很实用的一个应用。

项目github仓库地址:

https://github.com/LeonLok/Multi-Camera-Live-Object-Tracking

这个存储库包含了我的目标检测和跟踪项目。所有这些都可以托管在云服务器上。

由于有ImageZMQ,你还可以使用自己的异步处理IP相机。

Deep SORT 和 YOLO v4

Check out我的Deep SORT repository:https://github.com/LeonLok/Deep-SORT-YOLOv4,查看我使用的跟踪算法,其中包括Tensorflow 2.0、异步视频处理和低置信度跟踪过滤。

交通流量计数

这个项目是目标计数应用的一个扩展。

ac673af8-92a7-11eb-8b86-12bb97331649.gif

功能

使用DETRAC数据集生成的244,617幅图像进行训练。可以在这里找到我创建的转换代码。

我把这篇论文:https://ieeexplore.ieee.org/document/8909903作为数据准备和训练的指南。

每个跟踪id只计数一次。

通过查看被跟踪目标的路径与计数线的交叉点对目标进行计数。

因此,那些跟丢了但用相同的ID重新跟踪的仍然会被计数。

使用低置信度滤波进行跟踪,来自上面同样的论文。

提供更低的假阳性率。

跟踪目标显示平均检测置信度。

跟踪的类别由最常见的检测类别确定。

显示检测结果是可选的(但是隐藏了平均检测置信度)。

可以使用多个IP摄像头。

方向计数可以配置为基于角度。

每一小时的间隔记录计数。

总的计数

基于类别的计数

记录每个计数目标的交叉详细信息

交叉时间

交叉点坐标

交叉角度

可以托管在云服务器上。

注意,由于DETRAC不包含任何摩托车,它们是唯一被忽略的车辆。此外,DETRAC数据集只包含中国的交通图像,因此由于缺乏训练数据,它很难正确地检测出其他国家的某些车辆。例如,它经常会将掀背车误归为suv,或者由于不同的颜色方案而无法识别出租车。

目标计数

这个项目最初打算成为一个应用程序,用于使用我自己的智能手机计算当前在多个房间的人数,服务器被远程托管。下面展示了对人和汽车的检测、跟踪和计数。

afe872c8-92a7-11eb-8b86-12bb97331649.gif

功能

对当前视场中的物体进行计数

跟踪可选

支持多个IP相机

每间隔一个小时记录一次当前的计数

当前的总数

当前每个类别的计数

可以托管在云服务器上

使用我自己的智能手机作为IP相机

b04cebcc-92a7-11eb-8b86-12bb97331649.gif

训练你自己的机动车跟踪模型

我使用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上构建和测试的。

责任编辑:lq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 摄像头
    +关注

    关注

    60

    文章

    4851

    浏览量

    95924
  • 跟踪算法
    +关注

    关注

    0

    文章

    41

    浏览量

    13024
  • 数据集
    +关注

    关注

    4

    文章

    1208

    浏览量

    24741

原文标题:利用YOLOv4和Deep SORT实现多摄像头实时目标跟踪和计数(已开源)

文章出处:【微信号:vision263com,微信公众号:新机器视觉】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    安防监控摄像头气密性测试案例-连拓精密#摄像头气密检测设备

    摄像头
    连拓精密科技
    发布于 :2024年12月11日 15:00:21

    光谱火焰检测摄像头

    随着工业化进程的加快,火灾安全问题日益受到重视。传统的火焰检测技术主要依赖于温度传感器和烟雾探测器,但这些方法在某些情况下存在响应慢、误报率高等缺陷。为了解决这些问题,光谱火焰检测摄像头应运而生
    的头像 发表于 12-11 10:50 161次阅读
    <b class='flag-5'>多</b>光谱火焰检测<b class='flag-5'>摄像头</b>

    在树莓派上部署YOLOv5进行动物目标检测的完整流程

    卓越的性能。本文将详细介绍如何在性能更强的计算机上训练YOLOv5模型,并将训练好的模型部署到树莓派4B上,通过树莓派的摄像头进行实时动物目标
    的头像 发表于 11-11 10:38 1201次阅读
    在树莓派上部署<b class='flag-5'>YOLOv</b>5进行动物<b class='flag-5'>目标</b>检测的完整流程

    用于环视和CMS摄像头系统的四通道摄像头应用程序

    电子发烧友网站提供《用于环视和CMS摄像头系统的四通道摄像头应用程序.pdf》资料免费下载
    发表于 10-11 10:02 0次下载
    用于环视和CMS<b class='flag-5'>摄像头</b>系统的四通道<b class='flag-5'>摄像头</b>应用程序

    智能化升级:机载无人机摄像头如何自动识别目标

    机载无人机摄像头在智能化升级的过程中,自动识别目标的能力得到了显著提升。这一过程涉及多个关键技术和算法,以下是关于机载无人机摄像头如何自动识别目标的详细解析: 一、图像采集与预处理 高
    的头像 发表于 09-19 15:23 691次阅读
    智能化升级:机载无人机<b class='flag-5'>摄像头</b>如何自动识别<b class='flag-5'>目标</b>?

    NVIDIA摄像头追踪工作流的应用架构

    为提高安全性并优化运营,仓库、工厂、体育场、机场等大型区域通常会有数百个摄像头进行监控。摄像头追踪指的是通过这些摄像头追踪对象,并精确测量其活动,以此
    的头像 发表于 09-06 14:23 358次阅读
    NVIDIA<b class='flag-5'>多</b><b class='flag-5'>摄像头</b>追踪工作流的应用架构

    基于迅为RK3588【RKNPU2项目实战1】:YOLOV5实时目标分类

    [/url] 【RKNPU2 人工智能开发】 【AI深度学习推理加速器】——RKNPU2 从入门到实践(基于RK3588和RK3568) 【RKNPU2项目实战1】:YOLOV5实时目标分类 【RKNPU2项目实战2】:
    发表于 08-15 10:51

    基于FPGA的摄像头心率检测装置设计

    4.1 主要创新点 (1)充分利用 PYNQ-2 核心板的运算性能,实现实时无接触式高精确度检 测心率的功能。 (2)打破传统接触式心率测量方式,采用无接触式方法测量心率,被测者仅需面向
    发表于 07-01 17:58

    智能摄像头抄表器是什么?

    1.概念理解:智能摄像头抄表器智能摄像头抄表器是一种融合了人工智能和物联网技术的创新设备,主要用于自动读取和记录各种计量仪表的数据,如水表、电表、燃气表等。它通过高清摄像头捕捉图像,然后利用
    的头像 发表于 04-24 14:14 660次阅读
    智能<b class='flag-5'>摄像头</b>抄表器是什么?

    基于摄像头的高鲁棒性视觉SLAM系统设计

    本文的主要目标是通过扩展ORB-SLAM2的功能来增强准确性,从多个摄像头中的姿态估计和地图重用开始。所有这些摄像头的图像特征将被合并到跟踪
    发表于 04-20 17:51 629次阅读
    基于<b class='flag-5'>多</b><b class='flag-5'>摄像头</b>的高鲁棒性视觉SLAM系统设计

    如何利用NVIDIA Isaac Sim对工作站的摄像头性能进行基准测试呢?

    机器人通常都会配备摄像头,设计数字孪生仿真时,在模拟环境中准确复制其性能十分重要。
    的头像 发表于 02-20 16:20 919次阅读
    如何<b class='flag-5'>利用</b>NVIDIA Isaac Sim对工作站的<b class='flag-5'>摄像头</b>性能进行基准测试呢?

    高清网络摄像头多媒体智能屏

    迪文全新推出的28系列智能屏,是面向屏幕实时显示高清网络摄像头视频画面应用的产品。该系列智能屏可通过以太网或WiFi连接摄像头,可接收H.264编码RTSP协议的摄像头视频,支持
    的头像 发表于 02-19 13:21 614次阅读
    高清网络<b class='flag-5'>摄像头</b>多媒体智能屏

    在ELF 1 开发板上实现读取摄像头视频进行目标检测

    深度学习模型的项目,该项目能够实时读取摄像头视频流并实现对画面中的物体进行精准的目标检测。项目所需的硬件设备:1、基于NXP(恩智浦)i.MX6ULL的ELF1开
    的头像 发表于 01-24 10:38 715次阅读
    在ELF 1 开发板上<b class='flag-5'>实现</b>读取<b class='flag-5'>摄像头</b>视频进行<b class='flag-5'>目标</b>检测

    【EASY EAI Nano】RV1126实时读取摄像头并进行yolo检测显示

    实现了三个并行模块,分别是 摄像头读取,使用opencv转换到适合大小 yolo检测 托管到Qt进行现实 检测的DEMO从每帧10次改到每帧2次,可以看到还是具备一定实时性。 代码:仓库
    发表于 01-14 18:53