CN111052127A - 疲劳检测的系统和方法 - Google Patents
疲劳检测的系统和方法 Download PDFInfo
- Publication number
- CN111052127A CN111052127A CN201880001325.8A CN201880001325A CN111052127A CN 111052127 A CN111052127 A CN 111052127A CN 201880001325 A CN201880001325 A CN 201880001325A CN 111052127 A CN111052127 A CN 111052127A
- Authority
- CN
- China
- Prior art keywords
- yawning
- face
- training
- blink
- driver
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 260
- 238000000034 method Methods 0.000 title claims abstract description 85
- 206010048232 Yawning Diseases 0.000 claims abstract description 187
- 241001282135 Poromitra oscitans Species 0.000 claims abstract description 175
- 238000012549 training Methods 0.000 claims description 149
- 210000001508 eye Anatomy 0.000 claims description 51
- 230000008569 process Effects 0.000 claims description 35
- 230000004397 blinking Effects 0.000 claims description 18
- 230000002123 temporal effect Effects 0.000 claims description 14
- 238000004590 computer program Methods 0.000 claims description 12
- 238000004891 communication Methods 0.000 claims description 9
- 238000000605 extraction Methods 0.000 claims description 6
- 230000001419 dependent effect Effects 0.000 claims description 3
- 206010016256 fatigue Diseases 0.000 description 99
- 238000012545 processing Methods 0.000 description 86
- 230000015654 memory Effects 0.000 description 34
- 238000010586 diagram Methods 0.000 description 19
- 210000000214 mouth Anatomy 0.000 description 15
- 230000004048 modification Effects 0.000 description 12
- 238000012986 modification Methods 0.000 description 12
- 230000000193 eyeblink Effects 0.000 description 11
- 230000006870 function Effects 0.000 description 11
- 230000001815 facial effect Effects 0.000 description 9
- 238000004422 calculation algorithm Methods 0.000 description 6
- 210000004709 eyebrow Anatomy 0.000 description 6
- 210000004209 hair Anatomy 0.000 description 6
- 210000001331 nose Anatomy 0.000 description 6
- 238000013527 convolutional neural network Methods 0.000 description 5
- 230000006872 improvement Effects 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 238000007477 logistic regression Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000012706 support-vector machine Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 230000004424 eye movement Effects 0.000 description 3
- 210000003128 head Anatomy 0.000 description 3
- 230000033001 locomotion Effects 0.000 description 3
- 230000000644 propagated effect Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 230000011218 segmentation Effects 0.000 description 3
- 206010039203 Road traffic accident Diseases 0.000 description 2
- 208000027418 Wounds and injury Diseases 0.000 description 2
- 230000006378 damage Effects 0.000 description 2
- 238000003066 decision tree Methods 0.000 description 2
- 210000000887 face Anatomy 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 208000014674 injury Diseases 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000007637 random forest analysis Methods 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000001931 thermography Methods 0.000 description 2
- 238000010200 validation analysis Methods 0.000 description 2
- 241001465754 Metazoa Species 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 210000003467 cheek Anatomy 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 210000005069 ears Anatomy 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000004399 eye closure Effects 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 239000010977 jade Substances 0.000 description 1
- 210000000088 lip Anatomy 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 210000000056 organ Anatomy 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
- 230000029058 respiratory gaseous exchange Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 239000004984 smart glass Substances 0.000 description 1
- 241000894007 species Species 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/59—Context or environment of the image inside of a vehicle, e.g. relating to seat occupancy, driver state or inner lighting conditions
- G06V20/597—Recognising the driver's state or behaviour, e.g. attention or drowsiness
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/34—Route searching; Route guidance
- G01C21/36—Input/output arrangements for on-board computers
- G01C21/3697—Output of additional, non-guidance related information, e.g. low fuel level
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
- G06V20/41—Higher-level, semantic clustering, classification or understanding of video scenes, e.g. detection, labelling or Markovian modelling of sport events or news items
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/161—Detection; Localisation; Normalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/168—Feature extraction; Face representation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/168—Feature extraction; Face representation
- G06V40/171—Local features and components; Facial parts ; Occluding parts, e.g. glasses; Geometrical relationships
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/172—Classification, e.g. identification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/18—Eye characteristics, e.g. of the iris
Landscapes
- Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Oral & Maxillofacial Surgery (AREA)
- General Health & Medical Sciences (AREA)
- Human Computer Interaction (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Automation & Control Theory (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Ophthalmology & Optometry (AREA)
- Traffic Control Systems (AREA)
- Measurement Of The Respiration, Hearing Ability, Form, And Blood Characteristics Of Living Organisms (AREA)
Abstract
本发明提供了一种用于确定驾驶员疲劳程度的方法。所述方法可以包括从摄像头接收至少两个视频帧(510)。所述方法可以包括检测所述至少两个视频帧中驾驶员的脸部(520)以及提取所述至少两个视频帧中的检测到的脸部(530)。所述方法还可以包括获得训练后的眨眼检测模型和训练后的打哈欠检测模型(540)。所述方法还可以包括通过将所述提取的脸部输入到所述训练后的眨眼检测模型中来生成眨眼检测结果(550)以及通过将所述提取的脸部输入到所述训练后的打呵欠检测模型来生成打哈欠检测结果(560)。所述方法还可以包括根据所述眨眼检测结果和所述打哈欠检测结果确定所述驾驶员的疲劳程度(570)。所述方法还可以包括根据所述疲劳程度生成通知(580)。
Description
技术领域
本申请涉及用于用户行为的系统以及方法,具体地,涉及用于检测用户疲劳的系统和方法。
背景技术
随着道路上车辆数量的急剧增加,交通事故频繁发生。很大一部分交通事故是由于驾驶员疲劳驾驶造成的。现有的疲劳驾驶检测方法包括分析驾驶员的图像,即如果驾驶员的眼睛经常保持闭合,则确定驾驶员疲劳。但是,如果驾驶员的图像中存在噪声,驾驶员的疲劳状况的评估可靠性可能会减弱,因为驾驶员的眼睛可能在这些图像中显得很小。因此,需要提供更有效检测驾驶员疲劳的系统以及方法。
发明内容
根据本申请的一个方面,提供一种系统。所述系统可以包括至少一个计算机可读存储装置,其包括用于确定驾驶员的疲劳程度的指令,以及与该至少一个计算机可读存储装置通信的至少一个处理器。当执行该组指令时,该至少一个处理器可以被配置为使系统从摄像头接收至少两个视频帧。该至少一个处理器还可以被配置为使系统检测至少两个视频帧中的驾驶员的脸部,且提取至少两个视频帧中的检测到的脸部。该至少一个处理器还可以被配置为使系统获得训练后的眨眼检测模型和训练后的打哈欠检测模型。至少一个处理器还可以用于通过将所述提取的脸部输入到所述训练后的眨眼检测模型中来生成眨眼检测结果及通过将所述提取的脸部输入到所述训练后的打呵欠检测模型来生成打哈欠检测结果。该至少一个处理器还可以被配置为使得系统根据眨眼检测结果和打哈欠检测结果来确定驾驶员的疲劳程度。该至少一个处理器还被配置为使系统根据疲劳程度来生成通知。
在一些实施例中,训练后的眨眼检测模型可以通过用于训练眨眼检测模型的流程生成。该流程可以包括获得初步的眨眼检测模型;获得至少两个训练脸部样本;将至少两个训练脸部样本分类为正眨眼训练样本和负眨眼训练样本,其中正眨眼训练样本中的眼睛眨动而负眨眼训练样本中的眼睛不眨动,且根据该组正眨眼训练样本和负眨眼训练样本训练初步眨眼检测模型,以生成训练后的眨眼检测模型。
在一些实施例中,训练后的打哈欠检测模型可以通过用于训练打哈欠检测模型的流程生成。该流程可以包括获得初步打哈欠检测模型;获得至少两个训练脸部样本;将至少两个训练脸部样本分类为正打哈欠训练样本和负打哈欠训练样本,其中正打哈欠训练样本中的脸所对应的人打哈欠而负打哈欠训练样本中的脸所对应的人不打哈欠;且根据该正打哈欠训练样本和该负打哈欠训练样本训练初步打哈欠检测模型,以生成训练后的打哈欠检测模型。
在一些实施例中,所述至少一个处理器还可以被配置为使系统使得所述系统确定在所述至少两个视频帧的所述至少一个视频帧中垂直于所述驾驶员的脸部的方向与所述摄像头的拍摄方向之间的角度是否大于至少两个视频帧中的至少一个视频帧的阈值。响应于确定垂直于驾驶员的脸部的方向与摄像头的所述拍摄方向之间的角度大于所述阈值时,至少一个处理器还可以被配置为使系统从将被输入到所述训练后的眨眼检测模型或所述训练后的打哈欠检测模型中所述至少两个视频帧中丢弃所述至少一个视频帧。
在一些实施例中,为了确定垂直于驾驶员的脸部的方向与摄像头的拍摄方向之间的角度,至少一个处理器被配置为使系统将所述至少两个视频帧中所述提取的脸部输入到训练后的角度确定模型中,以生成垂直于所述驾驶员的所述脸部的所述方向与所述摄像头的所述拍摄方向之间的所述角度是否大于所述阈值的判断结果。
在一些实施例中,训练后的角度确定模型是通过训练角度确定模型的流程来生成的。该流程可以包括获得初步角度确定模型;获得至少两个训练脸部样本;将至少两个训练脸部样本分类为正角度训练样本和负角度训练样本,其中在正角度训练样本中,垂直于驾驶员的脸部的所述方向与摄像头的所述拍摄方向之间的所述角度大于60°,且在负角度训练样本中,垂直于所述驾驶员脸部的所述方向与所述摄像头的所述拍摄方向之间的所述角度小于或等于60度;且根据所述正角度训练样本和所述负角度训练样本训练初步角度确定模型以生成训练后的角度确定模型。
在一些实施例中,为了根据眨眼检测结果和打哈欠检测结果来确定疲劳程度,至少一个处理器还被配置为使系统根据所述眨眼检测结果确定所述驾驶员眨眼的频率;根据打哈欠检测结果确定驾驶员打哈欠的频率;且根据眨眼的频率和打哈欠的频率确定疲劳程度。
在一些实施例中,为了根据眨眼检测结果来确定驾驶员的眨眼的频率,至少一个处理器还被配置为使系统根据眨眼检测结果来确定在至少两个视频帧中检测到的驾驶员的眨眼次数;确定至少两个视频帧的总时间长度;及根据眨眼次数和至少两个视频帧的总时间长度来确定眨眼的频率。
在一些实施例中,为了根据至少两个打哈欠检测结果来确定驾驶员的打哈欠的频率,至少一个处理器还被配置为使系统根据至少两个打哈欠检测结果,确定在至少两个连续帧中检测到的驾驶员的打哈欠的次数;确定至少两个视频帧的总时间长度;且根据驾驶员打哈欠的次数和至少两个视频帧的总时间长度来确定打哈欠的频率。
在一些实施例中,通知包括声音、振动或灯光中的至少一个。
在一些实施例中,声音的响度或频率、振动的强度或灯光的强度或频率取决于疲劳程度。
根据本申请的另一方面,提供了一种用于确定驾驶员疲劳程度的方法。该方法可以包括从摄像头接收至少两个视频帧。该方法还可以包括检测至少两个视频帧中驾驶员的脸部。该方法进一步可以包括提取至少两个视频帧中的检测到的脸部。该方法进一步可以包括获得训练后的眨眼检测模型和训练后的打哈欠检测模型。该方法还可以包括通过将提取的脸部输入到训练后的眨眼检测模型中来生成眨眼检测结果,及通过将提取的脸部输入到训练后的打呵欠检测模型来生成打哈欠检测结果。该方法进一步可以包括根据眨眼检测结果和打哈欠检测结果确定驾驶员的疲劳程度。该方法进一步可以包括根据所述疲劳程度生成通知。
根据本申请的另一方面,提供了一种用于确定驾驶员疲劳程度的系统。该系统可以包括采集模块、检测模块、提取模块、生成模块和确定模块。采集模块用于接收来自摄像头的至少两个视频帧,及获得训练后的眨眼检测模型和训练后的打哈欠检测模型。检测模块用于检测至少两个视频帧中驾驶员的脸部。提取模块用于提取至少两个视频帧中检测到的脸部。生成模块用于通过将提取的脸部输入到训练后的眨眼检测模型中来生成眨眼检测结果、通过将提取的脸部输入到训练后的打呵欠检测模型来生成打哈欠检测结果及根据疲劳程度生成通知。确定模块用于根据眨眼检测结果和打哈欠检测结果来确定驾驶员的疲劳程度。
根据本申请的另一方面,提供了一种体现计算机程序产品的非暂时性计算机可读存储介质。所述计算机程序产品可以被配置为使计算设备从摄像头接收至少两个视频帧的指令。所述计算机程序产品还可以被配置为使计算设备检测至少两个视频帧中驾驶员的脸部的指令。所述计算机程序产品进一步可以被配置为使计算设备提取至少两个视频帧中检测到的脸部的指令。所述计算机程序产品进一步可以被配置为使计算设备获得训练后的眨眼检测模型和训练后的打哈欠检测模型的指令。所述计算机程序产品进一步可以被配置为使计算设备通过将提取的脸部输入到训练后的眨眼检测模型中来生成眨眼检测结果和通过将提取的脸部输入到训练后的打呵欠检测模型来生成打哈欠检测结果的指令。所述计算机程序产品进一步可以被配置为使计算设备根据眨眼检测结果和打哈欠检测结果确定驾驶员的疲劳程度的指令。所述计算机程序产品进一步可以被配置为使计算设备根据疲劳程度生成通知的指令。
其他特征中的部分内容会在下面的描述中进行阐述,而部分内容对于本领域技术人员在阅读以下内容和附图部分后将变得显而易见,或者本领域技术人员可以通过以下例子生产或操作而学习到部分内容。本申请的特征可以通过实践或使用在下面讨论的详细示例中阐述的方法、手段和组合的实践或使用得以实现。
附图说明
本申请将结合示例性实施例进一步描述。这些示例性的实施例将结合参考图示进行详细描述。这些实施例是非限制性的示例性实施例,在图示多种视图下的实施例中,相似的编号表示相似的结构,其中:
图1是根据本申请的一些实施例所示的示例性疲劳检测系统的示意图;
图2是根据本申请的一些实施例所示的计算装置的示例性硬件和/或软件组件的示意图;
图3是根据本申请的一些实施例所示的可以在其上运行终端的移动装置的示例性硬件和/或软件组件的示意图;
图4是根据本申请的一些实施例所示的一种示例性处理引擎的模块图;
图5是根据本申请的一些实施例所示用于确定驾驶员的疲劳程度的示例性过程的流程图;
图6是根据本申请的一些实施例所示用于确定眨眼频率的示例性过程的流程图;
图7是根据本申请的一些实施例所示用于确定打哈欠频率的示例性过程的流程图;
图8是根据本申请的一些实施例所示的眨眼示例性示意图;
图9是根据本申请的一些实施例所示的示例性打哈欠示意图;
图10是根据本申请的一些实施例所示打哈欠的示例性图像的示意图;
图11是根据本申请的一些实施例所示的示例性模型;以及
图12是根据本申请的一些实施例所示的用于检测驾驶员疲劳的示例性汽车数据记录器的示意图。
具体实施方式
下述描述是为了使本领域普通技术人员能制造和使用本申请,并且该描述是在特定的应用场景及其要求的背景下提供的。对于本领域的普通技术人员来讲,对本申请披露的实施例进行的各种修改是显而易见的,并且本申请定义的通则可以适用于其他实施例和应用,而不背离本申请的精神和范围。因此,本申请并不限于所披露的实施例,而应被给予与申请专利范围一致的最宽泛的范围。
如本申请和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设装置也可能包含其它的步骤或元素。
根据以下对附图的描述,本申请所述的和其他的特征、操作方法、相关组件的功能和经济的结构更加显而易见,这些都构成说明书的一部分。然而,应当理解的是,附图仅仅是为了说明和描述的,并不旨在限制本申请的范围。应当理解的是,附图并不是按比例的。
本申请中使用了流程图用来说明根据本申请的实施例的系统所执行的操作。应当理解的是,前面或下面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各种步骤。同时,也可以将一个或多个其他操作添加到这些流程图中,或从这些流程图移除一个或多个操作。
此外,虽然本申请中公开的系统和方法主要是关于驾驶员疲劳检测服务的,但也可理解这只是一个示例性实施例。本申请的系统或方法可以应用于任何其他类型的眨眼检测。例如,为了提高参加课堂或讲座的学生或观众的注意力,可以使用本申请的系统或方法来检测学生或观众的疲劳程度。又例如,为了降低机械工程师或操作员的机械损伤风险,本申请的系统或方法可用于检测机械工程师或操作员的疲劳程度。
本申请中的术语“用户”指可能在疲劳检测系统中检测到的个体,实体或工具。例如用户可以是司机、操作员、学生、工人等或其组合。术语“疲劳”以及“疲劳程度”可以互换使用。
本申请涉及用于检测驾驶员疲劳驾驶的系统和方法。驾驶员的疲劳驾驶可以根据驾驶员的疲劳程度来判断。疲劳程度可以根据眨眼检测结果和打哈欠检测结果来确定。眨眼检测结果可以通过将驾驶员的脸部图像输入训练后的眨眼检测模型来生成。打哈欠检测结果可以通过将驾驶员的脸部图像输入到训练后的打哈欠检测模型来生成。如本申请所用,可以从驾驶员的脸部图像中提取至少两个实时视频帧,其中包括驾驶员的脸部。在确定了疲劳程度后,可以生成通知(例如,声音、振动、灯光)来警告驾驶员。通知的类型和/或强度可以取决于疲劳程度。
图1是根据本申请的一些实施例的示例性疲劳检测系统100的示意图。例如,疲劳检测系统100可以用于检测驾驶员的疲劳驾驶。作为另一个例子,疲劳检测系统100可以用于确定正在生产线上工作的机械工程师或操作员的疲劳程度。另外一个例子,疲劳检测系统100可以用于确定参加课堂(或讲座)的学生(或观众)的疲劳程度。
疲劳检测系统100可以安装在车辆或其组件上(例如,车辆中的汽车数据记录器)。疲劳检测系统100可包括处理装置110、终端120、图像拍摄装置130、网络140以及存储器150。
在一些实施例中,处理装置110可以是单个处理装置或处理装置组。处理装置组可以是集中的或分布式的(例如,处理装置110可以是分布式系统)。在一些实施例中,处理装置110可以是本地的或远程的。例如处理装置110可以通过所述网络140访问存储在终端120,图像拍摄装置130和/或存储器150中的信息和/或数据。又例如处理装置110可以直接连接到终端120,图像拍摄装置130和/或存储器150以访问存储的信息和/或数据。在一些实施例中,处理装置110可以在云平台上实现。仅作为范例,云端平台可以包括私有云、公用云、混合云、小区云、分布式云、内部云、多层云等或其任意组合。在一些实施例中,处理装置110可以在本申请图2中描述的具有一个或多个组件的计算装置200上实施。
在一些实施例中,处理装置110可以包括处理引擎112。处理引擎112可以处理与服务请求相关的信息和/或数据以执行本申请描述的一个或多个功能。例如处理引擎112可以根据眨眼检测结果以及打哈欠检测结果来判断驾驶员的疲劳程度。在一些实施例中,所述处理引擎112可以包括一个或者多个处理引擎(例如,单芯片处理引擎或多芯片处理引擎)。仅作为范例,处理引擎112可以包括一中央处理单元(CPU)、特定应用积体电路(ASIC)、特定应用指令集处理器(ASIP)、影像处理器(GPU)、物理运算处理单元(PPU)、数位讯号处理器(DSP)、现场可编程门阵列(FPGA)、可编程逻辑装置(PLD)、控制器、微控制器单元、精简指令计算机(RISC)、微处理器等或其组合。
在一些实施例中,乘客端120可以包括台式电脑120-1、笔记本电脑120-2、机动车的内置装置120-3、移动装置120-4等中的一种或几种的组合。在一些实施例中,移动装置120-4可以包括智能家居装置、可穿戴装置、智能移动装置、增强现实装置等或其组合。在一些实施例中,可穿戴装置可以包括智能手镯、智能鞋袜、智能眼镜、智能头盔、智能手表、智能衣物、智能背包、智能配饰等或其任意组合。在一些实施例中,智能移动装置可以包括智能电话、个人数字助理(PDA)、游戏装置、导航装置、POS机等或其组合。在一些实施例中,车辆120-3中的内置装置可以包括车载计算机、汽车数据记录器、车载人机交互(HCI)系统、车载电视等。终端120可以是具有用于定位终端120的位置的定位技术的装置。终端120可以由处理引擎112生成根据疲劳程度判断的通知。
图像拍摄装置130可以用于拍摄一个或多个对象的图像。该图像可以包括静态图像、运动图像、视频(离线或直播)、视频帧或其组合。对象可以是静态的或动态的。对象可以是动物、人(驾驶员、操作员、学生、工作人员)或其一部分(脸部),货物等或其组合。
如图1所示,图像拍摄装置130可以包括汽车数据记录器130-1、半球摄像头130-2、固定摄像头130-3等或其组合。在一些实施例中,汽车数据记录器130-1可以安装在车辆并一般用于记录驾驶员驾驶时车辆周围的道路状况。汽车数据记录器130-1可以包括一个朝向驾驶员的脸部的摄像头以拍摄驾驶员的脸部图像。在一些实施例中图像拍摄装置130可以与终端120(例如,移动装置120-4)组合。例如,驾驶员的移动装置可以包括一个可以拍摄驾驶员脸部图像的摄像头。
在一些实施例中,当驾驶员在他或她的移动装置中打开导航应用程序(APP)以在旅程期间进行导航时,移动装置的摄像头可以同时拍摄驾驶员脸部的图像。在一些实施例中,本申请中所述的疲劳检测方法可以由其移动装置或处理器实现,以根据所拍摄的图像判断驾驶员的疲劳程度。移动装置还包括用于生成通知的组件(例如,屏幕、扬声器、振动组件),以根据驾驶员的疲劳程度生成通知。通知可以包括声音,振动,灯光等或其组合。
网络140可以促进信息和/或数据的交换。通过所述网络140,在一个或多个部件中,疲劳检测系统100(例如,处理装置110、终端120、图像拍摄装置130或存储器150)可以将信息和/或数据传输到另一个组件的疲劳检测系统100。例如处理装置110(或处理引擎112)可通过所述网络140从图像拍摄装置130接收至少两个视频帧。又例如处理装置110(或处理引擎112)可以通过所述网络140向终端120发送通知。在一些实施例中,网络140可以为任意形式的有线或无线网络,或其任意组合。仅作为范例,网络140可以包括电缆网络、有线网络、光纤网络、远程通信网络、内部网络、因特网、局域网络(LAN)、广域网路(WAN)、无线局域网络(WLAN)、城域网络(MAN)、公用电话交换网络(PSTN)、蓝牙网络、ZigBee网络、近场通讯(NFC)网络等或其任意组合。在一些实施例中,网络140可以包括一个或多个网络接入点。例如,网络140可以包括有线或无线网络接入点,如基站和/或互联网交换点140-1、140-2,疲劳检测系统100的一个或多个组件可以通过该接入点连接到网络140交换数据和/或信息。
存储器150可以存储数据和/或指令。在一些实施例中,存储器150可以存储从终端120和/或图像拍摄装置130获取的数据。例如,存储器150可以存储从图像拍摄装置130拍摄的一个或多个对象的至少两个图像。在一些实施例中,存储器150可以存储处理装置110可以执行或用于执行本申请中描述的示例性方法的数据和/或指令。在一些实施例中,存储器150可以包括大容量存储器、可移动存储器、易失性读写存储器、只读存储器(ROM)等或上述举例的任意组合。示例性大容量存储器可以包括磁盘、光盘、固态磁盘等。示例性可移动存储器可以包括快闪驱动器、软盘、光盘、记忆卡、压缩盘、磁带等。示例性易失性读写存储器可以包括随机存取存储器(RAM)。示例性随机存取存取器可以包括动态随机存取存储器(DRAM)、双倍速率同步动态随机存取存储器(DDR SDRAM)、静态随机存取存取器(SRAM)、晶闸管随机存取存取器(T-RAM)、零电容随机存取存取器(Z-RAM)等。示例性只读存储器可以包括光罩式只读存储器(MROM)、可编程只读存储器(PROM)、可擦除可编程只读存储器(EPROM)、电子可擦除可编程只读存储器(EEPROM)、压缩盘只读存储器(CD-ROM)、数字通用磁盘只读存储器等。在一些实施例中,存储器150可以在云平台上实现。仅仅作为示例,所述云平台可以包括私有云、公共云、混合云、小区云、分布云、跨云、多云等或上述举例的任意组合。
在一些实施例中,存储器150可以连接到网络140与眨眼检测系统100(例如,处理装置110,终端120或图像拍摄装置130)进行通信。疲劳检测系统100的组件可以经由网络140访问存储在存储器150中的数据或指令。在一些实施例中,存储器150可以直接连接到疲劳检测系统100的部件(例如,处理装置110、终端120、图像拍摄装置130)或与其通信。在一些实施例中,存储器150可以是处理装置110的一部分。
在一些实施例中,疲劳检测系统100的一个或多个组件(例如,处理装置110、终端120、图像拍摄装置130)可能具有访问存储装置150的权限。在一些实施例中,当满足一个或多个条件时,疲劳检测系统100的一个或多个组件可以读取和/或修改信息。
图2是根据本申请的一些实施例所示的计算装置的示例性硬件和/或软件组件的示意图。在一些实施例中,处理装置110,终端120和/或图像拍摄装置130可以在计算装置200上实施。例如,处理引擎112可以在计算装置200上实施并执行本申请所披露的处理引擎112的功能。
计算装置200可以用于实施本文所述疲劳检测系统100的任何部件。例如,处理引擎112可以通过硬件、软件程序、固体等或其组合在计算装置200上实施。尽管仅示出了一个这样的计算机,但是为了方便起见,与在此描述的疲劳检测有关的计算机功能可以以分布式的方式在多个类似的平台上实现,分配处理负载。
例如,计算装置200可包括连接到与之连接的网络的COM端口250,以便于数据通信。计算装置200还可以包括处理器220,其以一个或多个处理器(例如,逻辑电路)的形式用于执行程序指令。例如,处理器220可以包括接口电路以及其中的流程电路。接口电路可以用于从总线210接收电子信号,其中,电子信号对用于处理电路处理的结构化数据和/或指令进行编码。处理电路可以进行逻辑计算,然后确定编码为电子信号的结论,结果和/或指令。然后,接口电路可以经由总线210从处理电路发出电子信号。
计算装置200可以进一步包括用于各种数据文件的不同形式的程序存储和数据存储,包括例如磁盘270、只读存储器(ROM)230或随机存取存储器(RAM)240,以及由计算装置进行处理和/或传输。示例性计算机平台还包括存储在ROM230,RAM 240和/或要由处理器220执行的另一类型的非暂态存储介质中的程序指令。本申请揭示的方法和/或过程可以作为程序指令来实施。计算装置200还包括支持计算机和其他组件之间的输入/输出的组件260。计算装置200也可以通过网络通信接收程序设计和数据。
仅为了说明,图2仅描述了一个处理器,但多个处理器也可以设置。因此,本申请中所描述的由一个处理器执行的操作和/或方法步骤也可以由多处理器共同地或单独地执行。例如,在本申请中,如果计算装置200的处理器执行步骤A和步骤B,应当理解的是,步骤A和步骤B可以由计算装置200的两个不同的中央处理单元和/或处理器共同或分别执行(例如,第一处理器执行步骤A,第二处理器执行步骤B,或者第一处理器和第二处理器共同执行步骤A和B)。
图3是根据本申请的一些实施例所示的可以实现终端120和/或图像拍摄装置130的示例性移动装置300的示例性硬件和/或软件的部件的示意图。如图3所示,移动装置300可包括通信平台310、显示器320、图形处理单元(GPU)330、中央处理单元(CPU)340、输入/输出350、内存360、移动操作系统(OS)370和存储器390。在一些实施例中,任何其他合适的组件,包括但不限于系统总线或控制器(未显示),亦可包括于移动装置300内。
在一些实施例中,移动操作系统307(例如,IOSTM、AndroidTM、Windows PhoneTM等)和一个或多个应用程序380可以从存储器390加载到内存360中以便由CPU340执行。应用程序380可以包括浏览器或任何其他合适的移动应用程序,用于接收和呈现来自疲劳检测系统100的处理或其他信息相关的信息。用户与信息流的交互可以经由输入/输出350来实现并且经由网络140被提供给处理引擎112和/或疲劳检测系统100的其他组件。
在一些实施例中,移动装置300的摄像头(图中未示出)可以拍摄驾驶员的脸部的图像。移动装置300的CPU340可以根据驾驶员的脸部的拍摄视频来判断驾驶员的疲劳程度。然后,移动装置300可以根据驾驶员的疲劳程度生成通知。该通知可以包括来自移动装置300的扬声器(图中未示出)的声音,来自移动装置300的振动器(图中未示出)的振动,来自显示器320(或者在图中未示出的LED)的灯光,等或其组合。
应该注意的是,移动装置300一个或多个的上述功能可以由移动装置300外部装置来实现。例如移动装置300可以仅仅作为处理装置并控制另一装置来生成通知。又例如移动装置300可以接收通知的指令,且仅作为生成通知的装置使用。
为了实现本申请描述的各种模块、单元及其功能,计算机硬件平台可用作本文中描述之一个或多个组件的硬件平台。具有用户接口组件的计算机可用于实施个人计算机(PC)或任何其他类型的工作站或终端装置。若计算机被适当的程序化,计算机亦可充当系统。
图4是根据本申请的一些实施例所示的示例性处理引擎的模块图。处理引擎112可以包括采集模块410、检测模块420、提取模块430、生成模块440以及确定模块450。
采集模块410可以用于接收信息。例如采集模块410可以接收至少两个图像。该图像可以通过所述网络140由摄像头拍摄的视频中的视频帧。例如处理引擎112可以从摄像头接收至少两个视频帧。如本文所使用的,摄像头可以是网络照摄像头、固定摄像头、半球摄像头、隐蔽摄像头、平移-变焦(PTZ)摄像头、红外摄像头、热成像摄像头等或其组合。在一些实施例中,至少两个视频帧可以对应于驾驶员,尤其是驾驶员的脸部。采集模块410还可以通过所述网络140从存储装置(例如,存储装置150)接收训练后的眨眼检测模型以及训练后的打哈欠检测模型。在一些实施例中,可以根据至少两个训练脸部样本训练初步眨眼检测模型来生成训练后的眨眼检测模型。训练后的打呵欠检测模型可以通过基于至少两个训练脸部样本训练初步打哈欠检测模型来生成。用于训练初步眨眼检测模型以及初步打哈欠检测模型的训练样本可以相同或不同。
检测模块420可以用于检测至少两个图像中用户的脸部(例如,视频的视频帧)。如本文所使用的,用户可以是任何需要被监视的人。例如用户可以是驾驶员、操作员、工人、学生、观众等或其组合。在一些实施例中,人脸检测可以根据模板匹配、肤色分割、几何规则确认等或其组合实施。在一些实施例中,人脸检测可以是根据使用奇异值算法、二进制小波变换算法、AdaBoost算法等的模型实施。
提取模块430可用于从至少两个视频帧中,提取检测到的脸部。在一些实施例中,检测到的脸部可以是图像或像素的形式。检测到的脸部可以包括至少两个脸部特征,包括脸部轮廓、头发、嘴唇、下巴、眼睛、嘴巴、眉毛、鼻子等或其组合的大小、形状和/或位置。
生成模块440可以用于生成与疲劳检测相关的信息。在一些实施例中,生成模块440可以生成与疲劳检测相关的检测结果。例如,生成模块440可通过将所提取的脸部输入到训练后的眨眼检测模型中来生成眨眼检测结果。又例如,生成模块440可以通过将所提取的脸部输入到训练后的打呵欠检测模型来生成打呵欠检测结果。在一些实施例中,生成模块440可以根据眨眼检测结果以及打呵欠检测结果来生成通知(或用于通知的指令)。
确定模块450可以用于确定疲劳程度。在一些实施例中,用户的疲劳程度可以根据眨眼的频率和打哈欠的频率来确定。为了判断眨眼频率,确定模块450可以根据眨眼检测结果判断用户在至少两个视频帧中检测到的眨眼次数以及至少两个视频帧的总时间长度。为了判断打哈欠频率,确定模块450可以判断用户在至少两个视频帧中检测到的打哈欠次数以及至少两个视频帧的总时间长度。
在一些实施例中,处理引擎112可以进一步包括模型训练模块(图中未示出)。模型训练模块可以用于根据至少两个训练样本训练初步眨眼检测模型以生成训练后的眨眼检测模型。模型训练模块还可以根据至少两个训练脸部样本训练初步打哈欠检测模型以生成训练后的打哈欠检测模型。模型训练模块可以进一步根据至少两个训练脸部样本训练初步角度确定模型以生成训练后的角度确定模型。角度确定模型可以用于确定垂直于用户脸部的方向与摄像头拍摄方向之间的角度是否大于阈值(例如30度、60度、100度)。用于训练初步眨眼检测模型、初步打哈欠检测模型和初步角度确定模型的至少两个训练脸部样本可以相同或不同。训练和使用模型的示例性过程的详细描述可以在本发明的其他地方找到(例如,图11及其描述)。
处理引擎112中的模块可以通过有线连接或无线连接的方式互相连接或互相通信。有线连接可以包括金属线缆、光缆、混合电缆等或其组合。无线连接可以包括局域网络(LAN)、广域网络(WAN)、蓝牙、ZigBee网络、近场通信(NFC)等或其组合。两个或多个模块可以合并成单个模块,而任意一个模块可以被拆分成两个或多个单元。
图5是根据本申请的一些实施例所示的用于确定驾驶员的疲劳程度的示例性流程图。在一些实施例中,流程500可以被实现为存储在存储器390,ROM 230或RAM 240中的指令(例如,应用程序)。所述CPU 340、处理器220和/或图4中的模块可以执行指令,且在执行指令时,CPU 340、处理器220和/或在图4中的模块可以用于执行流程500。以下呈现的所示流程的操作旨在是说明性的。在一些实施例中,所述流程500在实现时可以添加一个或多个未描述的额外操作,和/或删减一个或多个此处所描述的操作。另外,图5中所示的处理的操作顺序也是可能的。下面描述的并不是限制性的。
在510中,处理引擎112(例如,采集模块410)可以接收至少两个图像。这些图像可以是摄像头拍摄视频的视频帧。例如处理引擎112可以从摄像头接收至少两个视频帧。如本文所使用的,摄像头可以包括但不限于网络摄像头、固定摄像头、半球摄像头、隐蔽摄像头、平移-变焦(PTZ)摄像头、红外摄像头、热成像摄像头等或其组合。在一些实施例中,摄像头可以是独立摄像头或集成到车载装置中(例如,汽车数据记录器)。在一些实施例中,摄像头可以安装在用户的移动装置上或作为用户的移动装置的一部分。
摄像头可拍摄物体的视频。视频可以包括静态图片、动态图片、离线视频、直播视频或其组合。该对象可以是需要被监视的用户(例如驾驶员、操作员、学生、工作人员)。为了减少疲劳驾驶风险,用户可能是驾驶的驾驶员。又例如,为了降低机械工程师或操作员机械伤害的风险,用户可以是机械工程师或操作员。作为另一个例子,为了引起学生(或观众)的注意,用户可以是参加课堂(或演讲)的学生(或观众)。至少两个视频帧可以从视频中连续或不连续地提取(例如,间隔5分钟、10分钟、30分钟、1小时、2小时、5小时等)或在某些时间点提取(例如,上午4点、下午9点)。作为另一示例,至少两个提取到的视频帧可对应于其视频内的用户处于特定条件或执行特定事情(例如,驾驶、教学、工作)的视频的一部分。
在520中,处理引擎112(例如,检测模块420)可以在至少两个图像(例如,视频的视频帧)中检测用户的脸部。在一些实施例中,脸部检测可以以各种方式来实现,包括模板匹配、肤色分割、几何规则确认等或其组合。在一些实施例中,人脸检测可根据使用奇异值算法、二进制小波变换算法、AdaBoost算法等的模型或其组合来实现。在一些实施例中,可以丢弃至少两个视频帧中的任何不包含所期望的用户脸部的视频帧。
在一些实施例中,在至少两个视频帧中检测到人脸后,处理引擎112可以判断垂直于用户脸部的方向与摄像头在至少两个视频帧中的拍摄方向之间的角度。摄像头的拍摄方向是指摄像镜头的方向。处理引擎112可以进一步判断角度大于阈值(例如,30度、60度、100度)。如果处理引擎112可以确定垂直于用户的脸部的方向与摄像机在视频帧中的拍摄方向之间的角度大于阈值,则处理引擎112可以丢弃来自至少两个视频帧的视频帧。丢弃的视频帧可能不会在图5中的进一步操作中被处理(例如,确定眨眼结果和/或打呵欠结果)。可以根据模型来实现垂直于用户的脸部方向与摄像头的拍摄方向之间的角度的确定。训练和使用该模型的示例性流程的详细描述可以在本申请的其他地方找到(例如,图11及其描述)。
在530中,处理引擎112(例如,提取模块430)可以从至少两个视频帧提取检测到的脸部。在一些实施例中,所提取的脸部可以是图像(像素值)或其中一部分的形式。提取出的脸部可以对应于至少两个脸部特征包括脸部轮廓、头发、嘴唇、下巴、眼睛、嘴巴、眉毛、鼻子等或其组合的大小、形状和/或位置。在一些实施例中,可以将提取的脸部存储在存储装置(例如,存储装置150)中。
在540中,处理引擎112(例如,获取模块410)可以获得训练后的眨眼检测模型和训练后的打哈欠检测模型。在一些实施例中,可以通过分别训练初步眨眼检测模型和初步打哈欠检测模型来生成训练后的眨眼检测模型和训练后的打呵欠检测模型。仅作为示例,初步眨眼检测模型和/或初步打哈欠检测模型可以是卷积神经网络(CNN)、深层信念网络(DBN)、堆叠自动编码器(SAE)、逻辑回归(LR)模型、支持向量机(SVM)、决策树模型、朴素贝叶斯模型、随机森林模型、受限玻尔兹曼机(RBM)、Q学习模型等或其组合。在一些实施例中,CNN模型可以包括至少一个卷积层、整流线性单元(ReLU)层、全连接层或池化层。
在一些实施例中,可以通过根据至少两个训练脸部样本训练初步眨眼检测模型来生成训练后的眨眼检测模型。训练后的打呵欠检测模型可以通过根据至少两个训练脸部样本训练初步打哈欠检测模型来生成。用于训练初步眨眼检测模型和初步打哈欠检测模型的训练脸部样本可以相同或不同。训练初步眨眼检测模型和初步打呵欠检测模型的示例性流程的详细描述可以在申请内容的其他地方找到(例如,图11及其描述)。在一些实施例中,至少两个训练样本可以是从存储装置(例如,存储装置150)获取的,终端120通过所述网络140,通过所述网络140的图像拍摄装置130等或其组合。
在一些实施例中,根据训练脸部样本中用户的眼睛是否眨动,至少两个训练脸部样本可包括正眼眨眼训练样本和负眨眼训练样本。例如,每个正眨眼训练样本中的眼睛眨动,而每个负眨眼训练样本中的眼睛不眨动。眨眼是指一系列的眼睛动作,包括闭上眼睛(也称为闭眼)之后睁开眼睛(也称为睁眼)的动作。睁眼和/或闭眼可以每个持续至少一个视频帧。确定眨眼的示例性流程的详细描述可以在本申请的其他地方找到(例如,图8及其描述)。
在一些实施例中,至少两个训练脸部样本可以包括根据训练脸部中的用户的脸部是否打哈欠的正打哈欠训练样本和负打哈欠训练样本。例如,每个正打哈欠训练样本中的脸部打哈欠而每个负打哈欠训练样本中的脸部不打呵欠。打哈欠是指一系列脸部动作,包括脸部轮廓、嘴巴、眼睛、眉毛、脸颊、鼻子、下巴、头发等或其组合的改变。例如,当人打哈欠时,他或她的嘴可能会张开,眼睛可能变小,眉毛可能会上升,下巴可能会向下。
至少两个训练脸部样本可以包括图像(像素)形式的脸部。在一些实施例中,脸部可以是分割出的脸部,其具有分割出的不同部分或面部器官(例如,眼睛、嘴巴、鼻子、下巴、头发)。在一些实施例中,脸部可以是没有分割的整个脸部。在整个脸部用于训练初步打哈欠检测模型的情况下,打哈欠检测模型可以在打哈欠期间学习整个脸部的灰度变化,而不需要知道脸部的每个部分的默认形状和大小。在一些实施例中,脸部的每个部分的位置可以被标记(例如,眼睛、嘴巴)以加速对打哈欠检测模型的训练。可替代地,可以不标记脸部,而打哈欠检测模型可以在训练过程期间学习脸部的位置和形状。关于确定打哈欠的示例性流程以及获得训练后的打哈欠检测模型的详细描述可以在本发明中其他地方找到(例如,图9-11以及其描述)。
在550中,处理引擎112(例如,生成模块440)可以通过将所提取的脸部输入到训练后的眨眼检测模型中来生成眨眼检测结果。在一些实施例中,眨眼检测结果可以包括所提取的脸部中的眼睛眨动的结果或者所提取的脸部中的眼睛不眨动的结果。在一些实施例中,可以根据一系列眼动作来确定眨眼的结果,所述一系列眼动作包括闭上眼睛(也称为闭眼),然后是睁开眼睛的动作(也称为眼开)。睁眼和/或闭眼可以每个持续至少一个视频帧。关于眨眼结果生成的示例性流程的详细描述可以在本发明中其他地方找到(例如,图8及其描述)。
在一些实施例中,处理引擎112(例如,生成模块440)可以根据眨眼结果进一步确定用户眨眼的频率。眨眼的频率可以在每分钟0至100次的范围内(例如,每分钟零次、每分钟5次、每分钟10次、每分钟20次、每分钟50次、每分钟100次)。确定眨眼频率的示例性流程的详细描述可以在本申请的其他地方找到(例如,图6及其相关描述)。
在560中,处理引擎112(例如,生成模块440)可以通过将所提取的脸部输入到训练后的打呵欠检测模型来生成打哈欠检测结果。在一些实施例中,打哈欠检测结果可以包括打哈欠的结果和/或不打哈欠的结果。确定打呵欠结果的示例性流程的详细描述可以在本发明中其他地方找到(例如,图9、10及其描述)。
在一些实施例中,处理引擎112(例如,生成模块440)可以根据打哈欠检测结果进一步确定用户打哈欠的频率。打哈欠的频率可以在每分钟0至30次(例如零次,每分钟1次、每分钟2次、每分钟5次、每分钟10次、每分钟30次)的范围内。确定打哈欠频率的示例性流程的详细描述可以在本发明的其他地方找到(例如,图7及其相关描述)。
在570中,处理引擎112(例如,确定模块450)可以根据眨眼检测结果和打哈欠检测结果来确定用户的疲劳程度。更具体地说,可以根据眨眼的频率和打哈欠的频率来确定用户的疲劳程度。例如,可以根据以下公式(1)确定疲劳评分:
d=af1+bf2, (1)
其中d代表疲劳分数,a表示眨眼频率的权重系数,f1表示眨眼频率,b表示打哈欠频率的权重系数,以及f2表示打哈欠频率。在一些实施例中,眨眼频率的权重系数a和打哈欠频率的权重系数b是相同或不同的。权重系数可以是存储在存储装置(例如,存储装置150)中的默认参数,或由疲劳检测系统100的操作员设置或调整。
在一些实施例中,疲劳评分可以由数值表示(例如,0、1、2、5、10、20、50、100)。疲劳程度可以根据疲劳评分来确定。疲劳程度可以包括至少两个级别(例如,低、中、高)。例如,当疲劳评分小于第一阈值(例如10)时,疲劳程度可能是低程度。当疲劳评分小于第二阈值(例如30)但大于或等于第一阈值时,疲劳程度可以是中程度。当疲劳评分大于或等于第二阈值时,疲劳程度可能是高程度。
在580中,处理引擎112(例如,生成模块440)可以根据疲劳程度生成通知。在一些实施例中,处理引擎112可以生成用于生成根据疲劳程度的通知的指令,其可以通过网络(例如,网络140)传送到用户的终端。终端可以在接收到该指令后,根据接收到的指令生成通知。通知可以包括声音、振动、灯光等或其组合。
在一些实施例中,处理引擎112(例如,生成模块440)可以根据疲劳程度来确定声音的响度或频、振动的强度或频率、灯光的强度或闪烁频率。例如,当用户的疲劳程度处于低程度时,处理引擎112或终端120可以生成仅包括闪烁光的通知。当用户的疲劳程度处于中程度时,处理引擎112或终端120可以生成包括闪烁光和柔和声音的通知。当用户的疲劳程度处于高程度时,处理引擎112或终端120可以生成包含大声(例如高分贝),具有高频闪烁的强光和/或强的振动通知。需要注意的是,上述通知仅作为示例提供,并不限制本申请的范围。本领域的普通技术人员可能会有相同或不同疲劳程度的其他类型的通知。
在一些实施例中,当驾驶员在他或她的移动装置中打开导航应用程序(APP)以在旅程期间进行导航时,移动装置的摄像头可以同时拍摄驾驶员的脸部的图像。在一些实施例中,500中描述的疲劳检测方法可由其移动装置或处理器实现,根据拍摄的图像确定驾驶员的疲劳程度。移动装置可以进一步包括通知生成组件(例如,屏幕、扬声器、振动组件),以根据所确定的驾驶员的疲劳程度生成通知。通知可以包括声音、振动、灯光等或其组合。
需要注意的是,上述描述仅出于说明性目的而提供,并不旨在限制本申请的范围。对于本领域的普通技术人员来说,根据本发明的教导可以做出多种变化和修改。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。在一些实施例中,在示例性流程500中可以省略一个或多个其他可选操作。例如,570可以被省略。生成模块440可以根据550中的眨眼结果和560中的打呵欠检测结果来生成通知。作为另一个例子,550可以被省略。确定模块450可以根据打呵欠检测结果判断用户的疲劳程度。
图6是根据本申请的一些实施例的用于确定眨眼的频率的示例性流程图。在一些实施例中,流程600可以被实施为存储在存储器390,ROM 230或RAM 240中的指令(例如,应用程序)。CPU 340,处理器220和/或图4中的模块可以执行所述指令,并且在执行指令时,CPU 340,处理器220和/或图4中的模块可以用于执行流程600。以下呈现的所示流程的操作旨在是说明性的。在一些实施例中,流程600可以用于未描述的附加操作和/或没有在此讨论的操作来完成。另外,图6中所示的流程的操作的顺序也是可能的。图5和下面描述的并不对此加以限制。在一些实施例中,可以根据流程600来执行根据上面结合流程500的操作550描述的眨眼结果来确定用户眨眼的频率。
在610中,处理引擎112(例如,确定模块450)可以根据眨眼检测结果确定至少两个视频帧中的眨眼(也称为眼眨动或眨动)次数(或数量计数)。例如,眨眼次数可以是零次、1次、2次、5次、10次、20次。眨眼是指一系列的动作,其中闭上眼睛(也称为闭眼)的之后是睁开眼睛(也称为睁眼)的动作。睁眼和/或闭眼可以每个持续至少一个视频帧。确定眨眼次数的示例性流程的详细描述可以在本申请的其他地方找到(例如,图8及其描述)。
在620中,处理引擎112(例如,确定模块450)可以确定至少两个视频帧的总时间长度。至少两个视频帧的总时间长度可以通过统计至少两个视频帧中的每个的长度来确定。在一些实施例中,视频帧可对应于时间点,而视频帧的长度可被定义为对应于视频帧的时间点与对应于后续视频帧的时间点之间的时间长度。例如,假设至少两个视频帧的数量为60,而任意两个连续视频帧之间的间隔时间长度为0.8秒,则至少两个视频帧的总时间长度可以是60×0.8秒=48秒。总时间长度可以是5秒、10秒、20秒、1分钟、5分钟。在一些实施例中,至少两个视频帧中的至少一个可以被丢弃(或跳过)。为了确定至少两个视频帧正确的总时间长度,可以从至少两个视频帧的总时间长度中减去丢弃或跳过的视频帧的时间长度。例如,如果至少两个视频帧中的两个视频帧被丢弃或跳过,则至少两个视频帧(例如,剩余视频帧)的总时间长度可以是48秒-2×0.8=46.4秒。在一些实施例中,至少两个视频帧的时间长度可以相同或不同。至少两个视频帧中的每个视频帧的时间长度可以是存储在存储装置(例如,存储装置150)中的默认参数,或者由疲劳检测系统100的操作员设置或调整。
在630中,处理引擎112(例如,识别单元630)可以根据眨眼的次数和至少两个视频帧的总时间长度来确定眨眼的频率。眨眼次数可以是0次、每秒一次、每秒两次、每分钟一次、每分钟两次、每分钟10次、每分钟20次等。例如,眨眼的次数是6次,而至少两个视频帧的总时间长度是48秒,眨眼的频率可以是 应该注意的是,以上描述仅仅是为了说明的目的而提供的,而不旨在限制本申请的范围。
对于本领域的普通技术人员来说,根据本申请的教导可以做出多种变化和修改。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。例如,操作610和操作620可以被组合为单个操作,其中处理引擎112可以既确定至少两个视频帧的眨眼次数又确定总时间长度。
图7是根据本申请的一些实施例所示的用于确定打哈欠的频率的示例性过程的流程图。在一些实施例中,流程700可以实现为存储在存储器390,ROM 230或RAM 240中的指令(例如,应用程序)。CPU 340,处理器220和/或图4中的模块可以执行指令,并且在执行指令时,CPU 340,处理器220和/或图4中的模块可以用于执行流程700。以下呈现的所示流程的操作旨在是说明性的。在一些实施例中,所述流程700在实现时可以添加一个或多个未描述的额外操作,和/或删减一个或多个此处所描述的操作。此外,图5中所示的和下文描述的流程/方法中操作的顺序并不对此加以限制。
在710中,处理引擎112(例如,确定模块450)可以根据打哈欠检测结果来确定至少两个视频帧中的打哈欠的次数(或者计数)。打哈欠的次数可以是0次、1次、5次、10次、20次等。打哈欠是指包括脸轮廓、嘴巴、眉毛、鼻子、头发等的变化的一系列脸部动作或其组合。确定打哈欠次数的示例性过程的详细描述可以在本申请的其他地方找到(例如,图9和10及其描述)。
在720中,处理引擎112(例如,确定模块450)可以确定至少两个视频帧的总时间长度。至少两个视频帧的总时间长度可以通过将至少两个视频帧中的每个长度相加来判断。总时间长度可以是5秒、10秒、20秒、1分钟、5分钟。
在730中,处理引擎112可以根据打哈欠的次数以及至少两个视频帧的总时间长度来判断打哈欠的频率。打呵欠的频率可以是零次、每分钟一次、每分钟两次、每分钟3次、每分钟5次等。例如,打哈欠的次数是2次,而至少两个视频帧的总时间长度是48秒,眨眼的频率可以是2次/48秒×60=2.5次/分钟。
应该注意的是,上述仅出于说明性目的而提供,并不旨在限制本申请的范围。对于本领域的普通技术人员来说,根据本申请的教导可以做出多种变化和修改。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内例如,操作710和操作720可以被组合为单个操作,其中处理引擎112可以既判断打哈欠的次数又判断至少两个视频帧的总时间长度。
图8是根据本申请的一些实施例所示的用户界面的一种示例性示意图;在一些实施例中,眨眼可以根据一系列眼动作来确定眨眼的结果,所述一系列眼动作包括闭上眼睛(也称为闭眼),然后是睁开眼睛的动作(也称为睁眼)。睁眼和/或闭眼可以每个持续至少一个视频帧。在一些实施例中,为了检测眨眼,每个视频帧的长度可以小于0.2秒,这是眨眼的典型持续时间。
如图8所示,训练后的眨眼检测模型可以响应于每个输入的视频帧而生成眼睛的“睁开”或“闭合”的结果。眼睛的“睁开”或“闭合”结果可以按照视频帧的时间顺序排列。“睁开”810可以表示睁开眼睛的视频帧,而“闭合”820可以表示具有闭眼的视频帧。连续视频帧中的“睁开”810和“闭合”820可以表示闭眼(闭眼)的动作。“闭合”830可以表示具有闭眼的视频帧,并且“睁开”840可以表示具有睁开的眼睛的视频帧。连续视频帧中的“闭合”830和“睁开”840可以表示睁开眼睛的动作。闭眼和睁眼的连续动作可能构成眨眼。在一些实施例中,训练后的眨眼检测模型可以直接生成输入脸部的眼睛眨动或不眨动的结果。
图9是根据本申请的一些实施例所示的示例性打哈欠的示意图。在一些实施例中,只有当打哈欠检测模型在多个连续视频帧中(或者持续时间长于时间阈值)生成打呵欠的肯定(或正面)结果时,才可以确认打哈欠。如图9所示,“是”帧910、920、930、940可以表示通过打哈欠检测模型(或者被称为具有正打哈欠结果的帧)确定该脸部打哈欠的帧,而“否”帧950和960可以表示通过打哈欠检测模型确定该脸部不打哈欠(或者被称为具有负打呵欠结果的帧)。如果对连续视频帧的数量要求是3个,则可以确认连续视频帧910-930是打哈欠。然而,由于帧940-960仅包括一个“是”视频帧,因此帧940-960不会被确认为打哈欠。帧940中的正面打哈欠结果(例如,“是”)可能是由于驾驶员的包括整个脸部改变的其他活动(例如说话,笑声)而引起的。
图10是根据本申请的一些实施例所示的用于检测打哈欠的示例性流程的示意图。在一些实施例中,打哈欠可能导致脸部的任何部分(例如,眼睛、嘴巴、耳朵、嘴唇、鼻子、眉毛、头发)的形状,尺寸和/或位置的改变。例如,当一个人打呵欠时,他或她的嘴可能打开,他或她的脸颊可能会受到紧绷,他或她的头可能向后倾斜,他或她的下巴可能会下降和/或他或她的眼睛可能变小。
如图10所示,视频帧1010-1080可对应于在打哈欠期间脸部的改变。在视频帧1010中,该男子的嘴巴闭合,而他的脸部的其他部分处于正常状态。打呵欠检测模型可以生成1010中的人不打哈欠的结果。如1020和/或1030所示,男子的嘴开始打开或稍微打开,而他的头稍微向后倾斜。打哈欠检测模型可能生成一个结果,即该男子打哈欠的机会很低(但是例如深呼吸或说话的机会很高)。在视频帧1040和1050中,男子的嘴巴被大大地打开、脸颊紧绷、眼睛稍微闭合、头部向后倾斜。打哈欠检测模型可能生成一个结果,即该男子打呵欠的机会很高。在一些实施例中,处理引擎112可以使用描述的方法,例如图9来确认该男子是否打哈欠。在1050-1080的视频画面中,男子的脸部正在恢复正常状态。
应该注意的是,以上描述仅仅作为示例被提供以便于理解打呵欠检测模型如何工作,并且对脸部分改变的描述仅仅是说明性的。打哈欠检测模型可以不识别脸部的部分以生成打哈欠检测结果,但可以根据脸部中的像素的灰度改变来生成打哈欠检测结果。例如,打哈欠检测模型可能不知道男子的脸部的底部包括嘴部以及嘴部的形状或大小的改变。然而,打哈欠检测模型可以识别出脸部的底部的平均像素值的增加(当张开嘴时变得更暗)并且根据此确定男子打呵欠的结果。
图11是根据本申请的一些实施例所示的示例性模型的示意图。模型1110可以通过流程500中的操作540获得。仅作为范例,模型1110可以是卷积神经网络(CNN)、深度置信网络(DBN)、堆叠式自动编码器(SAE)、逻辑回归(LR)模型、支持向量机(SVM)、决策树模型、朴素贝叶斯模型、随机森林模型或受限玻尔兹曼机器(RBM)、Q学习模型等或其组合。
在一些实施例中,模型1110可以用于生成眨眼结果、打哈欠结果、角度确定结果等或其组合。角度确定结果可以包括垂直于用户的脸部的方向与摄像头的拍摄方向之间的角度是否大于阈值(例如,30度、60度、100度)。
在一些实施例中,可以在多次迭代中训练模型1110。在至少两次迭代中的每次迭代中,至少两个训练脸部样本1120可被输入到模型1110中以生成初步结果1130。在一些实施例中,至少两个训练脸部样本1120可被标记为正样本和/或负样本。例如,可以将至少两个训练样本标记为打哈欠或不打哈欠,眨眼或不眨眼,适当的角度(垂直于用户脸部的方向与摄像头的拍摄方向之间的角度小于或等于阈值)或不合适的角度(垂直于用户的脸部的方向与摄像头的拍摄方向之间的角度大于阈值)。模型1110的内部参数可以包括权重因子,偏差项等。在一些实施例中,可以根据训练脸部样本的标签和初步结果1130来获得损失函数。例如,如果初步结果1130和训练脸样本的标签相同,则损失函数可能很小。如果初步结果1130和训练脸样本的标签不同,则损失函数可能较大。损失函数可以用于更新模型1110的参数。
在一些实施例中,当满足预设条件时,迭代可以终止。预设条件可以包括损失函数在模型的训练流程中达到最小值(收敛)。在一些实施例中,预设条件可以包括执行的迭代次数(例如,二百次)达到阈值数量。如果所执行的迭代次数达到阈值数量(例如,满足预设条件),则迭代可以终止。阈值数量可由操作员设定或根据疲劳检测系统100的默认设定或其组合来设定。
在一些实施例中,可以使用不同的训练脸部样本和标签来生成不同的模型。例如,可以根据训练脸部样本中的用户的眼睛是否眨眼将至少两个训练脸部样本1120分类为正眼眨眼训练样本和负眨眼训练样本。可以使用正眨眼训练样本和负眨眼训练样本来训练眨眼检测模型。
作为另一示例,可根据用户在训练脸部样本1120中的脸部是否打哈欠来将至少两个训练脸部样本1120分类为正打哈欠训练样本和负打哈欠训练样本。可以使用正打哈欠训练样本和负打哈欠训练样本来训练打哈欠检测模型。
作为另一个示例,可根据垂直于用户的脸部的方向与拍摄方向之间的角度来将至少两个训练脸部样本1120分类为正角度训练样本和负角度训练样本小于或等于阈值。更具体地,正角度训练样本中与用户的脸部垂直的方向与摄像头的拍摄方向之间的角度可小于或等于阈值,而负角度训练样本集合中垂直于用户的脸部的方向与摄像头的拍摄方向可能大于该阈值。可以使用正角度训练样本和负角度训练样本来训练角度确定模型。
当训练迭代终止时,可以生成训练后的模型。检测到的脸部1140可以被输入到训练后的模型,而训练后的模型可以响应于检测到的脸部1140而生成检测结果1150。例如,训练后的眨眼检测模型可以输出关于检测到的脸部1140中的眼睛是否眨动的检测结果1150。训练后的打呵欠检测模型可以输出关于检测到的脸部1140是否打哈欠的检测结果1150。训练后的角度确定模型可生成关于垂直于检测到的脸部1140的方向与摄像头的拍摄方向之间的角度是否小于或等于阈值(例如,30度、60度)的结果。在一些实施例中,根据检测结果1150可以进一步更新模型1110(和/或其内部参数)。
图12是根据本申请的一些实施例所示的示例性汽车数据记录器的示意图。如图12所示,汽车数据记录器1210中的摄像头可以朝向驾驶员以获取驾驶员的脸部的至少两个视频帧。汽车数据记录器1210可以经由电线1220连接到车辆。在一些实施例中,车载HCI系统,驾驶员的移动装置或汽车数据记录器1210本身可处理所获取的至少两个视频帧以确定驾驶员的疲劳程度。车载HCI系统,驾驶员的移动装置或汽车数据记录器1210可根据驾驶员的疲劳程度来生成通知,以警告驾驶员疲劳驾驶并提醒驾驶员休息。
上文已对基本概念做了描述,显然,对于已阅读此详细揭露的本领域的普通技术人员来讲,上述详细揭露仅作为示例,而并不构成对本申请的限制。虽然此处并没有明确说明,本领域技术人员可以对本申请进行各种修改、改进和修正。这类修改、改进和修正在本申请中被建议,所以所述修改、改进、修正仍属本申请示范实施例的精神和范围。
同时,本申请使用了特定术语来描述本申请的实施例。如“一个实施例”、“一实施例”、和/或“一些实施例”意指与本申请至少一个实施例相关之某一特征、结构或特点。因此,应强调并注意的是,本说明书中在不同位置两次或多次提到的“一实施例”或“一个实施例”或“一替代性实施例”并不一定是指同一实施例。此外,本申请的一个或多个实施例中的某些特征、结构或特点可以进行适当的组合。
此外,本领域的普通技术人员可以理解,本申请的各方面可以通过若干具有可专利性的种类或情况进行说明和描述,包括任何新的和有用的工序、机器、产品或物质的组合,或对他们的任何新的和有用的改良。相应地,本申请的各个方面可以完全由硬件执行、可以完全由软件(包括固件、常驻软件、微码等)执行、也可以由硬件和软件组合执行。以上硬件或软件均可以被称为“数据块”、“模块”、“引擎”、“单元”、“组件”或“系统”。此外,本申请的各方面可以表现为位于一个或多个计算机可读介质中的计算机产品,所述产品包括计算机可读程序编码。
计算机可读信号介质可能包含一个内含有计算机程序编码的传播数据信号,例如在基带上或作为载波的一部分。该传播信号可能有多种表现形式,包括电磁形式、光形式等等、或合适的组合形式。计算机可读信号介质可以是除计算机可读存储介质之外的任何计算机可读介质,该介质可以通过连接至一个指令执行系统、装置或设备以实现通讯、传播或传输供使用的程序。位于计算机可读信号介质上的程序编码可以通过任何合适的介质进行传播,包括无线电、电缆、光纤电缆、RF、或类似介质、或任何上述介质的组合。
本申请各部分操作所需的计算机程序编码可以用任意一种或多种程序语言编写,包括面向对象编程语言如Java、Scala、Smalltalk、Eiffel、JADE、Emerald、C++、C#、VB.NET、Python等,常规程序化编程语言如C语言、Visual Basic、Fortran 2003、Perl、COBOL 2002、PHP、ABAP,动态编程语言如Python、Ruby和Groovy,或其他编程语言等。该程序编码可以完全在用户计算机上运行、或作为独立的软件包在用户计算机上运行、或部分在用户计算机上运行部分在远程计算机运行、或完全在远程计算机或服务器上运行。在后种情况下,远程计算机可以通过任何网络形式与用户计算机连接,比如局域网(LAN)或广域网(WAN),或连接至外部计算机(例如通过因特网),或在云计算环境中,或作为服务使用如软件即服务(SaaS)。
然而,这些修正和改变仍然在本申请的保护范围之内。此外,处理元素或者序列的列举顺序、数字、字母或者其他名称的使用不是用于限制要求的过程和方法的。尽管上述披露中通过各种示例讨论了一些目前认为有用的发明实施例,但应当理解,此类细节仅起说明的目的,附加的申请专利范围并不仅限于披露的实施例,相反,申请专利范围旨在覆盖所有符合本申请实施例精神和范围的修正和等价组合。例如,虽然以上所描述的系统组件可以通过硬件装置实现,但是也可以只通过软件的解决方案得以实现,如在现有的服务器或移动装置上安装所描述的系统。
同理,应当注意的是,为了简化本申请揭示的表述,从而帮助对发明实施例的理解,前文对本申请实施例的描述中,有时会将多种特征归并至一个实施例、附图或对其的描述中。然而,此揭示方法并不意味着本申请所需的特征比申请专利范围中涉及的特征多。实际上,实施例的特征要少于上述披露的单个实施例的全部特征。
Claims (24)
1.一种系统,包括:
含有用于确定驾驶员疲劳程度的指令的至少一个计算机可读存储装置;以及
与所述至少一个计算机可读存储设装置通信的至少一个处理器,其中,当执行所述指令时,所述至少一个处理器被配置为使所述系统:
从摄像头接收至少两个视频帧;
检测所述至少两个视频帧中驾驶员的脸部;
提取所述至少两个视频帧中的所述检测到的脸部;
获得训练后的眨眼检测模型和训练后的打哈欠检测模型;
通过将所述提取的脸部输入到所述训练后的眨眼检测模型中来生成眨眼检测结果;
通过将所述提取的脸部输入到所述训练后的打呵欠检测模型来生成打哈欠检测结果;
根据所述眨眼检测结果和所述打哈欠检测结果确定所述驾驶员的疲劳程度;以及
根据所述疲劳程度生成通知。
2.根据权利要求1所述的系统,其中,所述训练后的眨眼检测模型是通过训练眨眼检测模型的流程来生成的,所述流程包括:
获得初步的眨眼检测模型;
获得至少两个训练脸部样本;
将所述至少两个训练脸部样本分类为正眨眼训练样本和负眨眼训练样本,其中,所述正眨眼训练样本中的眼睛眨动而所述负眨眼训练样本中的眼睛不眨动;以及
根据所述正眨眼训练样本和所述负眨眼训练样本来训练所述初步眨眼检测模型以生成所述训练后的眨眼检测模型。
3.根据权利要求1所述的系统,其中,所述训练后的打呵欠检测模型是通过训练打哈欠检测模型的流程来生成的,所述流程包括:
获得初步打哈欠检测模型;
获得至少两个训练脸部样本;
将所述至少两个训练脸部样本分类为正打哈欠训练样本和负打哈欠训练样本,其中,所述正打哈欠训练样本中的脸所对应的人打哈欠而所述负打哈欠训练样本中的脸所对应的人不打哈欠;以及
根据所述正打哈欠训练样本和所述负打哈欠训练样本来训练所述初步打哈欠检测模型以生成所述训练后的打哈欠检测模型。
4.根据权利要求1至3中任一项所述的系统,其中,所述至少一个处理器还被配置为使所述系统:
对于所述至少两个视频帧中的至少一个视频帧:
确定所述至少两个视频帧的所述至少一个视频帧中垂直于所述驾驶员的脸部的方向与所述摄像头的拍摄方向之间的角度是否大于阈值;以及
当确定所述垂直于所述驾驶员的所述脸部的方向与所述摄像头的所述拍摄方向之间的所述角度大于所述阈值时,从将被输入到所述训练后的眨眼检测模型或所述训练后的打哈欠检测模型中所述至少两个视频帧中丢弃所述至少一个视频帧。
5.根据权利要求4所述的系统,其中,为了确定所述垂直于所述驾驶员的所述脸部的方向与所述摄像头的所述拍摄方向之间的所述角度,所述至少一个处理器被配置为使系统将所述至少两个视频帧中所述提取的脸部输入到训练后的角度确定模型中,以生成垂直于所述驾驶员的所述脸部的所述方向与所述摄像头的所述拍摄方向之间的所述角度是否大于所述阈值的判断结果。
6.根据权利要求5所述的系统,其中,所述训练后的角度确定模型是通过训练角度确定模型的流程来生成的,所述流程包括:
获得初步角度确定模型;
获得至少两个训练脸部样本;
将所述至少两个训练脸部样本分类为正角度训练样本和负角度训练样本,其中
在正角度训练样本中,垂直于驾驶员的脸部的所述方向与摄像头的所述拍摄方向之间的所述角度大于60°,以及
在负角度训练样本中,垂直于所述驾驶员脸部的所述方向与所述摄像头的所述拍摄方向之间的所述角度小于或等于60度;以及
根据所述正角度训练样本和所述负角度训练样本训练所述初步角度确定模型以生成所述训练后的角度确定模型。
7.根据权利要求1至3中任一项所述的系统,其中,为了根据所述眨眼检测结果和所述打哈欠检测结果来确定所述疲劳程度,所述至少一个处理器还被配置为使所述系统:
根据所述眨眼检测结果确定所述驾驶员眨眼的频率;
根据所述打哈欠检测结果确定所述驾驶员打哈欠的频率;以及
根据所述眨眼的频率和所述打哈欠的频率确定所述疲劳程度。
8.根据权利要求7所述的系统,其中,为了根据所述眨眼检测结果来确定所述驾驶员的所述眨眼的频率,所述至少一个处理器还被配置为使所述系统:
根据所述眨眼检测结果,确定在所述至少两个视频帧中检测到的所述驾驶员的眨眼次数;
确定所述至少两个视频帧的总时间长度;以及
根据所述眨眼次数和所述至少两个视频帧的所述总时间长度来确定所述眨眼的频率。
9.根据权利要求7所述的系统,其中,为了根据所述至少两个打哈欠检测结果来确定所述驾驶员的所述打哈欠的频率,所述至少一个处理器还被配置为使所述系统:
根据所述至少两个打哈欠检测结果,确定在所述至少两个连续帧中检测到的所述驾驶员的所述打哈欠的次数;
确定所述至少两个视频帧的总时间长度;以及
根据所述驾驶员打哈欠的次数和所述至少两个视频帧的所述总时间长度来确定所述打哈欠的频率。
10.根据权利要求1至3中任一项所述的系统,其中,所述通知包括声音、振动或灯光中的至少一个。
11.根据权利要求10所述的系统,其中,所述声音的响度或频率、所述振动的强度或所述灯光的强度或频率取决于所述疲劳程度。
12.一种用于确定驾驶员疲劳程度的方法,包括:
从摄像头接收至少两个视频帧;
检测所述至少两个视频帧中驾驶员的脸部;
提取所述至少两个视频帧中的所述检测到的脸部;
获得训练后的眨眼检测模型和训练后的打哈欠检测模型;
通过将所述提取的脸部输入到所述训练后的眨眼检测模型中来生成眨眼检测结果;
通过将所述提取的脸部输入到所述训练后的打呵欠检测模型来生成打哈欠检测结果;
根据所述眨眼检测结果和所述打哈欠检测结果确定所述驾驶员的疲劳程度;以及
根据所述疲劳程度生成通知。
13.根据权利要求12所述的方法,其中,所述训练后的眨眼检测模型是通过训练眨眼检测模型的流程来生成的,所述流程包括:
获得初步的眨眼检测模型;
获得至少两个训练脸部样本;
将所述至少两个训练脸部样本分类为正眨眼训练样本和负眨眼训练样本,
其中,所述正眨眼训练样本中的眼睛眨动而所述负眨眼训练样本中的眼睛不眨动;以及
根据所述正眨眼训练样本和所述负眨眼训练样本来训练所述初步眨眼检测模型以生成所述训练后的眨眼检测模型。
14.根据权利要求12所述的方法,其中,所述训练后的打哈欠检测模型是通过训练打哈欠检测模型的流程来生成的,所述流程包括:
获得初步的打哈欠检测模型;
获得至少两个训练脸部样本;
将所述至少两个训练脸部样本分类为正打哈欠训练样本和负打哈欠训练样本,其中,所述正打哈欠训练样本中的脸所对应的人打哈欠而所述负打哈欠训练样本中的脸所对应的人不打哈欠;以及
根据所述正打哈欠训练样本和所述负打哈欠训练样本来训练所述初步打哈欠检测模型以生成所述训练后的打哈欠检测模型。
15.根据权利要求12-14中任一项所述的方法,其中,所述方法还包括:
对于所述至少两个视频帧中的至少一个视频帧:
确定所述至少两个视频帧的所述至少一个视频帧中垂直于所述驾驶员的脸部的方向与所述摄像头的拍摄方向之间的角度是否大于阈值;以及
当确定所述垂直于所述驾驶员的所述脸部的方向与所述摄像头的所述拍摄方向之间的所述角度大于所述阈值时,从将被输入到所述训练后的眨眼检测模型或所述训练后的打哈欠检测模型中所述至少两个视频帧中丢弃所述至少一个视频帧。
16.根据权利要求15所述的方法,其中,确定所述垂直于所述驾驶员的所述脸部的方向与所述摄像头的所述拍摄方向之间的所述角度包括:将所述至少两个视频帧中所述提取的脸部输入到训练后的角度确定模型中,以生成垂直于所述驾驶员的所述脸部的所述方向与所述摄像头的所述拍摄方向之间的所述角度是否大于所述阈值的判断结果。
17.根据权利要求16所述的方法,其中,所述训练后的角度确定模型是通过训练角度确定模型的流程来生成的,所述流程包括:
获得初步角度确定模型;
获得至少两个训练脸部样本;
将所述至少两个训练脸部样本分类为正角度训练样本和负角度训练样本,其中
在正角度训练样本中,垂直于驾驶员的脸部的所述方向与摄像头的所述拍摄方向之间的所述角度大于60°,以及
在角度训练样本中,垂直于所述驾驶员脸部的所述方向与所述摄像头的所述拍摄方向之间的所述角度小于或等于60度;以及
根据所述正角度训练样本和所述负角度训练样本训练所述初步角度确定模型以生成所述训练后的角度确定模型。
18.根据权利要求12-14中任一项所述的方法,为了根据所述眨眼检测结果和所述打哈欠检测结果来确定所述疲劳程度包括:
根据所述眨眼检测结果确定所述驾驶员眨眼的频率;
根据所述打哈欠检测结果确定所述驾驶员打哈欠的频率;以及
根据所述眨眼的频率和所述打哈欠的频率确定所述疲劳程度。
19.根据权利要求18所述的方法,其中,为了根据所述眨眼检测结果来确定所述驾驶员的所述眨眼的频率包括:
根据所述眨眼检测结果,确定在所述至少两个视频帧中检测到的所述驾驶员的眨眼次数;
确定所述至少两个视频帧的总时间长度;以及
根据所述眨眼次数和所述至少两个视频帧的所述总时间长度来确定所述眨眼的频率。
20.根据权利要求18所述的方法,其中,为了根据所述至少两个打哈欠检测结果来确定所述驾驶员的所述打哈欠的频率包括:
根据所述至少两个打哈欠检测结果,确定在所述至少两个连续帧中检测到的所述驾驶员的所述打哈欠的次数;
确定所述至少两个视频帧的总时间长度;以及
根据所述驾驶员打哈欠的次数和所述至少两个视频帧的所述总时间长度来确定所述打哈欠的频率。
21.根据权利要求12-14中任一项所述的方法,其中,所述通知包括声音、振动或灯光中的至少一个。
22.根据权利要求21所述的方法,其中,所述声音的响度或频率、所述振动的强度或所述灯光的强度或频率取决于所述疲劳程度。
23.一种用于确定驾驶员疲劳程度的系统,包括:
采集模块,用于接收来自摄像头的至少两个视频帧,及获得训练后的眨眼检测模型和训练后的打哈欠检测模型;
检测模块,用于检测所述至少两个视频帧中驾驶员的脸部;
提取模块,用于提取所述至少两个视频帧中所述检测到的脸部;
生成模块,用于通过将所述提取的脸部输入到所述训练后的眨眼检测模型中来生成眨眼检测结果、通过将所述提取的脸部输入到所述训练后的打呵欠检测模型来生成打哈欠检测结果及根据疲劳程度生成通知;以及
确定模块,用于根据所述眨眼检测结果和所述打哈欠检测结果来确定所述驾驶员的所述疲劳程度。
24.一种体现计算机程序产品的非暂时性计算机可读存储介质,所述计算机程序产品可以被配置为使计算设备执行以下操作的指令:
从摄像头接收至少两个视频帧;
检测所述至少两个视频帧中驾驶员的脸部;
提取所述至少两个视频帧中的所述检测到的脸部;
获得训练后的眨眼检测模型和训练后的打哈欠检测模型;
通过将所述提取的脸部输入到所述训练后的眨眼检测模型中来生成眨眼检测结果;
通过将所述提取的脸部输入到所述训练后的打呵欠检测模型来生成打哈欠检测结果;
根据所述眨眼检测结果和所述打哈欠检测结果确定所述驾驶员的疲劳程度;以及
根据所述疲劳程度生成通知。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2018/105132 WO2020051781A1 (en) | 2018-09-12 | 2018-09-12 | Systems and methods for drowsiness detection |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111052127A true CN111052127A (zh) | 2020-04-21 |
Family
ID=69777342
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880001325.8A Pending CN111052127A (zh) | 2018-09-12 | 2018-09-12 | 疲劳检测的系统和方法 |
Country Status (4)
Country | Link |
---|---|
CN (1) | CN111052127A (zh) |
BR (1) | BR112021004647B1 (zh) |
MX (1) | MX2021002807A (zh) |
WO (1) | WO2020051781A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112992352A (zh) * | 2021-03-10 | 2021-06-18 | 广州云从鼎望科技有限公司 | 员工健康预警方法、装置及介质 |
CN113243917A (zh) * | 2021-05-18 | 2021-08-13 | 中国民用航空总局第二研究所 | 一种民航管制员的疲劳检测方法、装置、电子设备及介质 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114312800B (zh) * | 2022-02-14 | 2022-11-15 | 深圳市发掘科技有限公司 | 车辆安全驾驶方法、装置、计算机设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102324166A (zh) * | 2011-09-19 | 2012-01-18 | 深圳市汉华安道科技有限责任公司 | 一种疲劳驾驶检测方法及装置 |
EP2557549A1 (en) * | 2010-04-05 | 2013-02-13 | Toyota Jidosha Kabushiki Kaisha | Biological body state assessment device |
CN104732251A (zh) * | 2015-04-23 | 2015-06-24 | 郑州畅想高科股份有限公司 | 一种基于视频的机车司机驾驶状态检测方法 |
CN106446811A (zh) * | 2016-09-12 | 2017-02-22 | 北京智芯原动科技有限公司 | 基于深度学习的驾驶员疲劳检测方法及装置 |
CN107491769A (zh) * | 2017-09-11 | 2017-12-19 | 中国地质大学(武汉) | 基于AdaBoost算法的疲劳驾驶检测方法及系统 |
CN108020931A (zh) * | 2016-10-28 | 2018-05-11 | 北京嘀嘀无限科技发展有限公司 | 驾驶辅助系统 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7280678B2 (en) * | 2003-02-28 | 2007-10-09 | Avago Technologies General Ip Pte Ltd | Apparatus and method for detecting pupils |
CN106295600A (zh) * | 2016-08-18 | 2017-01-04 | 宁波傲视智绘光电科技有限公司 | 驾驶员状态实时检测方法和装置 |
CN108294759A (zh) * | 2017-01-13 | 2018-07-20 | 天津工业大学 | 一种基于cnn眼部状态识别的驾驶员疲劳检测方法 |
CN107697069B (zh) * | 2017-10-31 | 2020-07-28 | 上海汽车集团股份有限公司 | 汽车驾驶员疲劳驾驶智能控制方法 |
-
2018
- 2018-09-12 MX MX2021002807A patent/MX2021002807A/es unknown
- 2018-09-12 WO PCT/CN2018/105132 patent/WO2020051781A1/en active Application Filing
- 2018-09-12 BR BR112021004647-0A patent/BR112021004647B1/pt active IP Right Grant
- 2018-09-12 CN CN201880001325.8A patent/CN111052127A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2557549A1 (en) * | 2010-04-05 | 2013-02-13 | Toyota Jidosha Kabushiki Kaisha | Biological body state assessment device |
CN102324166A (zh) * | 2011-09-19 | 2012-01-18 | 深圳市汉华安道科技有限责任公司 | 一种疲劳驾驶检测方法及装置 |
CN104732251A (zh) * | 2015-04-23 | 2015-06-24 | 郑州畅想高科股份有限公司 | 一种基于视频的机车司机驾驶状态检测方法 |
CN106446811A (zh) * | 2016-09-12 | 2017-02-22 | 北京智芯原动科技有限公司 | 基于深度学习的驾驶员疲劳检测方法及装置 |
CN108020931A (zh) * | 2016-10-28 | 2018-05-11 | 北京嘀嘀无限科技发展有限公司 | 驾驶辅助系统 |
CN107491769A (zh) * | 2017-09-11 | 2017-12-19 | 中国地质大学(武汉) | 基于AdaBoost算法的疲劳驾驶检测方法及系统 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112992352A (zh) * | 2021-03-10 | 2021-06-18 | 广州云从鼎望科技有限公司 | 员工健康预警方法、装置及介质 |
CN113243917A (zh) * | 2021-05-18 | 2021-08-13 | 中国民用航空总局第二研究所 | 一种民航管制员的疲劳检测方法、装置、电子设备及介质 |
CN113243917B (zh) * | 2021-05-18 | 2023-05-12 | 中国民用航空总局第二研究所 | 一种民航管制员的疲劳检测方法、装置、电子设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
MX2021002807A (es) | 2021-08-11 |
BR112021004647A2 (pt) | 2021-06-01 |
BR112021004647B1 (pt) | 2024-01-16 |
WO2020051781A1 (en) | 2020-03-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11017250B2 (en) | Vehicle manipulation using convolutional image processing | |
US20200175262A1 (en) | Robot navigation for personal assistance | |
CN109214343B (zh) | 用于生成人脸关键点检测模型的方法和装置 | |
US20220058407A1 (en) | Neural Network For Head Pose And Gaze Estimation Using Photorealistic Synthetic Data | |
US20170011258A1 (en) | Image analysis in support of robotic manipulation | |
CN113015984A (zh) | 卷积神经网络中的错误校正 | |
CN116912514A (zh) | 用于检测图像中的对象的神经网络 | |
CN109829396B (zh) | 人脸识别运动模糊处理方法、装置、设备及存储介质 | |
CN108875485A (zh) | 一种底图录入方法、装置及系统 | |
CN111052127A (zh) | 疲劳检测的系统和方法 | |
US20180204078A1 (en) | System for monitoring the state of vigilance of an operator | |
US20200302235A1 (en) | Convolutional computing using multilayered analysis engine | |
US20210279514A1 (en) | Vehicle manipulation with convolutional image processing | |
US20230334907A1 (en) | Emotion Detection | |
CN112149615A (zh) | 人脸活体检测方法、装置、介质及电子设备 | |
KR102396794B1 (ko) | 전자 장치 및 이의 제어 방법 | |
JP7211428B2 (ja) | 情報処理装置、制御方法、及びプログラム | |
EP3699865B1 (en) | Three-dimensional face shape derivation device, three-dimensional face shape deriving method, and non-transitory computer readable medium | |
US11605220B2 (en) | Systems and methods for video surveillance | |
CN112400148A (zh) | 使用离轴相机执行眼睛跟踪的方法和系统 | |
KR102364822B1 (ko) | 가려진 영역 복원 방법 및 장치 | |
WO2021047453A1 (zh) | 图像质量确定方法、装置及设备 | |
CN110545386B (zh) | 用于拍摄图像的方法和设备 | |
JP2021033359A (ja) | 感情推定装置、感情推定方法、プログラム、情報提示装置、情報提示方法及び感情推定システム | |
CN113505672B (zh) | 虹膜采集装置、虹膜采集方法、电子设备和可读介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200421 |