By 超神经
内容一览:YOLO v4 是一个实时的、高精度的目标检测模型,本教程将详细讲解如何基于 YOLO v4 和 SORT 算法,实现在多目标条件下的人群距离检测。
关键词:YOLO v4 SORT 多目标检测
新冠疫情爆发初期,「保持社交距离」一直是世界各地的「防护共识」,无论是 WHO 的至少 3 英尺(0.9 米),还是我国的 1.5-2 米,其出发点都是希望通过扩大人与人之间的社交距离,降低感染风险。
在过去三年中,我们曾介绍过吴恩达的公司--Landing AI,发布的社交距离警告工具,也报道过亚马逊推出的「距离助手」,因为类似孙悟空给唐僧画的圈引发关注,希望借助这一工具帮助员工保持社交距离。
亚马逊社交距离助手示意图
左边红圈:警告,这几位员工,散开散开
右边绿圈:安全距离,继续保持
阅读以往报道:
* 吴恩达的公司,发布了一款社交距离警告工具
* 亚马逊推出的「距离助手」,好像孙悟空给唐僧画的圈圈啊
今天我们将从项目出发,演示如何利用 DeepSOCIAL,基于 YOLO v4 和 SORT 算法,对多目标进行跟踪从而实现人群距离监测。
代码传送门:
https://openbayes.com/console/open-tutorials/containers/Qgf0mAml82l
DeepSOCIAL 论文解读:
人群距离监测 DeepSOCIAL 最全汉化论文+源码导读
https://arxiv.org/pdf/2008.11672.pdf
项目代码详解
本教程主要演示:
-
编译 YOLO
-
社交距离监测及感染风险评估的推理过程
注意事项:
* infer.ipynb 主要介绍了监测社交距离和评估感染风险的推理过程,你可以输入一段行人视频,得到对应的监测和评估信息
* 推荐使用 GPU 运行
教程运行效果示意图
以下为完整训练过程。
1. 准备代码环境
# 引入依赖
from IPython.display import display, Javascript, Image
from base64 import b64decode, b64encode
import os
import cv2
import numpy as np
import PIL
import io
import html
import time
import matplotlib.pyplot as plt
%matplotlib inline
2. 编译 YOLO
%cd darknet
!sed -i 's/OPENCV=0/OPENCV=1/' Makefile
!sed -i 's/GPU=0/GPU=1/' Makefile
!sed -i 's/CUDNN=0/CUDNN=1/' Makefile
!sed -i 's/CUDNN_HALF=0/CUDNN_HALF=1/' Makefile
!sed -i 's/LIBSO=0/LIBSO=1/' Makefile
!make
3. 使用 Darknet 的 Python 接口
查看完整代码,请访问:
https://openbayes.com/console/open-tutorials/containers/Qgf0mAml82l
4. 使用 SORT 算法对目标进行实时跟踪
!pip install filterpy
from sort import *
mot_tracker = Sort(max_age=25, min_hits=4, iou_threshold=0.3)
5. 输入设置
Input = "/openbayes/input/input1/OxfordTownCentreDataset.avi"
ReductionFactor = 2
calibration = [[180,162],[618,0],[552,540],[682,464]]
6. DeepSOCIAL 参数设置和函数引入
查看完整代码,请访问:
https://openbayes.com/console/open-tutorials/containers/Qgf0mAml82l
7. 推理过程
8. 结果演示
show_video('/openbayes/home/darknet/DeepSOCIAL_Crowd_Map.mp4')
show_video('/openbayes/home/darknet/DeepSOCIAL_DTC.mp4')
show_video('/openbayes/home/darknet/DeepSOCIAL_Social_Distancing.mp4')
查看完整 notebook,请访问:
https://openbayes.com/console/open-tutorials/containers/Qgf0mAml82l
关于 OpenBayes
OpenBayes 是国内领先的机器智能研究机构,提供算力容器、自动建模、自动调参等多项 AI 开发相关的基础服务。
同时 OpenBayes 还上线了数据集、教程、模型等众多主流公开资源,供开发者快速学习并创建理想的机器学习模型。
现在访问 openbayes.com 并注册
即可享用
600 分钟/周的 RTX 3090
以及 300 分钟/周 的 CPU 免费计算时
运行完整教程,请点击阅读原文,或访问以下链接:
https://openbayes.com/console/open-tutorials/containers/Qgf0mAml82l
还想学习哪些好玩的教程,欢迎留言告诉我们~
—— 完 ——