复杂场景数据集设计

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

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)如果视频中包含了非跌倒、类跌倒和跌倒行为,则以跌倒行为进行分类。

相关文章
|
6月前
|
机器学习/深度学习 数据挖掘 Python
【数据挖掘】分类器模型性能评估讲解及iris数据集评估实战(超详细 附源码)
【数据挖掘】分类器模型性能评估讲解及iris数据集评估实战(超详细 附源码)
167 0
|
3月前
|
自然语言处理
评估数据集CGoDial问题之数据集中包含哪些基线模型
评估数据集CGoDial问题之数据集中包含哪些基线模型
|
3月前
|
计算机视觉
利用各类回归模型,对数据集进行建模
【8月更文挑战第8天】利用各类回归模型,对数据集进行建模。
42 4
|
4月前
|
数据采集 机器学习/深度学习 数据可视化
关于Python数据分析项目的简要概述:从CSV加载数据,执行数据预处理,进行数据探索,选择线性回归模型进行训练,评估模型性能并优化,最后结果解释与可视化。
【7月更文挑战第5天】这是一个关于Python数据分析项目的简要概述:从CSV加载数据,执行数据预处理(填充缺失值,处理异常值),进行数据探索(可视化和统计分析),选择线性回归模型进行训练,评估模型性能并优化,最后结果解释与可视化。此案例展示了数据科学的典型流程。
74 2
|
5月前
|
机器学习/深度学习 数据采集 人工智能
特征工程对ML/DL至关重要,涉及数据清洗、转换和特征选择,以提升模型预测和泛化能力。
【6月更文挑战第28天】特征工程对ML/DL至关重要,涉及数据清洗、转换和特征选择,以提升模型预测和泛化能力。它改善数据质量,浓缩关键信息,优化性能,增强解释性。特征选择,如过滤法、RFE、嵌入式和包裹式方法,是关键步骤,常需迭代和结合业务知识。自动化工具如AutoML简化了这一过程。
48 0
|
6月前
|
机器学习/深度学习 分布式计算 算法
R语言 RevoScaleR的大规模数据集决策树模型应用案例
R语言 RevoScaleR的大规模数据集决策树模型应用案例
|
6月前
|
数据可视化
R语言实现有限混合模型建模分析
R语言实现有限混合模型建模分析
|
6月前
大模型开发:描述一个你遇到过的具有挑战性的数据集问题以及你是如何解决它的。
在大模型开发中,面对不平衡数据集(某些类别样本远超其他类别)的问题,可能导致模型偏向多数类。在二分类问题中,正样本远少于负样本,影响模型学习和性能。为解决此问题,采用了数据重采样(过采样、欠采样)、SMOTE技术合成新样本、使用加权交叉熵损失函数、集成学习(Bagging、Boosting)以及模型调整(复杂度控制、早停法、正则化)。这些策略有效提升了模型性能,尤其是对少数类的预测,强调了针对数据集问题灵活运用多种方法的重要性。
69 0
|
存储 数据挖掘 数据处理
R语言之处理大型数据集的策略
R语言之处理大型数据集的策略
148 4
|
机器学习/深度学习 算法 数据挖掘
【数据科学】Scikit-learn[Scikit-learn、加载数据、训练集与测试集数据、创建模型、模型拟合、拟合数据与模型、评估模型性能、模型调整]
【数据科学】Scikit-learn[Scikit-learn、加载数据、训练集与测试集数据、创建模型、模型拟合、拟合数据与模型、评估模型性能、模型调整]