本发明涉及安全驾驶领域,尤其涉及一种驾驶员疲劳检测装置及方法。
背景技术:
目前,随着道路路况越来越复杂,驾驶员安全驾驶的问题也逐渐被重视起来。现有技术中一般是利用摄像头拍摄驾驶员的面部图像,再根据面部图像生成驾驶员的眼睛睁开程度、眨眼频率等信息,进而根据生成的信息来判断驾驶员是否疲劳驾驶。但由于行驶过程中驾驶员的位置会有移动,这就导致从捕捉到的驾驶员面部图像中并没有准确获取所需要的信息。
技术实现要素:
本发明提供一种驾驶员疲劳检测装置及方法,能够更加准确的检测到驾驶员是否处于疲劳状态,从而保证了驾驶的安全性。
为达到上述目的,本发明的实施例采用如下技术方案:
第一方面,本发明实施例提供一种驾驶员疲劳检测装置,该驾驶员疲劳检测装置包括:获取单元,用于获取从驾驶员左前方拍摄的驾驶员图像以及从驾驶员右前方拍摄的驾驶员图像;检测单元,用于根据从驾驶员左前方拍摄的驾驶员图像以及从驾驶员右前方拍摄的驾驶员图像,判断驾驶员当前是否处于疲劳状态。
第二方面,本发明实施例提供一种驾驶员疲劳检测方法,包括:获取从驾驶员左前方拍摄的驾驶员图像以及从驾驶员右前方拍摄的驾驶员图像;根据从驾驶员左前方拍摄的驾驶员图像以及从驾驶员右前方拍摄的驾驶员图像,判断驾驶员当前是否处于疲劳状态。
第三方面,本发明实施例提供一种驾驶员疲劳检测装置,包括:处理器、存储器、总线和通信接口;存储器用于存储计算机执行指令,处理器与存储器通过总线连接,当驾驶员疲劳检测装置运行时,处理器执行存储器存储的计算机执行指令,以使驾驶员疲劳检测装置执行第二方面所提供的方法。
第四方面,本发明实施例提供一种计算机存储介质,包括指令,当其在驾驶员疲劳检测装置上运行时,使得驾驶员疲劳检测装置执行如上述第二方面所提供的方法。
本发明提供的驾驶员疲劳检测装置及方法中,通过设置在驾驶员左右两侧前方的摄像装置捕捉驾驶员图像,再根据左右两侧的捕捉的驾驶员图像来判断驾驶员是否处于疲劳驾驶状态。这样一来,由于从左右两侧的驾驶员图像中可以获取到更加精确的用于疲劳检测的各项参数,从而提高了检测精准度,避免由于驾驶员位置移动导致摄像头无法捕捉到完整的驾驶员面部图像进而影响检测准确性的问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
图1为本发明实施例提供的一种驾驶员疲劳检测装置的结构示意图之一;
图2为本发明实施例提供的一种驾驶员疲劳检测方法的流程示意图;
图3为本发明实施例提供的另一种驾驶员疲劳检测装置的结构示意图;
图4为本发明实施例提供的一种检测单元102的结构示意图;
图5为本发明实施例提供的一种驾驶员疲劳检测装置的结构示意图之二;
图6为本发明实施例提供的一种驾驶员疲劳检测装置的结构示意图之三。
具体实施方式
下面结合附图,对本发明的实施例进行描述。
在本发明实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本发明实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。此外,在本发明实施例的描述中,除非另有说明,“多个”的含义是指两个或两个以上。
在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。
应当理解,尽管在本发明实施例中可能采用术语第一、第二、第三等来描述各种阈值、信号以及指令等,但这些阈值、信号以及指令不应限于这些术语。这些术语仅用来将阈值、信号以及指令彼此区分开。例如,在不脱离本发明实施例范围的情况下,第一阈值也可以被称为第二阈值,类似地,第二阈值也可以被称为第一阈值等。
取决于语境,如在此所使用的词语“如果”或“若”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。
首先,对本发明的发明构思进行介绍:在本发明中,通过从驾驶员正面的两侧采集驾驶员图像,并利用从驾驶员两侧采集的驾驶员图像来进行驾驶员疲劳检测,从而能够避免因受到摄像头拍摄角度的影响,导致摄像头无法捕捉到完整的驾驶员面部图像进而导致的疲劳检测准确性不高的问题。进一步的,本发明针对基于利用驾驶员正面的两侧采集到的图像来进行疲劳检测的过程中,如何获取到有用信息的这一问题,提供了一套完整的从图像中提取信息的方法。
具体的,如图1所示,为本发明实施例提供的一种驾驶员疲劳检测装置10的结构示意图。其中,驾驶员疲劳检测装置,具体包括:获取单元101以及检测单元102。其中,驾驶员疲劳检测装置10的工作流程,如图2所提供的驾驶员疲劳检测方法的流程示意图所示。该驾驶员疲劳检测方法,具体包括:
s201、获取从驾驶员左前方拍摄的驾驶员图像,以及驾驶员右前方拍摄的驾驶员图像。
具体的,在如图1所示的驾驶员疲劳检测装置中,获取单元101用于获取从驾驶员左前方拍摄的驾驶员图像,以及驾驶员右前方拍摄的驾驶员图像。
具体的,本发明中,考虑到驾驶员在驾驶车辆时,头部一般是处于面向前方的状态。即便驾驶员在驾驶过程中移动,也通常是以向左或向右转头的方式移动,很少会大幅度抬头或者低头。因此,本发明实施例中选择获取驾驶员左前方和右前方的图像来进行后续检测。
示例性的,如图3所示,本发明实施例中驾驶员疲劳检测装置10还包括两个摄像头:摄像头1、摄像头2。通过在驾驶员的左前方和右前方分别设置的摄像头1、摄像头2,从而实现上述获取图像的步骤。
需要说明的是,本发明实施例中所称方向“左”“右”可以是驾驶员正常坐姿时以驾驶员的角度来判断的方向,也可以是驾驶员的角度的反方向来判断的方向。具体实施时“左”“右”可以互换位置,对此本发明可以不做限制。
在一种实现方式中,考虑到随着驾驶员头部位置的变化,获取到的驾驶员图像中驾驶员眼部图像也会发生变化,因此为了进一步缩小驾驶员位移移动以及摄像头设备颠簸等因素对检测结果的影响,本发明实施例可以采用从驾驶员左前方以及从驾驶员右前方分别获取多幅驾驶员图像,再从多幅驾驶员图像中选择最能准确反映所需要信息的图像,来进行下一步检测处理。因此本发明中步骤s201具体可以包括:
获取从驾驶员左前方拍摄的多幅驾驶员图像以及从驾驶员右前方拍摄的多幅驾驶员图像;从从驾驶员左前方拍摄的多幅驾驶员图像中选择出第一图像;从从驾驶员右前方拍摄的多幅驾驶员图像中选择出第二图像。
其中,第一图像包括从驾驶员左前方拍摄的多幅驾驶员图像中眼睛宽高比最大的驾驶员图像;第二图像包括从驾驶员右前方拍摄的多幅驾驶员图像中眼睛宽高比最大的驾驶员图像。第一图像与第二图像为用于后续步骤s202的图像。
s202、根据从驾驶员左前方拍摄的驾驶员图像以及从驾驶员右前方拍摄的驾驶员图像,判断驾驶员当前是否处于疲劳状态。
具体的,在分别获取到驾驶员左前方拍摄的驾驶员图像以及驾驶员右前方拍摄的驾驶员图像之后,可以从这两种图像中提取用于疲劳检测的相关数据,从而判断驾驶员是否处于疲劳状态。
在一种实现方式中,在如图1所示驾驶员疲劳检测装置中,检测单元102用于根据从驾驶员左前方拍摄的驾驶员图像以及从驾驶员右前方拍摄的驾驶员图像,判断驾驶员当前是否处于疲劳状态。
具体的,本发明中考虑到在判断驾驶员是否处于疲劳状态时,可以利用采集到的驾驶员眼睛的宽高比进行判断。正常情况下,眼睛的宽高比在5/2左右(可通过大数据进行统计)。当驾驶员疲劳时,眼宽不变,眼高变低。当眼宽高比低于5:1时(通过大数据统计,此处5:1只是估算)此时眼睛处于闭眼的临界点,即可判断人处于疲劳状态。基于上述检测方法,本发明实施例中,步骤s202具体可以包括:
s2021、从第一图像和第二图像提取出宽高比最大的驾驶员左眼图像以及宽高比最大的驾驶员右眼图像。
其中,从驾驶员左前方拍摄的驾驶员图像包括第一图像,从驾驶员右前方拍摄的驾驶员图像包括第二图像。
在一种实现方式中,驾驶员疲劳检测装置10中检测单元102,如图4所示,包括:提取子单元1021以及检测子单元1022。其中:
提取子单元1021,用于从第一图像和第二图像提取出宽高比最大的驾驶员左眼图像以及宽高比最大的驾驶员右眼图像。
进一步的,考虑到当驾驶员的面部朝向前方时,此时第一图像中驾驶员右眼的宽高比r1<r2并且l1>l2(为保持描述的简洁、便于读者阅读,下文中将用r1、l1分别表示从驾驶员左前方拍摄的驾驶员图像即第一图像中驾驶员右眼、右眼的宽高比;用r2、l2分别表示从驾驶员右前方拍摄的驾驶员图像即第二图像中驾驶员右眼、右眼的宽高比),则必然可以确定此时:左侧摄像头拍摄的第一图像中驾驶员的左眼正对着摄像头、右眼偏离摄像头;右侧摄像头拍摄的第二图像中,驾驶员的右眼正对摄像头、左眼偏离摄像头。因此,就可以确定第一图像中的左眼图像为宽高比最大的驾驶员左眼图像,第二图像中的右眼图像为宽高比最大的驾驶员右眼图像。
然后,当驾驶员面部从正前方开始往左转到一定角度后,此时右侧摄像头拍摄的第二图像中的左眼图像也会逐渐比例失真。直至第一图像中右眼宽高比大于第二图像中右眼宽高比,即r1≥r2时,第一图像中的左右眼的宽高比例关系都比第二图像中的左右眼宽高比例关系真实。因此,此时确定第一图像中驾驶员的左右眼图像,分别为宽高比最大的驾驶员左眼图像以及宽高比最大的驾驶员右眼图像。
同理,当驾驶员面部从正前方开始往右转,直至l2≥l1时,则确定第二图像中驾驶员的左右眼图像,分别为宽高比最大的驾驶员左眼图像以及宽高比最大的驾驶员右眼图像。
因此,上述步骤s2021具体包括:
s2021a、将第一图像中驾驶员右眼的宽高比r1与第二图像中驾驶员右眼的宽高比r2进行比较,并且将第一图像中驾驶员左眼的宽高比l1与第二图像中驾驶员左眼的宽高比l2进行比较。
若r1<r2并且l1>l2,则执行s2021b-1;否则,若r1≥r2则执行s2021b-2,若l2≥l1则执行s2021b-3;
s2021b-1、若r1<r2并且l1>l2,则确定第一图像中驾驶员的左眼图像,为宽高比最大的驾驶员左眼图像;第二图像中驾驶员的右眼图像,为宽高比最大的驾驶员右眼图像。
s2021b-2、若r1≥r2,则确定第一图像中驾驶员的左右眼图像,分别为宽高比最大的驾驶员左眼图像以及宽高比最大的驾驶员右眼图像。
s2021b-3、若l2≥l1,则确定第二图像中驾驶员的左右眼图像,分别为宽高比最大的驾驶员左眼图像以及宽高比最大的驾驶员右眼图像。
具体的,在如图4所示的检测单元102中,提取子单元1021具体用于执行上述s2021a、s2021b-1、s2021b-2、s2021b-3的内容。
s2022、根据宽高比最大的驾驶员左眼图像以及宽高比最大的驾驶员右眼图像,判断驾驶员当前是否处于疲劳状态。
具体的,如图4所示检测单元102中,检测子单元1022用于根据宽高比最大的驾驶员左眼图像以及宽高比最大的驾驶员右眼图像,判断驾驶员当前是否处于疲劳状态。
本发明实施例中,考虑到由于拍摄角度的不同,拍摄出的图像中驾驶员眼睛的宽高比也是有所不同的。以驾驶员的右眼为例:当人目视正前方时,此时驾驶员的右眼正对右侧摄像头,并且偏离左侧摄像。那么这时,右侧摄像头拍摄出的图像中驾驶员右眼的图像的宽高比更大,也更准确;而左侧摄像头拍摄出的图像中驾驶员右眼的宽高比也会比较小,并且数据失真。因此,为了获取到更加真实有效的眼睛图像,以提高疲劳检测的准确性。本发明实施例中通过从计算出的数据中,选出宽高比最大的驾驶员左眼图像以及宽高比最大的驾驶员右眼图像,来判断驾驶员是否处于疲劳状态。
例如,从第一图像中计算出,驾驶员的左眼宽高比l1为9/4,右眼宽高比r1为5/2;从第二图像中计算出,驾驶员的左眼宽高比l2为5/2,右眼宽高比r2为9/4。可以看出,其中驾驶员的左眼宽高比包括5/2和9/4两组数据,右眼宽高比包括5/2和9/4两组数据。那么,选择第一图像中的右眼图像以及第二图像中的左眼图像,判断驾驶员当前是否处于疲劳状态。
具体的,在一种实现方式中,根据选择出的宽高比最大的驾驶员左眼图像和宽高比最大的驾驶员右眼图像,判断驾驶员当前是否处于疲劳状态,具体包括:将第一图像中的右眼图像和第二图像中的左眼图像合成一幅图像,再利用合成后的图像进行疲劳检测,判断驾驶员当前是否处于疲劳状态。
另外,在另一种实现方式中,还可以从宽高比最大的驾驶员左眼图像和宽高比最大的驾驶员右眼图像中提取驾驶员左右眼的宽高比参数,然后利用驾驶员左右眼的宽高比参数,判断驾驶员当前是否处于疲劳状态。
本发明提供的驾驶员疲劳检测装置及方法中,通过设置在驾驶员左右两侧前方的摄像装置捕捉驾驶员图像,再根据左右两侧的捕捉的驾驶员图像来判断驾驶员是否处于疲劳驾驶状态。这样一来,由于从左右两侧的驾驶员图像中可以获取到更加精确的用于疲劳检测的各项参数,从而提高了检测精准度,避免由于驾驶员位置移动导致摄像头无法捕捉到完整的驾驶员面部图像进而影响检测准确性的问题。
在采用集成的单元的情况下,图5示出了上述实施例中所涉及的驾驶员疲劳检测装置的另一种可能的结构示意图。其中,驾驶员疲劳检测装置30包括:处理模块301、通信模块302和存储模块303。处理模块301用于对驾驶员疲劳检测装置30的动作进行控制管理,例如,处理模块301用于支持驾驶员疲劳检测装置30执行图2中的过程s201-s202。通信模块302用于支持驾驶员疲劳检测装置与其他实体的通信。存储模块303用于存储驾驶员疲劳检测装置的程序代码和数据。
其中,处理模块301可以是处理器或控制器,例如可以是中央处理器(centralprocessingunit,cpu),通用处理器,数字信号处理器(digitalsignalprocessor,dsp),专用集成电路(application-specificintegratedcircuit,asic),现场可编程门阵列(fieldprogrammablegatearray,fpga)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本发明公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,dsp和微处理器的组合等等。通信模块302可以是收发器、收发电路或通信接口等。存储模块303可以是存储器。
当处理模块301为如图6所示的处理器,通信模块302为图6的收发器,存储模块303为图6的存储器时,本发明实施例所涉及的驾驶员疲劳检测装置可以为如下的驾驶员疲劳检测装置40。
参照图6所示,该驾驶员疲劳检测装置40包括:处理器401、收发器402、存储器403和总线404。
其中,处理器401、收发器402、存储器403通过总线404相互连接;总线404可以是外设部件互连标准(peripheralcomponentinterconnect,pci)总线或扩展工业标准结构(extendedindustrystandardarchitecture,eisa)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
处理器401可以是一个通用中央处理器(centralprocessingunit,cpu),微处理器,特定应用集成电路(application-specificintegratedcircuit,asic),或一个或多个用于控制本发明方案程序执行的集成电路。
存储器403可以是只读存储器(read-onlymemory,rom)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(randomaccessmemory,ram)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electricallyerasableprogrammableread-onlymemory,eeprom)、只读光盘(compactdiscread-onlymemory,cd-rom)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器可以是独立存在,通过总线与处理器相连接。存储器也可以和处理器集成在一起。
其中,存储器402用于存储执行本发明方案的应用程序代码,并由处理器401来控制执行。收发器402用于接收外部设备输入的内容,处理器401用于执行存储器403中存储的应用程序代码,从而实现本发明实施例中所述驾驶员疲劳检测装置中各虚拟单元的功能。
应理解,在本发明的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件程序实现时,可以全部或部分地以计算机程序产品的形式来实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或者数据中心通过有线(例如同轴电缆、光纤、数字用户线(digitalsubscriberline,dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可以用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带),光介质(例如,dvd)、或者半导体介质(例如固态硬盘(solidstatedisk,ssd))等。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。