视疲劳状态的检测方法、装置以及头戴式可视设备与流程

文档序号:13420905阅读:348来源:国知局
视疲劳状态的检测方法、装置以及头戴式可视设备与流程

本发明涉及计算机领域,具体而言,涉及一种视疲劳状态的检测方法、装置以及头戴式可视设备。



背景技术:

目前,随着虚拟现实技术的迅猛发展,以头戴式可视设备(hmd)为载体(主要体现在虚拟现实(vr)眼镜)的vr游戏正在不断兴起,其为游戏玩家带来前所未有的拟真度,从而使游戏玩家能够完全沉浸在游戏世界中,使其具有很强的代入感。然而,越来越多的用户反馈,在长时间佩戴vr眼镜后,会出现眼部不适,视觉紊乱,甚至感到恶心头晕等症状。另外,不少用户在长期使用vr眼镜后,导致其近视度数明显升高,并且还会出现视网膜损伤、内斜视等眼部健康恶化症状。

而导致上述问题发生的主要原因在于:目前的hmd设备的成像方式通常采用“光学透镜+发光二极管(led)屏幕”的形式。光学元件一般设置在距离人眼2~3cm处,而led屏幕与光学元件之间的距离通常为3~6cm。因此,hmd设备呈现给人眼的虚像与人眼之间的距离大约为25~50cm。当用户长时间将视线聚焦在一个固定的距离范围内时,眼部肌肉便会极度疲劳,如果长期如此,晶状体便会失去回弹能力,继而对视力健康造成影响。

除了越来越多使用hmd设备的用户反馈眼部不适之外,hmd设备的全球顶级研发公司也逐步意识到了这个问题。htc公司在产品使用说明中声明不建议小孩使用vr设备,索尼公司也在产品使用说明中提示不要让12岁以下的用户使用playstationvr,同样三星也在自主研发的gearvr产品的免责条款中声明:“13岁及以下的孩子不应该使用gearvr,超过13岁的孩子也应该在大人的陪伴下使用这一设备;用户应该避免长时间使用gearvr,因为这有可能对用户的手眼平衡、多任务处理能力产生一定的负面影响;家长应该在孩子使用gearvr时和使用后对他们加以观察,以避免上述情况的发生。”

由此可见,当前发布的主流hmd设备在长时间使用过程中确实会对人眼健康造成伤害,然而,目前各大厂商往往仅能够通过声明和免责条款的方式来提醒用户,但却无法确保用户的视力健康。当用户感知到眼部明显不适时,往往已经在较长一段时间内处于视疲劳状态下。并且,在使用hmd设备的用户中,进行vr游戏的青少年占据了较大比例,这群用户往往缺乏自制力,视力健康对于这部分人群也格外重要。因此,如果能够在用户使用hmd设备时,及时发现其当前已经处于视疲劳状态,便可以及时地采取相对应的措施。例如:自动调整画面亮度和对比度、强制暂停游戏画面、强制退出当前应用,从而确保了用户的视力健康。因此,提供能够实时检测使用hmd设备的用户视疲劳(即由于用眼过度导致的眼部负担)状态是当前亟待解决的技术难题。

针对上述问题,相关技术中提出了以下两种解决方案:

方案一、基于人脸识别的perclos检测法

基于人脸识别的perclos检测法是目前最为常用的眼部疲劳检测方法。这种检测方法被广泛地应用于驾驶疲劳的自动化报警装置中,进而防止因疲劳所产生的交通事故。该检测法所采用的基本测量原理和步骤如下:

第一步、在复杂的实际光照条件下,利用红外主动光源和一些检测识别算法(例如:adaboost算法)输出较为完整的红外人脸图像。

第二步、通过检测识别算法定位上一步输出的红外人脸图像中的人眼位置。

第三步、利用人眼状态识别算法(例如:基于眼睑曲率、基于水平投影及比例特征)检测人眼的睁闭状态。

第四步、根据上一步得出的人眼睁闭状态统计得到如下参数:

(1)t1,其为眼睛完全睁开到闭合20%的时间;

(2)t2,其为眼睛完全睁开到闭合80%的时间;

(3)t3,其为眼睛完全睁开到下一次睁开20%的时间;

(4)t4,其为眼睛完全睁开到下一次睁开80%的时间。

第五步、根据perclos算法和上一步得到的各个参数便可以计算出人眼的疲劳系数。

第六步、当疲劳系数大于预设的阈值时,便会输出报警信号。

需要说明的是,该检测法需要使用外源的红外照明设备,以便减少在实际复杂的光照条件下可见光变化对于人脸识别的影响,从而提高系统的光照鲁棒性,增强红外人脸识别的效果。除此之外,从人眼状态识别到perclos计算疲劳系数,这些过程都需要在人脸识别的结果基础上逐帧去进行运算,从而达到实时检测疲劳状态的目的。

