CN113505694B - 一种基于视线追踪的人机交互方法、装置及计算机设备 - Google Patents
一种基于视线追踪的人机交互方法、装置及计算机设备 Download PDFInfo
- Publication number
- CN113505694B CN113505694B CN202110776170.9A CN202110776170A CN113505694B CN 113505694 B CN113505694 B CN 113505694B CN 202110776170 A CN202110776170 A CN 202110776170A CN 113505694 B CN113505694 B CN 113505694B
- Authority
- CN
- China
- Prior art keywords
- image
- camera
- coordinate system
- sight
- head
- 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 62
- 230000003993 interaction Effects 0.000 title claims abstract description 59
- 238000013527 convolutional neural network Methods 0.000 claims abstract description 30
- 238000007781 pre-processing Methods 0.000 claims abstract description 17
- 210000003128 head Anatomy 0.000 claims description 55
- 239000011159 matrix material Substances 0.000 claims description 43
- 239000013598 vector Substances 0.000 claims description 32
- 210000001508 eye Anatomy 0.000 claims description 31
- 238000012549 training Methods 0.000 claims description 19
- 230000009466 transformation Effects 0.000 claims description 19
- 238000010606 normalization Methods 0.000 claims description 16
- 238000013519 translation Methods 0.000 claims description 15
- 230000008569 process Effects 0.000 claims description 14
- 230000006870 function Effects 0.000 claims description 13
- 238000004422 calculation algorithm Methods 0.000 claims description 12
- 238000001514 detection method Methods 0.000 claims description 8
- 238000013507 mapping Methods 0.000 claims description 7
- 230000036544 posture Effects 0.000 claims description 7
- 238000004590 computer program Methods 0.000 claims description 6
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 claims description 4
- 230000004913 activation Effects 0.000 claims description 4
- 238000006243 chemical reaction Methods 0.000 claims description 4
- 230000000694 effects Effects 0.000 claims description 3
- 230000001815 facial effect Effects 0.000 claims description 3
- 238000004364 calculation method Methods 0.000 claims description 2
- 230000008859 change Effects 0.000 claims description 2
- 210000005252 bulbus oculi Anatomy 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 11
- 230000002452 interceptive effect Effects 0.000 description 8
- 238000012545 processing Methods 0.000 description 8
- 230000000007 visual effect Effects 0.000 description 7
- 238000004891 communication Methods 0.000 description 5
- 230000000875 corresponding effect Effects 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000002474 experimental method Methods 0.000 description 3
- 239000000284 extract Substances 0.000 description 3
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 210000004087 cornea Anatomy 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000004424 eye movement Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 210000001747 pupil Anatomy 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/02—Affine transformations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/80—Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2218/00—Aspects of pattern recognition specially adapted for signal processing
- G06F2218/08—Feature extraction
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Health & Medical Sciences (AREA)
- Human Computer Interaction (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Biophysics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Image Analysis (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本发明涉及人机交互领域,特别是涉及一种基于视线追踪的人机交互方法、装置及计算机设备。一种基于视线追踪的人机交互方法,包括如下步骤,采集图像,对图像进行预处理,得到双眼图像和人脸图像;将双眼图像和人脸图像输入到视线估计模型中,得到标准化空间下视线角度。本发明基于表观视线追踪的思路,利用常见的网络摄像头作为图像数据采集设备,使用一种改进的卷积神经网络估计出视线方向,然后映射到屏幕形成二维注视点,在交互界面移动注视点生成控制命令实现交互功能。
Description
技术领域
本发明涉及人机交互领域,特别是涉及一种基于视线追踪的人机交互方法、装置及计算机设备。
背景技术
人机交互是计算机系统的重要组成部分。从计算机诞生以来,人机交互的发展经历了命令交互、图形用户界面交互和自然人机交互这三个阶段。自然人机交互是指交互方式自然直观,用户使用日常技能就能进行的人机交互。基于视线追踪的人机交互是自然人机交互的一种,比用鼠标交互更自然、更快速,且不需要动手操作,因此基于视线追踪人机交互技术具有广泛的应用前景。
现有的商品化视线追踪设备眼动仪通过使用复杂的设备和瞳孔角膜反射技术实现相关功能,例如Tobbi的EyeX眼动仪、EyeLink的1000Plus眼动仪、EyeTrace的XY1000眼动仪等,使用者需佩戴专用设备来进行眼动追踪,操作复杂且需要昂贵的设备成本,使得眼动仪难以在实际生活中普及。而目前使用普通单目相机的基于表观视线追踪的方法可以使用机器学习或深度学习方法直接从眼睛图像回归到注视方向,例如Zhang等建立了视线估计基准数据集MPIIFaceGaze。他们直接将LeNet-5网络结构应用于眼睛图像,得到了6.3度的视线估计误差。基于表观的视线追踪方法不需要复杂的专用设备,但精度较低,鲁棒性较差。因此,实现精度较高,设备简单,更易普及的眼动交互技术具有重要意义。
发明内容
针对现有技术存在的技术问题,本发明基于表观视线追踪的思路,利用常见的网络摄像头作为图像数据采集设备,使用一种改进的卷积神经网络估计出视线方向,然后映射到屏幕形成二维注视点,在交互界面移动注视点生成控制命令实现交互功能。本发明不需要复杂额外设备,可以实现精度较高的视线估计,并且可以应用于人机交互领域,交互自然,易集成在个人设备,有广泛的应用前景。
为实现上述目的,本发明提供了如下技术方案:
一种基于视线追踪的人机交互方法,包括如下步骤,
采集图像,对图像进行预处理,得到双眼图像和人脸图像;
将双眼图像和人脸图像输入到视线估计模型中,得到标准化空间下视线角度。
本技术方案进一步的优化,所述图像预处理,对用户图像进行人脸检测和关键点检测,根据检测到的二维人脸关键点和通用三维人脸关键点模型进行拟合,得到估计的头部姿态角;通过透视变换将原始图像转换到标准化空间,得到视线估计模型所需的标准化空间下的双眼图像和人脸图像。
本技术方案更进一步的优化,所述人脸检测采用RetinaFace算法,然后在人脸区域内使用PFLD算法检测人脸关键点。
本技术方案更进一步的优化,所述头部姿态通过计算从通用三维人脸关键点模型到图像中检测到的二维人脸关键点的仿射变换矩阵得到估计的头部姿态。
本技术方案更进一步的优化,所述图像进行归一化处理,头部坐标系的原点设为go,并将从相机坐标系到头部坐标系的旋转矩阵和平移向量分别表示为Rr和er,标准化过程会通过透视变换将输入图像转换到标准化空间,以使标准化的图像满足:标准化的摄像机看着头部坐标系的原点,而眼睛的中心位于标准化图像的中心;头部和相机坐标系的x轴在同一平面上;归一化摄像机位于眼睛中心的固定距离dn处,眼睛在归一化图像中具有相同的大小。
本技术方案进一步的优化,所述视线估计模型为卷积神经网络模型,其中,应用于双眼图像的卷积神经网络是由EfficientNet-B0的卷积神经网络部分和后面跟的一个1×1卷积神经网络、批量归一化和Swish激活函数组成;应用于面部图像的卷积神经网络是MobileNetV3-Small的提取特征部分的卷积神经网络。
本技术方案进一步的优化,还包括映射到屏幕,根据使用正交约束的镜面反射相机外参标定方法得到相机和屏幕的旋转平移关系。
一种基于视线追踪的人机交互装置,该人机交互装置包括,
采集模块,用于采集用户图像数据;
标定模块,用于根据采集的标定图片计算得出相机和屏幕的旋转平移关系;
预处理模块,用于对采集到的用户图像进行预处理得到处理模块所需的输入;
处理模块,用于对经过预处理模块处理的用户图像进行计算得到二维屏幕注视点坐标。
本技术方案进一步的优化,还包括交互模块,对二维屏幕注视点坐标进行处理生成不同控制指令完成人机交互。
一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,处理器执行程序时,执行如权利要求1-7任一项的方法的步骤。
区别于现有技术,上述技术方案的有益效果如下:
1.本发明不需要额外专用眼动追踪设备,采用基于表观的视线估计方法,由改进的多输入的卷积神经网络离线训练,在估计视线方向任务中加入对头部姿态的监督,在GazeCapture数据集离线估计误差可以达到3.34°,在MPIIFace数据集离线估计误差可以达到3.87°。
2.本发明基于视线追踪模型在线估计所得的注视点与交互界面得到多种指令集,实现人机交互行为:例如代替手动进行鼠标操作。对于多种情况下的人机交互,本发明的指令集可以视具体情况而改变。
3.由于加入了表观的视线追踪技术,所需设备简单,更易集成在个人设备,应用前景广阔。
4.由于使用了视线交互,用户可以快速的将视线移至感兴趣区域,加快了人机交互的速度。
附图说明
图1是基于视线追踪的人机交互方法的整体结构图;
图2是基于视线追踪的人机交互方法的图像预处理示意图;
图3是基于视线追踪的人机交互方法的视线估计模型训练示意图;
图4是基于视线追踪的人机交互方法的相机与屏幕标定示意图;
图5是基于视线追踪的人机交互方法的3维视线映射到二维屏幕的示意图;
图6是基于视线追踪的人机交互方法的交互界面示意图。
具体实施方式
为详细说明技术方案的技术内容、构造特征、所实现目的及效果,以下结合具体实施例并配合附图详予说明。
实施例一
如图1所示,为基于视线追踪的人机交互方法的整体结构图。该实施例提供了一种基于视线追踪的人机交互方法,包括以下步骤:
步骤一:对视线估计数据集中图片进行预处理,如图2所示,为基于视线追踪的人机交互方法的图像预处理示意图。提取双眼图像和人脸图像作为该实施例的视线估计模型的训练数据,使用RetinaFace算法检测人脸,然后在人脸区域内使用PFLD算法检测人脸关键点,从检测到的面部关键点提取4个眼角和2个嘴角关键点。通过计算从通用三维人脸关键点模型到图像中检测到的二维人脸关键点的仿射变换矩阵得到估计的头部姿态,它包含旋转和平移的信息。3D头部姿势将被用在数据归一化中,3D面部的两眼内角点的中心作为3D视线方向的原点go。
对图像进行归一化,这里将头部坐标系的原点设为go,并将从相机坐标系到头部坐标系的旋转矩阵和平移向量分别表示为Rr和er。给定此初始条件,标准化过程会通过透视变换将输入图像转换到标准化空间,以使标准化的图像满足三个要求。第一个要求,标准化的摄像机看着头部坐标系的原点,而眼睛的中心位于标准化图像的中心。第二个要求,头部和相机坐标系的x轴在同一平面上,即,头部坐标系的x轴在标准化图像中显示为水平线。第三个要求,归一化摄像机位于眼睛中心的固定距离dn处,眼睛在归一化图像中总是具有相同的大小。
为了满足第一个要求,旋转原始摄像机,摄像机坐标系的旋转矩阵R的旋转z轴zc必须是er。为了满足第二要求,摄像机坐标系的旋转矩阵R的旋转y轴必须定义为yc=zc×xr。其中xr是头部坐标系的x轴,摄像机坐标系的旋转矩阵R的旋转y轴被定义为垂直于zc和xr,最后,摄像机坐标系的旋转矩阵R的剩余x轴被定义为xc=yc×zc。利用这些坐标轴向量,旋转矩阵可以定义为式:
R是旋转相机的旋转矩阵的逆,以旋转矩阵R旋转摄像机坐标系,使得归一化相机正对着两眼内角点的中心go。其次,使得头部和相机坐标系的x轴在同一平面上,即头部的x轴在归一化图像中显示为水平线。然后使用缩放矩阵S缩放图像,以使归一化相机位于距go一定距离的位置dn。这样,对于具有不同固有参数的所有类型的摄像机,输入图像的头部姿势只有2个自由度(俯仰角和偏航角)。缩放矩阵S定义为整个变换矩阵被定义为M=SR,应用变换矩阵/>的透视变换来实现将原始相机的图像变换到归一化相机空间中的图像,其中Cr为原始相机的内参矩阵,Cn为归一化相机的内参矩阵。图像归一化后,相应的原始相机坐标系下的头部姿态角和凝视矢量也需要归一化。由于缩放不影响旋转矩阵,因此归一化后的头部姿态的旋转矩阵计算公式为Rn=RRr。由于缩放图像不应改变注视向量,所以仅旋转原始视线矢量以获得归一化凝视矢量gn=Rgr。
步骤二:离线训练。将预处理后的双眼图像和人脸图像作为输入,如图3所示,为基于视线追踪的人机交互方法的视线估计模型训练示意图。对多输入多输出的卷积神经网络的视线估计模型进行离线训练,并保存训练后的模型数据。双眼图像和人脸图像通过两个不同的分支提取特征,应用于双眼图像的卷积神经网络是由EfficientNet-B0的卷积神经网络部分和后面跟的一个1×1卷积神经网络、批量归一化和Swish激活函数组成。应用于面部图像的卷积神经网络是MobileNetV3-Small的提取特征部分的卷积神经网络。双眼图像和面部图像通过卷积神经网络部分后分别得到10×2×128的特征图和4×3×96的特征图,这个两个特征图展平后连接成一个3712维的特征被送入全连接模块。这个全连接模块可以被描述成如下:
FC(128)→Swish→Dropout→FC(32)→Swish→Dropout→F(4),其中FC表示全连接层。经过全连接模块后输出一个4维向量,其中前两个值是估计的归一化相机空间下的3D视线方向(俯仰角和偏航角),后2个值估计的归一化相机空间下的头部姿态角/>(俯仰角和偏航角)。为了实现高精度的自由头部姿态下的视线跟踪算法,需要对头部姿态和眼球偏转都进行精确的估计。因此为了惩罚视线估计中由头部姿态引起的误差,训练过程中的损失函数定义为:
其中表示预测的视线方向,gn表示真实的视线方向,/>表示预测的的头部方向,hn表示真实的头部方向。L2表示均方误差损失函数。λ为损失平衡系数,意味着从监督信息中平衡视线方向和头部方向的重要性。
该实施例的视线估计模型是用PyTorch实现,在训练时,小批量(batchsize)设置为128,初始学习率设置为0.001,权重衰减设置为0.0001,该实施例使用梯度下降算法中的Adam算法进行优化。该实施例离线训练是在数据集MPIIFaceGaze和GazeCapture训练和测试。在GazeCapture数据集离线估计误差可以达到3.34°,在MPIIFace数据集离线估计误差可以达到3.87°。
步骤三:在线估计。通过摄像头采集一帧图像,采用和离线训练中相同的预处理过程,得到与离线训练的模型所需输入相匹配的图像。将图像输入到离线训练好的视线估计模型中,得到标准化空间下视线角度需要将视线方向从欧拉角/>转换成三维方向矢量/>转换公式如下所示:
然后利用之前的归一化旋转矩阵R的逆,得原始相机坐标系下的视线矢量为
步骤四:映射到屏幕。如图4所示,为基于视线追踪的人机交互方法的相机与屏幕标定示意图。根据使用正交约束的镜面反射相机外参标定方法,相机通过镜子在三个不同的未知姿势下捕获电脑屏幕上的参考对象点,然后根据参考对象点在镜子中的反射的2D点标定外部参数,得到相机和屏幕的旋转平移关系。
根据屏幕到相机的旋转矩阵Rm和平移向量Tm,即可将屏幕在世界坐标系的位置旋转平移到相机坐标系下。如图5所示,为基于视线追踪的人机交互方法的3维视线映射到二维屏幕的示意图。屏幕的四个顶点在相机坐标系下的位置为ci(i=1,2,3,4),法向量为o为视线的开始点,t为视线映射在屏幕上的目标点,/>表示从视线起点到屏幕的第一个顶点的向量,/>表示屏幕经过视线起点o的法向量,其中/>表示视线从起始点到目标点的视线向量。映射到屏幕的目标点t在相机坐标系下可得/>至此得到了相机坐标系下在屏幕上的注视点坐标,再通过把t旋转和平移回屏幕坐标系位置,根据屏幕分辨率即可计算得到注视点在屏幕上的像素坐标。
步骤五:根据得到的人眼注视点坐标和设计的交互界面可完成多种功能的交互。
以下将举一实验例子来说明上述的过程:
采用英特尔i5-6500中央处理器的台式电脑上做人机交互的实验,罗技BRIO4KPro相机固定于屏幕的上方,相机坐标系下3D视线方向映射到480mm×270mm的显示屏幕上,其中屏幕分辩率设置为1920×1080。整个实验的软件工具,从相机输入到3D视线估计,再映射到屏幕注视点的整个视线估计系统在Ubuntu16.04系统中由C++编程语言实现。注视点交互界面由PyQt5框架实现,C++编写的注视点程序和Python编写的交互界面程序采用多进程中的管道通信方式通信。
步骤一:根据上述离线训练方法得到视线估计模型与参数。
步骤二:通过摄像头以12-15帧的速度采集图像,采用和离线训练中相同的预处理过程,得到与离线训练的模型所需输入相匹配的图像。将图像输入到离线训练好的视线估计模型中,得到标准化空间下视线角度通过坐标变换得到原始相机坐标系下的视线角度矢量。
步骤三:根据使用正交约束的镜面反射相机外参标定方法得到相机和屏幕的旋转平移关系。根据获得的原始相机坐标系下视线估计的结果和屏幕到相机的旋转矩阵Rm和平移向量Tm,可得到注视点在屏幕上的像素坐标。本实验中相机与屏幕标定结果为:
步骤四:根据如图6所示的交互界面,用户界面包括一个中间的显示面板和其周围不同控制指令命名的8个按钮控件,显示面板的作用是显示当前放出的控制指令,按钮对应的是可自由设置的响应动作,显示面板和按钮大小均为160mm×90mm。图中的十字光标即为屏幕上的注视点,当注视点位于某个按钮图标上面,按钮背景图变为红色,其余情况按钮皆为白色背景。
用户在距离屏幕约60厘米处移动视线到对应的指令方块上,通过在线估计程序得到注视点坐标,坐标在方块停留2.5秒触发该方块,通过ssh通信向外部设备NAO机器人传输命令,使机器人完成相应动作实现交互功能。
实施例二
本发明公开提出了一种基于视线追踪的人机交互装置,具体包括:
采集模块,用于采集用户图像数据;
标定模块,用于根据采集的标定图片计算得出相机和屏幕的旋转平移关系。
预处理模块,用于对采集到的用户图像进行预处理得到处理模块所需的输入。
预处理模块包括:
1.识别组件,用于对用户图像进行人脸检测和关键点检测,根据检测到的二维人脸关键点和通用三维人脸关键点模型进行拟合,得到估计的头部姿态角。
2.标准化组件,用于通过透视变换将原始图像转换到标准化空间,得到视线估计模型所需的标准化空间下的双眼图像和人脸图像。
处理模块,用于对经过预处理模块处理的用户图像进行计算得到二维屏幕注视点坐标。
处理模块包括:
1.视线估计组件,根据预处理模块所得的标准化空间下的双眼图像和人脸图像,利用离线训练好的视线估计模型计算得到标准化空间下的用户实时视线角度,进一步地对得到的视线角度进行坐标系变换得到相机坐标系下的视线角度。
2.获取注视点组件,根据相机坐标系下的3D视线方向映射到二维屏幕,得到相机坐标系下在屏幕上的注视点坐标。
交互模块,对二维屏幕注视点坐标进行处理生成不同控制指令完成人机交互。
交互模块包括:
显示与分析组件,用于显示不同指令集区域划分,用户可通过将视线移至特定区域传达自己控制意图,对注视点坐标与交互界面分析得到指令。
通信组件,可通过通信协议与外接设备相连,传输控制指令,完成较复杂的人机交互任务。
本实施例的装置用于实现实施例一的用户界面交互方法,其具体实现过程同实施例一,此处将不再赘述。
实施例三
本发明提供了一种计算机设备,包括存储器、处理器、网络接口、显示器和输入装置,该计算机设备的处理器用于执行相应的计算机程序,该计算机设备的存储器用于存储相应的计算机程序和输入输出信息,该计算机设备的网络接口用于实现与外部终端的通信,该计算机设备的显示器用于显示程序处理结果,该计算机设备的输入装置可以是摄像头,用于采集图像,所述处理器执行计算机程序时实现上述基于眼动追踪的人机交互方法实施例中的步骤。或者,所述处理器执行计算机程序时实现上述各装置实施例中各模块/单元的功能。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括……”或“包含……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的要素。此外,在本文中,“大于”、“小于”、“超过”等理解为不包括本数;“以上”、“以下”、“以内”等理解为包括本数。
尽管已经对上述各实施例进行了描述,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改,所以以上所述仅为本发明的实施例,并非因此限制本发明的专利保护范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围之内。
Claims (5)
1.一种基于视线追踪的人机交互方法,其特征在于,包括如下步骤,
采集图像,对图像进行预处理,得到双眼图像和人脸图像;
所述图像预处理,对用户图像进行人脸检测和关键点检测,根据检测到的二维人脸关键点和通用三维人脸关键点模型进行拟合,得到估计的头部姿态角;通过透视变换将原始图像转换到标准化空间,得到视线估计模型所需的标准化空间下的双眼图像和人脸图像;
将双眼图像和人脸图像输入到视线估计模型中,得到标准化空间下视线角度;
所述图像进行归一化处理,头部坐标系的原点设为go,并将从相机坐标系到头部坐标系的旋转矩阵和平移向量分别表示为Rr和er,标准化过程会通过透视变换将输入图像转换到标准化空间,以使标准化的图像满足:标准化的摄像机看着头部坐标系的原点,而眼睛的中心位于标准化图像的中心;头部和相机坐标系的x轴在同一平面上;归一化摄像机位于眼睛中心的固定距离dn处,眼睛在归一化图像中具有相同的大小;
所述视线估计模型为卷积神经网络模型,其中,应用于双眼图像的卷积神经网络是由EfficientNet-B0的卷积神经网络部分和后面跟的一个1×1卷积神经网络、批量归一化和Swish激活函数组成;应用于面部图像的卷积神经网络是MobileNetV3-Small的提取特征部分的卷积神经网络;
提取双眼图像和人脸图像作为视线估计模型的训练数据,使用RetinaFace算法检测人脸,然后在人脸区域内使用PFLD算法检测人脸关键点,从检测到的面部关键点提取4个眼角和2个嘴角关键点,通过计算从通用三维人脸关键点模型到图像中检测到的二维人脸关键点的仿射变换矩阵得到估计的头部姿态,它包含旋转和平移的信息,3D头部姿势将被用在数据归一化中,3D面部的两眼内角点的中心作为3D视线方向的原点go;
对图像进行归一化,这里将头部坐标系的原点设为go,并将从相机坐标系到头部坐标系的旋转矩阵和平移向量分别表示为Rr和er,给定此初始条件,标准化过程会通过透视变换将输入图像转换到标准化空间,以使标准化的图像满足三个要求,第一个要求,标准化的摄像机看着头部坐标系的原点,而眼睛的中心位于标准化图像的中心,第二个要求,头部和相机坐标系的x轴在同一平面上,即,头部坐标系的x轴在标准化图像中显示为水平线,第三个要求,归一化摄像机位于眼睛中心的固定距离dn处,眼睛在归一化图像中总是具有相同的大小;
为了满足第一个要求,旋转原始摄像机,摄像机坐标系的旋转矩阵R的旋转z轴zc必须是er,为了满足第二要求,摄像机坐标系的旋转矩阵R的旋转y轴必须定义为yc=zc×xr,其中xr是头部坐标系的x轴,摄像机坐标系的旋转矩阵R的旋转y轴被定义为垂直于zc和xr,最后,摄像机坐标系的旋转矩阵R的剩余x轴被定义为xc=yc×zc,利用这些坐标轴向量,旋转矩阵定义为式:
R是旋转相机的旋转矩阵的逆,以旋转矩阵R旋转摄像机坐标系,使得归一化相机正对着两眼内角点的中心go,其次,使得头部和相机坐标系的x轴在同一平面上,即头部的x轴在归一化图像中显示为水平线,然后使用缩放矩阵S缩放图像,以使归一化相机位于距go一定距离的位置dn,这样,对于具有不同固有参数的所有类型的摄像机,输入图像的头部姿势只有2个自由度即俯仰角和偏航角,缩放矩阵S定义为整个变换矩阵被定义为M=SR,应用变换矩阵W=CnMCr -1的透视变换来实现将原始相机的图像变换到归一化相机空间中的图像,其中Cr为原始相机的内参矩阵,Cn为归一化相机的内参矩阵,图像归一化后,相应的原始相机坐标系下的头部姿态角和凝视矢量也需要归一化,由于缩放不影响旋转矩阵,因此归一化后的头部姿态的旋转矩阵计算公式为Rn=RRr,由于缩放图像不应改变注视向量,所以仅旋转原始视线矢量以获得归一化凝视矢量gn=Rgr;
将预处理后的双眼图像和人脸图像作为输入,对多输入多输出的卷积神经网络的视线估计模型进行离线训练,并保存训练后的模型数据,双眼图像和人脸图像通过两个不同的分支提取特征,应用于双眼图像的卷积神经网络是由EfficientNet-B0的卷积神经网络部分和后面跟的一个1×1卷积神经网络、批量归一化和Swish激活函数组成,应用于面部图像的卷积神经网络是MobileNetV3-Small的提取特征部分的卷积神经网络,双眼图像和面部图像通过卷积神经网络部分后分别得到10×2×128的特征图和4×3×96的特征图,这个两个特征图展平后连接成一个3712维的特征被送入全连接模块,这个全连接模块被描述成如下:
FC(128)→Swish→Dropout→FC(32)→Swish→Dropout→F(4),其中FC表示全连接层,经过全连接模块后输出一个4维向量,其中前两个值是估计的归一化相机空间下的3D视线方向俯仰角和偏航角,后2个值估计的归一化相机空间下的头部姿态角/>俯仰角和偏航角,为了实现高精度的自由头部姿态下的视线跟踪算法,需要对头部姿态和眼球偏转都进行精确的估计,因此为了惩罚视线估计中由头部姿态引起的误差,训练过程中的损失函数定义为:
其中表示预测的视线方向,gn表示真实的视线方向,/>表示预测的头部方向,hn表示真实的头部方向,L2表示均方误差损失函数,λ为损失平衡系数,意味着从监督信息中平衡视线方向和头部方向的重要性;
通过摄像头采集一帧图像,采用和离线训练中相同的预处理过程,得到与离线训练的模型所需输入相匹配的图像,将图像输入到离线训练好的视线估计模型中,得到标准化空间下视线角度需要将视线方向从欧拉角/>转换成三维方向矢量/>转换公式如下所示:
然后利用之前的归一化旋转矩阵R的逆,得原始相机坐标系下的视线矢量为
根据使用正交约束的镜面反射相机外参标定方法,相机通过镜子在三个不同的未知姿势下捕获电脑屏幕上的参考对象点,然后根据参考对象点在镜子中的反射的2D点标定外部参数,得到相机和屏幕的旋转平移关系;
根据屏幕到相机的旋转矩阵Rm和平移向量Tm,即可将屏幕在世界坐标系的位置旋转平移到相机坐标系下,屏幕的四个顶点在相机坐标系下的位置为ci(i=1,2,3,4),法向量为o为视线的开始点,t为视线映射在屏幕上的目标点,/>表示从视线起点到屏幕的第一个顶点的向量,/>表示屏幕经过视线起点o的法向量,其中/>
表示视线从起始点到目标点的视线向量,映射到屏幕的目标点t在相机坐标系下可得/>至此得到了相机坐标系下在屏幕上的注视点坐标,再通过把t旋转和平移回屏幕坐标系位置,根据屏幕分辨率即可计算得到注视点在屏幕上的像素坐标。
2.如权利要求1所述的基于视线追踪的人机交互方法,其特征在于,所述人脸检测采用RetinaFace算法,然后在人脸区域内使用PFLD算法检测人脸关键点。
3.如权利要求1所述的基于视线追踪的人机交互方法,其特征在于,所述头部姿态通过计算从通用三维人脸关键点模型到图像中检测到的二维人脸关键点的仿射变换矩阵得到估计的头部姿态。
4.如权利要求1所述的基于视线追踪的人机交互方法,其特征在于,还包括映射到屏幕,根据使用正交约束的镜面反射相机外参标定方法得到相机和屏幕的旋转平移关系。
5.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,处理器执行程序时,执行如权利要求1-4任一项的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110776170.9A CN113505694B (zh) | 2021-07-09 | 2021-07-09 | 一种基于视线追踪的人机交互方法、装置及计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110776170.9A CN113505694B (zh) | 2021-07-09 | 2021-07-09 | 一种基于视线追踪的人机交互方法、装置及计算机设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113505694A CN113505694A (zh) | 2021-10-15 |
CN113505694B true CN113505694B (zh) | 2024-03-26 |
Family
ID=78012426
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110776170.9A Active CN113505694B (zh) | 2021-07-09 | 2021-07-09 | 一种基于视线追踪的人机交互方法、装置及计算机设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113505694B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114706484A (zh) * | 2022-04-18 | 2022-07-05 | Oppo广东移动通信有限公司 | 视线坐标确定方法及装置、计算机可读介质和电子设备 |
CN116052235B (zh) * | 2022-05-31 | 2023-10-20 | 荣耀终端有限公司 | 注视点估计方法及电子设备 |
CN115482574B (zh) * | 2022-09-29 | 2023-07-21 | 珠海视熙科技有限公司 | 基于深度学习的屏幕注视点估计方法、装置、介质及设备 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107193383A (zh) * | 2017-06-13 | 2017-09-22 | 华南师范大学 | 一种基于人脸朝向约束的二级视线追踪方法 |
CN108171152A (zh) * | 2017-12-26 | 2018-06-15 | 深圳大学 | 深度学习人眼视线估计方法、设备、系统及可读存储介质 |
CN108171218A (zh) * | 2018-01-29 | 2018-06-15 | 深圳市唯特视科技有限公司 | 一种基于深度外观注视网络的视线估计方法 |
CN108985210A (zh) * | 2018-07-06 | 2018-12-11 | 常州大学 | 一种基于人眼几何特征的视线追踪方法及系统 |
CN110458001A (zh) * | 2019-06-28 | 2019-11-15 | 南昌大学 | 一种基于注意力机制的卷积神经网络视线估计方法及系统 |
CN111832465A (zh) * | 2020-07-08 | 2020-10-27 | 星宏集群有限公司 | 基于MobileNetV3的实时人头分类检测方法 |
CN112000226A (zh) * | 2020-08-26 | 2020-11-27 | 杭州海康威视数字技术股份有限公司 | 一种人眼视线估计方法、装置及视线估计系统 |
CN112183200A (zh) * | 2020-08-25 | 2021-01-05 | 中电海康集团有限公司 | 一种基于视频图像的眼动追踪方法和系统 |
CN112651438A (zh) * | 2020-12-24 | 2021-04-13 | 世纪龙信息网络有限责任公司 | 多类别图像的分类方法、装置、终端设备和存储介质 |
CN112749655A (zh) * | 2021-01-05 | 2021-05-04 | 风变科技(深圳)有限公司 | 视线追踪方法、装置、计算机设备和存储介质 |
-
2021
- 2021-07-09 CN CN202110776170.9A patent/CN113505694B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107193383A (zh) * | 2017-06-13 | 2017-09-22 | 华南师范大学 | 一种基于人脸朝向约束的二级视线追踪方法 |
CN108171152A (zh) * | 2017-12-26 | 2018-06-15 | 深圳大学 | 深度学习人眼视线估计方法、设备、系统及可读存储介质 |
CN108171218A (zh) * | 2018-01-29 | 2018-06-15 | 深圳市唯特视科技有限公司 | 一种基于深度外观注视网络的视线估计方法 |
CN108985210A (zh) * | 2018-07-06 | 2018-12-11 | 常州大学 | 一种基于人眼几何特征的视线追踪方法及系统 |
CN110458001A (zh) * | 2019-06-28 | 2019-11-15 | 南昌大学 | 一种基于注意力机制的卷积神经网络视线估计方法及系统 |
CN111832465A (zh) * | 2020-07-08 | 2020-10-27 | 星宏集群有限公司 | 基于MobileNetV3的实时人头分类检测方法 |
CN112183200A (zh) * | 2020-08-25 | 2021-01-05 | 中电海康集团有限公司 | 一种基于视频图像的眼动追踪方法和系统 |
CN112000226A (zh) * | 2020-08-26 | 2020-11-27 | 杭州海康威视数字技术股份有限公司 | 一种人眼视线估计方法、装置及视线估计系统 |
CN112651438A (zh) * | 2020-12-24 | 2021-04-13 | 世纪龙信息网络有限责任公司 | 多类别图像的分类方法、装置、终端设备和存储介质 |
CN112749655A (zh) * | 2021-01-05 | 2021-05-04 | 风变科技(深圳)有限公司 | 视线追踪方法、装置、计算机设备和存储介质 |
Non-Patent Citations (4)
Title |
---|
"Appearance-Based Gaze Estimation in the Wild";Xucong Zhang等;《2015 IEEE Conference on Computer Vision and Pattern Recognition (CVPR)》;20151231;第4511-4520页 * |
"Learning by Synthesis for Appearance based 3D Gaze Estimation";Yusuke Sugano等;《In Proc.CVPR》;20141231;第1821-1828页 * |
"MPIIGaze: Real-World Dataset and Deep Appearance-Based Gaze Estimation";Xucong Zhang等;《IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE》;20190131;第162-175页 * |
"基于眼动跟踪的人机交互应用";贺辉等;《山东大学学报》;20210420;第51卷(第2期);第1-8页 * |
Also Published As
Publication number | Publication date |
---|---|
CN113505694A (zh) | 2021-10-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113505694B (zh) | 一种基于视线追踪的人机交互方法、装置及计算机设备 | |
CN109255813B (zh) | 一种面向人机协作的手持物体位姿实时检测方法 | |
Sato et al. | Real-time input of 3D pose and gestures of a user's hand and its applications for HCI | |
KR101865655B1 (ko) | 증강현실 상호 작용 서비스 제공 장치 및 방법 | |
CN109359514B (zh) | 一种面向deskVR的手势跟踪识别联合策略方法 | |
CN110913751B (zh) | 具有滑动检测和校正功能的可穿戴眼睛跟踪系统 | |
CN110322500A (zh) | 即时定位与地图构建的优化方法及装置、介质和电子设备 | |
Demirdjian et al. | 3-d articulated pose tracking for untethered diectic reference | |
CN110109535A (zh) | 增强现实生成方法及装置 | |
KR101320683B1 (ko) | 증강현실 기반의 디스플레이 보정 방법 및 모듈, 이를 이용한 객체정보 디스플레이 방법 및 시스템 | |
CN112657176A (zh) | 一种结合人像行为信息的双目投影人机交互方法 | |
WO2021248686A1 (zh) | 一种面向投影增强的基于机器视觉的手势交互方法 | |
Chi et al. | 3-D gaze-estimation method using a multi-camera-multi-light-source system | |
Perra et al. | Adaptive eye-camera calibration for head-worn devices | |
Matsumoto et al. | Real-time face tracking system for human-robot interaction | |
CN112699784A (zh) | 一种人脸朝向估计方法、装置、电子设备及存储介质 | |
CN109333527B (zh) | 一种与机器人的交互方法、装置、电子设备及存储介质 | |
Li et al. | An Eye Tracking based aircraft helmet mounted display aiming system | |
CN108694348B (zh) | 一种基于自然特征的跟踪注册方法及装置 | |
CN115494938A (zh) | 非接触式交互方法及装置 | |
Zhang et al. | Self-calibrating gaze estimation with optical axes projection for head-mounted eye tracking | |
Gallo et al. | View-independent hand posture recognition from single depth images using PCA and Flusser moments | |
CN112836544A (zh) | 一种新型的坐姿检测方法 | |
CN113918013A (zh) | 一种基于ar眼镜的手势定向交互系统及方法 | |
Che et al. | Real-time 3d hand gesture based mobile interaction interface |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |