基于可见光源和摄像头的人类眼动测算方法与流程

文档序号:17360903发布日期:2019-04-09 22:03阅读:416来源:国知局
基于可见光源和摄像头的人类眼动测算方法与流程

本发明属于计算机人工智能技术领域。



背景技术:

目前,在人类眼动测算领域,进行实验的物理成本较高:测算系统需要通过专用设备采集,甚至需要可穿戴设备进行辅助,极大的增高了非高精度实验环境的成本投入,尤其在具备大批量被测人员同时进行实验的场景下,进行简易且准确度相对高的方法尤为重要。



技术实现要素:

本发明的目的在于降低简单场景下的测算成本,通过常用设备对人眼角度、人眼转动路径和感兴趣区域标记。

基于可见光源和摄像头的人类眼动测算方法,其特征在于,是一个基于可见光源和摄像头的人类眼动测算系统依照以下步骤实现:

步骤(1),构建一个基于可见光源和摄像头的人类眼动测算系统,其中包括:图像采集摄像头、可见光源、安装有基于可见光源和摄像头的人类眼动测算软件的计算机,以下简称计算机;

图像采集摄像头为:带有基本图像采集功能的,分辨率rp大于等于2048*1080像素的,可与计算机相连,实时向计算机传送图像数据的摄像头;

可见光源为:圆形led但不限于led的可见光源,光通量为80~540流明,且亮度可以通过脉冲信号或电阻开关控制;

计算机包括:人脸识别模块、人脸角度计算模块、距离检测模块、亮度检测模块、人眼追踪模块、人眼角度模块,其中;

人脸识别模块,所述功能包括:人脸特征点检测、人脸特征点追踪、人脸特征点距离计算、部分特征点被遮挡时的数值还原、人脸检测结果矩形标记绘制,人脸特征点矢量输出;

人脸角度计算模块,所述功能包括:人脸正对摄像头水平方向的0至90度检测、人脸正对摄像头垂直方向的0至90度检测;

距离检测模块,所述功能包括:计算出人脸识别模块绘制的人脸矩形标记与模块内置模型的方差、通过距离因子乘积计算摄像头和被识别人脸间的距离;

亮度检测模块,所述功能包括:将所采集图像转化成二值图像,标记像素为255的区域简称高亮区域和值为0的区域简称阴影区域,对所采集图像进行灰度处理、对比度处理,并将结果返回;

人眼追踪模块,所述功能包括:对摄像头可视范围内的最近的平面距离的人脸中的人眼进行初始化、定位和跟踪;

人眼角度模块,所属功能包括:计算当前被检测人脸中的眼球相对人脸转动的水平和垂直方向上的角度;

步骤(2),所述基于可见光源和摄像头的人类眼动测算系统设备初始化:

步骤(2.1),将所述基于可见光源和摄像头的人类眼动测算系统中的摄像头置于被测算者前方,距离范围在50cm-300cm之间,摄像头与地面垂直距离为hc,该摄像头与被测人脸之间不能有遮挡物;

步骤(2.2),将圆形可见光源置于被测算者眼部以下,距离被测算者前方50-100cm之间;

步骤(2.3),所述基于可见光源和摄像头的人类眼动测算系统软件初始化:

步骤(2.3.1),人脸定位:所述基于可见光源和摄像头的人类眼动测算系统软件启动,通过方向梯度直方图与支持向量机特征的dlib库使得人脸识别模块实时定位人脸信息,并将定位的人脸有效特征点围成正方形区域fa2,fa为正方形边界像素和;

步骤(2.3.2),光源定位:所述基于可见光源和摄像头的人类眼动测算系统检测到人脸后,提示被检测者注视光源,通过亮度检测模块对检测到的人脸进行灰度化、增强对比度、黑色特征筛选,亮度检测模块和人眼跟踪模块对成对出现的高亮眼球反射光进行定位,若光照信息检测失败,系统提示增强或降低可见光源照度;

步骤(2.3.3),人眼定位:光照信息检测成功后提示被检测者眨眼k次,人眼追踪模块初始化人眼信息,通过高亮区域消失和出现次数,定义人眼特征的初始状态和验证人眼位置,并计算成对出现的高亮区域函数f(x),在该高亮区域中,通过opencv中的minmaxloc函数,寻找f(x)函数两个象限各自的中心或近似中心的两个点,这两个点的距离公式中,为成对高亮区域在auc曲线中实验值与实际值f(x)k的欧氏距离,取实验值auc0.1∈[0.056,0.14),若dido值在0.8至1.0范围内则双眼定位信息有效,否则无效,定位眼球信息成功后,提示成功,定位眼球信息失败后,提示被检测者再次眨眼k次;

