基于三维眼球模型的眼球参数标定和视线方向跟踪方法与流程

文档序号:17923575发布日期:2019-06-15 00:16阅读:261来源:国知局
基于三维眼球模型的眼球参数标定和视线方向跟踪方法与流程

本发明涉及计算机视觉和图形学技术领域,特别涉及一种基于三维眼球模型的眼球参数标定和视线方向跟踪方法。



背景技术:

人眼视线跟踪是计算机视觉与计算机图形学领域中一个重要且基础的问题,它在人机交互、虚拟现实及增强现实等领域也有非常广泛的应用。例如,在计算机视觉中,人眼在屏幕上的注视点可用于完成各种人机交互功能;在增强现实中,视线方向可用于调整显示的内容以产生更佳的真实感。正是由于眼睛能够表达人类丰富的情感,人眼视线跟踪的研究具有极高的科研和应用价值。

在计算机图形学和计算机视觉领域,高精度的视线方向跟踪一直是一个重要且具有挑战性的问题。由于在大多数方法使用的彩色视频中无法拍摄到完整的眼球,其大部分被眼皮遮挡,求解出的视线方向也通常会与真实眼球的成像特性有很大差异。



技术实现要素:

本发明旨在至少在一定程度上解决相关技术中的技术问题之一。

为此,本发明的目的在于提出一种基于三维眼球模型的眼球参数标定和视线方向跟踪方法。

为达到上述目的,本发明提出了基于三维眼球模型的眼球参数标定和视线方向跟踪方法,包括以下步骤:s1,将人物视点固定在三维空间中并拍摄脸部视频,利用所述脸部视频标定人物的眼睛参数,并同时估算所述人物视点的位置;s2,利用所述眼睛参数计算人物任意其他面部视频中的视点位置获得视线方向,同时对所述视线方向进行跟踪。

本发明实施例的基于三维眼球模型的眼球参数标定和视线方向跟踪方法,利用三维眼球模型与眼睛图像的对应投影关系建立能量函数,标定眼睛参数,建立一个与真实情况更接近的视线方向模型,从而实现高精度的视线方向跟踪。

另外,根据本发明上述实施例的基于三维眼球模型的眼球参数标定和视线方向跟踪方法还可以具有以下附加的技术特征:

进一步地,在本发明的一个实施例中,所述眼睛参数包括眼球相对头部的位置,眼球光轴与视轴间的夹角和虹膜大小。

进一步地,在本发明的一个实施例中,标定所述眼球参数时,在使用的所述脸部视频中,要求人物始终注视空间中的一个固定位置。

进一步地,在本发明的一个实施例中,所述步骤s1进一步包括:s101,检测所述脸部视频中每帧的面部特征点,估算头部的空间位姿,以得到所述人脸视频每帧中眼球在三维空间中的位置;s102,利用眼球在三维空间中的位置及视点位置计算视频每帧中的视线方向,并通过所述眼球光轴与视轴间的夹角得到每帧中的光轴,以得到第一眼球转动信息;s103,根据所述第一眼球转动信息结合相机参数矩阵,利用灰度差异建立所有视频帧的总能量函数,优化求解所有变量。

进一步地,在本发明的一个实施例中,所述步骤s103中,利用虹膜边界顶点的灰度值与图像中对应像素的灰度值之间间的差异建立起能量函数,其中,能量越低,三维眼球的投影与二维图像越一致。

进一步地,在本发明的一个实施例中,所述人脸视频每帧中眼球在三维空间中的位置为所述眼球相对头部的位置和所述头部的空间位姿的叠加。

进一步地,在本发明的一个实施例中,所述视线方向为所述人脸视频每帧中眼球在三维空间中的位置与所述视点位置的连线。

进一步地,在本发明的一个实施例中,s201,检测所述脸部视频中中某一帧的面部特征点,估算头部的空间位姿,以得到所述人脸视频某一帧中眼球在三维空间中的位置;

s202,利用眼球在三维空间中的位置及视点位置计算当前帧中的视线方向,并通过所述步骤s1求得的当前帧的光轴,以得到第二眼球转动信息;