然而,该检测法的缺陷在于:首先,基于人脸识别的perclos检测法虽然是广泛应用于驾驶领域的眼部疲劳检测方法,但是却难以直接应用于用户在佩戴hmd设备过程中所造成的视疲劳状态检测的实际应用场景,而且也难以真正解决上述提出的“需要实时检测使用hmd设备的用户视疲劳状态”问题。

其次,基于人脸识别的perclos检测法在人眼状态检测之前,还需要对人脸进行较为准确的识别;而对于使用hmd设备的用户而言,其脸部已经被hmd设备分割为内外两个不同的空间,因此无法直接利用外源的红外光照系统来实现整个人脸图像的识别。

然后,perclos算法是根据人眼的睁闭状态来实时地判断用户的视疲劳状态。该算法所分析计算得到的疲劳是指用户处于极度劳累、注意力无法集中甚至是昏昏欲睡的状态,其适用于驾驶中的疲劳检测,但是却完全不同于在体验hmd设备时的视疲劳。用户在使用hmd设备时往往由于游戏内容或画面过于精彩,而忽略了自身视疲劳的情况,仍然保持高精神状态去体验,直到摘下设备时才会意识到自身眼部不适的症状。因此,采用perclos算法难以检测出体验hmd设备时的用户视疲劳状态。

综上所述,基于人脸识别的perclos检测法尽管能检测出用户当前的疲劳状态,但是由于其对于外源红外光照系统以及整个人脸图像识别结果的依赖,无法应用于佩戴hmd设备的用户。并且,根据perclos计算得到的疲劳系数,是针对于人体疲惫困倦的评判指标,其与用户无法及时自知的视疲劳是两个截然不同的体征表现。

方案二、眼动跟踪技术

眼动跟踪技术(或视线跟踪技术)在vr方面具有非常好的应用前景。眼动跟踪是指通过测量眼睛的凝视点的位置或者眼球相对头部的运动而实现对眼球运动的追踪。在hmd设备中,区别于头部跟踪技术,通过使用眼动跟踪技术可以跟踪用户当前的视线方向,从而为用户提供适配的vr影像。

眼动跟踪技术又可以分为基于软件的眼动跟踪技术和基于硬件的眼动跟踪技术。基于软件的眼动跟踪技术首先利用摄像机获取人脸或人眼的图像,然后再利用软件实现图像中人脸和人眼的定位与跟踪,从而估算出用户在屏幕上的凝视位置。这种方法对于图像处理的算法具有较高的要求且精度较低。基于硬件的眼动跟踪技术一般使用能够锁定眼睛的眼摄像机(又称眼动仪,其为一种能够跟踪测量眼球位置及眼球运动信息的设备),通过摄入从人眼角膜和瞳孔反射的红外线连续地记录视线变化,从而达到记录分析视线跟踪过程的目的,其精度较高。并且,基于硬件的眼动跟踪技术一般需要用户佩戴特制的头盔或使用头部固定支架,十分适用于vr实际使用场景。

在基于硬件的眼动跟踪技术中,广泛运用的实现方案“瞳孔-角膜反射向量法”可以包括如下步骤:

第一步、利用固定的眼摄像机获取眼球的图像。

第二步、通过与眼摄像机同轴的光源,得到亮瞳图像。

由于人眼的角膜可以反射光线,因此,相机中得到的人眼瞳孔图像是在光线反射后得到的虚像;当眼摄像机与人眼瞳孔在一条水平线上时,眼角膜反射的光线会沿着射出的光路返回摄像机,由此便可得到一个很亮的瞳孔图像。

第三步、通过与眼摄像机偏移的光源,得到暗瞳图像。

当眼摄像机与人眼瞳孔不在同一条水平线上时,眼角膜反射的光线几乎不会返回摄像机,由此便可得到一个很暗的瞳孔图像。

第四步、通过对亮瞳图像与暗瞳图像进行差分叠加处理,从而得到更为清晰的瞳孔图像。即,将这两个不同的人眼图像进行差分叠加,便可清晰地显示出瞳孔的位置。

第五步、利用固定的眼摄像机得到角膜发射的光点位置,并结合瞳孔位置得到角膜发射向量。

第六步、通过角膜发射向量估算用户的视线方向(角度)。

综上所述,眼动跟踪技术能够得到用户的视线移动和方向,并将其运用于hmd设备中,其所能够解决的适配性问题主要产生于玩家视线变化所需要的vr影像变化。例如:用户头部在保持不动的情况下,眼球发生移动,则看到的vr影像也会随之发生移动。但是该方案仍然无法解决用户在使用hmd设备时,由于视线长时间聚焦在一个固定的距离范围内进而导致视疲劳的问题,而且也无法通过该方案得到的用户视线移动和方向,来直接得到用户当前的视疲劳状态。

