1.一种基于目标检测和目标跟踪竞争框架的眼球实时定位方法,其特征在于:该方法包含以下步骤:步骤1:获取人脸图像:加载视频信息,通过目标检测技术截取人脸部分的图像;
步骤2:通过目标检测获取双眼位置信息:针对步骤1截到的人脸部分的图像,利用眼球分类器获取双眼的位置信息;
步骤3:获取双眼位置直方图信息:针对步骤2 得到的双眼位置信息,截取双眼图像,保存双眼图像的直方图特征;
步骤4:通过目标跟踪获取双眼位置信息:利用粒子滤波算法进行眼球的跟踪,实时得到眼球位置信息;
步骤5:实现眼球位置的实时定位:根据目标检测和目标跟踪得到的眼球位置信息进行竞争判断,实时得出准确的眼球位置信息;
具体包括以下步骤:
步骤5.1:保存上一帧的眼球检测结果的矩形信息和眼球跟踪结果的矩形信息;
步骤5.2:计算当前帧的眼球检测和眼球跟踪结果的矩形重叠率,公式如下:,
其中,ROL为矩形重叠率,RD为检测结果的矩形区域,RT为跟踪结果的矩形区域;
步骤5.3:根据步骤5.2的结果,有以下判断:
如果ROL≥0.5,则眼球实际坐标
ROI(x,y)=(RD_X / 2+RT_X / 2,RD_Y / 2+RT_Y / 2)如果ROL<0.5,分别计算检测结果与上一帧的重叠率R1,跟踪结果与上一帧的重叠率R2;
,
其中,t‑1代表上一帧的结果,t代表当前帧的结果,R1为目标检测前后帧的矩形重叠率,R2为目标跟踪前后帧的矩形重叠率,设定阈值R,如果R1和R2至少有一个大于等于阈值R,此时,根据R1和R2的大小关系有如下判断:如果R1≥R2,则眼球实际坐标 ROI(x,y)=(RD_X ,RD_Y );
如果R1<R2,则眼球实际坐标 ROI(x,y)=(RT_X ,RT_Y );
其中RD_X为目标检测结果眼球中心的横坐标;RD_Y为目标检测结果眼球中心的纵坐标;RT_X为目标跟踪结果眼球中心的横坐标;RT_Y为目标跟踪结果眼球中心的纵坐标;
步骤5.4:如果R1和R2都小于阈值R,则判定当前帧眼球检测和眼球跟踪同时丢失目标,需要进行丢失找回;具体过程如下:步骤5.4.1:首先在t‑1时刻得到的双眼位置周围形成的矩形区域中进行眼球检测,如果成功检测到眼球位置,则以此位置坐标信息作为当前帧的眼球实际坐标,并对此位置重新进行粒子跟踪;
t‑1 t‑1
此时,眼球实际坐标 ROI(x,y)=(RD _X ,RD _Y );
步骤5.4.2:如果步骤5.4.1没有检测到眼球位置,则认为目标对象发生了快速的歪头动作;此时需要对人脸部分进行椭圆拟合,然后对拟合出的椭圆利用主成分分析计算出椭圆中心坐标(cx,cy)和旋转角度q;
步骤 5.4.3:根据第一帧的眼球中心坐标(x1,y1)和步骤5.4.2计算得到的椭圆中心坐标(cx,cy)以及旋转角度q,通过以下公式计算得到旋转后的眼球中心坐标(RO_X,RO_Y),以此坐标作为当前帧的眼球实际坐标并重新进行粒子跟踪;
,
此时,眼球实际坐标 ROI(x,y)=(RO_X ,RO_Y )。
2.根据权利要求1所述的一种基于目标检测和目标跟踪竞争框架的眼球实时定位方法,其特征在于:所述步骤2利用眼球分类器获取双眼的位置信息的过程中,使用眼球分类器分别获得左右眼的位置信息,根据左右眼在人脸的位置,通过几何判断来排除分类器的误检结果。
3.根据权利要求1所述的一种基于目标检测和目标跟踪竞争框架的眼球实时定位方法,其特征在于:所述步骤3获取双眼位置直方图信息,具体包括以下步骤:步骤3.1:格式转换:将原RGB空间的双眼图像转换成HSV空间图像;
步骤3.2:利用OpenCv的CalcHist函数获得该图像的直方图;
步骤3.3:利用Normalize函数对直方图进行归一化处理;
步骤3.4:保存该直方图特征。
4.根据权利要求1所述的一种基于目标检测和目标跟踪竞争框架的眼球实时定位方法,其特征在于:所述步骤4利用粒子滤波算法进行眼球的实时跟踪包括以下过程:将原RGB图像转换成HSV空间图像,在要跟踪的眼球附近撒上一定数目的粒子,每个粒子都对应一个矩形区域,且为每个粒子分配一个初始权重,每个粒子的初始权重是相同的,权重值表示该粒子对于眼球定位的重要性;然后对于每个粒子对应的矩形区域分别获得其直方图特征,通过与第一帧保存的眼球直方图特征进行对比,根据两个特征之间的相似度更新每个粒子的权重,高相似度粒子分配高权重,低相似度粒子分配低权重,权重最高的粒子即为眼球跟踪的预测结果,然后再根据每个粒子的权重进行粒子的重定位,高权重粒子下一帧增加数量,低权重粒子下一帧减少数量,然后进行下一帧的眼球跟踪预测,循环往复直至视频结束。