s203,根据所述第二眼球转动信息结合相机参数矩阵,将三维眼球模型上虹膜边缘的顶点投影到二维图像中,利用灰度差异建立当前帧的能量函数,优化求解视点位置,并根据所述视点位置最终确定当前帧的视线方向进行跟踪。

本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。

附图说明

本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:

图1为根据本发明实施例的基于三维眼球模型的眼球参数标定和视线方向跟踪方法流程图;

图2为根据本发明实施例的基于三维眼球模型的眼球参数标定和视线方向跟踪方法总体流程图;

图3为根据本发明实施例的为一段视频中的两帧及以虹膜边缘投影(眼睛椭圆部分)表示的视线方向跟踪结果。

具体实施方式

下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。

下面参照附图描述根据本发明实施例提出的基于三维眼球模型的眼球参数标定和视线方向跟踪方法。

图1是本发明一个实施例的基于三维眼球模型的眼球参数标定和视线方向跟踪方法流程图。

如图1所示,该基于三维眼球模型的眼球参数标定和视线方向跟踪方法包括以下步骤:

在步骤s1中,将人物视点固定在三维空间中并拍摄脸部视频,利用脸部视频标定人物的眼睛参数,并同时估算人物视点的位置。

其中,眼睛参数包括眼球相对头部的位置,眼球光轴与视轴间的夹角和虹膜大小。

需要注意的是,标定人物的眼球参数时,在使用的脸部视频中,要求人物始终注视空间中的一个固定位置。

换句话说,令人物视点固定在三维空间中一个特定位置,并拍摄相应的脸部视频,根据该视频所有帧中三维眼球模型与其在二维图像中投影的灰度差异建立能量函数,优化求解该人物的眼睛参数,并同时估算视点的位置。

进一步地,如图2所示,在本发明的一个实施例中,步骤s1包括:

s101,检测脸部视频中每帧的面部特征点,估算头部的空间位姿,以得到人脸视频每帧中眼球在三维空间中的位置。

也就是说,固定所拍摄人物视点的面部视频采集。具体而言,由于彩色视频缺乏深度信息,因此本发明实施例使用视频序列的所有帧进行眼球参数标定,使标定结果更加准确。但在一般视频序列中,人物的视线方向在一直变化,视点位置也随之移动,若在参数标定时估计每一帧的视点位置,问题的复杂度会随着所使用视频帧数的增加而急剧增大。因此,本发明实施例在标定人物眼球参数时使用的视频中,要求人物始终注视空间中的一个固定位置,即视点固定,从而在眼球参数的基础上问题仅增加了一个视点位置的三个自由度。同时,在标定使用的视频中还要求人物头部有一定的运动,从而使得眼睛图像的种类更加丰富。

s102,利用眼球在三维空间中的位置及视点位置计算视频每帧中的视线方向,并通过眼球光轴与视轴间的夹角得到每帧中的光轴,以得到第一眼球转动信息。

换言之,对三维空间中眼球位置进行表示。面部二维特征点检测和相应的面部三维重建方法可以提供视频中每一帧的头部位姿。由于眼球相对于头的位置固定,因此视频每帧中眼球在三维空间中的位置可以表示为眼球在头中的相对位置和头部位姿的叠加。

s103,根据第一眼球转动信息结合相机参数矩阵,利用灰度差异建立所有视频帧的总能量函数,优化求解所有变量。

需要说明的是,步骤s103利用虹膜边界顶点的灰度值与图像中对应像素的灰度值之间间的差异建立起能量函数,其中,能量越低,三维眼球的投影与二维图像越一致。

其中,本发明实施例使用了如下近似的三维眼球模型,将眼球近似为一个球体,球心和瞳孔中心的连线为眼球的光轴。在真实的眼睛中,人的视线方向通常不是眼球的光轴方向,而是与光轴间有一个固定的夹角(即光视轴夹角)。本发明实施例认为视轴与光轴相交于眼球中心,且无论眼球如何转动两轴间始终保持着固定的夹角。

