一种基于双目摄像头的视线测量方法和装置
技术领域
本发明涉及视线追踪领域,尤其涉及一种基于双目摄像头的视线测量方法和装置。
背景技术
目前视线追踪技术主要利用电子、光学、机械以及计算机算法等方法以获取受试者的当前观察方向。视线追踪技术被广泛应用于虚拟现实,疲劳检测、人机交互等多个领域。现有技术主要通过机器学习算法进行视线追踪,但是现有技术普遍需要收集大量的视线数据并且前提是测量过程中受试者不能移动,因此局限性大,场景的布置也极为繁琐。
发明内容
本发明提供了一种基于双目摄像头的视线测量方法和装置,以解决获取受试者视线观察方向的同时能追踪受试者的技术问题。
为了解决上述技术问题,本发明实施例提供了一种基于双目摄像头的视线测量方法,包括:
通过第一摄像头拍摄第一照片,通过第二摄像头拍摄第二照片;所述第一照片和所述第二照片中均包括受试者的人脸和标定板;其中,所述双目摄像头为所述第一摄像头和所述第二摄像头;
检测所述第一照片中第一人脸和所述第二照片中第二人脸,根据所述第一人脸和所述第二人脸,获得所述第一人脸的第一瞳孔的第一信息和所述第二人脸的第二瞳孔的第二信息;
通过第三摄像头拍摄所述标定板,获取所述标定板相对于所述第三摄像头的旋转矩阵和平移向量,得到所述观测点在所述标定板的坐标系中的第三坐标;
根据所述第三坐标,结合所述第一信息和所述第二信息,获得视线的向量。
作为优选方案,所述通过第三摄像头拍摄所述标定板,获取所述标定板相对于所述第三摄像头的旋转矩阵和平移向量,具体为:
通过第三摄像头拍摄所述标定板,识别所述标定板中的阿鲁科标记;根据所述阿鲁科标记,得到所述标定板的坐标系原点相对于所述第三摄像头的坐标系原点的旋转矩阵和平移向量。
作为优选方案,所述根据所述第一人脸和所述第二人脸,获得所述第一人脸的第一瞳孔的第一信息和所述第二人脸的第二瞳孔的第二信息,具体为:
根据所述第一人脸和所述第二人脸,获得所述第一瞳孔在所述第一人脸中的第一像素坐标和第一向量,并获得所述第二瞳孔在所述第二人脸中的第二像素坐标和第二向量;其中,所述第一向量为所述第一摄像头的坐标系内所述第一摄像头与所述第一瞳孔相对位置向量;所述第二向量为所述第二摄像头的坐标系内所述第二摄像头与所述第二瞳孔相对位置向量。
作为优选方案,所述根据所述第三坐标,结合所述第一信息和所述第二信息,获得视线的向量,具体为:
根据第一像素坐标和第一向量,获得第一瞳孔在所述标定板的坐标系中的第一瞳孔坐标;
根据第二像素坐标和第二向量,获得第二瞳孔在所述标定板的坐标系中的第二瞳孔坐标;
根据所述第三坐标,结合所述第一瞳孔坐标和所述第二瞳孔坐标的中值,获得视线的向量。
作为优选方案,所述根据所述第一人脸和所述第二人脸,获得所述第一瞳孔在所述第一人脸中的第一像素坐标和第一向量,并获得所述第二瞳孔在所述第二人脸中的第二像素坐标和第二向量,具体为:
根据所述第一人脸,通过机器学习提取所述第一人脸中的所有的第一特征点,计算获得所述第一瞳孔在所述第一人脸中的第一像素坐标和第一向量;其中,所述第一特征点包括所述第一瞳孔;
根据所述第二人脸,通过机器学习提取所述第二人脸中的所有的第二特征点,计算获得所述第二瞳孔在所述第二人脸中的第二像素坐标和第二向量;其中,所述第二特征点包括所述第二瞳孔。
本发明还提供了一种基于双目摄像头的视线测量装置,包括拍摄模块、检测模块、获取模块和视线向量模块;其中,
所述拍摄模块用于通过第一摄像头拍摄第一照片,通过第二摄像头拍摄第二照片;所述第一照片和所述第二照片中均包括受试者的人脸和标定板;其中,所述拍摄模块包括所述第一摄像头和所述第二摄像头;其中,所述双目摄像头为所述第一摄像头和所述第二摄像头;
所述检测模块用于检测所述第一照片中第一人脸和所述第二照片中第二人脸,根据所述第一人脸和所述第二人脸,获得所述第一人脸的第一瞳孔的第一信息和所述第二人脸的第二瞳孔的第二信息;
所述获取模块用于通过第三摄像头拍摄所述标定板,获取所述标定板相对于所述第三摄像头的旋转矩阵和平移向量,得到观测点在所述标定板的坐标系中的第三坐标;
所述视线向量模块用于根据所述第三坐标,结合所述第一信息和所述第二信息,获得视线的向量。
作为优选方案,所述获取模块通过第三摄像头拍摄所述标定板,获取所述标定板相对于所述第三摄像头的旋转矩阵和平移向量,具体为:
所述获取模块通过第三摄像头拍摄所述标定板,识别所述标定板中的阿鲁科标记;根据所述阿鲁科标记,得到所述标定板的坐标系原点相对于所述第三摄像头的坐标系原点的旋转矩阵和平移向量。
作为优选方案,所述检测模块根据所述第一人脸和所述第二人脸,获得所述第一人脸的第一瞳孔的第一信息和所述第二人脸的第二瞳孔的第二信息,具体为:
所述检测模块根据所述第一人脸和所述第二人脸,获得所述第一瞳孔在所述第一人脸中的第一像素坐标和第一向量,并获得所述第二瞳孔在所述第二人脸中的第二像素坐标和第二向量;其中,所述第一向量为所述第一摄像头的坐标系内所述第一摄像头与所述第一瞳孔相对位置向量;所述第二向量为所述第二摄像头的坐标系内所述第二摄像头与所述第二瞳孔相对位置向量。
作为优选方案,所述视线向量模块根据所述第三坐标,结合所述第一信息和所述第二信息,获得视线的向量,具体为:
所述视线向量模块根据第一像素坐标和第一向量,获得第一瞳孔在所述标定板的坐标系中的第一瞳孔坐标;
根据第二像素坐标和第二向量,获得第二瞳孔在所述标定板的坐标系中的第二瞳孔坐标;
根据所述第三坐标,结合所述第一瞳孔坐标和所述第二瞳孔坐标的中值,获得视线的向量。
作为优选方案,所述检测模块根据所述第一人脸和所述第二人脸,获得所述第一瞳孔在所述第一人脸中的第一像素坐标和第一向量,并获得所述第二瞳孔在所述第二人脸中的第二像素坐标和第二向量,具体为:
所述检测模块根据所述第一人脸,通过机器学习提取所述第一人脸中的所有的第一特征点,计算获得所述第一瞳孔在所述第一人脸中的第一像素坐标和第一向量;其中,所述第一特征点包括所述第一瞳孔;
根据所述第二人脸,通过机器学习提取所述第二人脸中的所有的第二特征点,计算获得所述第二瞳孔在所述第二人脸中的第二像素坐标和第二向量;其中,所述第二特征点包括所述第二瞳孔。
相比于现有技术,本发明实施例具有如下有益效果:
本发明实施例提供了一种基于双目摄像头的视线测量方法和装置,所述方法包括:通过第一摄像头拍摄第一照片,通过第二摄像头拍摄第二照片;所述第一照片和所述第二照片中均包括受试者的人脸和标定板;其中,所述双目摄像头为所述第一摄像头和所述第二摄像头;检测所述第一照片中第一人脸和所述第二照片中第二人脸,根据所述第一人脸和所述第二人脸,获得所述第一人脸的第一瞳孔的第一信息和所述第二人脸的第二瞳孔的第二信息;通过第三摄像头拍摄所述标定板,获取所述标定板相对于所述第三摄像头的旋转矩阵和平移向量,得到观测点在所述标定板的坐标系中的第三坐标;根据所述第三坐标,结合所述第一信息和所述第二信息,获得视线的向量。本发明相对于现有技术,基于双目摄像头获取瞳孔在标定板坐标系中的坐标,结合观测点的坐标,实现了实时地对多种姿态视线进行测量,同时能实时地跟踪到受试者的瞳孔移动,对场景的布置较为简单,节约了大量的布置成本。
附图说明
图1:为本发明基于双目摄像头的视线测量方法提供的一种实施例的流程示意图。
图2:为本发明基于双目摄像头的视线测量方法提供的一种实施例的原理示意图。
图3:为本发明基于双目摄像头的视线测量方法提供的一种实施例的标定板的示意图。
图4:为本发明基于双目摄像头的视线测量方法提供的一种实施例的阿鲁科标记的示意图。
图5:为本发明基于双目摄像头的视线测量装置提供的一种实施例的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一:
请参照图1,图1为本发明实施例提供的一种基于双目摄像头的视线测量方法,包括步骤S1至步骤S4;其中,
步骤S1,通过第一摄像头拍摄第一照片,通过第二摄像头拍摄第二照片;所述第一照片和所述第二照片中均包括受试者的人脸和标定板;其中,所述双目摄像头为所述第一摄像头和所述第二摄像头。
在本实施例中,设置标定板与观测区域之间为1.1米的距离,观测区域为一张表格,表格横框线和竖框线的交点即为观测点,也是测量视线过程中受试者注视的点。受试者背对标定板,面向观测区域,所述第一摄像头B和所述第二摄像头C(B和C即双目摄像头)设置于观测区域和受试者之间,朝向受试者,可同时拍摄到标定板和人脸,并且所述第一摄像头B和所述第二摄像头C之间相距一定距离,产生视差。
步骤S2,检测所述第一照片中第一人脸和所述第二照片中第二人脸,根据所述第一人脸和所述第二人脸,获得所述第一人脸的第一瞳孔的第一信息和所述第二人脸的第二瞳孔的第二信息。
在本实施例中,参照图2,所述第一摄像头B和所述第二摄像头C同时拍摄受试者一张照片。第一摄像头B获取的人脸为第一人脸,第二摄像头C获取的人脸为第二人脸。
根据所述第一人脸和所述第二人脸,通过机器学习提取所述第一人脸中的所有第一特征点和所述第二人脸中的所有特征点(特征点包括眼睛、鼻尖、嘴、眉毛以及人脸各部件轮廓点)。在所有特征点中,瞳孔为点E,所述第一摄像头B拍摄到的瞳孔为E
b,所述第二摄像头C拍摄到的瞳孔为E
c,点E
b和点E
c为点E的近似,直线O
bE
b与O
cE
c近似相交于点E,E
b与E
c为直线O
bE
b与O
cE
c两直线上最近的两点。获得所述第一瞳孔E
b在所述第一人脸中的第一像素坐标(x
b,y
b)和第一向量
=(x
b,y
b,1)(第一摄像头B坐标系内与向量
同方向),以及所述第二瞳孔E
c在所述第二人脸中的第二像素坐标(x
c,y
c)和第二向量
=(x
c,y
c,1)(第二摄像头C坐标内与向量
同方向)。也即,所述第一向量为所述第一摄像头的坐标系内所述第一摄像头与所述第一瞳孔相对位置向量;所述第二向量为所述第二摄像头的坐标系内所述第二摄像头与所述第二瞳孔相对位置向量。
由此,进一步地,可得
,
为
在标定板坐标系中的表示,具体为:
解得:
由此可以得到第一瞳孔坐标Eb和第二瞳孔坐标Ec:
步骤S3,通过第三摄像头拍摄所述标定板,获取所述标定板相对于所述第三摄像头的旋转矩阵和平移向量,得到观测点在所述标定板的坐标系中的第三坐标。
在本实施例中,对于单个观测点:通过第三摄像头A拍摄所述标定板(参照图3),识别所述标定板中的阿鲁科标记(参照图4,阿鲁科标记为黑色正方形边框与内部二进制编码组成的图案。内部的矩阵决定了阿鲁科标记的标识,黑色的边框有利于快速检测到阿鲁科标记,而二进制编码可以验证标识。标识与阿鲁科标记的图案一一对应);根据所述阿鲁科标记,得到所述标定板的坐标系原点相对于所述第三摄像头的坐标系原点的旋转矩阵R和平移向量
。则第三摄像头A在所述标定板的坐标系中的坐标为:
由于观测区域在同一平面,因此取观测区域上三个不共线的观测点计算出所有观测点的坐标。取P0(0,0),P1(1,0)和P2(0,1)三个点在标定板的坐标系中的坐标分别为T0,T1和T2。则观测区域在第r行c列的观测点在标定板坐标系中的坐标Trc可由下式得出:
Trc=T0+r(T1-T0)+c(T2-T0);
步骤S4,根据所述第三坐标,结合所述第一信息和所述第二信息,获得视线的向量。
具体地,根据第三坐标T,结合根据所述第一信息和所述第二信息计算获得的瞳孔E的坐标,可得视线向量
:
相应的,参照图5,本发明还提供了一种基于双目摄像头的视线测量装置,包括拍摄模块101、检测模块102、获取模块103和视线向量模块104;其中,
所述拍摄模块101用于通过第一摄像头拍摄第一照片,通过第二摄像头拍摄第二照片;所述第一照片和所述第二照片中均包括受试者的人脸和标定板;其中,所述拍摄模块包括所述第一摄像头和所述第二摄像头;其中,所述双目摄像头为所述第一摄像头和所述第二摄像头;
所述检测模块102用于检测所述第一照片中第一人脸和所述第二照片中第二人脸,根据所述第一人脸和所述第二人脸,获得所述第一人脸的第一瞳孔的第一信息和所述第二人脸的第二瞳孔的第二信息;
所述获取模块103用于通过第三摄像头拍摄所述标定板,获取所述标定板相对于所述第三摄像头的旋转矩阵和平移向量,得到观测点在所述标定板的坐标系中的第三坐标;
所述视线向量模块104用于根据所述第三坐标,结合所述第一信息和所述第二信息,获得视线的向量。
在本实施例中,所述获取模块103通过第三摄像头拍摄所述标定板,获取所述标定板相对于所述第三摄像头的旋转矩阵和平移向量,具体为:
所述获取模块103通过第三摄像头拍摄所述标定板,识别所述标定板中的阿鲁科标记;根据所述阿鲁科标记,得到所述标定板的坐标系原点相对于所述第三摄像头的坐标系原点的旋转矩阵和平移向量。
在本实施例中,所述检测模块102根据所述第一人脸和所述第二人脸,获得所述第一人脸的第一瞳孔的第一信息和所述第二人脸的第二瞳孔的第二信息,具体为:
所述检测模块102根据所述第一人脸和所述第二人脸,获得所述第一瞳孔在所述第一人脸中的第一像素坐标和第一向量,并获得所述第二瞳孔在所述第二人脸中的第二像素坐标和第二向量;其中,所述第一向量为所述第一摄像头的坐标系内所述第一摄像头与所述第一瞳孔相对位置向量;所述第二向量为所述第二摄像头的坐标系内所述第二摄像头与所述第二瞳孔相对位置向量。
在本实施例中,所述视线向量模块104根据所述第三坐标,结合所述第一信息和所述第二信息,获得视线的向量,具体为:
所述视线向量模块104根据第一像素坐标和第一向量,获得第一瞳孔在所述标定板的坐标系中的第一瞳孔坐标;
根据第二像素坐标和第二向量,获得第二瞳孔在所述标定板的坐标系中的第二瞳孔坐标;
根据所述第三坐标,结合所述第一瞳孔坐标和所述第二瞳孔坐标的中值,获得视线的向量。
在本实施例中,所述检测模块102根据所述第一人脸和所述第二人脸,获得所述第一瞳孔在所述第一人脸中的第一像素坐标和第一向量,并获得所述第二瞳孔在所述第二人脸中的第二像素坐标和第二向量,具体为:
所述检测模块102根据所述第一人脸,通过机器学习提取所述第一人脸中的所有的第一特征点,计算获得所述第一瞳孔在所述第一人脸中的第一像素坐标和第一向量;其中,所述第一特征点包括所述第一瞳孔;
根据所述第二人脸,通过机器学习提取所述第二人脸中的所有的第二特征点,计算获得所述第二瞳孔在所述第二人脸中的第二像素坐标和第二向量;其中,所述第二特征点包括所述第二瞳孔。
相比于现有技术,本发明实施例具有如下有益效果:
本发明实施例提供了一种基于双目摄像头的视线测量方法和装置,所述方法包括:通过第一摄像头拍摄第一照片,通过第二摄像头拍摄第二照片;所述第一照片和所述第二照片中均包括受试者的人脸和标定板;其中,所述双目摄像头为所述第一摄像头和所述第二摄像头;检测所述第一照片中第一人脸和所述第二照片中第二人脸,根据所述第一人脸和所述第二人脸,获得所述第一人脸的第一瞳孔的第一信息和所述第二人脸的第二瞳孔的第二信息;通过第三摄像头拍摄所述标定板,获取所述标定板相对于所述第三摄像头的旋转矩阵和平移向量,得到观测点在所述标定板的坐标系中的第三坐标;根据所述第三坐标,结合所述第一信息和所述第二信息,获得视线的向量。本发明相对于现有技术,基于双目摄像头获取瞳孔在标定板坐标系中的坐标,结合观测点的坐标,实现了实时地对多种姿态视线进行测量,同时能实时地跟踪到受试者的瞳孔移动,对场景的布置较为简单,节约了大量的布置成本。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步的详细说明,应当理解,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围。特别指出,对于本领域技术人员来说,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。