一种基于视网膜图像的眼动跟踪方法及装置与流程

文档序号:29935898发布日期:2022-05-07 13:35阅读:131来源:国知局
一种基于视网膜图像的眼动跟踪方法及装置与流程

1.本技术涉及图像处理领域,特别是涉及一种基于视网膜图像的眼动跟踪方法及装置。


背景技术:

2.通常用于诊断和治疗的眼科设备具有成像部分,如扫描激光检眼镜;特别是在治疗应用中该成像部分可以用来获得跟踪眼球运动的视网膜图像。增强现实(augmented reality,ar)/虚拟现实(virtual reality,vr)的一些应用方案也采用了基于视网膜图像的眼动跟踪来实时反馈给显示系统。
3.在眼科诊疗系统中,通常为了跟踪实时性,成像部分以高帧率采集图像,同时要求后处理的计算时间足够小。此外,眼球的运动会影响视网膜接收到的光照,使得整个图像中发生较大的明暗变化。导致眼动跟踪期间或在图像的后处理中难以获得令人满意的置信度、影响了系统的准确性和可靠性。
4.跟踪方法可以分为两种路径:一种是根据图像之间的整体相似性计算出变换参数如模板匹配、互相关方法、信息熵最大化等方法,一种是基于图像配准方法即分别提取图像中的特征点如哈尔特征(haar-like features)、尺度不变特征变换(scale-invariant feature transform,sift)等然后寻找配对点求解变换参数。
5.但是,前者方法往往可计算的变换参数较少或计算复杂度很高且易受光照变化及成像质量影响,因此局限性较大。
6.鉴于上述问题,设计出一种计算复杂度低的基于视网膜图像的眼动跟踪方法,是该领域技术人员亟待解决的问题。


技术实现要素:

7.本技术的目的是提供一种基于视网膜图像的眼动跟踪方法及装置,实现降低眼动追踪的计算复杂度。
8.为解决上述技术问题,本技术提供一种基于视网膜图像的眼动跟踪方法,包括:
9.s1,获取视频中的参考帧图像和当前帧图像;
10.s2,在所述参考帧图像中选取参考帧局部区域,其中所述参考帧局部区域的大小小于所述参考帧图像的大小;
11.s3,将所述当前帧图像经仿射变换矩阵生成仿射变换图像,在所述仿射变换图像中找到与所述参考帧局部区域位置相同的区域作为新的局部区域;
12.s4,获取所述参考帧局部区域与所述新的局部区域之间的偏移量,作为当前时刻的跟踪结果;
13.s5,更新所述仿射变换矩阵,获取下一时刻的当前帧图像,返回至步骤s3,以对眼动进行实时跟踪。
14.优选地,在步骤s5中,更新所述仿射变换矩阵的具体步骤包括:
15.获取所述仿射变换矩阵的逆矩阵;
16.选取所述参考帧局部区域中的参考点坐标,将所述参考点坐标与所述偏移量叠加后,再与所述逆矩阵代入所述仿射变换矩阵中,计算得到所述参考点在当前帧图像坐标系下的目标坐标;
17.根据所述参考点坐标和所述目标坐标获取到新的仿射变换矩阵。
18.优选地,步骤s3和s4更换为:
19.s31,将所述参考帧图像经仿射变换矩阵生成仿射变换图像,得到变换后的参考帧局部区域,在所述当前帧图像中找到与所述变换后的参考帧局部区域位置相同的区域作为新的局部区域;
20.s41,获取所述变换后的参考帧局部区域与所述新的局部区域之间的偏移量,作为当前时刻的跟踪结果。
21.优选地,在步骤s5中,更新所述仿射变换矩阵的具体步骤包括:
22.选取所述参考帧局部区域中的参考点坐标,将参考点坐标经步骤s31变换后得到的坐标与所述偏移量叠加后得到新的坐标;
23.根据所述参考点坐标和所述新的坐标获取到新的仿射变换矩阵。
24.优选地,所述仿射变换矩阵的形式为:
[0025][0026]
其中,s为缩放倍率,θ为旋转角,t
x
为x轴方向的平移值,ty为y轴方向的平移值;其中,所述新的局部区域的数量为两个以上;若将旋转角θ设为0,缩放倍率s设为1,则所述新的局部区域的数量为一个以上。
[0027]
优选地,在步骤s3或步骤s31之后,还包括:
[0028]
判断所述新的局部区域的图像亮度是否符合预设条件;
[0029]
若否,则剔除该新的局部区域;
[0030]
若是,进入到步骤s4或步骤s41。
[0031]
优选地,步骤s4或步骤s41之后,还包括:
[0032]
判断跟踪结果是否满足预设要求;
[0033]
若否,则重新进行跟踪;
[0034]
若是,进入到步骤s5。
[0035]
优选地,所述判断跟踪结果是否满足预设要求的具体步骤为:
[0036]
判断所述参考帧局部区域与所述新的局部区域的图像置信度是否满足阈值,或者判断连续两个时刻的偏移量之差是否在预设范围内。
[0037]
优选地,所述重新进行跟踪的具体步骤为:
[0038]
设置所述当前帧图像的平移参数为0,对所述当前帧图像以一组设定的旋转参数和缩放参数进行仿射变换得到新的当前帧图像;
[0039]
获取每一个所述参考帧局部区域与所述新的当前帧图像之间的偏移量;
[0040]
根据该偏移量确定每个所述参考帧局部区域在所述参考帧图像中的位置和在所述当前帧图像中的位置的对应关系,以求解所述仿射变换矩阵;
[0041]
判断重新跟踪是否成功;
[0042]
若是,返回到步骤s3;
[0043]
若否,则对所述当前帧图像以另一组设定的旋转参数和缩放参数进行仿射变换得到新的当前帧图像,返回至获取每一个所述参考帧局部区域与所述新的当前帧图像之间的偏移量的步骤。
[0044]
为解决上述技术问题,本技术还提供一种基于视网膜图像的眼动跟踪装置,包括:
[0045]
第一获取模块,用于获取视频中的参考帧图像和当前帧图像;
[0046]
选取模块,用于在所述参考帧图像中选取参考帧局部区域,其中所述参考帧局部区域的大小小于所述参考帧图像的大小;
[0047]
生成模块,用于将所述当前帧图像经仿射变换矩阵生成当前帧仿射变换图像;或者将所述参考帧图像经仿射变换矩阵生成参考帧仿射变换图像;
[0048]
第二获取模块,用于在当前帧仿射变换图像中找到与所述参考帧局部区域位置相同的区域作为新的局部区域,并获取所述参考帧局部区域与所述新的局部区域之间的偏移量;
[0049]
或者在参考帧仿射变换图像中得到变换后的参考帧局部区域,在所述当前帧图像中找到与所述变换后的参考帧局部区域位置相同的区域作为新的局部区域,并获取所述变换后的参考帧局部区域与所述新的局部区域之间的偏移量;第三获取模块,用于获取下一时刻的当前帧图像,更新所述仿射变换矩阵,依次触发所述生成模块和所述第二获取模块,以对眼动进行实时跟踪。
[0050]
本技术所提供的基于视网膜图像的眼动跟踪方法,相比现有技术具有以下有益效果:
[0051]
(1)由于眼动跟踪过程中设置局部区域的大小远远小于原图像大小,能够包含图像中有效内容的较小结构特征,有效地减少了相比于跟踪整个图像的计算复杂度,降低了对设备硬件的要求,提高了眼动跟踪的实时性。
[0052]
(2)通过选取多个局部区域,可以获得更准确可靠的参数估计,也可覆盖眼动导致的小范围的图像旋转和缩放情况,达到更鲁棒的跟踪效果。
[0053]
(3)同时通过实时跟踪和重新跟踪两个状态之间的切换,实现在眨眼或眼球运动过大导致图像变形等情况发生后定位眼球并再次跟踪。
附图说明
[0054]
为了更清楚地说明本技术实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0055]
图1为本技术实施例提供的一种基于视网膜图像的眼动跟踪方法的流程图;
[0056]
图2为本技术实施例提供的一种参考帧局部区域的选取示意图;
[0057]
图3为本技术实施例提供的一种当前帧图像的示意图;
[0058]
图4为本技术实施例提供的仿射变换图像的示意图;
[0059]
图5为本技术实施例提供的新当前帧图像中新的局部区域的位置的示意图;
[0060]
图6为本技术实施例提供的原当前帧图像的局部区域的位置的示意图;
[0061]
图7为本技术实施例提供的另一种基于视网膜图像的眼动跟踪方法的流程图;
[0062]
图8为本技术实施例提供的另一种基于视网膜图像的眼动跟踪方法的流程图;
[0063]
图9为本技术实施例提供的一种基于视网膜图像的眼动跟踪装置的结构示意图。
具体实施方式
[0064]
下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本技术保护范围。
[0065]
本技术的核心是提供一种基于视网膜图像的眼动跟踪方法及装置,实现降低眼动追踪的计算复杂度。
[0066]
为了使本技术领域的人员更好地理解本技术方案,下面结合附图和具体实施方式对本技术作进一步的详细说明。
[0067]
图1为本技术实施例提供的一种基于视网膜图像的眼动跟踪方法的流程图。可以理解的是,在眼科诊疗系统中,通常为了跟踪实时性,成像部分以高帧率采集图像,同时要求后处理的计算时间足够小。此外,眼球的运动会影响视网膜接收到的光照,使得整个图像中发生较大的明暗变化。导致眼动跟踪期间或在图像的后处理中难以获得令人满意的置信度、影响了系统的准确性和可靠性。为了解决上述问题,如图1所示,眼动跟踪方法包括:
[0068]
s1,获取视频中的参考帧图像和当前帧图像。
[0069]
s2,在参考帧图像中选取参考帧局部区域,其中参考帧局部区域的大小小于参考帧图像的大小。
[0070]
s3,将当前帧图像经仿射变换矩阵生成仿射变换图像,在仿射变换图像中找到与参考帧局部区域位置相同的区域作为新的局部区域。
[0071]
s4,获取参考帧局部区域与新的局部区域之间的偏移量,作为当前时刻的跟踪结果。
[0072]
s5,更新仿射变换矩阵,获取下一时刻的当前帧图像,返回至步骤s3,以对眼动进行实时跟踪。
[0073]
本实施例中若要对眼球运动进行跟踪,首先需要获取眼动视频流中眼球视网膜的一个参考图像,以用于在后续眼动图像中以此为参考进行跟踪。因此需要采集视频中的一帧图像或采集连续的多帧图像叠加平均后作为参考帧,对于具体的参考帧图像的采集方式不做限制,根据具体的实施情况而定。还可以对采集到的参考帧图像进行滤波、边缘增强等图像处理手段提高图像质量,在这里不做限制。
[0074]
需要注意的是,本技术选取的用于与后续图像进行对比的参考图像并不是参考帧图像的全部,而是其一部分,即局部区域。局部区域可以是利用现有技术的各种算子(operator)和方法来求得的感兴趣区域(region of interest,roi),也可以是人为选取一些特定的小区域,在本实施例中不做限制。具体地,从上述参考帧图像中选取至少两个远小于参考帧图像整体的大小的局部区域,称为参考帧局部区域。需要注意的是,从参考帧图像中选取的局部区域可分散于图像各个区域。局部区域尺寸大小一般在图像整体尺寸的几十分之一左右,能包含图像有效内容的较小结构特征即可,如两倍于视网膜大血管的宽度、黄
斑中心凹直径等。在典型实施例中,一张尺寸为1024x1024像素的视网膜图像会选取16x16至96x96之间尺寸的局部区域。该参考帧局部区域的选取可以是人工手动选定对比度高的区域如血管、视盘等区域,或自动化方式,如以滑动窗的方式计算所有滑动窗口内的像素值的均值和方差并最终根据设定的阈值挑选符合条件的滑动窗口作为局部区域,或对整张图像提取哈尔特征(haar-like features)或尺度不变特征变换(scale-invariant feature transform,sift)特征等图像特征点的位置,然后选择这些特征点分布密集的局部区域等。图2为本技术实施例提供的一种参考帧局部区域(虚线框部分)的选取示意图。如图2所示,小尺寸的局部区域有效地减小了计算量,比如对于一个n*n的二维图像,基于快速傅立叶变换(fast fourier transform,fft)的互相关计算方式的时间复杂度为o(n^2*logn),因此可推算采用局部区域的方式的时间复杂度相比整体区域的方式约等于n/r^2,n为局部区域的个数,r为整体图像尺寸与局部区域尺寸的比值,典型情况下n=5,r=32,计算量降至原计算量的约千分之五。并且由于局部光照的差异相比于整体光照的差异小很多,从而提高了对光照变化的鲁棒性,小尺寸的局部区域有效地减小了计算量。
[0075]
假设选取了n个参考帧局部区域,其每个参考帧局部区域的中心位置(或顶点之一的位置)分别为:(rx_i,ry_i),i=1...n。视频的后续图像称为当前帧图像,从当前帧图像中提取n个局部区域,即新的局部区域,该尺寸可与参考帧局部区域尺寸不一样,但仍在图像整体尺寸的几十分之一左右。提取过程为,将当前帧图像经仿射变换矩阵生成仿射变换图像,在仿射变换图像中找到与参考帧局部区域位置相同的区域作为新的局部区域,具体地,假设某一时刻从当前帧图像至参考帧图像的仿射变换矩阵为a
t
,其中初始的仿射变换为单位矩阵,即a0=i。
[0076]
二维图像的跟踪通常包含选取参考图像和由当前图像计算获得跟踪结果两个基本过程,其跟踪结果可用变换参数表示,根据应用的不同,从基本的平移参数到复杂的包含六个参数的投影变换等。用齐次坐标表示法来表示可写成公式ax=x';下列公式表示两幅图像之间的仿射变换关系:
[0077][0078]
则下列矩阵为仿射矩阵:
[0079][0080]
其中,(x,y)、(x',y')分别表示参考图像和当前图像的坐标点。
[0081]
本实施例中,通过明确了仿射变换矩阵的形式,实现了图像的仿射变换;并且能够实现通过设置仿射变换矩阵的参数决定所需的新的局部区域的最低数量,新的局部区域与其相对应的参考帧局部区域作为一组数据,一同代入运算,因此实际上仿射变换矩阵的参数决定的是所需的数据组的最低数量,当然不限于最低数量,更多数据组能够求出更准确的最优解。
[0082]
在基于视网膜的眼动跟踪中,图像所包含的变换通常主要是xy两个方向的平移和较小范围的旋转、缩放,本技术中主要考虑上述几个变换参数。以上公式则可简化为包含四个参数,如下列公式所示:
[0083][0084]
即,作为一种优选的实施例,仿射变换矩阵的形式为:
[0085][0086]
四个参数是指s、θ、t
x
、ty;其中,s为缩放倍率,θ为旋转角,t
x
为x方向的平移值,ty为y方向的平移值。其中,新的局部区域的最低数量为两个;若进一步不考虑旋转和缩放的情况,即将旋转角θ设为0,缩放倍率s设为1,则新的局部区域的最低数量为一个。对于新的局部区域的数量,参考帧局部区域及新的局部区域若存在很多对,本领域技术人员可以根据现有技术自行结合多组数据求解出最优的参数,在本实施例中不做限制。
[0087]
图3为本技术实施例提供的一种当前帧图像的示意图,图4为本技术实施例提供的仿射变换图像的示意图。首先将当前帧图像(如图3所示)整体以a
t
作仿射变换得到仿射变换图像(如图4所示),即f
t
=a
t
f,其中f、f
t
分别表示变换前和变换后的当前帧的齐次坐标,最终得到了仿射变换图像,然后在仿射变换图像中找到与参考帧局部区域位置相同的区域作为新的局部区域。需要注意的是,对于仿射变换矩阵的具体形式在本实施例中不做限制,根据具体的实施情况而定。进一步地,将新的局部区域与对应的参考帧局部区域进行求解获得的偏移量(sx_i,sy_i),作为当前时刻的跟踪结果。需要注意的是,跟踪结果是由偏移量的数值体现,对于具体的对应关系在本实施例不做限制,根据具体的实施情况而定。
[0088]
为了持续地对眼动进行跟踪,本实施例中,还需要更新仿射变换矩阵,获取下一时刻的当前帧图像,返回至步骤s3,即返回至将当前帧图像经仿射变换矩阵生成仿射变换图像,在仿射变换图像中找到与参考帧局部区域位置相同的区域作为新的局部区域;由于重新获得了仿射变换矩阵,因此再次返回该步骤能够对眼动进行再次跟踪,最终实现眼动的实时跟踪。需要注意的是,本实施例中对于仿射变换矩阵的具体更新步骤不做限制,根据具体的实施情况而定。
[0089]
在上述实施例的基础上:
[0090]
作为一种优选的实施例,在步骤s5中,更新仿射变换矩阵的具体步骤包括:
[0091]
获取仿射变换矩阵的逆矩阵;
[0092]
选取参考帧局部区域中的参考点坐标,将参考点坐标与偏移量叠加后,再与逆矩阵代入仿射变换矩阵中,计算得到参考点在当前帧图像坐标系下的目标坐标;
[0093]
根据参考点坐标和目标坐标获取到新的仿射变换矩阵。
[0094]
在上述实施例中,对于更新仿射变换矩阵具体的更新步骤不做限制,根据具体的实施情况而定。在本实施例中,作为一种优选的实施例,在更新仿射变换矩阵时,首先获取仿射变换矩阵a
t
的逆矩阵a
t-1
,选取参考帧局部区域中的参考点坐标,假设每个参考帧局部区域的参考点坐标为(rx_i,ry_i),偏移量为(sx_i,sy_i)。图5为本技术实施例提供的新当前帧图像中新的局部区域的位置的示意图;将参考点坐标与偏移量叠加后得到的位置为(ncx_i,ncy_i),即图5中箭头所指向的虚线框的位置,其中ncx_i=rx_i+sx_i,ncy_i=ry_i+sy_i。图6为本技术实施例提供的原当前帧图像的局部区域的位置的示意图,将位置
(ncx_i,ncy_i)和逆矩阵代入仿射变换矩阵中,计算得到参考点在当前帧图像坐标系下的目标坐标(cx_i,cy_i),即图6中虚线框的部分。最后根据参考点坐标(rx_i,ry_i)和目标坐标(cx_i,cy_i)获取到新的仿射变换矩阵,得到了新的仿射变换矩阵a
t+1
。需要注意的是,上述一组对应点可以生成两个线性方程,多组对应点可以列出线性方程组,为了求解参数,需要的对应点数至少为自由度的一半,多个点时构成超定方程组,可以基于最小二乘法或者奇异值分解(singular value decomposition,svd)等方法进行求解,在本实施例中不做限制。
[0095]
本实施例中,通过获取仿射变换矩阵的逆矩阵,选取参考帧局部区域中的参考点坐标,将参考点坐标与偏移量叠加后,再与逆矩阵代入仿射变换矩阵中,计算得到参考点在当前帧图像坐标系下的目标坐标;根据参考点坐标和目标坐标获取到新的仿射变换矩阵,不断获取的新的仿射变换矩阵实现了在眼球运动时对视网膜的实时跟踪。
[0096]
图7为本技术实施例提供的另一种基于视网膜图像的眼动跟踪方法的流程图。如图7所示,与图1所示的方法相比,步骤s3和s4更换为:
[0097]
s31,将参考帧图像经仿射变换矩阵生成仿射变换图像,得到变换后的参考帧局部区域,在当前帧图像中找到与变换后的参考帧局部区域位置相同的区域作为新的局部区域;
[0098]
s41,获取变换后的参考帧局部区域与新的局部区域之间的偏移量,作为当前时刻的跟踪结果。
[0099]
可以理解的是,本技术中眼动的跟踪是通过获取参考帧局部区域与新的局部区域之间的偏移量来实现,实现的前提是通过仿射变换矩阵对图像进行仿射变换以得到新的局部区域。而上述实施例提供的方法中,首先对当前帧图像进行了仿射变换,在得到的仿射变换图像中找到与参考帧局部区域位置相同的区域作为新的局部区域。同理,对参考帧图像进行仿射变换也可以实现偏移量的获取。
[0100]
具体地,将参考帧图像经仿射变换矩阵生成仿射变换图像,得到变换后的参考帧局部区域,在当前帧图像中找到与变换后的参考帧局部区域位置相同的区域作为新的局部区域;需要注意的是,此处的仿射变换矩阵可以与上述方法中的仿射变换矩阵相同,对于其具体形式在本实施例中不做限制,根据具体的实施情况而定。在获取到新的局部区域之后,获取变换后的参考帧局部区域与新的局部区域之间的偏移量,作为当前时刻的跟踪结果,连续得到一段时间的跟踪结果便最终实现了眼动跟踪。相应的,实现持续的跟踪需要在获取到当前时刻的跟踪结果后,更新仿射变换矩阵,并获取下一时刻的参考帧图像,返回至步骤s31,继续执行后续步骤,直到跟踪停止。本实施例中对于更新仿射变换矩阵的具体步骤不做限制,根据具体的实施情况而定。
[0101]
本实施例中,通过将参考帧图像经仿射变换矩阵生成仿射变换图像,得到变换后的参考帧局部区域,在当前帧图像中找到与变换后的参考帧局部区域位置相同的区域作为新的局部区域;获取变换后的参考帧局部区域与新的局部区域之间的偏移量作为当前时刻的跟踪结果,通过另一种方式实现了眼动跟踪。
[0102]
在上述实施例的基础上:
[0103]
作为一种优选的实施例,在步骤s5中,更新仿射变换矩阵的具体步骤包括:
[0104]
选取参考帧局部区域中的参考点坐标,将参考点坐标经步骤s31变换后得到的坐
标与偏移量叠加后得到新的坐标;
[0105]
根据参考点坐标和新的坐标获取到新的仿射变换矩阵。
[0106]
可以理解的是,上述实施例由于对参考帧图像经仿射变换矩阵进行仿射变换生成仿射变换图像,则在此基础上更新仿射变换矩阵的方式也有所不同。具体地,选取参考帧局部区域中的参考点坐标,将参考点坐标经步骤s31变换后,即将参考帧图像经仿射变换矩阵生成仿射变换图像,得到变换后的参考帧局部区域的坐标,与偏移量叠加后得到新的坐标;再根据参考点坐标和新的坐标获取到新的仿射变换矩阵。最终实现了在步骤s31与s41的基础上的仿射变换矩阵的更新。
[0107]
本实施例中,为了实现了在步骤s31与s41的基础上的仿射变换矩阵的更新,通过选取参考帧局部区域中的参考点坐标,将参考点坐标经步骤s31变换后得到的坐标与偏移量叠加后得到新的坐标,根据参考点坐标和新的坐标获取到新的仿射变换矩阵,再返回步骤s31后实现了眼动跟踪。
[0108]
图8为本技术实施例提供的另一种基于视网膜图像的眼动跟踪方法的流程图。如图8所示,在步骤s3或步骤s31之后,还包括:
[0109]
s6,判断新的局部区域的图像亮度是否符合预设条件,若否,则进入步骤s7,若是,进入到步骤s4或步骤s41。
[0110]
s7,剔除该新的局部区域,进入到步骤s4或步骤s41。
[0111]
可以理解的是,在获取偏移量之前可以先对局部区域的图像做预检测。例如对局部区域是否因眨眼导致的画面过暗或过曝导致的过亮进行判断。当图像的亮度不满足预设条件时,对图像进行剔除,去除不符合要求的局部区域。在具体实施中根据整个局部区域的灰度值的均值和方差判断,随后进入下一步骤s4或步骤s41。本实施例中对于预设条件的具体内容不做限制,根据具体的实施情况而定。可以理解的是,步骤s6、步骤s7是对新的局部区域的图像是否满足预设条件的判断,因此适用于通过步骤s3或步骤s31获取到新的局部区域。
[0112]
本实施例中,为了使获取偏移量之前局部区域的图像符合要求,对其是否满足预设条件进行判断,同时剔除不符合要求的部分,便于后续获取偏移量。
[0113]
如图8所示,为了确定眼动跟踪是否成功,步骤s4或步骤s41之后,还包括:
[0114]
s8,判断跟踪结果是否满足预设要求;若否,则重新进行跟踪;若是,进入到步骤s5。
[0115]
可以理解的是,眼动跟踪过程中可能会出现眼动速度过快或其他干扰因素导致的眼动跟踪失败的情况。为了确保能够持续跟踪到眼球的运动,判断跟踪结果是否满足预设要求;若否,则重新进行跟踪;若是,进入到步骤s5,即更新仿射变换矩阵。需要注意的是,本实施例中对于预设要求的具体内容不做限制,根据具体的实施情况而定;对于重新跟踪的具体步骤也不做限制,根据具体的实施情况而定。
[0116]
本实施例中,为了确定眼动跟踪是否成功,判断跟踪结果是否满足预设要求;若否,则重新进行跟踪;若是,进入到步骤s5以更新仿射变换矩阵,使得持续进行眼动跟踪。
[0117]
在上述实施例的基础上:
[0118]
作为一种优选的实施例,判断跟踪结果是否满足预设要求的具体步骤为:
[0119]
判断参考帧局部区域与新的局部区域的图像置信度是否满足阈值,或者判断连续
两个时刻的偏移量之差是否在预设范围内。
[0120]
上述实施例中,对于预设要求的具体内容不做限制,根据具体的实施情况而定;作为一种优选的实施例,本实施例中预设条件可以为判断参考帧局部区域与新的局部区域的图像置信度是否满足阈值。具体地,一种优选的方式是利用互相关方法计算的置信度的阈值取0.9,当满足阈值时确定跟踪结果符合要求。或者将预设要求设置为判断连续两个时刻的偏移量之差是否在预设范围内,即连续两帧求解的偏移量数值之差不能超过设定的阈值;这里举例说明:在视频帧率为30fps,图像分辨率为1024x1024像素,视野为50
°
时,阈值取15像素。除了上述两种预设要求,还可以将预设要求设置为置信度的可信数量至少为两个等其他要求,在本实施例中不做限定,根据具体的实施情况而定。
[0121]
本实施例中,设置判断跟踪结果是否满足预设要求的具体步骤为判断参考帧局部区域与新的局部区域的图像置信度是否满足阈值,或者判断连续两个时刻的偏移量之差是否在预设范围内,有效地对跟踪结果进行判断。
[0122]
在上述实施例的基础上:
[0123]
作为一种优选的实施例,重新进行跟踪的具体步骤为:
[0124]
s9,设置当前帧图像的平移参数为0,对当前帧图像以一组设定的旋转参数和缩放参数进行仿射变换得到新的当前帧图像。
[0125]
s10,获取每一个参考帧局部区域与新的当前帧图像之间的偏移量。
[0126]
s11,根据该偏移量确定每个参考帧局部区域在参考帧图像中的位置和在当前帧图像中的位置的对应关系,以求解仿射变换矩阵。
[0127]
s12,判断重新跟踪是否成功;若是,返回到步骤s3,若否,则对当前帧图像以另一组设定的旋转参数和缩放参数进行仿射变换得到新的当前帧图像,返回步骤s10。
[0128]
可以理解的是,由于在具体实施中眼动过快或因其他原因,会导致眼动跟踪失败,还需要对眼动进行重新跟踪。
[0129]
具体地,需要求解每个参考帧局部区域在当前帧整体图像中的位置。此时,考虑到视网膜图像的旋转和缩放的范围较小,且互相关等模板匹配方式有一定的旋转不变性和缩放不变性,可以对这两个参数采用网格搜索的方式,如3x3、5x5等较小的网格即可,即在确定的一组旋转和缩放的参数后,对当前帧图像作旋转和缩放操作获得新的当前帧图像。然后求得每个参考帧局部区域与新的当前帧图像的互相关,以此判断重新跟踪是否成功。判定标准可以是基于互相关的置信度,根据具体的实施情况而定。若判断重新跟踪成功,根据该组旋转、缩放参数和对应的互相关的偏移量,确定每个参考帧局部区域在参考帧坐标系的位置和在当前帧坐标系中的位置的一一对应关系,并求解仿射变换矩阵,同上述更新仿射变换矩阵的方式类似。求解成功后,更新仿射变换矩阵,重新进入实时跟踪状态;若判断重新跟踪失败则再次重复以进行求解。
[0130]
本实施例中,若判断出眼动跟踪失败,则对眼动进行重新跟踪,通过对当前帧图像做仿射变换后计算参考帧局部区域相对于与新的当前帧图像的偏移量,根据偏移量求解仿射变换矩阵,最终实现了眼动的重新跟踪。
[0131]
在上述实施例中,对于基于视网膜图像的眼动跟踪方法进行了详细描述,本技术还提供基于视网膜图像的眼动跟踪装置对应的实施例。
[0132]
图9为本技术实施例提供的一种基于视网膜图像的眼动跟踪装置的结构示意图。
如图9所示,基于视网膜图像的眼动跟踪装置包括:
[0133]
第一获取模块10,用于获取视频中的参考帧图像和当前帧图像。
[0134]
选取模块11,用于在参考帧图像中选取参考帧局部区域,其中参考帧局部区域的大小小于参考帧图像的大小。
[0135]
生成模块12,用于将当前帧图像经仿射变换矩阵生成当前帧仿射变换图像。或者将所述参考帧图像经仿射变换矩阵生成参考帧仿射变换图像;
[0136]
第二获取模块13,用于在当前帧仿射变换图像中找到与参考帧局部区域位置相同的区域作为新的局部区域,并获取所述参考帧局部区域与所述新的局部区域之间的偏移量;
[0137]
或者在参考帧仿射变换图像中得到变换后的参考帧局部区域,在所述当前帧图像中找到与所述变换后的参考帧局部区域位置相同的区域作为新的局部区域,并获取所述变换后的参考帧局部区域与所述新的局部区域之间的偏移量。
[0138]
第三获取模块14,用于获取下一时刻的当前帧图像,更新仿射变换矩阵,触发生成模块12和第二获取模块13,以对眼动进行实时跟踪。
[0139]
由于装置部分的实施例与方法部分的实施例相互对应,因此装置部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
[0140]
以上对本技术所提供的一种基于视网膜图像的眼动跟踪方法及装置进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本技术原理的前提下,还可以对本技术进行若干改进和修饰,这些改进和修饰也落入本技术权利要求的保护范围内。
[0141]
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1