需要说明的是,视线方向近似表示为眼球在三维空间中的位置与视点位置的连线。因此,在步骤s102中得到眼球在三维空间中的位置后,视轴(即视线方向)即可表示为眼球位置与视点位置的连线。同时,光轴与视轴有着固定的夹角,即眼球的光轴可用视轴方向和光视轴夹角表示。视轴方向即决定了眼球的转动,本发明实施例根据视轴方向上的单位向量求得其所在的极坐标,并将眼球转动表示为旋转矩阵的形式。

进一步地,本发明实施例主要利用三维眼球模型顶点的灰度值与其对应二维图像中的像素灰度值的差异建立能量函数。具体而言,对于视频中的一帧,步骤s102已得到眼球在三维空间中的位置以及眼球的转动,因此三维眼球模型上虹膜边界的顶点在三维空间中的位置即可用眼球位置、眼球旋转矩阵及虹膜大小表示。而后,根据相机投影矩阵,这些顶点可被投影到图像中得到对应的二维像素,从而利用虹膜边界顶点的灰度值与图像中对应像素的灰度值这两者间的差异建立起能量函数,即该能量越低时三维眼球的投影与二维图像越一致,从而证明用于生成三维眼球的眼球参数更加接近于真实情况。

如前文所言,为使眼球参数的估计更加精准,本发明实施例使用一段视频序列中的所有帧进行估计,即将所有帧中的所有三维顶点与二维像素的匹配关系全部纳入总能量函数中。优化能量求解的参数包括眼球相对头部的位置、视光轴夹角、虹膜大小及视频序列中唯一的视点位置,其中前三者为眼球特有的参数,可用于同一人物的其他视频序列的视线跟踪。

在步骤s2中,利用眼睛参数计算人物任意其他面部视频中的视点位置获得视线方向,同时对视线方向进行跟踪。

也就是说,使用该人物的任意视频,分别处理视频中的每一帧,利用标定出的眼球参数建立该帧的能量函数并估算该帧中的视点位置,从而得到每一帧中的视线方向。

具体而言,求得眼球参数后,本发明实施例利用其跟踪同一人物任意其他面部视频中的视线方向,主要步骤与眼球参数标定类似,且同样利用三维眼球模型顶点的灰度值与其对应二维图像中的像素灰度值的差异建立能量函数。但与眼球参数标定相比,视线跟踪中分别处理视频中的每一帧,即分别跟踪每一帧中的视线方向,且此时眼球参数为已知量,仅需求解每一帧中的视点位置。

对于视频中的一帧,本发明实施例首先根据面部二维特征点检测和相应的面部三维重建方法确定当前帧中的头部位姿,继而根据标定的眼球相对头部的位置确定当前帧中眼球在三维空间中的位置。然后,视轴的方向可用眼球位置和视点位置表示,从而眼球的旋转可用视轴和光视轴夹角表示。最后,如图3所示,三维眼球模型上的虹膜边界顶点被投影到当前帧的二维图像上,本发明实施例根据三维顶点的灰度值和对应二维像素的灰度值建立能量函数。此时对于当前帧而言,优化求解的变量仅有当前帧中的视点位置,最终视线方向可由眼球位置和视点位置确定。

进一步地,如图2所示,在本发明的一个实施例中,步骤s2包括:

s201,检测脸部视频中某一帧的面部特征点,估算头部的空间位姿,以得到人脸视频某一帧中眼球在三维空间中的位置。

简单来讲,检测视频中一帧的面部特征点,估算头部的空间位姿,根据步骤s1)=中求得的眼球相对于头部的位置得到眼球在三维空间中的位置。

s202,利用眼球在三维空间中的位置及视点位置计算当前帧中的视线方向,并通过步骤s1求得的当前帧的光轴,以得到第二眼球转动信息。

s203,根据第二眼球转动信息结合相机参数矩阵,将三维眼球模型上虹膜边缘的顶点投影到二维图像中,利用灰度差异建立当前帧的能量函数,优化求解视点位置,并根据视点位置最终确定当前帧的视线方向进行跟踪。

下面结合两个具体实施例对基于三维眼球模型的眼球参数标定和视线方向跟踪方法做进一步的详细说明。

首先,本发明的一个实施例包含两段同一人物的面部视频序列,其中第一段中该人物始终注视空间中的同一位置,且头部有一定的运动,第二段为该人物自然观看周围环境。本发明实施例根据第一段视频标定该人物的眼球参数(眼球相对头部的位置、光视轴夹角和虹膜大小),并用其跟踪第二段视频中的视线方向。