步骤(2.3.4),人眼黑色区域标定及面积计算s0或对黑色连同区域进行像素积分:步骤(2.3.3)完成后,由人眼追踪模块进行人眼黑色成对区域标定,由人眼角度模块对标定区域进行圆形面积计算,形成黑色区域初始面积s0,

步骤(3),所述基于可见光源和摄像头的人类眼动测算系统按照以下步骤完成眼球角度测算:

步骤(3.1),人脸与摄像头之间的距离测量的dn:在步骤(2)的初始化任务完成后,人脸识别模块对所述系统采集到的人脸信息进行定位和人脸矩形绘制,距离检测模块计算该矩形面积与内置模型ζ在所采集图像的第n帧的方差,由标准8.5*11英寸a4纸在摄像头正前方24英寸即61厘米处至170英寸即431.8厘米处通过多次实验,得出当前分辨率下a4纸与相机所摄图片边缘像素比例误差平均值w,得出人脸到摄像头之间的距离其中num是人脸矩阵中心到顶点个数,rop是每个像素的弧度值,offset是弧度误差,

步骤(3.2),测算人脸水平转动角度和垂直转动角度统称αn:人脸角度计算模块通过人脸识别模块的特征点矢量检测数据,实时计算在第n帧时人脸平面与摄像头方向夹角和垂直方向夹角当且仅当时有效;

步骤(3.3),测算人眼水平绝对角度和垂直绝对角度统称βn:亮度检测模块将高亮成对区域数据实时向人眼角度模块发送,人眼追踪模块对第n帧人眼成对黑色区域进行实时标记并计算面积sn,人眼角度模块实时计算第n帧高亮成对中心点像素与第n-1帧高亮成对中心点像素的横向坐标差和纵向坐标差统称zn,该坐标差zn,眼凸系数为η,得到被测人眼绝对角度其中值是根据1500次校验的结果得出,为亚洲人眼虹膜平均直径,值为1.14cm;

步骤(3.4),测算人眼对于人脸的水平相对角度和垂直相对角度统称θn:

步骤(3.5),人眼投射区域测算:设人眼所对平面区域到人脸之间距离为摄像机到人脸之间的距离dn,设人眼初始化位置坐标为a0(0,0),若第n帧人眼坐标为第n帧人眼坐标为人眼轨迹为a0到an点像素组成的轨迹,记f(n),该轨迹像素坐标从0到n帧区间的概率密度函数中|f(n)|2最大的地方或像素最多的地方为被测人员最感兴趣区域;

本发明的优势在于降低了人类眼动测算所投入的成本和提高了部署效率。

附图说明

图1.人类眼动测算原理图

图2.人眼轨迹及热点区域示意图

图3.本发明的程序流程图

具体实施方式

被检测者坐在摄像机前方50cm-300cm处,在被检测者眼睛下方距离身体50-100cm处放置所述led光源;

通过python语言将所述功能打包为人脸识别模块、人脸角度计算模块、距离检测模块、亮度检测模块、人眼追踪模块、人眼角度模块,通过安装有主程序的计算机调用所需模块按照以下顺序执行:

1、启动软件并初始化,计算机调用摄像机数据流,识别出摄像机所摄范围内的人脸,并用矩形标记人脸范围;

2、计算机获取到人脸成功信号后,对光线信号进行捕捉,当所采集光线强度不能满足人脸信息特征点匹配时提示操作者增强或降低光照强度;

3、待光照符合采集要求后,提示被检测者眨眼,通过眨眼动作定位眼球信息,定位眼球信息获取失败,则听到提示后从新眨眼;

4、定位眼球信息后,从二值图像采集圆形黑色连通区域,该区域为眼球黑色部分,同时采集该区域内成对出现的像素灰度值为255的区域,视作眼球内的高亮对,认为时眼球中反射的led光源,此时刻计算机标定该眼球的初始角度;

5、计算人脸到摄像头的距离;

6、计算人脸水平和垂直转动角度、人眼水平和垂直的绝对转动角度和相对转动角度,通过三角形定理计算出眼球投射在摄像头所在平面上的坐标;

7、将眼睛投射到摄像头所在平面的坐标连成曲线,形成眼球扫描轨迹,将轨迹中出现频次最高的区域标定为感兴趣区域;

8、得出该被测者单位时间内的眼球所达区域和该区域停留时长,可将该数据用于课堂等场景的兴趣点评估、辅助教学等。

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