针对上述的问题,目前尚未提出有效的解决方案。



技术实现要素:

本发明至少部分实施例提供了一种视疲劳状态的检测方法、装置以及头戴式可视设备,以至少解决相关技术中所提供的疲劳检测方案对于疲劳检测具有一定滞后性,操作较为复杂且准确性有限,无法适用于vr体验中的眼部疲劳检测的技术问题。

根据本发明其中一实施例,提供了一种视疲劳状态的检测方法,包括:

根据在第一预设时长的每个单位时间内获取到的眼部参数信息分别确定用户在每个单位时间内的眼部状态检测结果,其中,眼部参数信息包括以下至少之一:眨眼频数、跳视频数;通过每个单位时间内的眼部状态检测结果确定用户在第一预设时长内处于视疲劳状态的累计时间超过第一预设阈值;向用户发出告警信息,其中,告警信息用于提示用户当前已处于视疲劳状态。

可选地,在根据每个单位时间内获取到的眼部参数信息分别确定用户在每个单位时间内的眼部状态检测结果之前,还包括:采用每个单位时间内按照预设采样频率采集到的凝视点信息集合获取用户在每个单位时间内的跳视频数和眨眼频数,其中,凝视点信息集合包括:在每个单位时间内连续采集的多个凝视点中每个凝视点的坐标信息以及对应的时间戳信息。

可选地,采用凝视点信息集合获取用户在每个单位时间内的跳视频数包括:根据每个凝视点对应的时间戳信息将多个凝视点按照采集时序进行排序;通过排序后的多个凝视点中每相邻两个凝视点的坐标信息以及用户的瞳孔中心点的坐标信息分别求取前一凝视点与瞳孔中心点之间的第一向量方向以及后一凝视点与瞳孔中心点之间的第二向量方向;采用第一向量方向和第二向量方向计算每相邻两个凝视点之间的运动弧度;通过运动弧度和预设采样频率获取角速度大于第二预设阈值的凝视点数量,并将凝视点数量记录为用户在每个单位时间内的跳视频数。

可选地,采用凝视点信息集合获取用户在每个单位时间内的眨眼频数包括:记录步骤,在当前单位时间内,如果按照预设采样频率在第一采集时刻未能采集到凝视点信息但是在第二采集时刻采集到凝视点信息,则在当前已经记录的眨眼次数的基础上新增一次;判断步骤,判断当前单位时间内的采样操作是否结束,如果否,则返回记录步骤;如果是,则继续执行确定步骤;确定步骤,将当前单位时间内记录的全部眨眼次数确定为眨眼频数。

可选地,根据每个单位时间内获取到的眼部参数信息分别确定用户在每个单位时间内的眼部状态检测结果包括以下之一:如果用户在当前单位时间内的跳视频数小于第三预设阈值,则用户在当前单位时间内处于视疲劳状态;如果用户在当前单位时间内的跳视频数大于或等于第三预设阈值且用户在当前单位时间内的眨眼频数小于第四预设阈值,则用户在当前单位时间内处于视疲劳状态;如果用户在当前单位时间内的跳视频数大于或等于第三预设阈值,用户在当前单位时间内的眨眼频数大于或等于第四预设阈值且用户在当前单位时间内的眨眼频数大于第五预设阈值,则用户在当前单位时间内处于视疲劳状态。

根据本发明其中一实施例,还提供了一种视疲劳状态的检测装置,包括:

第一确定模块,用于根据在第一预设时长的每个单位时间内获取到的眼部参数信息分别确定用户在每个单位时间内的眼部状态检测结果,其中,眼部参数信息包括以下至少之一:眨眼频数、跳视频数;第二确定模块,用于通过每个单位时间内的眼部状态检测结果确定用户在第一预设时长内处于视疲劳状态的累计时间超过第一预设阈值;告警模块,用于向用户发出告警信息,其中,告警信息用于提示用户当前已处于视疲劳状态。

可选地,上述装置还包括:获取模块,用于采用每个单位时间内按照预设采样频率采集到的凝视点信息集合获取用户在每个单位时间内的跳视频数和眨眼频数,其中,凝视点信息集合包括:在每个单位时间内连续采集的多个凝视点中每个凝视点的坐标信息以及对应的时间戳信息。

可选地,获取模块包括:排序单元,用于根据每个凝视点对应的时间戳信息将多个凝视点按照采集时序进行排序;第一计算单元,用于通过排序后的多个凝视点中每相邻两个凝视点的坐标信息以及用户的瞳孔中心点的坐标信息分别求取前一凝视点与瞳孔中心点之间的第一向量方向以及后一凝视点与瞳孔中心点之间的第二向量方向;第二计算单元,用于采用第一向量方向和第二向量方向计算每相邻两个凝视点之间的运动弧度;处理单元,用于通过运动弧度和预设采样频率获取角速度大于第二预设阈值的凝视点数量,并将凝视点数量记录为用户在每个单位时间内的跳视频数。

可选地,获取模块包括:记录单元,用于在当前单位时间内,如果按照预设采样频率在第一采集时刻未能采集到凝视点信息但是在第二采集时刻采集到凝视点信息,则在当前已经记录的眨眼次数的基础上新增一次;判断单元,判断当前单位时间内的采样操作是否结束,如果否,则返回记录单元;如果是,则继续执行确定单元;确定单元,将当前单位时间内记录的全部眨眼次数确定为眨眼频数。

可选地,第一确定模块,用于根据每个单位时间内获取到的眼部参数信息分别确定用户在每个单位时间内的眼部状态检测结果包括以下之一:如果用户在当前单位时间内的跳视频数小于第三预设阈值,则用户在当前单位时间内处于视疲劳状态;如果用户在当前单位时间内的跳视频数大于或等于第三预设阈值且用户在当前单位时间内的眨眼频数小于第四预设阈值,则用户在当前单位时间内处于视疲劳状态;如果用户在当前单位时间内的跳视频数大于或等于第三预设阈值,用户在当前单位时间内的眨眼频数大于或等于第四预设阈值且用户在当前单位时间内的眨眼频数大于第五预设阈值,则用户在当前单位时间内处于视疲劳状态。

根据本发明其中一实施例,还提供了一种存储介质,存储介质包括存储的程序,其中,在程序运行时控制存储介质所在设备执行上述视疲劳状态的检测方法。

根据本发明其中一实施例,还提供了一种处理器,处理器用于运行程序,其中,程序运行时执行上述视疲劳状态的检测方法。

根据本发明其中一实施例,还提供了一种头戴式可视设备,包括:处理器,存储器,眼部图像装置以及一个或多个程序,其中,一个或多个程序被存储在存储器中,并且被配置为由处理器执行,一个或多个程序用于执行上述视疲劳状态的检测方法。

在本发明至少部分实施例中,采用根据在第一预设时长的每个单位时间内获取到的眼部参数信息分别确定用户在每个单位时间内的眼部状态检测结果的方式,通过每个单位时间内的眼部状态检测结果确定用户在第一预设时长内处于视疲劳状态的累计时间超过第一预设阈值;向用户发出告警信息,其中,告警信息用于提示用户当前已处于视疲劳状态,达到了在hmd设备内实时检测用户视疲劳状态的目的,从而实现了通过及时输出用户处于视疲劳状态的告警信息,尽可能避免用户的眼部在长时间过度疲劳进而发觉眼部明显不适后,才感知自身处于视疲劳状态的情况发生的技术效果,进而解决了相关技术中所提供的疲劳检测方案对于疲劳检测具有一定滞后性,操作较为复杂且准确性有限,无法适用于vr体验中的眼部疲劳检测的技术问题。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是根据本发明其中一实施例的带有视疲劳检测功能的hmd设备的结构示意图;

图2是根据本发明其中一实施例的视疲劳状态的检测方法的流程图;

图3是根据本发明其中一优选实施例的视疲劳检测的结构示意图;

图4是根据本发明其中一优选实施例的人眼在获取影像信息时的眼部凝视点运动过程的示意图;

图5是根据本发明其中一优选实施例的凝视点弧度计算过程的示意图;

图6是根据本发明其中一优选实施例的视疲劳检测过程的流程图;

图7是根据本发明其中一实施例的视疲劳状态的检测装置的结构框图;

图8是根据本发明其中一优选实施例的视疲劳状态的检测装置的结构框图。

具体实施方式

为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

根据本发明其中一实施例,提供了一种视疲劳状态的检测方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

该视疲劳状态的检测方法的实施例可以在hmd设备中执行。图1是根据本发明其中一实施例的带有视疲劳检测功能的hmd设备的结构示意图。如图1所示,该hmd设备可以包括如下组成部分:

(1)a1:hmd设备外壳;

(2)a2、a3:眼部图像装置,具体到该实施例中,该眼部图像装置中的a2和a3分别表示眼摄像机(眼动仪)的底座以及仪器本身;

(3)a4:液晶显示器(lcd)显示屏,用于显示vr影像画面;

(4)a5:隔在显示屏与用户双眼中的光学元件(镜片),用于二次成像;

