专栏感知FatigueView:基于视觉的困倦检测的多摄像头视频数据集

FatigueView:基于视觉的困倦检测的多摄像头视频数据集

侯先豹2024-05-29
69
0

FatigueView: A Multi-Camera Video Dataset for Vision-Based Drowsiness Detection

引言

困倦检测在驾驶员检测系统、智能办公等领域中至关重要。然而,困倦检测所用的传统的数据集虽然有较大成功,但是通常有相机点位不够全面、无法应对现实挑战、相机类型单一、难以精准的发现困倦等问题,使得现有数据集对于实际应用有较强的限制性。FatigueView数据集的出现解决了现有数据集所存在的问题,以应对真实环境中的复杂场景,从而推动相应研究的进步以及应用的发展。

相关研究现状

ZJU和YawDD这两个常用的数据集,分别用于困倦检测之中眨眼和打哈欠的检测。NTHU数据集因其丰富的视频是困倦检测最常用的数据集,但是由于缺少多样的相机点位以及类型,其在实际应用中也有缺陷。最新发布的DMD数据集尽管有真实驾驶的视频和模拟场景下的驾驶视频,但是DMD覆盖面不够全面,且还没有完全发布。

与上述数据集相比,FatigueView包含真实的睡眠驾驶的视频,以及在仿真场景下驾驶员从清醒到完全入睡的记录。同时FatigueView中的每一个视频都是由RGB和IR相机在五个不同的位置记录的以及丰富的注释提供建模上的灵活性。下图为各数据集之间的对比:

明显看出FatigueView在检测的部分以及相机和数据量上显著的优势。

FatigueView数据采集框架

1.FatigueTree

如下图所示构建FatigueTree先是获取真实的影像,使用嗜睡相关的关键词,并运用现有的人脸和眼睛特征点检测器的辅助下,最后通过专家们对视频进行分析,构造出FatigueTree。

FatigueTree下有检测分支,此图是困倦检测中的eye分支,包括eye的状态以及遮挡物等特征。

2.数据采集的环境

用RGB以及IR相机分别在五处不同的位置来去获取困倦图像,下图为同一时刻不同位置的困倦图像。

参与者可按照自己的习惯根据指导来做出困倦动作以此获取数据。测试数据在模拟实车环境下进行,如下图所示。

3.数据收集

训练数据分为两个阶段:第一阶段的主要目的是确保不同参与者的视觉符号能够被捕获;第二个阶段参与者们表现出从清醒到睡眠的不同困倦事件。

测试数据:确保男女以及穿戴附件(如眼睛等)比例的情况下,参与者不睡眠18小时,在特定时间点进行测试同时增加灯光的影响,进行测试。

4.数据注释

数据分为三层进行标注分别为:Elements、Sets、Events。Elements:标注每一帧的基本特征,如脸部,头部以及眼部状态等。Sets:短视频,描述与疲劳相关的视觉符号,如打哈欠、点头等。Events:描述最终的行为,如困倦、正常等。

FatigueView的特性

1.丰富的视觉符号

可以清楚地看出,FatigueView在质量和数量上都超过了现有的数据集。FatigueView包含了5个视觉符号的集合级标注。此外,基于元素层面的注释,还可以进一步探索更细微的视觉符号。

在所有的视觉信号中,眨眼的次数最多,其次是长时间的闭眼和打哈欠。因此,将更多的精力用于优化与眼睛状态相关的算法是合理的。

2.对困倦程度分类

通过将KSS中的九个级别映射到事件级别中的五个类别。

1.Alert:低频率的打哈欠、伸展和偶尔揉眼睛。

2.Signs:沉重的眼睛有嗜睡的迹象,如长时间的斜视,沉重的眼睛,高频率的打哈欠。

3.Sleepy:眼睛眨动伴随着长时间的眼睛闭合和点头。

4.Normal:完全清醒。

5.Sleep:长时间闭眼。

FatigueView基准测试

对下图的各种方法进行测试。

Eye Status:对比MultiHPOG,HiKS和EARSequence基准方法,对比出EARSequence在RGB-Front以及IR-Front中的优异表现。原因是它利用图像序列从先验帧中获取上下文信息。因此,在实际应用中,最好使用图像序列进行的眼睛状态分类。

Eye Blinking:MeanDistance比MotionVector获得了更好的精度评分。主要是因为其使用了更多的上下文信息,而不是光流的简单计算。

Yawning:由于在打哈欠中检测比从眼睛中检测视觉符号相对容易,因此打哈欠检测的整体性能也优于中的眼睛状态和眨眼。但是Dense-LSTM对小开口哈欠的识别能力有限。HOG&LBP在处理FatigueView中发现的复杂场景如遮挡、微遮阳等场景时精准度不足。因此,FatigueView提供了一个更佳的数据集来提升算法。

Nodding:使用唯一的方法HeadMotion,由于摄像机组之间的点头幅度和方向存在差异,使用预先定义的方法不够稳健。同时注意到RGB和IR在Top-Left相机视图中都取得了最好的性能,这可以归因于侧摆运动的易于检测。

Stretching:我们使用基于图像序列的TSN和基于骨架序列的2sAGCN,因为伸展的特征类似于动作识别的特征。TSN和2sAGCN的表现都非常出色,尤其是在特定的相机位置。

从上述两幅图中可以发现Eye16features的表现最好,其次是FacialUnits,但是两种方法对于FatigueView中细微的困倦情况确难以检测到。

下图进一步说明各类方法所存在优点,以及所需改进的地方。所以运用FatigueView数据集去优化算法显得尤其重要。

总结

本文提供了一个广泛的大规模多摄像头数据集,对于现实世界中驾驶场景下的疲劳检测的研究有推动性意义。该数据集是通过一个多摄像头平台收集而来,用分阶段训练数据,同时用贴近现实的方法去测试数据。它还包含了用于测试的真实瞌睡驾驶数据。同时提供分层注释以支持各种与瞌睡相关的研究任务,并在不同层次上对代表性基准方法进行了基准测试。指出代表性基准方法在FatigueView上的性能,为提升困倦检测的实际应用提供了巨大的贡献。


感知
评论0
0/1000