本实施例的第一个模块根据视频一标定眼球参数包含以下步骤:

1)将视频每帧中眼球在三维空间的位置用待求变量的形式表示。根据面部二维特征点检测方法和相应的面部三维重建方法,可求得第i帧中的头部位姿,即旋转矩阵和平移向量从而,眼球在三维空间中的位置可表示为:

其中,ee为待求变量眼球e(e=1,2)相对头部的位置。

2)将视频每帧中的眼球转动用待求变量的形式表示。第i帧中眼球e的视轴为:

其中,pt为待求变量视点位置,为视轴的极坐标形式,polar(p)函数表示p向量的极坐标形式。从而,眼球e的光轴及旋转矩阵可表示为:

其中,为待求变量光视轴夹角的极坐标表示形式,为眼球的旋转矩阵,函数表示极坐标对应的旋转矩阵。

3)建立能量函数并优化求解所有变量。第i帧中眼球e上的第j个虹膜边缘顶点可表示为:

其中,表示眼球e上第j个虹膜边缘顶点在眼球模型坐标系中的位置,表示待求变量虹膜大小,函数表示虹膜大小为的眼球上第j个虹膜顶点的位置。得到虹膜顶点在各帧中的空间位置后,便可利用其在各帧二维图像中的投影建立如下能量函数:

其中,π函数表示相机投影矩阵,ii表示第i帧二维图像中的像素灰度值,cj表示虹膜顶点j的灰度值。通过优化该能量,便可求得最优的眼球参数y,包括眼球相对头部的位置ee、光视轴夹角和虹膜大小同时还可估计出视频序列中的唯一视点pt。

本实施例中的第二个模块求解视频二中第i帧的视线方向包含以下步骤:

1)求解第i帧中眼球在三维空间的位置。与眼球参数标定中步骤1)类似,眼球位置可由眼球参数标定中所求眼球e相对头部的位置ee、头部位姿的旋转矩阵和平移向量求得。

2)将第i帧中的眼球转动用待求变量视点位置的形式表示。与眼球参数标定中步骤2)类似,眼球转动可由待求变量视点位置已知量眼球位置眼球参数标定中所求光视轴夹角表示。

3)建立能量函数求解第i帧的视点位置与眼球参数标定中步骤3)类似,第i帧中眼球e上的第j个虹膜边缘顶点可由已知量眼球旋转矩阵已知量眼球位置和眼球参数标定中所求虹膜大小表示。而后便可利用其在第i帧二维图像中的投影建立如下能量函数:

通过优化该能量,便可求得最优的视点位置该帧中的视线方向即为

需要说明的是,上述实现本实施例方法的硬件pc配置:cpu为intel(r)core(tm)i7-47903.6ghz,内存为6g,操作系统为windows8,但本发明实施例可以在普通pc机或工作站等硬件系统上实现,故在此不做具体限定。

根据本发明实施例提出的基于三维眼球模型的眼球参数标定和视线方向跟踪方法,利用一段固定所拍摄人物视点位置的视频序列,通过三维眼球模型顶点的灰度值与其对应二维图像中的像素灰度值的差异建立能量函数,优化求解眼球参数与视点位置;其后,利用标定的该人物的眼球参数和类似的灰度差异能量函数,该方法可估计该人物任意视频中的视点位置和视线方向,并能够使用的视线方向物理模型与真实情况更接近,从而使得视线方向的估计更为精确。

此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。

在本发明中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系,除非另有明确的限定。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。

在本发明中,除非另有明确的规定和限定,第一特征在第二特征“上”或“下”可以是第一和第二特征直接接触,或第一和第二特征通过中间媒介间接接触。而且,第一特征在第二特征“之上”、“上方”和“上面”可是第一特征在第二特征正上方或斜上方,或仅仅表示第一特征水平高度高于第二特征。第一特征在第二特征“之下”、“下方”和“下面”可以是第一特征在第二特征正下方或斜下方,或仅仅表示第一特征水平高度小于第二特征。

在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。

尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。

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