3、主流眼动追踪方法:视频眼动追踪、角膜反射法、双普尔基涅法、电生理法
眼动追踪这个领域,说实话,方法多得让人眼花缭乱。但真正在近眼显示里用得上的,也就那么几种。我这些年做项目,几乎每种方法都踩过坑,今天就把它们掰开揉碎了讲清楚。
3.1 视频眼动追踪——最通用的方案
视频眼动追踪,说白了就是用摄像头拍眼睛,然后通过图像算法算出你在看哪。这是目前消费级VR头显里最主流的方法。
基本原理:
- 用红外LED照亮眼睛,摄像头捕捉瞳孔和角膜反射光斑
- 通过瞳孔中心与光斑的相对位置,估算视线方向
- 通常需要个人校准,因为每个人的眼球参数不一样
我个人习惯把这种方法叫做「拍脑袋法」——不是贬义,而是说它真的就是对着脑袋拍。我在2019年做过一个项目,用的是120fps的全局快门摄像头,配合850nm的红外LED。嗯,这里要注意:摄像头帧率直接决定了追踪延迟。60fps勉强能用,120fps才够舒服。
关键参数:
- 分辨率:640×480 通常够用,但瞳孔区域至少需要30×30像素
- 帧率:90Hz以上才能匹配VR刷新率
- 延迟:从拍摄到输出结果,最好控制在5ms以内
我的经验:别迷信高分辨率。我曾经试过1280×1024的摄像头,结果处理时间太长,延迟飙到了15ms。后来换成640×480,配合硬件加速,延迟降到了3ms。有时候,够用就好。
3.2 角膜反射法——精度与鲁棒性的平衡
角膜反射法,也叫PCCR(Pupil Center Corneal Reflection)。它和视频眼动追踪很像,但多了一个关键点:利用角膜表面的反射光斑作为参考点。
为什么需要这个参考点?
你想想看,如果摄像头和眼睛之间有相对运动(比如头动了),瞳孔中心的位置就会变。但角膜反射光斑的位置也会跟着变。两者的相对位置,就能抵消掉头动的影响。
我在一个AR眼镜项目里用过这种方法。当时遇到一个坑:角膜反射光斑太亮,导致瞳孔边缘检测失败。后来怎么解决的?我调整了LED的驱动电流,从50mA降到了20mA,同时增加了曝光时间。效果立竿见影。
避坑指南:我曾经因为LED位置没调好,导致光斑落在瞳孔边缘,算法直接崩溃。后来我学乖了:LED必须放在摄像头光轴附近,且距离眼睛至少10mm,否则光斑会变形。
3.3 双普尔基涅法——实验室级的精度
双普尔基涅法,名字听着挺唬人,其实原理不复杂。它利用的是眼球不同界面的反射光:
- 第一普尔基涅像:角膜前表面反射(就是角膜反射法用的那个)
- 第四普尔基涅像:晶状体后表面反射
这两个像的相对位置,和眼球旋转角度有精确的数学关系。精度能做到0.1°以内,比视频法高一个数量级。
但为什么消费级产品不用?成本太高。你需要两套红外光源,一套在光轴上,一套在光轴外。而且第四普尔基涅像非常暗,需要高灵敏度摄像头和强光源。我记得有一次在实验室调试,为了拍到清晰的第四像,我把红外LED功率调到了200mW,结果眼睛被照得发疼——后来赶紧加了扩散片。
适用场景:
- 科研用眼动仪(如Eyelink系列)
- 需要高精度注视点分析的研究
- 临床诊断(如斜视检测)
3.4 电生理法——最古老也最稳定
电生理法,主要是EOG(眼电图)。原理很简单:眼球前后极之间存在电位差,角膜侧为正,视网膜侧为负。眼球转动时,这个电位差的方向会变化,贴在皮肤上的电极就能测出来。
这种方法的好处是:不怕遮挡,不怕光照变化。你戴着头显,眼睛被遮得严严实实,摄像头拍不到,但EOG照样工作。
但缺点也很明显:
- 需要贴电极,用户体验差
- 基线漂移严重,需要频繁校准
- 只能测相对位置,不能测绝对注视点
我在一个军用头盔项目里用过EOG。当时要求必须在强振动环境下工作,摄像头方案全挂了,只有EOG扛得住。但那个校准频率,简直让人崩溃——每5分钟就得重新校准一次。后来我们加了个自适应滤波算法,才把校准间隔延长到15分钟。
小技巧:如果你非要用EOG,记得用Ag/AgCl电极,别用不锈钢的。不锈钢电极的极化电位漂移太厉害,我吃过这个亏。
方法对比
| 方法 | 精度 | 延迟 | 成本 | 鲁棒性 | 典型应用 |
|---|---|---|---|---|---|
| 视频眼动追踪 | 0.5°-1° | 3-10ms | 低 | 中 | 消费级VR/AR |
| 角膜反射法 | 0.3°-0.5° | 2-5ms | 中 | 高 | 高端VR头显 |
| 双普尔基涅法 | 0.1°-0.3° | 1-3ms | 高 | 高 | 科研/临床 |
| 电生理法 | 1°-2° | 1-5ms | 低 | 极高 | 特殊环境/医疗 |
核心逻辑框架
下面这张图,是我自己总结的四种方法的定位关系。你可以看到,精度和鲁棒性往往不可兼得,选型时得做取舍。
从这张图可以看得很清楚:没有一种方法是完美的。视频法便宜但精度一般,双普尔基涅法精度高但贵,电生理法鲁棒性好但精度差。选型时,你得先问自己三个问题:
- 我的应用场景允许摄像头拍到眼睛吗?
- 用户能接受贴电极吗?
- 预算够不够上高精度方案?
我个人建议:消费级产品首选视频眼动追踪+角膜反射法,性价比最高。科研项目可以上双普尔基涅法。至于电生理法,除非你做的产品要在极端环境下用,否则别碰——用户体验太差了。
公众号:蓝海资料掘金营,微信deep3321