不脱发的程序猿 2020-10-17 09:27 采纳率: 0%
浏览 463

Python人眼视线追踪系统

本项目首先使用将二维的加权系数降为一维的,并与中值滤波思想相结合的双边滤波算法预处理摄像头采集的图像,去除可能出现的高斯噪声与椒盐噪声,提高了图像质量,然后对图像进行直方图均衡化提高灰度对比度,增加动态范围,为以后更好地提取特征参数提供前提,接着使用基于Haar特征的Adaboost算法检测人脸与眼睛,根据眼睛图像的灰度分布特点,在处理后的图像上使用改进的混合投影函数粗略定位瞳孔中心,使用检测出的中心点像素值作为阀值对眼睛图像进行二值化处理,将处理后的瞳孔进行圆形拟合,求出精确的瞳孔中心,由于眼睛存在不自觉的微动现象,使得检测出来的瞳孔中心位置发生跳动,因此本文将3帧的瞳孔中心坐标的平均值作为特征参数,然后截取瞳孔中心右方包含眼角的眼睛局部图像,缩小内眼角检测的范围,使用改进的自适应阈值的SUSAN角点检测算法定位内眼角位置,此时视线追踪技术需要的眼睛特征参数就全部提取出来了,然后根据人眼的结构特点,本文提出了一个简单的眼睛三维空间模型,用于对将人眼三维坐标投影到二维坐标时产生的误差进行补偿,最后创建视线空间模型,建立眼睛平面参数与计算机屏幕坐标点之间的映射函数,在此函数中加入误差补偿参数,使得视线在屏幕中的落点更为准确,根据视线凝视此区域范围的时间来判断鼠标进行移动或单击操作。

本文使用最简单的USB摄像头,在Python开发平台上建立以视线方向落点为输入的鼠标操作人机交互系统,实现了对视线方向的估计,实验表明在自然光照的环境下,本系统能够比较准确的估计视线方向,实时的反应使用者眼动的情况,与主流的视线估计系统相比,具有硬件要求低,使用方便的优点。

项目地址:https://blog.csdn.net/m0_38106923/article/details/102995809 

  • 写回答

2条回答

      报告相同问题?

      相关推荐 更多相似问题

      悬赏问题

      • ¥15 51单片机自关机代码实现
      • ¥15 TensorFlow Object Detection API
      • ¥15 粘贴替换字符串的时候,右边引号会自动换行导致报错
      • ¥15 用verilog HDL语法仿真
      • ¥15 用超表面产生涡旋光束,怎么用matlab代码算得到的涡旋光束的模式纯度
      • ¥40 返乡没拿电脑航班取消被困在机场了,C语言实验ddl要到了
      • ¥15 find 命令优化语句问题
      • ¥15 js 使用contenteditable属性模拟富文本框 实现具体关键字高亮
      • ¥15 QT QList<QLIst<int>> 遍历问题
      • ¥15 关于#C++#2048游戏问题