CN103679180B - 一种基于单摄像头单光源的视线追踪方法 - Google Patents
一种基于单摄像头单光源的视线追踪方法 Download PDFInfo
- Publication number
- CN103679180B CN103679180B CN201210346380.5A CN201210346380A CN103679180B CN 103679180 B CN103679180 B CN 103679180B CN 201210346380 A CN201210346380 A CN 201210346380A CN 103679180 B CN103679180 B CN 103679180B
- Authority
- CN
- China
- Prior art keywords
- pupil
- center
- eye
- gray
- coordinate
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 38
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 22
- 238000012545 processing Methods 0.000 claims abstract description 14
- 238000004458 analytical method Methods 0.000 claims abstract description 10
- 238000013480 data collection Methods 0.000 claims abstract description 3
- 210000001747 pupil Anatomy 0.000 claims description 188
- 239000013598 vector Substances 0.000 claims description 13
- 238000004364 calculation method Methods 0.000 claims description 10
- 239000011521 glass Substances 0.000 claims description 10
- 238000012216 screening Methods 0.000 claims description 8
- 238000001514 detection method Methods 0.000 claims description 6
- 238000001914 filtration Methods 0.000 claims description 3
- 230000005484 gravity Effects 0.000 claims description 3
- 238000012986 modification Methods 0.000 claims description 3
- 230000004048 modification Effects 0.000 claims description 3
- 238000005457 optimization Methods 0.000 claims description 3
- 238000007781 pre-processing Methods 0.000 claims description 3
- 230000006641 stabilisation Effects 0.000 claims description 3
- 238000011105 stabilization Methods 0.000 claims description 3
- 230000008569 process Effects 0.000 abstract description 6
- 230000003993 interaction Effects 0.000 abstract description 2
- 238000004519 manufacturing process Methods 0.000 abstract 1
- 230000008859 change Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000004424 eye movement Effects 0.000 description 3
- 210000000744 eyelid Anatomy 0.000 description 3
- 210000000720 eyelash Anatomy 0.000 description 2
- 206010028347 Muscle twitching Diseases 0.000 description 1
- 210000004087 cornea Anatomy 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 210000003128 head Anatomy 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 230000016776 visual perception Effects 0.000 description 1
- 238000013316 zoning Methods 0.000 description 1
Landscapes
- Image Analysis (AREA)
- Eye Examination Apparatus (AREA)
Abstract
本发明涉及一种基于单摄像头单光源的视线追踪方法,包括:数据采集步骤,具体为通过装有摄像头的感应设备,采集人眼的图像数据;数据处理步骤,包括计算机接收采集的人眼数据,通过计算机使用视线追踪算法进行分析和处理,并定位视线坐标;数据分析结果输出步骤,接收数据处理步骤的分析处理结果并输出到数字显示频显示给客户或打印机打印给客户。本发明仪器设备简单,算法处理效率高,精确度高,处理头动范围广;用户操作便捷、仪器使用舒适,人机交互更加趋于自然;设备制造成本低廉。
Description
技术领域
本发明涉及视线追踪技术领域,特别涉及一种基于单摄像头单光源的视线追踪方法。
背景技术
视线追踪技术是眼动仪的核心技术,眼动仪通过记录人在处理视觉信息时的眼动轨迹特征,广泛用于视知觉、阅读等方面研究。眼动技术先后经历了观察法、后像法、机械记录法、光学记录法、影像记录法等多种演变,通过对眼动轨迹的记录从中提取如注视点,注视时间和次数,眼跳距离,瞳孔大小等数据,从而研究眼动轨迹。
目前,市场上基于视线追踪的眼动仪缺陷比较明显:第一,成本太高,仪器太过复杂,不适用于中小型用户;第二,精确度较低,处理操作单元非常大,而记录的用户操作非常少,并且要求用户颈部以上保持静止,对头动限制很大;第三,仅适用于医学和心理学,对用户的普及度不高,使得使用率比较低。
发明内容
本发明就是针对上述背景技术中的不足之处,而提出一种基于单摄像头单光源的视线追踪方法,该方法及系统的追踪精确度高,速度快,成本低等优点,使用方便,效果良好,且用户体验更加轻松自然。
本发明为解决上述技术问题,所提供的一种方法为:
一种基于单摄像头单光源的视线追踪方法,包括:
数据采集步骤,具体为通过装有摄像头的感应设备,采集人眼的图像数据;
数据处理步骤,包括计算机接收采集的人眼数据,通过计算机使用视线追踪算法进行分析和处理,并定位视线坐标;
数据分析结果输出步骤,接收数据处理步骤的分析处理结果并输出到数字显示屏显示给客户或打印机打印给客户。
按上述方法,所述数据处理步骤中的视线追踪算法具体包括以下步骤:
(1)图像预处理:对摄像头捕捉到的人眼图像进行桶形畸变校正,再将其转化为灰度图像,对灰度图像进行中值滤波和高斯模糊;
(2)确定光斑搜索区域:在灰度图像上寻找反射光斑粗略中心,在搜索范围内扫描图像上的每个像素的灰度值,记录搜索范围内像素灰度值最高点的灰度值H和坐标(Xh,Yh),同时记录像素灰度值最低点的灰度值L和坐标(Xl,Yl);
(3)搜索光斑位置:以搜索到的像素灰度值最高点的坐标(Xh,Yh)为中心,设定阈值T1,取第一正方形搜索窗口,在搜索窗口内扫描每一个像素的灰度值,若该像素的灰度值大于阈值T1则以该像素为新的中心,设定阈值T2,取第二正方形搜索窗口,在该窗口内,扫描每个像素的灰度值,并计算小于阈值T2的像素的个数,设定阈值T3,若小于阈值T2的像素的个数大于阈值T3则停止扫描并认为该像素为检测到的光斑,否则继续扫描直到扫描完窗口内所有像素为止,若扫描完第二窗口内的所有像素均未检测到光斑则认为没有检测到光斑重新采集图像进行运算;其中,T1=搜索到的像素灰度值最高点的灰度值H×0.9,T2=搜索到的像素灰度值最低点的灰度值L×1.2,T3=图像长度×0.1×图像宽度×0.15×(0.1~0.8);如果步骤(2)中得到的像素灰度值最高点(Xh,Yh)的灰度值H小于T1×0.5+T2,则认为该图像上没有光斑,重复前述所有步骤直至确定图像上有光斑;
(4)计算光斑中心:以检测到的光斑坐标为圆心,设定光斑区域搜索范围,即光斑为中心的15×15的窗口,逐个扫描区域内的像素的灰度值,利用亮度加权算法,计算光斑的中心C1;
(5)计算瞳孔灰度阈值:光斑中心C1为中心,设定瞳孔搜索范围,统计灰度直方图,用贪心算法计算瞳孔灰度阈值、光斑灰度阈值,利用阈值调整算法,通过分析比较光斑阈值和瞳孔阈值对瞳孔阈值进行调整;
(6)粗略计算瞳孔中心位置:以光斑中心为中心,设定瞳孔搜索范围,根据灰度直方图计算得到的瞳孔灰度阈值,利用重心法计算瞳孔中心,若通过计算未得到瞳孔中心坐标则认为未检测到瞳孔,重新采集人眼图像,并从步骤(1)开始重新进行计算,直至计算得到瞳孔中心坐标;若计算得到瞳孔中心坐标则认为检测到瞳孔,并比较新、旧瞳孔中心的坐标,第一次计算时认为光斑中心坐标等于旧的瞳孔中心坐标,若新瞳孔横坐标、纵坐标与对应旧瞳孔横坐标、纵坐标的差值均小于1,则停止运算,否则以该坐标为瞳孔中心坐标;若新瞳孔横坐标、纵坐标与对应旧瞳孔横坐标、纵坐标的差值中任何一值大于1,则以新的瞳孔中心坐标为中心,缩小搜索窗口,迭代运算瞳孔中心,直到新旧瞳孔中心坐标的横纵差值均小于1为止,若瞳孔中心坐标始终无法收敛则认为未检测到瞳孔,重新采集人眼图像并从步骤(1)开始重新进行计算;
(7)剔除虚假光斑:计算瞳孔中心到光斑中心的距离,若该距离大于100像素,则修改原光斑范围内像素的灰度值,依据步骤(4)计算的得到的光斑中心C1,以C1为中心在15×15窗口内将窗口内的像素的灰度值修改为当前像素灰度值×0.5,重新计算光斑中心和瞳孔中心,以瞳孔中心为中心设定二值化区域,利用瞳孔灰度阈值进行局部二值化,并统计二值化区域内小于瞳孔灰度阈值的像素个数;
(8)边缘检测:若二值化区域内小于瞳孔灰度阈值的像素个数小于搜索区域面积×0.1或二值化区域内小于瞳孔灰度阈值的像素个数大于搜索区域面积×0.5则认为没有检测到瞳孔,重新采集人眼图像,重新计算,利用9×9模板的索贝尔算子进行瞳孔区域的边缘检测;
(9)瞳孔边缘点提取:以瞳孔中心为中心,做一条直线,从瞳孔中心出发分别沿直线的两个方向,扫描直线上的像素的灰度值,若灰度值为0则继续扫描,若灰度值为255,以该像素坐标为中心设定窗口,窗口长:图像长度×0.2,窗口宽:图像宽度×0.4,计算瞳孔边缘点坐标,利用得到的重心坐标沿梯度方向上将扫描直线穿过的相关点的梯度值变化拟合成一条二次曲线y=aX^2+bX+C,通过令曲线导数为零的条件建立方程来确定亚像素边界点的位置,并将得到的瞳孔边缘点坐标加入瞳孔边缘点队列,改变直线角度,使直线旋转扫描180度;
(10)瞳孔边缘点筛选并拟合椭圆:利用得到的瞳孔边缘点坐标,计算瞳孔边缘点到瞳孔中心的距离,并计算瞳孔边缘点到瞳孔中心的平均距离;将每个边缘点计算得到的到瞳孔中心的距离与平均距离进行比值运算,若该比值不在阈值T5范围内,则排除该边缘点,迭代计算平均距离直至平均距离稳定为止;将筛选过的瞳孔边缘点,利用最小二乘法,拟合最优椭圆,其中:0.7<T5<1.2;
(11)计算瞳孔边缘点进一步优化:以最优椭圆中心为平面坐标系的中心,以椭圆的长轴为y轴,以椭圆的短轴为x轴,计算瞳孔边缘点在以椭圆中心为原点的平面坐标系内的坐标,计算与瞳孔边缘点拥有相同横坐标的最优椭圆上的点对应的纵坐标,将计算得到的纵坐标与对应瞳孔边缘点的纵坐标进行比值运算,将比值与阈值T6比较,若在阈值T6范围内,0<T6<0.15,则加入新的瞳孔边缘队列,若不在范围内则不加入新的瞳孔边缘队列;
(12)计算视线坐标:基于新的瞳孔边缘点队列,利用最小二乘法,拟合最优椭圆,第二次拟合的椭圆中心和光斑中心计算PCR向量,即瞳孔中心与光斑中心连线形成的向量,设瞳孔中心为(x1,y1),光斑中心为(x2,y2),则PCR向量为(x1-x2,y1-y2),根据PCR向量和人眼参数,带入视线计算公式,计算视线坐标。
按上述方案,第一正方形搜索窗口选为:长=图像长度×0.15,宽=图像宽度×0.2。
按上述方案,第二正方形搜索窗口选为:长=图像长度×0.1,宽=图像宽度×0.15。
按上述方案,所述T3确定为,图像长度×0.1×图像宽度×0.15×0.3。
按上述方案,所述瞳孔搜索范围优选为:长=图像长度×0.2,宽=图像宽度×0.3。
按上述方案:所述修改原光斑范围内的像素的灰度值具体指:以光斑中心C1为中心,在长=图像长度×0.02,宽=图像宽度×0.03区域内,将窗口内的像素的灰度值修改为当前像素灰度值×0.5。
按上述方案,所述感应设备由嵌入在眼镜的镜框上的摄像头,与眼镜一起构成。
按上述方案,所述通过分析比较光斑阈值和瞳孔阈值对瞳孔阈值进行调整,具体为:若瞳孔阈值小于光斑阈值×0.4,则将瞳孔阈值调整为,新瞳孔阈值=(旧瞳孔阈值+光斑灰度阈值×0.5)/2;若瞳孔阈值大于光斑阈值×0.6,则将瞳孔阈值调整为,新瞳孔阈值=(旧瞳孔阈值+光斑灰度阈值×0.5)/2;其他情况下,瞳孔阈值不进行调整。
按上述方案,所述感应设备由嵌入在眼镜的镜框上的摄像头,与眼镜一起构成。
本发明与传统的视线追踪方法相比其优点在于:仪器设备简单,算法处理效率高,精确度高,处理头动范围广;用户操作便捷、仪器使用舒适,人机交互更加趋于自然;设备制造成本低廉。
注:本发明的图形的长和宽的数值单位为像素。
附图说明
图1摄像机采集到的原始人眼图像;
图2人眼图像预处理;
图3角膜反射光斑搜索范围;
图4定位角膜反射光斑;
图5a精确计算角膜反射光斑中心算法的计算区域;
图5b角膜反射光斑中心;
图6人眼图像的灰度直方图,其中黑色竖线为计算的瞳孔阈值;
图7a瞳孔中心区域图其中黄色方框为第一次计算瞳孔中心的搜索区域,紫色的方框为根据算法不断进行调整后的计算瞳孔中心的搜索区域;
图7b用计算得到的瞳孔灰度阈值对瞳孔搜索区域进行二值化后的结果图,其中,最小的方框内只有包含二值化后的椭圆型瞳孔,在搜索区域变化的过程中将瞳孔上方由于眼睑、睫毛和图像噪声造成的虚假瞳孔像素点全部剔除;
图7c最终粗算后的瞳孔中心区域图,其中,紫色的方框为根据算法不断进行调整后的计算瞳孔中心的搜索区域;
图8a用索贝尔算子进行边缘检测后的结果图;
图8b去除眼睑,睫毛,反射光斑这些虚假瞳孔边缘之后的瞳孔边缘检测结果;
图9a以步骤6计算的瞳孔中心为中心,利用扫描线算法,让扫描线分别沿不同的方向搜索瞳孔索贝尔算子检测到的瞳孔边缘点模拟图;
图9b扫描线检测到瞳孔边缘点后,精确计算瞳孔亚像素边缘点的搜索区域图;
图10a瞳孔边缘点筛选图;
图10b使用未经筛选的瞳孔边缘点使用最小二乘法进行椭圆拟合后的结果图;
图10c使用平均距离进行瞳孔边缘点筛选后进行椭圆拟合后的结果图;
图11使用椭圆方程进行瞳孔边缘点筛选的筛选图;
图12a使用经过两次筛选后的瞳孔边缘点进行椭圆拟合后的结果图,其中,紫色的圆点分别为瞳孔中心和反射光斑中心;
图12b瞳孔中心到反射光斑中心的PCR图,其中,紫色箭头表示瞳孔中心到反射光斑中心形成的PCR向量;
图13本发明检测方法流程图;
图14感应设备和眼镜镜框的结构图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本发明,并不用于限制本发明。
图13示出了本发明检测方法流程图,图1至图12b示出了本发明相关步骤所对应的影像图。
感应设备由嵌入在眼镜1的镜框上的摄像头3一起构成,如图14所示,通过感应设备,采集人眼的图像数据图1所示;接收采集的人眼数据,使用视线追踪算法进行分析和处理,并定位视线坐标;接收数据处理步骤的分析处理结果并输出给用户,其输出方式可以使终端显示器显示或打印机打印。
所述数据处理步骤中的视线追踪算法具体包括以下步骤:
(1)图像预处理:对摄像头捕捉到的人眼图像进行桶形畸变校正,再将其转化为灰度图像,对灰度图像进行中值滤波和高斯模糊,如图2所示;
(2)确定光斑搜索区域:在灰度图像上寻找反射光斑粗略中心,如图3所示,紫色方框为确定的搜索方位,在搜索范围内扫描图像上的每个像素的灰度值,记录搜索范围内像素灰度值最高点的灰度值H和坐标(Xh,Yh),同时记录像素灰度值最低点的灰度值L和坐标(Xl,Yl);
(3)搜索光斑位置:以搜索到的像素灰度值最高点的坐标(Xh,Yh)为中心,设定阈值T1,取第一方正形搜索窗口,长=图像长度×0.15,宽=图像宽度×0.2,在搜索窗口内扫描每一个像素的灰度值,若该像素的灰度值大于阈值T1则以该像素为新的中心,设定阈值T2,取第二正方形搜索窗口,长=图像长度×0.1,宽=图像宽度×0.15,在该窗口内,扫描每个像素的灰度值,并计算小于阈值T2的像素的个数,设定阈值T3,若小于阈值T2的像素的个数大于阈值T3则停止扫描并认为该像素为检测到的光斑,如图4所示,紫色标记对光斑进行标记定位;否则继续扫描直到扫描完窗口内所有像素为止,若扫描完第二窗口内的所有像素均未检测到光斑则认为没有检测到光斑重新采集图像进行运算;其中,T1=搜索到的像素灰度值最高点的灰度值H×0.9,T2=搜索到的像素灰度值最低点的灰度值L×1.2,T3=图像长度×0.1×图像宽度×0.15×0.3;如果步骤(2)中得到的像素灰度值最高点(Xh,Yh)的灰度值H小于T1×0.5+T2,则认为该图像上没有光斑,重复前述所有步骤直至确定图像上有光斑;
(4)计算光斑中心:以检测到的光斑坐标为圆心,设定光斑区域搜索范围,即光斑为中心的15×15的窗口,如图5a所示,逐个扫描区域内的像素的灰度值,利用亮度加权算法,计算光斑的中心C1,如图5b所示;
(5)计算瞳孔灰度阈值:光斑中心C1为中心,设定瞳孔搜索范围为长=图像长度×0.2,宽=图像宽度×0.3,在该范围内统计灰度直方图,如图6所示,用贪心算法计算瞳孔灰度阈值、光斑灰度阈值,利用阈值调整算法,通过分析比较光斑阈值和瞳孔阈值对瞳孔阈值进行调整,具体调整原则为,若瞳孔阈值小于光斑阈值×0.4,则将瞳孔阈值调整为,新瞳孔阈值=(旧瞳孔阈值+光斑灰度阈值×0.5)/2;若瞳孔阈值大于光斑阈值×0.6,则将瞳孔阈值调整为,新瞳孔阈值=(旧瞳孔阈值+光斑灰度阈值×0.5)/2;其他情况下,瞳孔阈值不进行调整;
(6)粗略计算瞳孔中心位置:以光斑中心为中心,设定瞳孔搜索范围,根据灰度直方图计算得到的瞳孔灰度阈值,利用重心法计算瞳孔中心,若通过计算未得到瞳孔中心坐标则认为未检测到瞳孔,重新采集人眼图像,并从步骤(1)开始重新进行计算,直至计算得到瞳孔中心坐标;若计算得到瞳孔中心坐标则认为检测到瞳孔,并比较新、旧瞳孔中心的坐标,第一次计算时认为光斑中心坐标等于旧的瞳孔中心坐标,若新瞳孔横坐标、纵坐标与对应旧瞳孔横坐标、纵坐标的差值均小于1,则停止运算,采集图像过程如图7a所示,否则以该坐标为瞳孔中心坐标;若新瞳孔横坐标、纵坐标与对应旧瞳孔横坐标、纵坐标的差值中任何一值大于1,则以新的瞳孔中心坐标为中心,缩小搜索窗口,迭代运算瞳孔中心,直到新旧瞳孔中心坐标的横纵差值均小于1为止,整个过程如图7b、图7c所示,若瞳孔中心坐标始终无法收敛则认为未检测到瞳孔,重新采集人眼图像并从步骤(1)开始重新进行计算;需要说明的是,图7b进而了局部二值化,是为了展示瞳孔搜索区域变化的过程,最后最小的框体内只有瞳孔,没有其他噪声的干扰,说明这个算法是有效的。
(7)剔除虚假光斑:计算瞳孔中心到光斑中心的距离,若该距离大于100像素,则修改原光斑范围内像素的灰度值,优选的,以光斑中心C1为中心,在长=图像长度×0.02,宽=图像宽度×0.03区域内,将窗口内的像素的灰度值修改为当前像素灰度值×0.5,依据步骤(4)计算的得到的光斑中心C1,以C1为中心在15×15窗口内将窗口内的像素的灰度值修改为当前像素灰度值×0.5,重新计算光斑中心和瞳孔中心,以瞳孔中心为中心设定二值化区域,利用瞳孔灰度阈值进行局部二值化,并统计二值化区域内小于瞳孔灰度阈值的像素个数;
(8)边缘检测:若二值化区域内小于瞳孔灰度阈值的像素个数小于搜索区域面积×0.1或二值化区域内小于瞳孔灰度阈值的像素个数大于搜索区域面积×0.5则认为没有检测到瞳孔,重新采集人眼图像,重新计算,利用9×9模板的索贝尔算子进行瞳孔区域的边缘检测,如图8a、图8b所示;
(9)瞳孔边缘点提取:以瞳孔中心为中心,做一条直线,从瞳孔中心出发分别沿直线的两个方向,扫描直线上的像素的灰度值,图9a所示,若灰度值为0则继续扫描,若灰度值为255,以该像素坐标为中心设定窗口,窗口长:图像长度×0、2,窗口宽:图像宽度×0.4,计算瞳孔边缘点坐标,利用得到的重心坐标沿梯度方向上将扫描直线穿过的相关点的梯度值变化拟合成一条二次曲线y=aX^2+bX+C,通过令曲线导数为零的条件建立方程来确定亚像素边界点的位置,并将得到的瞳孔边缘点坐标加入瞳孔边缘点队列,改变直线角度,使直线旋转扫描180度,结果如图9b所示;
(10)瞳孔边缘点筛选并拟合椭圆:利用得到的瞳孔边缘点坐标,计算瞳孔边缘点到瞳孔中心的距离,并计算瞳孔边缘点到瞳孔中心的平均距离;将每个边缘点计算得到的到瞳孔中心的距离与平均距离进行比值运算,若该比值不在阈值T5范围内,则排除该边缘点,迭代计算平均距离直至平均距离稳定为止,筛选结果如图10a所示;将筛选过的瞳孔边缘点,利用最小二乘法,拟合最优椭圆(0.7<T5<1.2),拟合结果如图10b所示;
(11)计算瞳孔边缘点进一步优化:以最优椭圆中心为平面坐标系的中心,以椭圆的长轴为y轴,以椭圆的短轴为x轴,计算瞳孔边缘点在以椭圆中心为原点的平面坐标系内的坐标,计算与瞳孔边缘点拥有相同横坐标的最优椭圆上的点对应的纵坐标,将计算得到的纵坐标与对应瞳孔边缘点的纵坐标进行比值运算,将比值与阈值T6比较,若在阈值T6范围内,0<T6<0.15,则加入新的瞳孔边缘队列,若不在范围内则不加入新的瞳孔边缘队列,筛选结果如图11所示;
(12)计算视线坐标:基于新的瞳孔边缘点队列,利用最小二乘法,拟合最优椭圆,图12a为示例图,第二次拟合的椭圆中心和光斑中心计算PCR向量,即瞳孔中心与光斑中心连线形成的向量,设瞳孔中心为(x1,y1),光斑中心为(x2,y2),则PCR向量为(x1-x2,y1-y2),根据PCR向量和人眼参数,带入视线计算公式,计算视线坐标,如图12b所示。
Claims (9)
1.一种基于单摄像头单光源的视线追踪方法,包括:
数据采集步骤,具体为通过装有摄像头的感应设备,采集人眼的图像数据;
数据处理步骤,包括计算机接收采集的人眼数据,通过计算机使用视线追踪算法进行分析和处理,并定位视线坐标;
数据分析结果输出步骤,接收数据处理步骤的分析处理结果并输出到数字显示屏显示给客户或打印机打印给客户;
其特征在于:所述数据处理步骤中的视线追踪算法具体包括以下步骤:
(1)图像预处理:对摄像头捕捉到的人眼图像进行桶形畸变校正,再将其转化为灰度图像,对灰度图像进行中值滤波和高斯模糊;
(2)确定光斑搜索区域:在灰度图像上寻找反射光斑粗略中心,在搜索范围内扫描图像上的每个像素的灰度值,记录搜索范围内像素灰度值最高点的灰度值H和坐标(Xh,Yh),同时记录像素灰度值最低点的灰度值L和坐标(Xl,Yl);
(3)搜索光斑位置:以搜索到的像素灰度值最高点的坐标(Xh,Yh)为中心,设定阈值T1,取第一正方形搜索窗口,在搜索窗口内扫描每一个像素的灰度值,若该像素的灰度值大于阈值T1则以该像素为新的中心,设定阈值T2,取第二正方形搜索窗口,在该窗口内,扫描每个像素的灰度值,并计算小于阈值T2的像素的个数,设定阈值T3,若小于阈值T2的像素的个数大于阈值T3则停止扫描并认为该像素为检测到的光斑,否则继续扫描直到扫描完窗口内所有像素为止,若扫描完第二窗口内的所有像素均未检测到光斑则认为没有检测到光斑重新采集图像进行运算;其中,T1=搜索到的像素灰度值最高点的灰度值H×0.9,T2=搜索到的像素灰度值最低点的灰度值L×1.2,T3=图像长度×0.1×图像宽度×0.15×(0.1~0.8);如果步骤(2)中得到的像素灰度值最高点(Xh,Yh)的灰度值H小于T1×0.5+T2,则认为该图像上没有光斑,重复前述所有步骤直至确定图像上有光斑;
(4)计算光斑中心:以检测到的光斑坐标为圆心,设定光斑区域搜索范围,即光斑为中心的15×15的窗口,逐个扫描区域内的像素的灰度值,利用亮度加权算法,计算光斑的中心C1;
(5)计算瞳孔灰度阈值:光斑中心C1为中心,设定瞳孔搜索范围,统计灰度直方图,用贪心算法计算瞳孔灰度阈值、光斑灰度阈值,利用阈值调整算法,通过分析比较光斑阈值和瞳孔阈值对瞳孔阈值进行调整;
(6)粗略计算瞳孔中心位置:以光斑中心为中心,设定瞳孔搜索范围,根据灰度直方图计算得到的瞳孔灰度阈值,利用重心法计算瞳孔中心,若通过计算未得到瞳孔中心坐标则认为未检测到瞳孔,重新采集人眼图像,并从步骤(1)开始重新进行计算,直至计算得到瞳孔中心坐标;若计算得到瞳孔中心坐标则认为检测到瞳孔,并比较新、旧瞳孔中心的坐标,第一次计算时认为光斑中心坐标等于旧的瞳孔中心坐标,若新瞳孔横坐标、纵坐标与对应旧瞳孔横坐标、纵坐标的差值均小于1,则停止运算,否则以该坐标为瞳孔中心坐标;若新瞳孔横坐标、纵坐标与对应旧瞳孔横坐标、纵坐标的差值中任何一值大于1,则以新的瞳孔中心坐标为中心,缩小搜索窗口,迭代运算瞳孔中心,直到新旧瞳孔中心坐标的横纵差值均小于1为止,若瞳孔中心坐标始终无法收敛则认为未检测到瞳孔,重新采集人眼图像并从步骤(1)开始重新进行计算;
(7)剔除虚假光斑:计算瞳孔中心到光斑中心的距离,若该距离大于100像素,则修改原光斑范围内像素的灰度值,依据步骤(4)计算的得到的光斑中心C1,以C1为中心在15×15窗口内将窗口内的像素的灰度值修改为当前像素灰度值×0.5,重新计算光斑中心和瞳孔中心,以瞳孔中心为中心设定二值化区域,利用瞳孔灰度阈值进行局部二值化,并统计二值化区域内小于瞳孔灰度阈值的像素个数;
(8)边缘检测:若二值化区域内小于瞳孔灰度阈值的像素个数小于搜索区域面积×0.1或二值化区域内小于瞳孔灰度阈值的像素个数大于搜索区域面积×0.5则认为没有检测到瞳孔,重新采集人眼图像,重新计算,利用9×9模板的索贝尔算子进行瞳孔区域的边缘检测;
(9)瞳孔边缘点提取:以瞳孔中心为中心,做一条直线,从瞳孔中心出发分别沿直线的两个方向,扫描直线上的像素的灰度值,若灰度值为0则继续扫描,若灰度值为255,以该像素坐标为中心设定窗口,窗口长:图像长度×0.2,窗口宽:图像宽度×0.4,计算瞳孔边缘点坐标,利用得到的重心坐标沿梯度方向上将扫描直线穿过的相关点的梯度值变化拟合成一条二次曲线y=aX^2+bX+C,通过令曲线导数为零的条件建立方程来确定亚像素边界点的位置,并将得到的瞳孔边缘点坐标加入瞳孔边缘点队列,改变直线角度,使直线旋转扫描180度;
(10)瞳孔边缘点筛选并拟合椭圆:利用得到的瞳孔边缘点坐标,计算瞳孔边缘点到瞳孔中心的距离,并计算瞳孔边缘点到瞳孔中心的平均距离;将每个边缘点计算得到的到瞳孔中心的距离与平均距离进行比值运算,若该比值不在阈值T5范围内,则排除该边缘点,迭代计算平均距离直至平均距离稳定为止;将筛选过的瞳孔边缘点,利用最小二乘法,拟合最优椭圆,0.7<T5<1.2;
(11)计算瞳孔边缘点进一步优化:以最优椭圆中心为平面坐标系的中心,以椭圆的长轴为y轴,以椭圆的短轴为x轴,计算瞳孔边缘点在以椭圆中心为原点的平面坐标系内的坐标,计算与瞳孔边缘点拥有相同横坐标的最优椭圆上的点对应的纵坐标,将计算得到的纵坐标与对应瞳孔边缘点的纵坐标进行比值运算,将比值与阈值T6比较,若在阈值T6范围内,0<T6<0.15,则加入新的瞳孔边缘队列,若不在范围内则不加入新的瞳孔边缘队列;
(12)计算视线坐标:基于新的瞳孔边缘点队列,利用最小二乘法,拟合最优椭圆,第二次拟合的椭圆中心和光斑中心计算PCR向量,即瞳孔中心与光斑中心连线形成的向量,设瞳孔中心为(x1,y1),光斑中心为(x2,y2),则PCR向量为(x1-x2,y1-y2),根据PCR向量和人眼参数,带入视线计算公式,计算视线坐标。
2.根据权利要求1所述基于单摄像头单光源的视线追踪方法,其特征在于:所述第一正方形搜索窗口选为:长=图像长度×0.15,宽=图像宽度×0.2。
3.根据权利要求1所述基于单摄像头单光源的视线追踪方法,其特征在于:所述第二正方形搜索窗口选为:长=图像长度×0.1,宽=图像宽度×0.15。
4.根据权利要求1所述基于单摄像头单光源的视线追踪方法,其特征在于:所述T3确定为,图像长度×0.1×图像宽度×0.15×0.3。
5.根据权利要求1所述基于单摄像头单光源的视线追踪方法,其特征在于:所述瞳孔搜索范围优选为:长=图像长度×0.2,宽=图像宽度×0.3。
6.根据权利要求1所述基于单摄像头单光源的视线追踪方法,其特征在于:所述步骤(7)中的修改原光斑范围内的像素的灰度值具体指:以光斑中心C1为中心,在长=图像长度×0.02,宽=图像宽度×0.03区域内,将窗口内的像素的灰度值修改为当前像素灰度值×0.5。
7.根据权利要求2所述基于单摄像头单光源的视线追踪方法,其特征在于:所述感应设备由嵌入在眼镜的镜框上的摄像头,与眼镜一起构成。
8.根据权利要求1所述基于单摄像头单光源的视线追踪方法,其特征在于:步骤(5)中的通过分析比较光斑阈值和瞳孔阈值对瞳孔阈值进行调整,具体为:若瞳孔阈值小于光斑阈值×0.4,则将瞳孔阈值调整为,新瞳孔阈值=(旧瞳孔阈值+光斑灰度阈值×0.5)/2;若瞳孔阈值大于光斑阈值×0.6,则将瞳孔阈值调整为,新瞳孔阈值=(旧瞳孔阈值+光斑灰度阈值×0.5)/2;其他情况下,瞳孔阈值不进行调整。
9.根据权利要求1所述基于单摄像头单光源的视线追踪方法,其特征在于:所述感应设备由嵌入在眼镜的镜框上的摄像头,与眼镜一起构成。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210346380.5A CN103679180B (zh) | 2012-09-19 | 2012-09-19 | 一种基于单摄像头单光源的视线追踪方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210346380.5A CN103679180B (zh) | 2012-09-19 | 2012-09-19 | 一种基于单摄像头单光源的视线追踪方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103679180A CN103679180A (zh) | 2014-03-26 |
CN103679180B true CN103679180B (zh) | 2017-06-16 |
Family
ID=50316669
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210346380.5A Active CN103679180B (zh) | 2012-09-19 | 2012-09-19 | 一种基于单摄像头单光源的视线追踪方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103679180B (zh) |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2977931A1 (en) * | 2014-07-24 | 2016-01-27 | Universität Zürich | Method for tracking keypoints in a scene |
CN104905765B (zh) * | 2015-06-08 | 2017-01-18 | 四川大学华西医院 | 眼动跟踪中基于CamShift算法的FPGA实现方法 |
CN105590109B (zh) * | 2016-02-29 | 2019-02-15 | 徐鹤菲 | 一种虹膜识别预处理方法和装置 |
CN105678286B (zh) * | 2016-02-29 | 2019-03-15 | 徐鹤菲 | 一种瞳孔定位方法及设备 |
CN106774863B (zh) * | 2016-12-03 | 2020-07-07 | 西安中科创星科技孵化器有限公司 | 一种基于瞳孔特征实现视线追踪的方法 |
CN106604130A (zh) * | 2016-12-03 | 2017-04-26 | 西安科锐盛创新科技有限公司 | 一种基于视线追踪的视频播放方法 |
CN106774862B (zh) * | 2016-12-03 | 2020-07-31 | 学能通(山东)智能设备有限公司 | 基于视线的vr显示方法及vr设备 |
WO2018184243A1 (zh) * | 2017-04-08 | 2018-10-11 | 闲客智能(深圳)科技有限公司 | 一种眼动方向识别方法及装置 |
CN107633240B (zh) * | 2017-10-19 | 2021-08-03 | 京东方科技集团股份有限公司 | 视线追踪方法和装置、智能眼镜 |
CN107729871A (zh) * | 2017-11-02 | 2018-02-23 | 北方工业大学 | 基于红外光的人眼活动轨迹追踪方法及装置 |
CN108280403B (zh) | 2017-12-27 | 2020-08-04 | 北京七鑫易维信息技术有限公司 | 确定瞳孔位置的方法和装置 |
JP6717330B2 (ja) * | 2018-03-15 | 2020-07-01 | オムロン株式会社 | 視線検出装置、該視線検出装置の制御方法、角膜反射像位置の検出方法、及びコンピュータプログラム |
CN109145821B (zh) * | 2018-08-16 | 2020-11-06 | 新智数字科技有限公司 | 一种对人眼图像中瞳孔图像进行定位的方法及装置 |
CN109376595B (zh) * | 2018-09-14 | 2023-06-23 | 杭州宇泛智能科技有限公司 | 基于人眼注意力的单目rgb摄像头活体检测方法及系统 |
CN110276324B (zh) * | 2019-06-27 | 2021-06-22 | 北京万里红科技股份有限公司 | 一种虹膜图像中确定瞳孔椭圆的方法 |
CN112528713A (zh) * | 2019-09-19 | 2021-03-19 | 北京七鑫易维信息技术有限公司 | 一种注视点估计方法、系统、处理器及设备 |
CN112528714B (zh) * | 2019-09-19 | 2024-06-14 | 北京七鑫易维信息技术有限公司 | 基于单光源的注视点估计方法、系统、处理器及设备 |
CN110929672B (zh) * | 2019-11-28 | 2024-03-01 | 联想(北京)有限公司 | 瞳孔定位方法和电子设备 |
CN114428398B (zh) * | 2020-10-29 | 2023-12-26 | 北京七鑫易维信息技术有限公司 | 一种光斑与光源的匹配方法、装置、设备及存储介质 |
CN113554699B (zh) * | 2021-07-23 | 2023-05-30 | 东方红卫星移动通信有限公司 | 一种基于峰值的光斑图像定位方法及其系统 |
CN114862828A (zh) * | 2022-05-30 | 2022-08-05 | Oppo广东移动通信有限公司 | 光斑搜索方法装置、计算机可读介质和电子设备 |
CN115359548B (zh) * | 2022-07-22 | 2023-07-18 | 吉林大学第一医院 | 一种手持式智能瞳孔检测装置及检测方法 |
CN117710280A (zh) * | 2022-09-07 | 2024-03-15 | 南京博视医疗科技有限公司 | 一种瞳孔自动定位方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5481622A (en) * | 1994-03-01 | 1996-01-02 | Rensselaer Polytechnic Institute | Eye tracking apparatus and method employing grayscale threshold values |
US6637883B1 (en) * | 2003-01-23 | 2003-10-28 | Vishwas V. Tengshe | Gaze tracking system and method |
CN201477518U (zh) * | 2009-08-31 | 2010-05-19 | 北京科技大学 | 一种基于瞳孔角膜反射方法的视线追踪装置 |
CN102125422A (zh) * | 2010-01-12 | 2011-07-20 | 北京科技大学 | 视线追踪系统中基于瞳孔-角膜反射的视线估计方法 |
CN102551385A (zh) * | 2011-12-29 | 2012-07-11 | 广东工业大学 | 基于视线追踪的自动翻页阅读椅及其控制装置及控制方法 |
-
2012
- 2012-09-19 CN CN201210346380.5A patent/CN103679180B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5481622A (en) * | 1994-03-01 | 1996-01-02 | Rensselaer Polytechnic Institute | Eye tracking apparatus and method employing grayscale threshold values |
US6637883B1 (en) * | 2003-01-23 | 2003-10-28 | Vishwas V. Tengshe | Gaze tracking system and method |
CN201477518U (zh) * | 2009-08-31 | 2010-05-19 | 北京科技大学 | 一种基于瞳孔角膜反射方法的视线追踪装置 |
CN102125422A (zh) * | 2010-01-12 | 2011-07-20 | 北京科技大学 | 视线追踪系统中基于瞳孔-角膜反射的视线估计方法 |
CN102551385A (zh) * | 2011-12-29 | 2012-07-11 | 广东工业大学 | 基于视线追踪的自动翻页阅读椅及其控制装置及控制方法 |
Non-Patent Citations (1)
Title |
---|
一种新的基于瞳孔-角膜反射技术的视线追踪方法;张闯 等;《计算机学报》;20100731;第33卷(第7期);第1274页右栏第4段至第1275页左栏第3段,图2-6 * |
Also Published As
Publication number | Publication date |
---|---|
CN103679180A (zh) | 2014-03-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103679180B (zh) | 一种基于单摄像头单光源的视线追踪方法 | |
CN106598221B (zh) | 基于眼部关键点检测的3d视线方向估计方法 | |
CN111012301B (zh) | 一种头戴式目视精确瞄准系统 | |
CN109754377A (zh) | 一种多曝光图像融合方法 | |
CN103702015B (zh) | 一种近红外条件下人脸图像采集系统的曝光控制方法 | |
CN108985210A (zh) | 一种基于人眼几何特征的视线追踪方法及系统 | |
WO2011155150A1 (en) | Image processing apparatus, image processing method, and program | |
CN107705288A (zh) | 伪目标运动强干扰下的危险气体泄漏红外视频检测方法 | |
CN108681992A (zh) | 用于探测器阵列法测量激光光斑的图像插值算法 | |
CN104732191B (zh) | 利用交比不变性实现虚拟显示屏视线追踪的装置及其方法 | |
CN105117705B (zh) | 一种虹膜图像质量级联式评价方法 | |
CN108742656A (zh) | 基于脸部特征点定位的疲劳状态检测方法 | |
CN109145803A (zh) | 手势识别方法及装置、电子设备、计算机可读存储介质 | |
US11810293B2 (en) | Information processing device, information processing method, and computer program | |
CN107862240A (zh) | 一种多摄像头协同的人脸追踪方法 | |
CN111291701A (zh) | 一种基于图像梯度和椭圆拟合算法的视线追踪方法 | |
CN114926407A (zh) | 一种基于深度学习的钢材表面缺陷检测系统 | |
JP2019503214A (ja) | ヒューリスティックグラフ探索による階層画像の高速自動区分化 | |
CN109060290A (zh) | 基于视频和亚像素技术对风洞密度场进行测量的方法 | |
CN109840484A (zh) | 一种基于边缘滤波、椭圆评价和瞳孔验证的瞳孔检测方法 | |
CN103852034A (zh) | 一种电梯导轨垂直度检测方法 | |
CN110728668A (zh) | 一种小目标形态保持的空域高通滤波器 | |
CN104156977B (zh) | 基于多线列时差扫描扩展采样的点目标运动速度探测方法 | |
CN110211021B (zh) | 图像处理装置、图像处理方法和存储介质 | |
CN111738241B (zh) | 基于双摄像头的瞳孔检测方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20231127 Address after: 430072 Hubei Province, Wuhan city Wuchang District of Wuhan University Luojiashan Patentee after: WUHAN University Address before: 430000, No. 115 Bayi Road, Wuchang District, Wuhan City, Hubei Province (No. 1004, Building 2, Science and Technology Park) Patentee before: WUHAN YUANBAO CREATIVE TECHNOLOGY Co.,Ltd. |