(5)a6:不透光材质的阻隔栏,用以避免左右lcd显示屏的影像互相干扰;

(6)a7:lcd显示屏的前端,与阻隔栏保持平齐,用以确保阻隔栏起到作用;

其中,a2、a3所表示的眼摄像机,即眼动跟踪装置,是识别并获取用户眼部信息的关键设备;当用户佩戴上hmd设备进行正常使用的过程中,眼摄像机也同时处于工作状态,其会记录用户凝视点的位置信息和相对应的时间戳。由此通过在hmd设备内植入眼动跟踪装置,在用户体验vr游戏或影像画面的同时,获取用户的眼睛状态信息,随后对获取到的眼睛状态信息进行分析后,输出相应的结果,从而在用户感知到其眼部不适之前,通过检测结果对用户视力进行健康提示。跳视频数和眨眼频数是判断人眼视疲劳状态的重要指标参数。因此,需要完成眼睛状态信息的实时获取以及跳视频数与眨眼频数的分析计算。

另外,考虑到常用的眼摄像机的工作频率通常保持在50~60hz,但由于人眼的跳视速度极快,因此,为了能够准确地捕捉到该关键信息,在优选实施例中,采用的眼摄像机需要达到200hz以上。

在上述运行环境下,本申请提供了如图2所示的视疲劳状态的检测方法。图2是根据本发明其中一实施例的视疲劳状态的检测方法的流程图,如图2所示,该方法包括如下步骤:

步骤s22,根据在第一预设时长的每个单位时间内获取到的眼部参数信息分别确定用户在每个单位时间内的眼部状态检测结果,其中,眼部参数信息包括以下至少之一:眨眼频数、跳视频数;

步骤s24,通过每个单位时间内的眼部状态检测结果确定用户在第一预设时长内处于视疲劳状态的累计时间超过第一预设阈值;

步骤s26,向用户发出告警信息,其中,告警信息用于提示用户当前已处于视疲劳状态。

相关技术中,在使用hmd设备进行vr相关体验时,会在长期使用过程中,导致用户的视力健康受损。而目前hmd设备厂商仅能够通过声明和免责条款的方式来提醒用户,但并不能确保用户合理健康地使用设备。更为严重的是,当用户感知到眼部不适时,往往已经历了较长时间的视疲劳状态。即在用户(尤其是对于青少年)感到眼部不适时,用户眼睛已经遭受到一定程度的伤害。而相关技术中所提出的解决方案,无法在用户佩戴hmd设备时采集到用户的眼部特征状态,并且具体的检测手段也无法适用于视疲劳状态检测的实际使用场景。通过上述步骤,可以采用根据在第一预设时长的每个单位时间内获取到的眼部参数信息分别确定用户在每个单位时间内的眼部状态检测结果的方式,通过每个单位时间内的眼部状态检测结果确定用户在第一预设时长内处于视疲劳状态的累计时间超过第一预设阈值;向用户发出告警信息,其中,告警信息用于提示用户当前已处于视疲劳状态,达到了在hmd设备内实时检测用户视疲劳状态的目的,从而实现了通过及时输出用户处于视疲劳状态的告警信息,尽可能避免用户的眼部在长时间过度疲劳进而发觉眼部明显不适后,才感知自身处于视疲劳状态的情况发生的技术效果,进而解决了相关技术中所提供的疲劳检测方案对于疲劳检测具有一定滞后性,操作较为复杂且准确性有限,无法适用于vr体验中的眼部疲劳检测的技术问题。

可选地,在步骤s22,根据每个单位时间内获取到的眼部参数信息分别确定用户在每个单位时间内的眼部状态检测结果之前,还可以包括以下执行步骤:

步骤s21,采用每个单位时间内按照预设采样频率(即上述眼摄像机的工作频率)采集到的凝视点信息集合获取用户在每个单位时间内的跳视频数和眨眼频数,其中,凝视点信息集合包括:在每个单位时间内连续采集的多个凝视点中每个凝视点的坐标信息以及对应的时间戳信息。

人眼的运动通常可以分为两种,其中一种是“注视”,而另一种则是“跳视”。当人眼需要获取所见影像在特定位置的具体信息时,会进入“注视”状态,此时人眼在一段时间内凝视点的向量位移较小,因为人眼需要在相对静止的状态下才能获取大量的信息。而人眼在转移采集视觉信息的对象时,会在两个注视点之间快速的跳动,此时人眼在一段时间内凝视点的向量位移较大,故称之为“跳视”。鉴于视疲劳状态的产生与“跳视”的频数呈负相关,即人眼长时间处于相对静止采集信息的状态时容易产生疲劳。除此之外,眨眼频数过低也会导致视疲劳,而人眼在疲劳后又会条件反射地增多眨眼频数。

