尧图建网站 尧图建网站 YAOTU WEB BUILD 免费咨询
ARTICLE DETAIL

资讯详情

深耕网站建设与建站编程的一线实战洞察。

用普通摄像头免费做眼动追踪:eyeLike 零成本快速上手指南

用普通摄像头免费做眼动追踪:eyeLike 零成本快速上手指南 用普通摄像头免费做眼动追踪eyeLike 零成本快速上手指南【免费下载链接】eyeLikeA webcam based pupil tracking implementation.项目地址: https://gitcode.com/gh_mirrors/ey/eyeLikeeyeLike 是一个用 OpenCV最常见的图像库写的开源眼动追踪项目从普通网络摄像头的画面里实时找出双眼瞳孔中心并把坐标画出来。硬件只要一台 USB 摄像头跑通约二十分钟。它能帮你做什么4 个能落地的眼动追踪场景交互原型视线触发菜单选择做看哪点到哪的演示全程不动鼠标。眼控输入为不方便使用键鼠的人搭一套眼神打字的基础框架。注意力与阅读研究记录注视落点和停留时长分析课堂注意力或阅读行为。计算机视觉入门源码不到千行梯度、滤波、阈值这些基础操作全部摆在明面上适合当范文读。先说清一点它输出的是瞳孔中心坐标还不等于你在屏幕上看哪里。这个区别决定了它适合做什么后文边界一节展开。最小化安装步骤摄像头眼动追踪从依赖到运行装依赖编译器、CMake、OpenCV 三件套Ubuntu/Debian 一条命令即可sudo apt install build-essential cmake libopencv-dev。OpenCV 建议 3.4 起步4.x 也兼容。拿代码再跑起来git clone https://gitcode.com/gh_mirrors/ey/eyeLike cd eyeLike mkdir -p build cd build cmake .. make -j4 ./bin/eyeLike窗口打开后程序同时显示主画面、人脸裁剪和左右眼三个调试窗口。按f把当前帧存成frame.png便于事后分析按c退出。注意在build目录下启动可执行文件——人脸检测模型用的是相对路径见 src/main.cpp。工作原理从一帧画面到瞳孔中心的四段流水线整套眼动追踪就是一条流水线每段的输出都是下一段的输入。① 检测先框出人脸。程序加载res/里预训练好的 Haar 级联分类器——一种扫一遍画面就能框出人脸的检测模型——在红色通道上找最大的一张脸。这个人脸矩形就是第二步的输入。② 定位按百分比裁出眼区。在人脸矩形内部用固定比例切出左右眼的小区域顶部偏移、眼区宽高这些比例集中在 src/constants.h不依赖额外的眼睛检测器。两个小眼区图像送进第三步。③ 计算让梯度投票选出瞳孔。这是 Fabian Timm 的算法实现见 src/findEyeCenter.cpp。先算图像梯度也就是相邻像素亮度突变的方向和强度再按阈值筛掉弱梯度。每个强梯度点朝自己指向的候选位置投一票票分最高的点即瞳孔中心。随后一次泛洪填充清掉容易出现在区域边缘的假峰。坐标到手进入收尾。④ 可视化画给你看。OpenCV 窗口实时画出人脸框、眼区框和瞳孔点原始帧与裁剪结果各占一窗方便你逐段核对结果。追踪不准的排查方法调优手册先对号入座再动手改参数你看到的现象排查顺序瞳孔点来回跳、不稳定先查光照去掉面部直射光、压低摄像头曝光再查距离与角度50–70 cm、镜头略高于眼睛朝下压把镜面反光压下去瞳孔点总钉在眼框边缘打开kPlotVectorField观察梯度方向是否收敛到瞳孔或微调kPostProcessThreshold眼区裁切位置偏了调整 src/constants.h 里kEyePercentTop、kEyePercentWidth等四个百分比帧率掉得厉害把输入分辨率降下来或缩小参与计算的区域眼区比例参数长这样节选自 src/constants.hconst int kEyePercentTop 25; const int kEyePercentWidth 35; const double kGradientThreshold 50.0;改完重新make一次即生效。先看清它的边界适合、不适合与替代选型适合学计算机视觉基础——代码量小、流程透明每步都能打印中间结果做低成本原型验证——只要瞳孔在哪这一个信号它已经够用。不适合直接做屏幕级视线定位。作者在 Readme.md 里写得很直白目前只是算法的参考实现瞳孔定位效果不错但缺眼角这类参考点算不出你实际在看屏幕的哪个位置。需要 120fps 以上帧率或医疗级精度的场合也别选它。替代选型预算充足、想要开箱即用的硬件可以看 Eye Tribe 这类消费级眼动仪要纯摄像头的商用能力XLabsgaze 提供 SDK 和浏览器插件坚持开源又要完整视线追踪Pupil 目前最成熟代价是需要专用硬件头环。常见故障三个高频问题的快速处理cmake 配置阶段提示找不到 OpenCV。先确认装好了pkg-config --modversion opencv应能输出版本号。手动编译装到自定义目录的配置时显式指路cmake -DOpenCV_DIR/你的/opencv/路径 ..。核对 CMake 与编译器版本CMake 3.10、GCC 7。程序启动了窗口里却没有画面摄像头打不开。看设备是否存在、有无读权限ls -l /dev/video0。关掉正占用摄像头的程序视频会议、录屏工具。代码默认取 0 号摄像头多设备时改 src/main.cpp 里的设备索引。检测到瞳孔坐标却忽前忽后地漂。按上面调优手册的顺序先过一遍光照和距离。微调 src/constants.h 里的眼区百分比让瞳孔落在眼框正中。头部尽量稳住——头部大幅移动会放大定位误差。回到安装章节把仓库拉下来跑一遍./bin/eyeLike拿到稳定的瞳孔坐标你的眼动交互就从这里开始。【免费下载链接】eyeLikeA webcam based pupil tracking implementation.项目地址: https://gitcode.com/gh_mirrors/ey/eyeLike创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表