复杂场景数据集设计

简介: 随着计算机应用技术的发展,政府和企业越来越重视对于计算机视觉的应用,而多目标跟踪作为计算机视觉中具有挑战性的任务,在智能交通、智能监控和自动驾驶等多个领域起着重要的作用。多目标跟踪是对某个场景中的多个目标对象进行跟踪,但是由于场景的多变性和复杂性,以及被跟踪目标自身的各种变化,多目标跟踪会面对种种困难。

1.  目标检测数据集设计

     现有的目标检测数据集如 ImageNet、VOC 和 COCO 通常是检测多个类别,对于人体的检测精度不高,容易漏检和误检。本文选取了 COCO 数据集作为基准数据集,使用 YOLOv5 算法进行目标检测时,对于跌倒或有遮挡的人体可能无法检测出。      

     站着的人可以被识别,但是倒地的人或者有遮挡的情况下有可能识别不出来,所以在原有的 COCO 数据集的基础上,需要添加额外的人体数据集再进行针对性训练。      

     选取了部分人体行为检测数据集和网络上符合复杂场景的图片,并使用LabelImg 进行标注,LabelImg 是一个可视化的图像标注工具,YOLO 所需要的数据集可以通过该软件进行标注。      

     利用该软件手工标注了 800 张复杂背景下的包含人体的图片,其中各种姿态的跌倒或躺地状态的人体图片有 200 张,存在遮挡的人体图片有 200 张,剩下的 400 张均为各种正常直立运动的图片,所有的图片均为多人场景。然后将图片和标注放到训练代码中进行训练,从而得到符合条件的测试权重。    

2.  目标跟踪数据集设计

    由于 Deep Sort 模型是针对行人进行目标跟踪的,对于非行人即跌倒或者躺下的人,会出现识别不了的情况,此时需要对 Deep Sort 进行再训练,使算法中的 ReID 模型学习到不同行为的人体特征,从而减少目标跟踪过程中因为对人体的检测丢失而导致的 ID Switch 现象。      

     本文的目标跟踪数据集的制作方法如下:首先使用目标检测器 YOLOv5 对跌倒视频中的某个人体进行检测框提取,然后将包含该人体的检测框提取出来保存为图片,对单个人体提取 30 张图片,这 30 张图片需要体现该人体的轨迹信息,然后将这些图片放缩到同样大小,保存为一个文件夹,依照该方法收集了 150个不相同的人体信息,保存为目标跟踪数据集。并使用该数据集训练 ReID 模型,从而获得理想的实验结果。

3.  复杂场景跌倒数据集设计

     在跌倒检测领域,甚至在机器学习领域,数据集是模型训练、算法验证和性能提升的重要组成部分。由于跌倒发生的概率相对较低,日常生活中也较难获取相应的数据,因此长期以来基于跌倒的公开数据集较少,较为知名的有 Le2i 跌倒检测数据集、多摄像头跌倒数据集(MCFD)、UR 跌倒检测数据集(URFD),然而这些数据集中的跌倒行为大多是发生在简单场景,几乎没有复杂场景的跌倒数据集,因此为了验证跌倒模型的效果,需要采集复杂场景下的跌倒行为视频,组建一个新的数据集进行跌倒检测的研究。    

     新数据集需要包含以下几种行为:

(1)非跌倒行为,如站立、行走;

(2)类跌倒行为,如蹲下、坐下、躺下;

(3)跌倒行为,如向前跌倒、向后跌倒、侧方向跌倒; 与此同时,新数据集中的视频需要包含以下三种场景:

1、单人简单场景,主要来源于公开数据集,场景中只有一个人在行动,背景不发生变化的,无遮挡。

2、单人复杂场景,即视频中只有一个人,但是背景是实际场景,存在运动变化的背景,可能有遮挡。

3、多人复杂场景,视频中有多个人,对背景不作要求,可能有遮挡。      

     根据以上要求,通过混合公开数据集中的样本和网上的行为视频数据,并将视频统一裁剪和规格化为 6s,  640*480 分辨率,由此组建了新的数据集      

     部分视频可能包含多个动作,由于无法对每个视频中的行为进行精准地分割,因此本文对数据集中的视频进行了规则设定,具体规则如下:

(1)如果视频中只包含非跌倒行为,则以非跌倒行为进行分类

(2)如果视频中包含类跌倒行为和非跌倒行为,则以类跌倒进行分类

(3)如果视频中包含跌倒行为和非跌倒行为,则以跌倒行为进行分类

(4)如果视频中包含了非跌倒、类跌倒和跌倒行为,则以跌倒行为进行分类。

相关文章
|
Web App开发 开发工具 git
如何下载Github上的单个文件或者指定目录?
如何下载Github上的单个文件或者指定目录?
3668 0
如何下载Github上的单个文件或者指定目录?
|
4月前
|
机器学习/深度学习 边缘计算 自动驾驶
【状态估计】非线性受控动力系统的线性预测器——Koopman模型预测MPC(Matlab代码实现)
【状态估计】非线性受控动力系统的线性预测器——Koopman模型预测MPC(Matlab代码实现)
249 1
|
机器学习/深度学习 人工智能 自然语言处理
简述人工智能,及其三大学派:符号主义、连接主义、行为主义
简述人工智能,及其三大学派:符号主义、连接主义、行为主义
7714 0
简述人工智能,及其三大学派:符号主义、连接主义、行为主义
|
XML 算法 计算机视觉
使用OpenCV进行人脸检测和戴墨镜特效实战(附Python源码)
使用OpenCV进行人脸检测和戴墨镜特效实战(附Python源码)
925 1
|
小程序 前端开发 开发者
|
存储 运维 监控
深入Linux基础:文件系统与进程管理详解
深入Linux基础:文件系统与进程管理详解
333 8
|
自然语言处理 前端开发 Java
您的智能测试助理来了!蚂蚁TestAgent开源,快来体验!
TestAgent 旨在构建测试领域的“智能体”,融合大模型和质量领域工程化技术,促进质量技术代系升级。我们期望和社区成员一起合作,打造创新的测试领域解决方案,构建24小时在线的测试助理服务,让测试如丝般顺滑。 很高兴地宣布,我们在国内首次开源了测试行业大模型及工具——TestAgent。本次版本包含了性能最强的7B测试领域大模型,以及配套的本地模型快速发布和体验工程化框架,欢迎体验和关注!
3151 0
您的智能测试助理来了!蚂蚁TestAgent开源,快来体验!
|
机器学习/深度学习 缓存 PyTorch
pytorch学习一(扩展篇):miniconda下载、安装、配置环境变量。miniconda创建多版本python环境。整理常用命令(亲测ok)
这篇文章是关于如何下载、安装和配置Miniconda,以及如何使用Miniconda创建和管理Python环境的详细指南。
6098 0
pytorch学习一(扩展篇):miniconda下载、安装、配置环境变量。miniconda创建多版本python环境。整理常用命令(亲测ok)
|
计算机视觉
【YOLOv8改进】 AFPN :渐进特征金字塔网络 (论文笔记+引入代码).md
YOLO目标检测专栏介绍了YOLO的有效改进和实战案例,包括AFPN——一种解决特征金字塔网络信息丢失问题的新方法。AFPN通过非相邻层直接融合和自适应空间融合处理多尺度特征,提高检测性能。此外,还展示了YOLOv8中引入的MPDIoU和ASFF模块的代码实现。详情可参考提供的专栏链接。
在Linux中,如何把系统中不用服务关掉?
在Linux中,如何把系统中不用服务关掉?