通过在现有的hmd设备内植入眼摄像机,利用眼动跟踪技术实时检测并获取眼睛凝视点的坐标信息以及对应的时间戳,同时还可以通过计数得到判断视疲劳最为关键的参数之一:眨眼频数。随后,根据获取到的用户凝视点的坐标信息和时间信息,通过角率阈值区分人眼的注视运动(人眼的一种正常运动方式,主要用于在人眼接收到特定位置的具体影像信息时,人眼凝视点的向量位移较小)和跳视运动(同样为人眼的一种正常运动方式,主要用于在人眼转移采集视觉信息的对象时,人眼凝视点的向量位移较大),计算得到判断视疲劳最为关键的另一参数:跳视频数。最终根据第一预设时长(即上述单位时间,例如:每分钟)得到的眼部参数信息(眨眼频数和跳视频数),确定该第一预设时长内用户的视疲劳状态。最后,将用户在第一预设时长内的视疲劳状态作为独立样本,当第二预设时长(例如:一小时)内用户的视疲劳时长大于或等于预设阈值(即上述第一预设阈值,例如:30分钟)时,便输出告警信息。

图3是根据本发明其中一优选实施例的视疲劳检测的结构示意图。如图3所示,在hmd设备的正常使用过程中,可以并发地执行视疲劳的检测。即控制中心(相当于上述处理器)控制眼摄像机、跳视点识别组件以及告警组件的运作,并且眼摄像机以及跳视点识别组件通过控制中心实现用户眼睛凝视点信息的交互。

控制中心为集成在hmd设备控制芯片内,其为控制视疲劳检测相关逻辑的运算单元和存储单元的集合。跳视点识别组件为基于角率阈值识别的统计识别运算单元。告警组件主要用于接收控制中心最终通过计算确认的用户视疲劳状态信息,其作为整个视疲劳检测过程的输出接口,可以用于其他应用或hmd设备本身调用该警报信息,从而对用户的视力健康保护采取相应的措施。

可选地,在步骤s21中,采用凝视点信息集合获取用户在每个单位时间内的跳视频数可以包括以下执行步骤:

步骤s211,根据每个凝视点对应的时间戳信息将多个凝视点按照采集时序进行排序;

步骤s212,通过排序后的多个凝视点中每相邻两个凝视点的坐标信息以及用户的瞳孔中心点的坐标信息分别求取前一凝视点与瞳孔中心点之间的第一向量方向以及后一凝视点与瞳孔中心点之间的第二向量方向;

步骤s213,采用第一向量方向和第二向量方向计算每相邻两个凝视点之间的运动弧度;

步骤s214,通过运动弧度和预设采样频率获取角速度大于第二预设阈值的凝视点数量,并将凝视点数量记录为用户在每个单位时间内的跳视频数。

人眼在采集影像信息时,通常采用注视与跳视的协同交替方式进行。人眼在注视时的凝视点位移较小,以确保人眼在较为平稳的环境将影像信息映射至视网膜的中央凹(其为视网膜中视觉最敏锐的区域;当人眼处于“注视”状态时,几乎没有位移,也就是凝视点位移较小,故而人眼可以将希望查阅的信息很好地传输到中央凹),进而呈现出最清晰的视觉画面。而跳视则会使得人眼能够快速地转移影像加工的对象(即人眼通过不断地“跳视”来转移自己希望查阅的信息,然后再通过“注视”对希望查阅的信息进行影像的加工),从而使得人眼可以在短时间内遍历眼前的所有影像信息。

图4是根据本发明其中一优选实施例的人眼在获取影像信息时的眼部凝视点运动过程的示意图。如图4所示,黑点表示人眼在阅读语句时的注视情况。黑点越大表明人眼在该影像处停留的时间越长。而连接黑点的线段则表示人眼的跳视运动,进而可以通过线段的走势观察到在人眼阅读时,基本是逐行扫描进行文字信息的处理。当然,偶尔也会存在回溯的线段(图中未示出),这也符合人阅读的习惯,即先阅读重点内容再回溯细节。另外,图4中还重点描述了框线内所包含的文字的人眼运动情况细节描述,其展现了在人眼处理影像信息时,凝视点的真实分布情况。由此可见,在实心圆凝视点分布较为集中的位置是每个注视行为的集合;而空心圆凝视点则进行着距离较大的向量偏移,即表示跳视行为。

因此,人眼在进行注视运动时,凝视点的分布十分集中,不同圆点之间的向量位移较小;而人眼在进行跳视运动时,凝视点则进行着较大距离的跨越。根据这一特性,便可以实现对跳视点进行统计识别。

假设根据眼摄像机获取到的用户凝视点样本集合为s:

s={(xi,yi,ti)|i∈[0,n]}公式1

其中,x和y为凝视点的坐标信息,而t为采集凝视点时对应的时间戳。

根据参数t可以对样本集合s进行重新排序,以确保相邻的数据之间在物理意义上也是相邻的凝视点。在得到相邻凝视点的坐标信息之后,还需要对获取到的数据进行量化操作,以区分点到点之间的运动属于注视行为还是跳视行为。

由于人眼的运动是围绕着瞳孔的中心点进行的,因此,最为恰当的量化手段便是根据点与点之间的弧度来进行判断。图5是根据本发明其中一优选实施例的凝视点弧度计算过程的示意图。如图5所示,当人眼进行注视运动时,凝视点的弧度偏移较小;反之,当人眼进行跳视运动时,凝视点的弧度偏移较大。

假设已经排序完毕的凝视点样本集合s,那么,针对[0,n-1]的凝视点元素(即,总共选取[0,n]个数据点;但是公式的计算对象均为当前凝视点ki和下一个凝视点ki+1进行操作,而kn并不存在下一个凝视点,因此只需针对[0,n-1]进行公式运算),依次采用下述公式计算其运动弧度为:

其中,k值表示相应凝视点与瞳孔中心点(z,w)的向量方向,即采用如下公式表示:

在通常情况下,人眼在进行注视运动时,眼睛的角速度小于100度/秒。因此,对每个凝视点,则只需要考量下述公式的计算结果与数值0的比较结果:

其中,f为前述眼摄像机的工作(采样)频率,其需要高于200hz。

如果上述公式的计算结果大于0,则表明该凝视点后续将执行跳视行为,否则,便是执行注视行为。

对排序后的集合s依次遍历计算凝视点元素的角率,并与阈值进行比对,由此便可以统计得到跳视频数。即,针对采样的[0,n]个凝视点,首先根据每个凝视点采样时的时间戳信息,对这[0,n]个凝视点进行排序;然后,针对排序后的[0,n]个凝视点,仅针对[0,n-1]个凝视点进行上述公式2的运算和判断,分别是计算运动弧度和角速度;最后,再对计算结果中角速度大于100(即上述第二预设阈值)的凝视点进行计数,进而得到跳视频数。

可选地,在步骤s21中,采用凝视点信息集合获取用户在每个单位时间内的眨眼频数可以包括以下执行步骤:

步骤s215,在当前单位时间内,如果按照预设采样频率在第一采集时刻未能采集到凝视点信息但是在第二采集时刻采集到凝视点信息,则在当前已经记录的眨眼次数的基础上新增一次;

步骤s216,判断当前单位时间内的采样操作是否结束,如果否,则返回步骤s215;如果是,则继续执行步骤s217;

步骤s217,将当前单位时间内记录的全部眨眼次数确定为眨眼频数。

在眼摄像机获取到用户眼睛的凝视点信息的同时,由于本发明至少部分实施例中所采用的眼摄像机工作频率较高,当用户进行眨眼运动时,眼摄像机会对整个眨眼运动进行多次数据采集。换言之,会在眨眼运动中的闭眼阶段去尝试采集数据,虽然此时是无法获取到眼睛的凝视点相关信息,但也正由于没有获取到此类信息,可以将其作为计数眨眼频数的技术手段。

例如:假设用户在t1时刻执行闭眼动作,因此,眼摄像机在t1时刻未能采集到凝视点信息。而用户在与t1时刻相邻的下一t2时刻执行睁眼动作,因此,眼摄像机在t2时刻采集到凝视点信息,则由此可以确定在t1-t2时刻之间执行过眨眼动作,故而需要将眨眼计数加1。

可选地,在步骤s22中,根据每个单位时间内获取到的眼部参数信息分别确定用户在每个单位时间内的眼部状态检测结果包括以下方式之一:

方式一、如果用户在当前单位时间内的跳视频数小于第三预设阈值,则用户在当前单位时间内处于视疲劳状态;

方式二、如果用户在当前单位时间内的跳视频数大于或等于第三预设阈值且用户在当前单位时间内的眨眼频数小于第四预设阈值,则用户在当前单位时间内处于视疲劳状态;

方式三、如果用户在当前单位时间内的跳视频数大于或等于第三预设阈值,用户在当前单位时间内的眨眼频数大于或等于第四预设阈值且用户在当前单位时间内的眨眼频数大于第五预设阈值,则用户在当前单位时间内处于视疲劳状态。

