CN103839055B - 一种驾驶员视线方向的检测方法 - Google Patents
一种驾驶员视线方向的检测方法 Download PDFInfo
- Publication number
- CN103839055B CN103839055B CN201410103324.8A CN201410103324A CN103839055B CN 103839055 B CN103839055 B CN 103839055B CN 201410103324 A CN201410103324 A CN 201410103324A CN 103839055 B CN103839055 B CN 103839055B
- Authority
- CN
- China
- Prior art keywords
- driver
- nose
- sight
- line
- detected
- 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.)
- Active
Links
Landscapes
- Eye Examination Apparatus (AREA)
- Image Analysis (AREA)
- Measurement Of The Respiration, Hearing Ability, Form, And Blood Characteristics Of Living Organisms (AREA)
Abstract
本发明公开了一种驾驶员视线方向的检测方法,该方法包括:确定视频图像中每帧图像的感兴趣区域,并基于haar特征在所述感兴趣区域检测驾驶员鼻子的位置;结合当前帧检测到的驾驶员鼻子的位置,与前一帧检测到的驾驶员鼻子的位置,计算驾驶员鼻子的运动信息;并根据之前S帧检测到的驾驶员鼻子的位置及对应的驾驶员鼻子的运动信息,判断驾驶员的视线方向;若未检测到驾驶员鼻子,则根据未检测到的帧数及历史视线方向来估计驾驶员的视线方向。通过采用本发明公开的检测方法,能够较为准确的检测出驾驶员视线方向,避免由于疲劳驾驶而存在的安全隐患。
Description
技术领域
本发明涉及智能交通技术领域,尤其涉及一种驾驶员视线方向的检测方法。
背景技术
随着经济的飞速发展,各国的机动车保有量迅速增加,根据中国交通部的最新统计,截至2011年底,我国汽车保有量超过1亿辆,机动车驾驶人员达到2.3亿人。但随之而来的是公路、铁路上的交通事故频发,安全问题日趋严重。全世界每年因交通事故而死亡的人数为80万,因交通事故受伤的人更多,平均每年高达1500万人,已成为危害人类生命安全的最大公害。长期以来,各国的专家、学者主要从驾驶员、车辆和道路环境三个方面进行交通安全方面的研究。结果表明,驾驶员、车辆、道路环境三个方面对交通安全的影响程度不同,驾驶员的因素在交通安全中占最主要的地位,道路环境和车辆次之。据2002年我国交通部提供的资料显示,由疲劳驾驶引起的车祸高达48%,直接经济损失达数百万之多。在智能汽车逐渐走向人们的今天,疲劳驾驶检测是汽车智能辅助驾驶中的关键环节,不光在理论研究和工程实际中有广泛的研究价值,更具有广阔的市场前景。
目前疲劳检测的方法主要分为主观疲劳检测和客观疲劳检测方法。主观的疲劳检测方法受被检测主体差异性的影响较大,很难成为通用客观的疲劳检测标准。目前科研应用领域和工程应用领域用的比较多的还是客观的疲劳检测方法,主要有以下几种:
1)基于驾驶人生理参数的检测方法
a.脑电图信号检测:脑电图(EEG)可以反映整个脑电活动的整体分布,故一直被称为疲劳检测的“金标准”。
b.心电图信号检测:Yang G等人研究发现,心电图(ECG)信号的LF(低频能量)、HF(高频能量)、LF/HF比率和VLF(超低频能量)在疲劳时显著异常。
c.肌电图信号检测:肌电信号(EMG)是由神经肌肉活动所释放的生物电信号,可以反映神经、肌肉的功能状态。
d.脉搏跳动检测:日本电脑便民公司设计了一种疲劳检测系统,在方向盘上安装智能传感器用以采集司机握方向盘时脉搏的跳动,并将信息传给后台应用软件进行分析处理。
2)基于交通工具行为特征的检测
a.方向盘转动情况检测:Wylie等人利用方向盘转角的功率谱密度函数来表征疲劳程度,其理论依据是认为驾驶员在疲劳状态下更多的是倾向于简单的操作,快的大的方向盘动作增加了,而细致的、需要慢慢调整的动作减少了。
b.车辆行驶速度检测:沃尔沃公司开发的驾驶员警示系统主要是通过对车辆的行驶速度进行实时监测记录,分析判断车辆是否一直处于有效地行驶状态。
c.车道偏移检测:美国AssistWare Technology公司研发的SafeTRAC装置利用车道保持状态并结合驾驶员方向盘操作特性来对驾驶员的疲劳状态进行检测。
3)基于驾驶人行为特征的检测:
a.眼部状态检测:由于检测眼睛状态的方法与驾驶员生理参数地变化具有一致性,且其检测直接,具有可接受性强、非侵入性等特点,是目前研究的热点。CarnegieMellon大学的Driving Research Center最早提出了疲劳判决机制—PERCLOS值,即在一定的时间内眼睛闭合时所占的时间比例,来判断司机的疲劳程度。目前,基于PERCLOS值判定的方法提取的是眼部特征应用最广的疲劳检测判定方法。
b.头部位置检测:澳大利亚Advanced Safety Concepts Ins设计了一种HPS头部位置智能传感器,通过测量头部电压来间接的得到传感器与头部间的距离,根据头部位置的变化情况来分析判断司机的驾驶状态。
比较各方法的优缺点可以发现,基于驾驶人生理参数的检测、基于交通工具行为特征的检测和头部位置检测,由于需要安装接触身体性的仪器,可能会影响驾驶员的操作。例如监测驾驶员头部运动的装置需要在驾驶员头部做标记,心电、脑电的测量一般需要在人体粘贴电极。而基于驾驶人行为特征的检测中,眼部状态检测和提取眼部特征的视线检测,受驾驶人员是否戴眼镜,是否戴墨镜,眼睛大小等因素影响较大,适用范围仍有较大局限性;基于头部位置的司机驾驶状态检测,需要安装专用的传感器而造成成本增加,且不能对驾驶员视线方向进行准确判断。
发明内容
本发明的目的是提供一种驾驶员视线方向的检测方法,能够较为准确的检测出驾驶员视线方向,避免由于疲劳驾驶而存在的安全隐患。
本发明的目的是通过以下技术方案实现的:
一种驾驶员视线方向的检测方法,该方法包括:
确定视频图像中每帧图像的感兴趣区域,并基于haar特征在所述感兴趣区域检测驾驶员鼻子的位置;
结合当前帧检测到的驾驶员鼻子的位置,与前一帧检测到的驾驶员鼻子的位置,计算驾驶员鼻子的运动信息;并根据之前S帧检测到的驾驶员鼻子的位置及对应的驾驶员鼻子的运动信息,判断驾驶员的视线方向;
若未检测到驾驶员鼻子,则根据未检测到的帧数及历史视线方向来估计驾驶员的视线方向。
由上述本发明提供的技术方案可以看出,通过提取haar特征可以较为准确的进行特征的检测;并且,使用鼻子作为视线判断的依据,具有较好的鲁棒性,在司机戴眼镜和图像质量较差时,仍具有较高的检测准确率;并且,根据提取驾驶员鼻子的多个运动信息,对司机的视线方向进行判断,可有效提高了算法判断的准确度;另外,在没有检测到鼻子的情况下,采取了视线估计补偿逻辑,根据历史信息,判断司机的视线方向,增强了算法的鲁棒性;再根据获得的较为准确的检测出驾驶员视线方向,来判定驾驶员是否疲劳驾驶,从而避免由于疲劳驾驶而存在的安全隐患。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。
图1为本发明实施例一提供的一种驾驶员视线方向的检测方法的流程图;
图2为本发明实施例二提供的又一种驾驶员视线方向的检测方法的流程图;
图3为本发明实施例二提供的一种确定感兴趣区域的流程图;
图4为本发明实施例二提供的一种驾驶员视线判断的流程图;
图5为本发明实施例二提供的一种Nl=1时,驾驶员视线估计的流程图;
图6为本发明实施例二提供的一种2≤Nl≤4时,驾驶员视线估计的流程图;
图7为本发明实施例二提供的一种Nl>4时,驾驶员视线估计的流程图;
图8为本发明实施例二提供的一种从向前、右边、右上到其他方向的变化的平滑流程图;
图9为本发明实施例二提供的一种视线左右方向互相变换的平滑流程图。
具体实施方式
下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明的保护范围。
实施例一
图1为本发明实施例一提供的一种驾驶员视线方向的检测方法的流程图。如图1所示,该方法主要包括如下步骤:
步骤11、确定视频图像中每帧图像的感兴趣区域,并基于haar特征在所述感兴趣区域检测驾驶员鼻子的位置。
所述Haar特征(矩形)主要分为:边缘特征、线性特征、中心特征和对角线特征,组合成特征模板。特征模板内有白色和黑色两种矩形,并定义该模板的特征值为白色矩形像素和减去黑色矩形像素和。
不同驾驶员和不同的驾驶姿态会使图像中鼻子尺寸发生变化。检测中需要根据鼻子的尺寸来调整分类器参数,使其达到较高的准确率。因此,本发明实施例预先确定图像的放缩比,其步骤如下:1)设定放缩比上限λmax、下限λmin和步长α;以λ0为初始值,根据步长α进行k次调整:λk=λ0×αk;2)当调整到达上限λk>λmax或下限时λk≤λmin,停止调整,并统计各次调整后的驾驶员鼻子的检测结果,每一次检测到驾驶员鼻子的次数表示为nk;3)将使得所述nk为最大值nmax所对应的放缩比作为本次检测所采用的放缩比。
随后,确定视频图像中每帧图像的感兴趣区域,通常可根据前面若干帧的检测驾驶员鼻子的检测结果来确定。具体的:
假设第k帧中鼻子的坐标为对应的感兴趣区域位置为(xk,yk),长宽为(a,b),则在第k+1帧中感兴趣区域(xk+1,yk+1)根据鼻子的坐标确定,计算公式为:
其中w和h为常量;若在第k+1帧中检测到鼻子,则继续按(1)式计算。
若在第k+1帧中没有检测到鼻子,则在第k+1帧中区域长宽扩展为(a',b'),且a'>a、b'>b,再检测一遍;其位置计算公式如下:
其中w'和h'为常量;若在第k+1帧中检测到鼻子,则继续按(1)式计算。
若仍然没有检测到,则在第k+2帧的对应位置,设置感兴趣区域大小为(a',b'),再检测一遍,感兴趣区域位置计算公式如下:
若在第k+2帧中检测到鼻子,则继续按(1)式计算。
若连续两帧,即第k+1和第k+2帧都没检测到,则在第k+3帧中根据丢失前的感兴趣区域位置,来进行调整,公式如下:
其中(xini,yini)为初始感兴趣区域位置,区域长宽为(a',b');若在第k+3帧中检测到鼻子,则继续按(1)式计算。
若连续三帧没有检测到,则在第k+4帧返回初始位置(xini,yini),长宽为(a',b')。
在当前第k帧中确定感兴趣区域后,计算感兴趣区域的积分图,并计算对应的haar特征,获得包含haar特征的图像;将所述包含haar特征的图像输入预定的haar鼻子分类器进行判断,找到包含驾驶员鼻子的区域;再将当前第k帧内重叠或相邻的包含驾驶员鼻子的区域合并,获得鼻子位置坐标。
在本发明实施例中,用驾驶员鼻子特征进行视线判断,由于鼻子为脸部明显特征,受大小变化影响较小,且在驾驶员戴眼镜、墨镜及眼睛较小等情况下,都能够较为准确地判断出司机的视线方向。同时,仅需要安装一般的USB摄像头,在不增加额外设备的情况下,仍能准确地判断司机的视线方向。
步骤12、结合当前帧检测到的驾驶员鼻子的位置,与前一帧检测到的驾驶员鼻子的位置,计算驾驶员鼻子的运动信息;并根据之前S帧检测到的驾驶员鼻子的位置及对应的驾驶员鼻子的运动信息,判断驾驶员的视线方向。
本发明实施例中,结合当前帧检测到的驾驶员鼻子的位置,与前一帧检测到的驾驶员鼻子的位置,计算驾驶员鼻子的运动速度与加速度其公式为:
所述判断驾驶员的视线方向包括:基准位置更新和视线判断;
在检测到鼻子时,判断视线方向是否向前;若是,则每帧更新一次基准位置;否则,则在连续检到5帧后,每三帧更新一次;基准位置的更新公式如下:
其中,βx和βy分别为x和y方向的更新速率;
视线判断包括五种视线方向的判断:向前、向左、向右、右下和右上;
视线向前的判断公式如下:
其中εx和εy分别为x和y方向的判断阈值;判定结果F若为1,则视线向前;若为0则为其他方向;
视线向左的判断公式如下:
其中,εlx为x方向的判断阈值;判定结果L若为1,则视线向左;若为0则为其他方向;
补偿系数l和lp的计算公式如下:
其中为符合条件的帧数,计算公式如下:
视线向右的判断公式如下:
其中,εrx为x方向的判断阈值εrx<0;判定结果R若为1,则视线向右;若为0则为其他方向;
当判断R为1时,再判断右下方标志位RD是否成立,视线右下的判断公式如下:
其中,εrdy为y方向的判断阈值εrdy<0;判定结果RD若为1,则视线向右下;若为0则为其他方向;
当判断R为1时,再判断右上方标志位RU是否成立,视线右上的判断公式如下:
其中,εruy为y方向的判断阈值εruy>0;判定结果RU若为1,则视线向右上;若为0则为其他方向。
步骤13、若未检测到驾驶员鼻子,则根据未检测到的帧数及历史视线方向来估计驾驶员的视线方向。
当未检测到驾驶员鼻子时,根据未检测到的帧数Nl、历史视线方向Vr(上一次检测到的视线方向)以及是否进行了基于速度估计的标志变量Ac来估计驾驶员的视线方向。
步骤14、对驾驶员视线方向进行平滑处理。
本发明实施例中,为了降低各种干扰对输出结果的影响,加入了输出平滑处理逻辑;主要包括:从视线向前、向右、右上到其他方向的变化的平滑,以及视线左右方向互相变换的平滑;
其中,从向前、右边、右上到其他方向的变化的平滑包括:从向前到其他方向的平滑,若由向前到向右、右上、向左的变化连续出现两次C1≤2,则跳变有效;从向右到其他各方向的平滑,若由向右到向前和右下的变化连续出现两次C1≤2,则跳变有效;从右上方到其他各方向跳变的平滑,右上到其他各方向的变化均延迟两帧;如果都不满足以上各方向的防抖措施,则防抖计数器清零C1=0。
视线左右方向互相变换的平滑包括:
视线从向右至向左变化的平滑,当下面四个条件都成立时,逻辑判断为是;否则为否;
条件1:Vr=2or Vr=7or Vr=8;条件2:V=1;条件3:检测到驾驶员鼻子or Nl≤2;条件4:C2≤2;其中,C2表示平滑校正计数器;
视线从向左至向右变化的平滑,当下面四个条件都成立时,逻辑判断为是;否则为否;
条件1:V=2or V=7or V=8;条件2:Vr=1;条件3:检测到驾驶员鼻子or Nl≤2;条件4:C2≤2;
向左向右跳变发生时的处理,当满足条件1与2,或者满足条件3与4时,逻辑判断为是;否则为否;
条件1:Vr=2or Vr=7or Vr=8;条件2:V=1;条件3:V=2or V=7or V=8;条件4:Vr=1。
通常情况下,正常驾驶时司机的视线一般是看向正前方的,当视线长时间偏移时就可以认定处于疲劳或注意力不集中的状态。
本发明实施例通过提取haar特征可以较为准确的进行特征的检测;并且,通用鼻子作为视线判断的依据,具有较好的鲁棒性,在司机戴眼镜和图像质量较差时,仍具有较高的检测准确率;并且,根据提取驾驶员鼻子的多个运动信息,对司机的视线方向进行判断,可有效提高了算法判断的准确度;另外,在没有检测到鼻子的情况下,采取了视线估计补偿逻辑,根据历史信息,判断司机的视线方向,增强了算法的鲁棒性;再根据获得的较为准确的检测出驾驶员视线方向,来判定驾驶员是否疲劳驾驶,从而避免由于疲劳驾驶而存在的安全隐患。
实施例二
为了便于理解本发明,下面结合附图2-9做进一步说明。
本发明实施例分为两个阶段,第一阶段为在单帧图像中检测司机鼻子位置,第二阶段为利用多帧鼻子的检测信息融合来判断司机视线。
1)单帧图像检测司机鼻子。对视频的每帧图像设置感兴趣区域,在感兴趣区域内进行检测,区域内的每个像素求取haar特征,获得若干张特征图像。再将特征图像输入训练好的haar鼻子分类器。在区域中找到鼻子的准确位置。再根据之前的若干帧的信息,获得更多鼻子的运动信息。
2)判断视线方向。由于司机的视线运动方向具有复杂性,且检测准确度随司机驾驶姿态的变化而变化。为了准确判断,需要对多帧提取的多维信息进行融合。根据上一阶段提取到的多帧鼻子的运动信息,经过决策逻辑来判断司机视线方向。通过调整决策逻辑的阈值,可以调整算法的敏感度,从而满足不同场合的应用需要。
具体的处理流程可参考图2,主要包括如下步骤:
1)从摄像头读取图像。
2)图像解码。示例性的,本实施例获取的图像为MJPEG编码格式,需要在指定位置插入huffman表后,再进行解码。
3)设置感兴趣区域。根据前若干帧的检测结果,设置感兴趣区域来进行Haar特征的区域。
4)利用Haar特征检测鼻子。先计算感兴趣区域的积分图,再由积分图计算各Haar特征,最后将提取的特征输入分类器,检测出鼻子,并获得鼻子位置。
5)判断是否检测到鼻子。若检测到,则提取鼻子运动信息;若没检测到,则根据未检测到鼻子的帧数和历史视线方向(上一次检测到的视线方向)来判断视线方向。
6)提取鼻子运动信息。根据当前帧的检测结果,并结合前若干帧的结果,计算出鼻子运动的速度,加速度等运动信息。
7)视线方向判断。根据提取到的鼻子运动信息判断驾驶员的视线方向。
8)平滑视线处理。对上面环节的检测结果进行融合,减小检测和判断过程中的干扰,以提高系统的鲁棒性和正确率。
9)视线方向输出。将融合后的视线判断结果输出。
10)继续读取下一帧图像。
进一步的,对上述关键步骤进行详细的介绍。
1、设置感兴趣区域,并检测驾驶员鼻子的位置。
在实际应用中,不同驾驶员和不同的驾驶姿态会使图像中鼻子尺寸发生变化。因此,需要根据鼻子的尺寸来调整分类器参数,使其达到较高的准确率。分类器参数调整幅度用放缩比λ来表示。
首先,设定分类器参数调整的上限λmax、下限λmin和调整步长α。然后,将分类器参数以λ0为初始值,根据步长进行k次调整,对图像进行检测,并记录本次检测到驾驶员鼻子的次数nk。其调整公式为:λk=λ0×αk。
最后,当参数调整到达上限或下限时,停止调整,并统计各次调整的检测结果。公式表示如下:λk>λmaxorλk≤λmin;放缩比计算公式如下:
即统计各分类器检测到的结果个数,将个数最多nmax所对应的放缩系数作为放缩比。放缩比一旦确定,无需再次确定,且在后续检测过程中不变。
随后,可设置感兴趣区域。通常可根据前面若干帧的检测驾驶员鼻子的检测结果来确定,如图3所示,具体包括:
若在第k帧检测到鼻子,其坐标为对应的感兴趣区域位置为(xk,yk),长宽为(a,b),则在第k+1帧中感兴趣区域(xk+1,yk+1)根据鼻子的坐标确定,计算公式为:
其中w和h为常量;若在第k+1帧中检测到鼻子,则继续按(1)式计算。
若在第k+1帧中没有检测到鼻子,则在第k+1帧中区域长宽扩展为(a',b'),且a'>a、b'>b,再检测一遍;其位置计算公式如下:
其中w'和h'为常量;若在第k+1帧中检测到鼻子,则继续按(1)式计算。
若仍然没有检测到,则在第k+2帧的对应位置,设置感兴趣区域大小为(a',b'),再检测一遍,感兴趣区域位置计算公式如下:
若在第k+2帧中检测到鼻子,则继续按(1)式计算。
若连续两帧,即第k+1和第k+2帧都没检测到,则在第k+3帧中根据丢失前的感兴趣区域位置,来进行调整,公式如下:
其中(xini,yini)为初始感兴趣区域位置,区域长宽为(a',b');若在第k+3帧中检测到鼻子,则继续按(1)式计算。
若连续三帧没有检测到,则在第k+4帧返回初始位置(xini,yini),长宽为(a',b')。
在当前第k帧中确定感兴趣区域后,计算感兴趣区域的积分图,并计算对应的haar特征,获得包含haar特征的图像;将所述包含haar特征的图像输入预定的haar鼻子分类器进行判断,找到包含驾驶员鼻子的区域;再将当前第k帧内重叠或相邻的包含驾驶员鼻子的区域合并,获得鼻子位置坐标。
2、计算驾驶员鼻子的运动信息。
驾驶员在驾驶过程中,动作较为复杂,需要提取多维特征量来对动作进行区分。经过实验,判断驾驶员视线所需的特征量主要有:鼻子位置运动速度与加速度
其中,速度计算公式如下:
加速度为速度之差,计算公式如下:
本发明实施例中,设置了一个数组用来存储上述数据,例如,如表1所示,分别记录三帧的鼻子检测位置,运动的速度和加速度共六个数据。
若检测到鼻子,则根据以上公式计算相关特征量,并将数据存入队列。若没有检到,则不更新队列。若连续超过m帧(例如,5帧)没有检测到,则把队列清空。
3、判断驾驶员的视线方向。
所述判断驾驶员的视线方向包括两部分:基准位置更新和视线判断。
1)基准位置更新。基准位置是判断司机视线的基础,可根据鼻子位置和基准位置的相对关系来判断司机视线。
基准位置是实时更新的,目的是减小了司机驾驶中坐姿变化和行车颠簸等因素,对判断结果的影响。
在检测到鼻子时,判断视线方向是否向前;若是,则每帧更新一次基准位置;否则,则在连续检到5帧后,每三帧更新一次;基准位置的更新公式如下:
其中,βx和βy分别为x和y方向的更新速率;若未检测到鼻子,则不更新。
2)视线判断。
视线判断包括五种视线方向的判断:向前、向左、向右、右下和右上。如图4所示,主要包括:
a.视线向前的判断,根据检测鼻子位置和基准位置相互关系来判断;其公式如下:
其中εx和εy分别为x和y方向的判断阈值;判定结果F若为1,则视线向前;若为0则为其他方向;
b.视线向左的判断,主要根据鼻子位置和基准位置相互关系及补偿系数;其公式如下:
其中,εlx为x方向的判断阈值;判定结果L若为1,则视线向左;若为0则为其他方向;
补偿系数l和lp的计算公式如下:
其中为符合条件的帧数,计算公式如下:
c.视线向右的判断,主要根据鼻子位置和基准位置相互关系,以及速度信息;其公式如下:
其中,εrx为x方向的判断阈值εrx<0;判定结果R若为1,则视线向右;若为0则为其他方向;
d.当判断R为1时,再判断右下方标志位RD是否成立,视线右下的判断公式如下:
其中,εrdy为y方向的判断阈值εrdy<0;判定结果RD若为1,则视线向右下;若为0则为其他方向;
当判断R为1时,再判断右上方标志位RU是否成立,视线右上的判断公式如下:
其中,εruy为y方向的判断阈值εruy>0;判定结果RU若为1,则视线向右上;若为0则为其他方向。
需要说明的是,上面所涉及的各个阈值可以根据实际需求或者经验来预先设定。
4、驾驶员视线估计。
当未检测到驾驶员鼻子时,需要根据未检测到的帧数Nl、历史视线方向Vr(上一次检测到的视线方向)以及是否进行了基于速度估计的标志变量Ac来估计驾驶员的视线方向V。V的取值可以是:0—向前、1—向左、2—向右、7—右上、8—右下。Ac为1表示进行了基于速度的估计,为0时表示没有进行估计。
本发明实施例中,根据未检测到的帧数Nl的取值分为三个阶段,如图5-7所示。
图5表示Nl=1时的估计流程,即在第k帧检测到驾驶员鼻子,而第k+1帧没有检测到。流程如下:首先,对右上方进行估计,若队列中的数据满足条件 则判断k+1帧视线方向为右上,并设置标志位Ac=0;然后,对是否需要进行视线向左和向右估计进行判断,如果满足条件(δx为设定的阈值),则进行视线向左和向右的判断,否则直接结束;对视线向右进行估计,如果满足条件则判断视线向右V=2,并设置标志位Ac=1。否则,判断视线向左V=1,并设置标志位Ac=1。
图6表示2≤Nl≤4时的估计流程。流程如下:判断丢帧的数量,若连续丢了多于2帧,则判断有效,Ac=0;判断记录的视线状态,若记录的是向右或右上或右下,即Vr=2或Vr=7或Vr=8,则判断有效;判断Ac状态和丢帧的数量,若Ac=0并且丢失帧数不多于4帧,则判断生效,设置Ac为0并判断视线向右V=2,否则进行位置判断1;位置判断1的判断公式如下:
其中,εex为设定的阈值;若EA为1,则判断有效,视线向左V=1,否则视线向右V=2。
若记录的是向左或向前,即Vr=1或Vr=0,则判断有效;判断Ac状态和丢帧的数量,若Ac=0并且丢失帧数不多于4帧,则判断生效,设置Ac为0并判断视线向左V=1,否则进行位置判断1;位置判断1,判断公式同上。
图7表示Nl<4时的估计流程。若在第k帧检测到驾驶员鼻子,则在丢帧超过4帧时,即在第k+5帧,用图7的逻辑进行判断。位置判断2的判断公式如下:
若EB为1,则判断有效,视线向左V=1,并设置Ac为0,否则视线向右V=2,并设置Ac为0。
5、平滑视线处理。
本发明实施例中,为了降低各种干扰对输出结果的影响,加入了输出平滑处理逻辑;主要包括:从视线向前、向右、右上到其他方向的变化的平滑,以及视线左右方向互相变换的平滑。
如图8所示,从向前、右边、右上到其他方向的变化的平滑包括:从向前到其他方向的平滑,若由向前到向右、右上、向左的变化连续出现大于两次C1>2,则跳变有效;从向右到其他各方向的平滑,若由向右到向前和右下的变化连续出现大于两次C1>2,则跳变有效;从右上方到其他各方向跳变的平滑,右上到其他各方向的变化均延迟两帧;如果都不满足以上各方向的防抖措施,则防抖计数器清零C1=0。其中,视线方向取值的含义:1—向左、2—向右、7—右上、8—右下。
视线左右方向互相变换的平滑包括:
视线从向右至向左变化的平滑,当下面四个条件都成立时,逻辑判断为是;否则为否;
条件1:Vr=2or Vr=7or Vr=8;条件2:V=1;条件3:检测到驾驶员鼻子or Nl≤2;条件4:C2≤2;其中,C2表示平滑校正计数器;
视线从向左至向右变化的平滑,当下面四个条件都成立时,逻辑判断为是;否则为否;
条件1:V=2or V=7or V=8;条件2:Vr=1;条件3:检测到驾驶员鼻子or Nl≤2;条件4:C2≤2;
向左向右跳变发生时的处理,当满足条件1与2,或者满足条件3与4时,逻辑判断为是;否则为否;
条件1:Vr=2or Vr=7or Vr=8;条件2:V=1;条件3:V=2or V=7or V=8;条件4:Vr=1。
通常情况下,正常驾驶时司机的视线一般是看向正前方的,当视线长时间偏移时就可以认定处于疲劳或注意力不集中的状态。
本发明实施例通过提取haar特征可以较为准确的进行特征的检测;并且,通用鼻子作为视线判断的依据,具有较好的鲁棒性,在司机戴眼镜和图像质量较差时,仍具有较高的检测准确率;并且,根据提取驾驶员鼻子的多个运动信息,对司机的视线方向进行判断,可有效提高了算法判断的准确度;另外,在没有检测到鼻子的情况下,采取了视线估计补偿逻辑,根据历史信息,判断司机的视线方向,增强了算法的鲁棒性;再根据获得的较为准确的检测出驾驶员视线方向,来判定驾驶员是否疲劳驾驶,从而避免由于疲劳驾驶而存在的安全隐患。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例可以通过软件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,上述实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明披露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。
Claims (7)
1.一种驾驶员视线方向的检测方法,其特征在于,该方法包括:
确定视频图像中每帧图像的感兴趣区域,并基于haar特征在所述感兴趣区域检测驾驶员鼻子的位置;
结合当前帧检测到的驾驶员鼻子的位置,与前一帧检测到的驾驶员鼻子的位置,计算驾驶员鼻子的运动信息;并根据之前S帧检测到的驾驶员鼻子的位置及对应的驾驶员鼻子的运动信息,判断驾驶员的视线方向;
若未检测到驾驶员鼻子,则根据未检测到的帧数及历史视线方向来估计驾驶员的视线方向;
确定视频图像中每帧图像的感兴趣区域之前还包括确定图像放缩比的步骤,且该步骤包括:
设定放缩比上限λmax、下限λmin和步长α;以λ0为初始值,根据步长α进行k次调整:λk=λ0×αk;
当调整到达上限λk>λmax或下限时λk≤λmin,停止调整,并统计各次调整后的驾驶员鼻子的检测结果,每一次检测到驾驶员鼻子的次数表示为nk;
将使得所述nk为最大值nmax所对应的放缩比作为本次检测所采用的放缩比。
2.根据权利要求1所述的方法,其特征在于,所述确定视频图像中每帧图像的感兴趣区域包括:
确定当前帧感兴趣区域的位置和大小;具体的:
若在第k帧检测到鼻子,其坐标为对应的感兴趣区域位置为(xk,yk),长宽为(a,b),则在第k+1帧中感兴趣区域(xk+1,yk+1)根据鼻子的坐标确定,计算公式为:
其中w和h为常量;
若在第k+1帧中没有检测到鼻子,则将第k+1帧中区域长宽扩展为(a',b'),且a'>a、b'>b,再检测一遍;其位置计算公式如下:
其中w'和h'为常量;
若仍然没有检测到,则在第k+2帧的对应位置,设置感兴趣区域大小为(a',b'),再检测一遍,感兴趣区域位置计算公式如下:
若连续两帧都没检测到,则在第k+3帧中根据丢失前的感兴趣区域位置,来进行调整,公式如下:
其中(xini,yini)为初始感兴趣区域位置,区域长宽为(a',b');
若连续三帧没有检测到,则在第k+4帧返回初始位置(xini,yini),长宽为(a',b')。
3.根据权利要求1所述的方法,其特征在于,所述基于haar特征在所述感兴趣区域检测驾驶员鼻子的位置包括:
计算所述感兴趣区域的积分图,并计算对应的haar特征,获得包含haar特征的图像;
将所述包含haar特征的图像输入预定的haar鼻子分类器进行判断,找到包含驾驶员鼻子的区域;
再将第k帧内重叠或相邻的包含驾驶员鼻子的区域合并,获得鼻子位置坐标。
4.根据权利要求2所述的方法,其特征在于,所述计算驾驶员鼻子的运动信息包括:
结合当前帧检测到的驾驶员鼻子的位置,与前一帧检测到的驾驶员鼻子的位置,计算驾驶员鼻子的运动速度与加速度其公式为:
5.根据权利要求4所述的方法,其特征在于,所述判断驾驶员的视线方向包括:基准位置更新和视线判断;
在检测到鼻子时,判断视线方向是否向前;若是,则每帧更新一次基准位置;否则,则在连续检到5帧后,每三帧更新一次;基准位置的更新公式如下:
其中,βx和βy分别为x和y方向的更新速率;
视线判断包括五种视线方向的判断:向前、向左、向右、右下和右上;
视线向前的判断公式如下:
其中εx和εy分别为x和y方向的判断阈值;判定结果F若为1,则视线向前;若为0则为其他方向;
视线向左的判断公式如下:
其中,εlx为x方向的判断阈值;判定结果L若为1,则视线向左;若为0则为其他方向;
补偿系数l和lp的计算公式如下:
其中为符合条件的帧数,计算公式如下:
视线向右的判断公式如下:
其中,εrx为x方向的判断阈值εrx<0;判定结果R若为1,则视线向右;若为0则为其他方向;
当判断R为1时,再判断右下方标志位RD是否成立,视线右下的判断公式如下:
其中,εrdy为y方向的判断阈值εrdy<0;判定结果RD若为1,则视线向右下;若为0则为其他方向;
当判断R为1时,再判断右上方标志位RU是否成立,视线右上的判断公式如下:
其中,εruy为y方向的判断阈值εruy>0;判定结果RU若为1,则视线向右上;若为0则为其他方向。
6.根据权利要求1所述的方法,其特征在于,所述估计驾驶员的视线方向包括:
根据未检测到的帧数Nl、历史视线方向Vr以及是否进行了基于速度估计的标志变量Ac来估计驾驶员的视线方向。
7.根据权利要求6所述的方法,其特征在于,该方法还包括对判断或估计到的驾驶员视线方向进行平滑处理,且该平滑处理包括:
从视线向前、向右、右上到其他方向的变化的平滑,以及视线左右方向互相变换的平滑;
其中,从向前、右边、右上到其他方向的变化的平滑包括:从向前到其他方向的平滑,若由向前到向右、右上、向左的变化连续出现两次C1≤2,则跳变有效;从向右到其他各方向的平滑,若由向右到向前和右下的变化连续出现两次C1≤2,则跳变有效;从右上方到其他各方向跳变的平滑,右上到其他各方向的变化均延迟两帧;如果都不满足以上各方向的防抖措施,则防抖计数器清零C1=0;
视线左右方向互相变换的平滑包括:
视线从向右至向左变化的平滑,当下面四个条件都成立时,逻辑判断为是;否则为否;
条件1:Vr=2 or Vr=7 or Vr=8;条件2:V=1;条件3:检测到驾驶员鼻子or Nl≤2;条件4:C2≤2;其中,C2表示平滑校正计数器,V表示估计出的驾驶员视线方向;
视线从向左至向右变化的平滑,当下面四个条件都成立时,逻辑判断为是;否则为否;
条件1:V=2 or V=7 or V=8;条件2:Vr=1;条件3:检测到驾驶员鼻子or Nl≤2;条件4:C2≤2;
向左向右跳变发生时的处理,当满足条件1与2,或者满足条件3与4时,逻辑判断为是;否则为否;
条件1:Vr=2 or Vr=7 or Vr=8;条件2:V=1;条件3:V=2 or V=7 or V=8;条件4:Vr=1。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410103324.8A CN103839055B (zh) | 2014-03-19 | 2014-03-19 | 一种驾驶员视线方向的检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410103324.8A CN103839055B (zh) | 2014-03-19 | 2014-03-19 | 一种驾驶员视线方向的检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103839055A CN103839055A (zh) | 2014-06-04 |
CN103839055B true CN103839055B (zh) | 2017-08-29 |
Family
ID=50802534
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410103324.8A Active CN103839055B (zh) | 2014-03-19 | 2014-03-19 | 一种驾驶员视线方向的检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103839055B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103888680B (zh) * | 2014-03-28 | 2017-07-11 | 中国科学技术大学 | 一种摄像头曝光时间的调节方法 |
CN105788028A (zh) * | 2016-03-21 | 2016-07-20 | 上海仰笑信息科技有限公司 | 具有疲劳驾驶预警功能的行车记录仪 |
KR20180059224A (ko) * | 2016-11-25 | 2018-06-04 | 현대자동차주식회사 | 차량의 정차 제어장치 및 그 방법 |
CN110969061A (zh) * | 2018-09-29 | 2020-04-07 | 北京市商汤科技开发有限公司 | 神经网络训练、视线检测方法和装置及电子设备 |
CN111368589A (zh) * | 2018-12-25 | 2020-07-03 | 北京三星通信技术研究有限公司 | 用于视线估计的方法、装置和电子设备 |
CN110795982A (zh) * | 2019-07-04 | 2020-02-14 | 哈尔滨工业大学(深圳) | 一种基于人体姿态分析的表观视线估计方法 |
JP7518021B2 (ja) * | 2021-03-08 | 2024-07-17 | 本田技研工業株式会社 | 較正装置及び較正方法 |
CN114998867B (zh) * | 2022-06-27 | 2025-02-14 | 酷哇科技有限公司 | 基于单相机的红绿灯状态检测方法及系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102456137A (zh) * | 2010-10-20 | 2012-05-16 | 上海青研信息技术有限公司 | 基于近红外反射点特性的视线跟踪预处理方法 |
CN102508551A (zh) * | 2011-11-18 | 2012-06-20 | 北京恒信彩虹科技有限公司 | 一种目光捕捉方法和采用目光捕捉的人机交互方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI432172B (zh) * | 2008-10-27 | 2014-04-01 | Utechzone Co Ltd | Pupil location method, pupil positioning system and storage media |
-
2014
- 2014-03-19 CN CN201410103324.8A patent/CN103839055B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102456137A (zh) * | 2010-10-20 | 2012-05-16 | 上海青研信息技术有限公司 | 基于近红外反射点特性的视线跟踪预处理方法 |
CN102508551A (zh) * | 2011-11-18 | 2012-06-20 | 北京恒信彩虹科技有限公司 | 一种目光捕捉方法和采用目光捕捉的人机交互方法 |
Non-Patent Citations (2)
Title |
---|
Robust Nose Detection and Tracking Using GentleBoost and Improved Lucas-Kanade Optical Flow Algorithms;Xiaobo Ren et al;《lecture notes in computer science》;20070824;第1240-1243 * |
基于三维图像测量的驾驶员脸部旋转角度测量方法研究;严雅露;《中国优秀硕士学位论文全文数据库信息科技辑》;20130615(第6期);摘要第3段,第2段第2段 * |
Also Published As
Publication number | Publication date |
---|---|
CN103839055A (zh) | 2014-06-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103839055B (zh) | 一种驾驶员视线方向的检测方法 | |
Devi et al. | Driver fatigue detection based on eye tracking | |
WO2021248687A1 (zh) | 伪3d卷积神经网络与注意力机制结合的驾驶疲劳检测方法及系统 | |
CN104013414B (zh) | 一种基于移动智能手机的驾驶员疲劳检测系统 | |
CN104616438B (zh) | 一种用于疲劳驾驶检测的打哈欠动作检测方法 | |
Wang et al. | Driver fatigue detection: a survey | |
Yan et al. | Real-time driver drowsiness detection system based on PERCLOS and grayscale image processing | |
CN106846734B (zh) | 一种疲劳驾驶检测装置及方法 | |
CN105096528B (zh) | 一种疲劳驾驶检测方法及系统 | |
CN104809445B (zh) | 基于眼部和嘴部状态的疲劳驾驶检测方法 | |
Omidyeganeh et al. | Intelligent driver drowsiness detection through fusion of yawning and eye closure | |
Junaedi et al. | Driver drowsiness detection based on face feature and PERCLOS | |
CN105354985B (zh) | 疲劳驾驶监控装置及方法 | |
CN101732055B (zh) | 驾驶员疲劳检测方法及系统 | |
CN108875642A (zh) | 一种多指标融合的驾驶员疲劳检测的方法 | |
CN113642522B (zh) | 基于音视频的疲劳状态检测方法和装置 | |
CN106682603B (zh) | 一种基于多源信息融合的实时驾驶员疲劳预警系统 | |
CN105286802B (zh) | 基于视频信息的驾驶员疲劳检测方法 | |
CN110728241A (zh) | 一种基于深度学习多特征融合的驾驶员疲劳检测方法 | |
CN104123549A (zh) | 一种用于疲劳驾驶实时监测的眼睛定位方法 | |
CN104794855A (zh) | 驾驶员注意力综合评估装置 | |
Ma et al. | Real time drowsiness detection based on lateral distance using wavelet transform and neural network | |
CN109063545B (zh) | 一种疲劳驾驶检测方法及装置 | |
CN107844783A (zh) | 一种营运车辆异常驾驶行为检测方法及系统 | |
CN118587689B (zh) | 驾驶员疲劳状态检测方法和系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |