瞳孔定位及跟踪方法与流程

文档序号:11865300阅读:1504来源:国知局
瞳孔定位及跟踪方法与流程

本发明属于定位跟踪技术,具体涉及一种瞳孔定位及跟踪方法。



背景技术:

随着模式识别和计算机视觉技术的飞速发展,实时瞳孔检测与跟踪技术的研究在公共安全保障、交通安全监控、医疗、刑侦等领域的需求越来越迫切。同时,作为人脸检测、识别与跟踪技术的基础以及其广泛的应用前景,其研究价值是显而易见的。

如CN 104050667A记载的“瞳孔跟踪图像处理方法”,但该方法具有以下缺点:

(1)瞳孔跟踪图像处理算法是对人眼图像进行处理,应用范围不大;

(2)瞳孔跟踪方法是对每一帧图像独立进行定位,计算速度较慢。

又如CN 103810472A记载的“基于运动相关性的瞳孔位置滤波方法”,该方法使用模版匹配法进行瞳孔跟踪,具有跟踪精确度较低,以及跟踪速度较慢的问题。

因此,有必要开发一种新的瞳孔定位及跟踪方法。



技术实现要素:

本发明的目的是提供一种跟踪精度高、跟踪速度快的瞳孔定位及跟踪方法。

本本发明所述的瞳孔定位及跟踪方法,包括以下步骤:

步骤1、采集数据:

利用视频采集传感器采集人脸视频信息;

利用距离传感器采集视频采集传感器与瞳孔之间的距离信息;

步骤2、瞳孔定位:

利用adaboost算法对所采集的人脸视频信息进行人眼的粗略检测,检测出人眼区域;

利用canny算法对人眼区域进行边缘检测,得到瞳孔的边缘;

利用Hough变换检测圆心的方法得到瞳孔中心;

步骤3、基于帧差法和LBP的改进MeanShift算法进行瞳孔跟踪:

利用瞳孔定位的结果作为瞳孔跟踪的目标模型,并用LBP算法进行目标建模;

利用帧差法估计出下一帧瞳孔的目标中心;

通过MeanShift算法找到移动后的瞳孔中心在三维坐标系中的X坐标值和Y坐标值。

步骤4、基于所采集的距离信息测量瞳孔中心在三维坐标系中的Z坐标值;

步骤5、输出瞳孔中心的坐标,并根据瞳孔中心的坐标来调整视频采集传感器的拍摄角度。

所述步骤3中,基于帧差法和LBP的改进MeanShift算法进行瞳孔跟踪的具体方法为:

(1)根据瞳孔精确定位算法确定瞳孔目标的初始位置f0,根据公式建立目标模型qu,假设图像中一共有n个像素点,用{xi}i1…n表示,对区域内的颜色纹理特征空间均匀划分,得到m个相等的区间构成的颜色纹理特征直方图;q为目标模型特征空间,用直方图的形式表示出来;qu为组成目标模型特征空间的元素;K表示核函数,选择Epanechnikov核;bin(xi)表示像素点xi在颜色纹理直方图中所在的区域,δ是阶跃函数;在计算过程中,将R,G,B三个颜色通道的bin分别设为8个,加上纹理的通道的10个bin,m=8*8*8*10=5120;为归一化系数;

(2)在视频运行过程中,对当前帧做如下处理:

(2a)根据公式Dk+1(x,y)=|Fk+1(x,y)-Fk(x,y)|和公式计算当前帧的差分图像,其中,设第k帧和第k+1帧的图像在坐标(x,y)处的像素值分别为Fk(x,y)和Fk+1(x,y),第k+1帧表示当前帧,Dk+1(x,y)表示当前帧的差分图像,T为阈值,Rk+1(x,y)为最终得到运动目标的轮廓,为二值图像;

(2b)基于帧差法根据公式计算当前帧中新的候选目标中心位置f0,其中(xA,yA)为前一帧目标中心,(xB,yB)为运动目标轮廓重心,f0(xC,yC)为新的候选目标中心;

(2c)根据公式建立目标候选模型pu,其中f为候选目标中心,h表示核函数窗口的大小;

根据公式计算候选模型与目标模型之间的相似度ρ(p,q),其中c为归一化系数;

(2d)根据公式计算当前区域内各个像素点的权重wi

(2e)根据新的候选目标中心位置fk+1,重新计算相似度函数ρ(p,q);

(2f)判断重新计算的相似度是否小于设定的阈值,如是,则停止搜索,目标在当前帧的中心位置即为fk+1;否则跳到第(2d)步,继续迭代计算,直到满足设定的阈值或者超出设定计算迭代次数;

(3)当视频进入新的一帧的时候,跳到第(2)步,对新的一帧视频进行处理,直到视频结束,并输出移动后的瞳孔中心在三维坐标系中的X坐标值和Y坐标值。

所述步骤4中,基于该距离信息测量出瞳孔中心在三维坐标系中的Z坐标值的具体方法为:直接将距离传感器测量得到的距离数据作为瞳孔的Z坐标。

本发明的有益效果:

(1)本发明采用帧差法改进算法,能够较大地减少目标丢失的情况;

(2)本发明采用LBP改进算法,能够较大地提高跟踪精度;

(3)本发明处理的对象是人脸视频图像,应用范围更广;

(4)本发明使用的是全新的对连续帧进行关联处理的方法,计算速度更快;

综上所述,本发明所述瞳孔定位及跟踪方法具有跟踪精度高,应用范围广,计算速度快的优点。

附图说明

图1为本发明的流程图;

图2为本发明中非极大值抑制原理图;

图3为本发明的具体实施例的原理框图;

图4为图3的结构框图;

图5为图3的流程图。

具体实施方式

下面结合附图对本发明作进一步说明。

如图1所示的瞳孔定位及跟踪方法,包括以下步骤:

步骤1、采集数据:

利用视频采集传感器采集人脸视频信息。

利用距离传感器采集视频采集传感器与瞳孔之间的距离信息。

步骤2、瞳孔定位:

利用adaboost算法对所采集的人脸视频信息进行人眼的粗略检测,检测出人眼区域。

利用canny算法对人眼区域进行边缘检测,得到瞳孔的边缘。

利用Hough变换检测圆心的方法得到瞳孔中心。

步骤3、基于帧差法和LBP的改进MeanShift算法进行瞳孔跟踪:

利用瞳孔定位的结果作为瞳孔跟踪的目标模型,并用LBP算法进行目标建模。

利用帧差法估计出下一帧瞳孔的目标中心。

通过MeanShift算法找到移动后的瞳孔中心在三维坐标系中的X坐标值和Y坐标值。

步骤4、基于所采集的距离信息测量出瞳孔中心在三维坐标系中的Z坐标值。

步骤5、输出瞳孔中心的坐标,并根据瞳孔中心的坐标来调整视频采集传感器的拍摄角度。

本发明中,所述步骤2中利用adaboost算法对所采集的人脸视频信息进行人眼的粗略检测具体为:

Adaboost算法的训练步骤如下:

(1)建立训练样本集(x1,y1)……(xn,yn),其中yi=1表示正样本,yi=-1表示负样本,n为总样本数。

(2)初始化权重w1,i=1/n。

(3)对t=1……T。

利用加权的样本集训练第t层弱分类器ht,得到该层弱分类器的分类误差et

根据分类误差更新第t+1层分类器权值wt+1,i

其中:

(4)级联T个弱分类器得到强分类器:

该强分类器的分类误差满足:

本发明中,所述步骤3中利用canny算法对人眼区域进行边缘检测具体为:

(1)利用高斯滤波器对图像做平滑去噪处理:

F(x,y)=G(x,y)*f(x,y) 式(5)

其中:G(x,y)是高斯函数,具体表达式如式(6),f(x,y)是原图像,F(x,y)是平滑处理后的图像。

(2)利用一阶偏导的有限差分来计算每个像素点梯度的大小和方向:

用一阶差分卷积模版:

得到图像矩阵的幅值大小:

和梯度方向:

(3)非极大值抑制:

如图2所示,将每个像素周围的8个区域分割为4个扇区,分别对应标记为0到3;将该点梯度的方向对应到最接近的四个扇区中的一个,作为该点像素的梯度线;如果该点像素的梯度值大于梯度线上的另外两个像素的梯度值,则保留该点的梯度值,否则,该点置0;最终得到非极大值抑制梯度矩阵M。

(4)双阈值检测和连接边缘:

双阈值法利用T1和T2(T1<T2)两个阈值对图像的梯度值进行判定:大于T2的点一定是边缘点,小于T1的点一定不是边缘点,介于T1和T2的点视情况而定。

具体做法是:分别使用两个阈值T1和T2(T1<T2)对图像进行分割,其中较小的阈值T1得到边缘点较多的边缘图像N1,较大的阈值得到边缘点较少的图像N2,由于T2的阈值较高,得到边缘点可以认为是真实可信的,但另一方面可能存在边缘点漏检的情况,所得得到的N2一般是不连续的,该算法通过比较N1把N2上不连续的边缘连接成连续的边缘,本发明通过以下方法连接不连续边缘点:扫描N2中值为1的点,如果该点的8个领域中有两个点值为1,说明该点是连续的点,否则该点是不连续的点,对于不连续的点,在N1中查找该点的8个领域是否存在边缘点,如果有,将对应的值放入N2中;如果没有,说明该点是边缘的端点。

所述步骤3中利用Hough变换检测圆心的方法得到瞳孔中心的具体方法为:

(1)建立一个三维数组(A,B,R)用以统计每个圆方程所对应的图片上的点(x,y)的个数,其中:A,B分别取图片的高度和宽度,R取A/2和B/2的较小值。

(2)遍历图像(x,y),将每个点(x,y)可能所在圆的方程(a,b,r)存入数组(A,B,R)中。

(3)找出数组(A,B,R)中的最大值(a,b,r),即为瞳孔所对应的圆方程,(a,b)坐标即为瞳孔中心所对应的坐标。

本发明中,基于帧差法和LBP的改进MeanShift算法进行瞳孔跟踪的具体方法为:

(1)根据瞳孔精确定位算法确定瞳孔目标的初始位置f0,根据公式建立目标模型qu假设图像中一共有n个像素点,用{xi}i1…n表示,对区域内的颜色纹理特征空间均匀划分,得到m个相等的区间构成的颜色纹理特征直方图;q为目标模型特征空间,用直方图的形式表示出来;qu为组成目标模型特征空间的元素;K表示核函数,选择Epanechnikov核;bin(xi)表示像素点xi在颜色纹理直方图中所在的区域,δ是阶跃函数;在计算过程中,将R,G,B三个颜色通道的bin分别设为8个,加上纹理的通道的10个bin,m=8*8*8*10=5120;为归一化系数;

(2)在视频运行过程中,对当前帧做如下处理:

(2a)根据公式Dk+1(x,y)=|Fk+1(x,y)-Fk(x,y)|和公式计算当前帧的差分图像,其中,设第k帧和第k+1帧的图像在坐标(x,y)处的像素值分别为Fk(x,y)和Fk+1(x,y),第k+1帧表示当前帧,Dk+1(x,y)表示当前帧的差分图像,T为阈值,Rk+1(x,y)为最终得到运动目标的轮廓,为二值图像;

(2b)基于帧差法根据公式计算当前帧中新的候选目标中心位置f0,其中(xA,yA)为前一帧目标中心,(xB,yB)为运动目标轮廓重心,f0(xC,yC)为新的候选目标中心;

(2c)根据公式建立目标候选模型pu,其中f为候选目标中心,h表示核函数窗口的大小;

根据公式计算候选模型与目标模型之间的相似度ρ(p,q),其中c为归一化系数;

(2d)根据公式计算当前区域内各个像素点的权重wi

(2e)根据新的候选目标中心位置fk+1,重新计算相似度函数ρ(p,q);

(2f)判断重新计算的相似度是否小于设定的阈值,如是,则停止搜索,目标在当前帧的中心位置即为fk+1;否则跳到第(2d)步,继续迭代计算,直到满足设定的阈值或者超出设定计算迭代次数;

(3)当视频进入新的一帧的时候,跳到第(2)步,对新的一帧视频进行处理,直到视频结束,并输出移动后的瞳孔中心在三维坐标系中的X坐标值和Y坐标值。

所述步骤5中,基于所采集的距离信息测量出瞳孔中心在三维坐标系中的Z坐标值的具体方法为:直接将距离传感器测量得到的距离数据作为瞳孔的Z坐标。

如图3和图4所示,将本发明应用到瞳孔定位及跟踪系统,该瞳孔定位及跟踪系统包括视频采集传感器1、距离传感器2、下位机4、上位机5、电机控制模块3和支座。所述视频采集传感器1采用日本Sentech公司生产的高清USB摄像机STC-MC83USB,其分辨率为1024*768,帧频率为30fps(Frames Per Second)。所述距离传感器2采用夏普公司的距离传感器GP2Y3A002K0F。所述下位机4采用广州友善之臂(FriendlyARM)公司的Tiny4412开发主板(CPU采用三星公司的Exynos4412四核处理器)。所述电机控制模块3采用一能公司生产的步进电机28H2P4509A6和配套驱动器2MA320。

本发明中,所述视频采集传感器1用于获取人脸的视频信息。距离传感器2用于获取视频采集传感器1与瞳孔之间的距离信息。下位机4用于接收视频采集传感器1以及距离传感器2所采集的数据,该下位机4分别与视频采集传感器1、距离传感器2连接。上位机5用于接收下位机4所发送的数据,并基于所述视频信息识别出瞳孔中心在三维坐标系中的X坐标值和Y坐标值,以及基于所述距离信息识别出瞳孔中心在三维坐标系中的Z坐标值,并输出控制指令给下位机4,以及在上位机5上输出该瞳孔中心的坐标。电机控制模块3包括与下位机4连接的驱动单元3a,以及分别与驱动单元3a连接的X轴步进电机3b(即用于控制支座在X方向上移动的电机)、Y轴步进电机3c(即用于控制支座在Y方向上移动的电机)、Z轴步进电机3d(即用于控制支座在Z方向上移动的电机),下位机4基于上位机5所发送的控制指令通过驱动单元3a分别对X轴步进电机3b、Y轴步进电机3c、Z轴步进电机3d进行控制。所述视频采集传感器及距离传感器2安装在该支座上,该支座分别与X轴步进电机3b、Y轴步进电机3c、Z轴步进电机3d连接,以调整摄像头的拍摄角度,达到实时对焦的目的。

如图5所示,所述瞳孔定位及跟踪系统的控制流程如下:判断是否打开了摄像机的摄像头,若是,通过摄像头采集人脸的视频信息,若否,打开本地视频,读取并显示视频,瞳孔定位,瞳孔精确跟踪,判断是否结束,若是,结束流程,若否,返回瞳孔精确跟踪步骤。

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