图6是根据本发明其中一优选实施例的视疲劳检测过程的流程图。如图6所示,通过对每分钟内的凝视点信息进行跳视点识别判断,得到每分钟内的跳视频数,再配合先前得到的眨眼频数,便可以判断当前分钟内用户的视疲劳状态。考虑到正常人在普通用眼时,每分钟眨眼次数为10~15次,因此,在本该实施例中,设置眨眼频数的下限为5次、上限为20次,即图3中的b(即上述第四预设阈值)取值为5、c(即上述第五预设阈值)取值为20。当眨眼频数超出上述预设数值范围时,则认定当前用户处于视疲劳状态。另外,考虑到如果人眼每分钟的跳视次数小于200次时,则人眼处于较重的负担压力下,因此图3中的a(即上述第三预设阈值)取值为200。

考虑到每分钟内的视疲劳检测结果存在一定的偶然因素,为此,可以采用一个小时作为判断的样本量,即在采集到60个视疲劳检测样本后,再进行最终的视疲劳状态判断。即,如果当用户在一个小时内超过30分钟被判定为视疲劳状态时,则会输出用户处于视疲劳状态的告警信息。

根据本发明其中一实施例,还提供了一种视疲劳状态的检测装置。图7是根据本发明其中一实施例的视疲劳状态的检测装置的结构框图。如图7所示,该装置包括:第一确定模块10,用于根据在第一预设时长的每个单位时间内获取到的眼部参数信息分别确定用户在每个单位时间内的眼部状态检测结果,其中,眼部参数信息包括以下至少之一:眨眼频数、跳视频数;第二确定模块20,用于通过每个单位时间内的眼部状态检测结果确定用户在第一预设时长内处于视疲劳状态的累计时间超过第一预设阈值;告警模块30,用于向用户发出告警信息,其中,告警信息用于提示用户当前已处于视疲劳状态。

可选地,图8是根据本发明其中一优选实施例的视疲劳状态的检测装置的结构框图。如图8所示,上述装置还可以包括:获取模块40,用于采用每个单位时间内按照预设采样频率采集到的凝视点信息集合获取用户在每个单位时间内的跳视频数和眨眼频数,其中,凝视点信息集合包括:在每个单位时间内连续采集的多个凝视点中每个凝视点的坐标信息以及对应的时间戳信息。

可选地,获取模块40可以包括:排序单元(图中未示出),用于根据每个凝视点对应的时间戳信息将多个凝视点按照采集时序进行排序;第一计算单元(图中未示出),用于通过排序后的多个凝视点中每相邻两个凝视点的坐标信息以及用户的瞳孔中心点的坐标信息分别求取前一凝视点与瞳孔中心点之间的第一向量方向以及后一凝视点与瞳孔中心点之间的第二向量方向;第二计算单元(图中未示出),用于采用第一向量方向和第二向量方向计算每相邻两个凝视点之间的运动弧度;处理单元(图中未示出),用于通过运动弧度和预设采样频率获取角速度大于第二预设阈值的凝视点数量,并将凝视点数量记录为用户在每个单位时间内的跳视频数。

可选地,获取模块40可以包括:记录单元(图中未示出),用于在当前单位时间内,如果按照预设采样频率在第一采集时刻未能采集到凝视点信息但是在第二采集时刻采集到凝视点信息,则在当前已经记录的眨眼次数的基础上新增一次;判断单元(图中未示出),判断当前单位时间内的采样操作是否结束,如果否,则返回记录单元;如果是,则继续执行确定单元;确定单元(图中未示出),将当前单位时间内记录的全部眨眼次数确定为眨眼频数。

可选地,第一确定模块10,用于根据每个单位时间内获取到的眼部参数信息分别确定用户在每个单位时间内的眼部状态检测结果包括以下之一:如果用户在当前单位时间内的跳视频数小于第三预设阈值,则用户在当前单位时间内处于视疲劳状态;如果用户在当前单位时间内的跳视频数大于或等于第三预设阈值且用户在当前单位时间内的眨眼频数小于第四预设阈值,则用户在当前单位时间内处于视疲劳状态;如果用户在当前单位时间内的跳视频数大于或等于第三预设阈值,用户在当前单位时间内的眨眼频数大于或等于第四预设阈值且用户在当前单位时间内的眨眼频数大于第五预设阈值,则用户在当前单位时间内处于视疲劳状态。

根据本发明其中一实施例,还提供了一种存储介质,存储介质包括存储的程序,其中,在程序运行时控制存储介质所在设备执行上述视疲劳状态的检测方法。上述存储介质可以包括但不限于:u盘、只读存储器(rom)、随机存取存储器(ram)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。

根据本发明其中一实施例,还提供了一种处理器,处理器用于运行程序,其中,程序运行时执行上述视疲劳状态的检测方法。上述处理器可以包括但不限于:微处理器(mcu)或可编程逻辑器件(fpga)等的处理装置。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1