CN116012459A - 基于三维视线估计和屏幕平面估计的鼠标定位的方法 - Google Patents
基于三维视线估计和屏幕平面估计的鼠标定位的方法 Download PDFInfo
- Publication number
- CN116012459A CN116012459A CN202211675699.2A CN202211675699A CN116012459A CN 116012459 A CN116012459 A CN 116012459A CN 202211675699 A CN202211675699 A CN 202211675699A CN 116012459 A CN116012459 A CN 116012459A
- Authority
- CN
- China
- Prior art keywords
- target
- camera
- image
- screen
- translation matrix
- 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.)
- Pending
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Image Analysis (AREA)
Abstract
本申请公开了一种基于三维视线估计和屏幕平面估计的鼠标定位的方法,属于图像处理技术领域。本申请的基于三维视线估计和屏幕平面估计的鼠标定位的方法,包括:基于用户彩色图像,确定用户彩色图像中目标人脸的视线方向向量,用户彩色图像由第一相机采集;基于视线方向向量和目标点的坐标,确定目标人脸的视线表示向量,目标点的坐标由第一相机采集的用户深度图像以及用户彩色图像确定;基于视线表示向量和目标屏幕的屏幕表示向量,确定视线表示向量与屏幕表示向量的第一交点坐标,第一交点坐标为第一相机对应的第一坐标系下的坐标;基于第一交点坐标和目标旋转平移矩阵,确定第二交点坐标;基于第二交点坐标,控制目标屏幕中的鼠标移动。
Description
技术领域
本申请属于图像处理技术领域,尤其涉及一种基于三维视线估计和屏幕平面估计的鼠标定位的方法。
背景技术
视觉估计技术是利用机械、光学和相机等各种检测手段获取受试者当前注视方向的技术,广泛应用于人机交互、辅助驾驶、心理研究、虚拟现实和军事等多个领域。目前基于视线估计的鼠标定位方法主要根据图片中人眼的虹膜、瞳孔和普尔钦斑等进行3D建模来实现,该方法需要高分辨相机以及额外的光源,对硬件***要求较高;且该方法从图像中获得的几何关系准确度不高,极大的影响到了定位的精度和准确度。
发明内容
本申请旨在至少解决现有技术中存在的技术问题之一。为此,本申请提出一种基于三维视线估计和屏幕平面估计的鼠标定位的方法,能够提高最终定位的精度和准确度。
第一方面,本申请提供了一种基于三维视线估计和屏幕平面估计的鼠标定位的方法,该方法包括:
基于用户彩色图像,确定所述用户彩色图像中目标人脸的视线方向向量,所述用户彩色图像由第一相机采集;
基于所述视线方向向量和目标点的坐标,确定目标人脸的视线表示向量,所述目标点的坐标由所述第一相机采集的用户深度图像以及所述用户彩色图像确定;
基于所述视线表示向量和目标屏幕的屏幕表示向量,确定所述视线表示向量与所述屏幕表示向量的第一交点坐标,所述第一交点坐标为所述第一相机对应的第一坐标系下的坐标;
基于所述第一交点坐标和目标旋转平移矩阵,确定第二交点坐标,所述第二交点坐标为所述目标屏幕对应的第二坐标系下的坐标,所述目标旋转平移矩阵为所述第一相机和所述目标屏幕之间的旋转平移矩阵;
基于所述第二交点坐标,控制所述目标屏幕中的鼠标移动。
根据本申请实施例提供的基于三维视线估计和屏幕平面估计的鼠标定位的方法,通过采集用户彩色图像以获得视线方向向量,并基于视线方向向量和目标点的坐标获得视线表示向量,再基于视线方向向量和屏幕表示向量确定第一交点坐标,然后基于第一交点坐标和目标旋转平移矩阵,确定第二交点坐标,再控制目标屏幕中的鼠标移动至第二交点坐标,在实际应用过程中能够通过用户彩色图像中的目标人脸的特征以及对应的用户深度图像预测出视线坐标,具有较高的精确性和准确性,从而有助于提高后续定位结果的精准性;通过建立第一相机与目标屏幕之间的目标旋转平移矩阵,适用于任意情境下的坐标系转换从而实现准确定位,拓宽了应用场景,且无需设置额外光源等其他设备以及特定设备,定位成本较低且易于实现。
本申请一个实施例的基于三维视线估计和屏幕平面估计的鼠标定位的方法,所述基于用户彩色图像,确定所述用户彩色图像中目标人脸的视线方向向量,包括:
对所述用户彩色图像进行图像分割,获取所述目标人脸对应的脸部图像和所述目标人脸中目标人眼对应的眼部图像中的至少一种;所述目标人眼包括左眼或右眼中的至少一个;
对所述脸部图像和所述眼部图像中的至少一种进行特征提取,获取视线特征;
基于所述视线特征,确定所述视线方向向量。
根据本申请一个实施例的基于三维视线估计和屏幕平面估计的鼠标定位的方法,通过对用户彩色图像进行图像分割并获得眼部图像,再对脸部图像和眼部图像中的至少一种进行特征提取,并获取视线特征,然后基于视线特征确定视线方向向量,能够在进行视线估计时结合用户头部转动特征以及眼部特征等多种特征,综合预测出用户实时的视线方向,有效提高了视线定位的精度和准确度,且适用于任意用户姿态,拓宽了定位范围。
本申请一个实施例的基于三维视线估计和屏幕平面估计的鼠标定位的方法,所述对所述脸部图像和所述眼部图像中的至少一种进行特征提取,获取视线特征,包括:
对所述脸部图像进行特征提取,获取头部转动特征;
对所述眼部图像进行特征提取,获取眼部特征;
融合所述头部转动特征和所述眼部特征,获取所述视线特征。
根据本申请一个实施例的基于三维视线估计和屏幕平面估计的鼠标定位的方法,通过分别对脸部图像和眼部图像进行特征提取,以得到头部转动特征和眼部特征,并融合头部转动特征和眼部特征以获得视线特征,能够在进行视线估计时根据用户头部转动,预测出用户实时的视线方向,进而提高视线估计的精度。
本申请一个实施例的基于三维视线估计和屏幕平面估计的鼠标定位的方法,在所述基于用户彩色图像,确定所述用户彩色图像中目标人脸的视线方向向量之前,所述方法还包括:
获取所述第一相机与第二相机之间的第一旋转平移矩阵,并获取所述第二相机与所述目标屏幕之间的第二旋转平移矩阵;
基于所述第一旋转平移矩阵和所述第二旋转平移矩阵,确定所述目标旋转平移矩阵。
根据本申请一个实施例的基于三维视线估计和屏幕平面估计的鼠标定位的方法,通过获取第一旋转平移矩阵RT1和第二旋转平移矩阵RT2以得到目标旋转平移矩阵Rs,从而建立第一相机与目标屏幕之间的坐标转换关系,能够在实际执行过程中基于目标旋转平移矩阵Rs将预测得到的第一交点坐标转换为目标屏幕中的鼠标位置坐标,适用于任意通用模型所输出的视线方向向量,无需基于特定应用场景单独训练模型,具有广泛的应用场景且通用性高。
本申请一个实施例的基于三维视线估计和屏幕平面估计的鼠标定位的方法,所述获取所述第一相机与第二相机之间的第一旋转平移矩阵,并获取所述第二相机与所述目标屏幕之间的第二旋转平移矩阵,包括:
获取所述第一相机采集的第一标定板对应的第一图像,以及所述第二相机采集的第二标定板对应的第二图像;所述第一标定板为双面标定板的第一面,所述第二标定板为所述双面标定板的第二面,所述第一相机和所述第二相机的视场相对;
基于所述第一图像,确定所述第一相机与所述第一标定板之间的第三旋转平移矩阵;
基于所述第二图像,确定所述第二相机与所述第二标定板之间的第四旋转平移矩阵;
基于所述第一图像,获取所述第一标定板的第一原点位置;
基于所述第二图像,获取所述第二标定板的第二原点位置;
基于所述第一原点位置、所述第二原点位置和所述双面标定板的厚度,确定所述第一标定板和所述第二标定板之间的第五旋转平移矩阵;
基于所述第三旋转平移矩阵、所述第四旋转平移矩阵和所述第五旋转平移矩阵,确定所述第一旋转平移矩阵。
根据本申请一个实施例的基于三维视线估计和屏幕平面估计的鼠标定位的方法,通过基于第三旋转平移矩阵、第四旋转平移矩阵和第五旋转平移矩阵,确定第一相机与第二相机之间的第一旋转平移矩阵RT1,能够标定第一相机与第二相机之间的位置关系,便于后续建立第一相机与目标屏幕之间的坐标转换关系,以得到目标屏幕中的鼠标位置坐标,适用于任意通用模型所输出的视线方向向量,无需基于特定应用场景单独训练模型,具有广泛的应用场景且通用性高。
本申请一个实施例的基于三维视线估计和屏幕平面估计的鼠标定位的方法,所述获取所述第二相机与所述目标屏幕之间的第二旋转平移矩阵,包括:
获取所述第二相机采集的第三标定板对应的第三图像,所述第三标定板为所述目标屏幕所显示的标定板;
基于所述第三图像,确定所述第二旋转平移矩阵。
根据本申请一个实施例的基于三维视线估计和屏幕平面估计的鼠标定位的方法,通过获取第二相机采集的第三标定板对应的第三图像,并基于第三图像,确定第二旋转平移矩阵RT2,能够标定第二相机与目标屏幕之间的位置关系,便于后续建立第一相机与目标屏幕之间的坐标转换关系,以得到目标屏幕中的鼠标位置坐标,适用于任意通用模型所输出的视线方向向量,无需基于特定应用场景单独训练模型,具有广泛的应用场景且通用性高。
本申请一个实施例的基于三维视线估计和屏幕平面估计的鼠标定位的方法,所述基于用户彩色图像,确定所述用户彩色图像中目标人脸的视线方向向量,包括:
对所述用户彩色图像进行特征识别,获取至少一个人脸图像;
将所述至少一个人脸图像中最大的所述人脸图像,确定为所述目标人脸。
根据本申请一个实施例的基于三维视线估计和屏幕平面估计的鼠标定位的方法,通过对用户彩色图像进行特征识别,获取至少一个人脸图像,并将至少一个人脸图像中最大的人脸图像,确定为目标人脸,能够在采集到的用户彩色图像中存在多张人脸的情况下准确筛选出目标人脸,排除背景环境对后续视线预测结果的干扰,从而提高预测结果的准确性。
本申请一个实施例的基于三维视线估计和屏幕平面估计的鼠标定位的方法,所述基于用户彩色图像,确定所述用户彩色图像中目标人脸的视线方向向量,包括:
将所述用户彩色图像输入至目标神经网络,获取所述目标神经网络输出的所述视线方向向量;
其中,所述目标神经网络为以样本用户彩色图像为样本,以与所述样本用户彩色图像对应的样本视线方向向量为样本标签,训练得到。
根据本申请一个实施例的基于三维视线估计和屏幕平面估计的鼠标定位的方法,通过将用户彩色图像输入至预先训练好的目标神经网络,以获取目标神经网络输出的视线方向向量,在实际应用中只需使用前进行预训练,之后即可直接获取数据,计算效率高且准确性好;并且目标神经网络的学习能力强,每一次应用过程中的数据均可以作为下一次训练过程中的训练数据,从而提高模型的精度和准确度,便于用户使用,拓宽了定位范围,通用性较高,同时提高了最终视线估计的精度。
第二方面,本申请提供了一种基于三维视线估计和屏幕平面估计的鼠标定位的装置,该装置包括:
第一处理模块,用于基于用户彩色图像,确定所述用户彩色图像中目标人脸的视线方向向量,所述用户彩色图像由第一相机采集;
第二处理模块,用于基于所述视线方向向量和目标点的坐标,确定目标人脸的视线表示向量,所述目标点的坐标由所述第一相机采集的用户深度图像以及所述用户彩色图像确定;
第三处理模块,用于基于所述视线表示向量和目标屏幕的屏幕表示向量,确定所述视线表示向量与所述屏幕表示向量的第一交点坐标,所述第一交点坐标为所述第一相机对应的第一坐标系下的坐标;
第四处理模块,用于基于所述第一交点坐标和目标旋转平移矩阵,确定第二交点坐标,所述第二交点坐标为所述目标屏幕对应的第二坐标系下的坐标,所述目标旋转平移矩阵为所述第一相机和所述目标屏幕之间的旋转平移矩阵;
第五处理模块,用于基于所述第二交点坐标,控制所述目标屏幕中的鼠标移动。
根据本申请实施例提供的基于三维视线估计和屏幕平面估计的鼠标定位的装置,通过采集用户彩色图像以获得视线方向向量,并基于视线方向向量和目标点的坐标获得视线表示向量,再基于视线表示向量和屏幕表示向量确定第一交点坐标,然后基于第一交点坐标和目标旋转平移矩阵,确定第二交点坐标,再控制目标屏幕中的鼠标移动至第二交点坐标,在实际应用过程中能够通过用户彩色图像中的目标人脸的特征以及对应的用户深度图像预测出视线坐标,具有较高的精确性和准确性,从而有助于提高后续定位结果的精准性;通过建立第一相机与目标屏幕之间的目标旋转平移矩阵,适用于任意情境下的坐标系转换从而实现准确定位,拓宽了应用场景,且无需设置额外光源等其他设备以及特定设备,定位成本较低且易于实现。
第三方面,本申请提供了一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述第一方面所述的基于三维视线估计和屏幕平面估计的鼠标定位的方法。
第四方面,本申请提供了一种非暂态计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上述第一方面所述的基于三维视线估计和屏幕平面估计的鼠标定位的方法。
第五方面,本申请提供了一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述第一方面所述的基于三维视线估计和屏幕平面估计的鼠标定位的方法。
本申请实施例中的上述一个或多个技术方案,至少具有如下技术效果之一:
通过采集用户彩色图像确定视线方向向量以获得视线方向向量,并基于视线方向向量和目标点的坐标获得视线表示向量,再基于视线表示向量和屏幕表示向量确定第一交点坐标,然后基于第一交点坐标和目标旋转平移矩阵,确定第二交点坐标,再控制目标屏幕中的鼠标移动至第二交点坐标,在实际应用过程中能够通过用户彩色图像中的目标人脸的特征以及对应的用户深度图像预测出视线坐标,具有较高的精确性和准确性,从而有助于提高后续定位结果的精准性;通过建立第一相机与目标屏幕之间的目标旋转平移矩阵,适用于任意情境下的坐标系转换从而实现准确定位,拓宽了应用场景,且无需设置额外光源等其他设备以及特定设备,定位成本较低且易于实现。
进一步的,通过对用户彩色图像进行图像分割并获得眼部图像,再对脸部图像和眼部图像中的至少一种进行特征提取,并获取视线特征,然后基于视线特征确定视线方向向量,能够在进行视线估计时结合用户头部转动特征以及眼部特征等多种特征,综合预测出用户实时的视线方向,有效提高了视线定位的精度和准确度,且适用于任意用户姿态,拓宽了定位范围。
更进一步的,通过获取第一旋转平移矩阵RT1和第二旋转平移矩阵RT2以得到目标旋转平移矩阵Rs,从而建立第一相机与目标屏幕之间的坐标转换关系,能够在实际执行过程中基于目标旋转平移矩阵Rs将预测得到的第一交点坐标转换为目标屏幕中的鼠标位置坐标,适用于任意通用模型所输出的视线方向向量,无需基于特定应用场景单独训练模型,具有广泛的应用场景且通用性高。
再进一步的,通过将用户彩色图像输入至预先训练好的目标神经网络,以获取目标神经网络输出的视线方向向量,在实际应用中只需使用前进行预训练,之后即可直接获取数据,计算效率高且准确性好;并且目标神经网络的学习能力强,每一次应用过程中的数据均可以作为下一次训练过程中的训练数据,从而提高模型的精度和准确度,便于用户使用,拓宽了定位范围,通用性较高,同时提高了最终视线估计的精度
本申请的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
本申请的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
图1是本申请实施例提供的基于三维视线估计和屏幕平面估计的鼠标定位的方法的流程示意图之一;
图2是本申请实施例提供的基于三维视线估计和屏幕平面估计的鼠标定位的方法的流程示意图之二;
图3是本申请实施例提供的基于三维视线估计和屏幕平面估计的鼠标定位的方法的流程示意图之三;
图4是本申请实施例提供的基于三维视线估计和屏幕平面估计的鼠标定位的方法的原理示意图之一;
图5是本申请实施例提供的基于三维视线估计和屏幕平面估计的鼠标定位的方法的原理示意图之二;
图6是本申请实施例提供的基于三维视线估计和屏幕平面估计的鼠标定位的装置的结构示意图;
图7是本申请实施例提供的电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施,且“第一”、“第二”等所区分的对象通常为一类,并不限定对象的个数,例如第一对象可以是一个,也可以是多个。此外,说明书以及权利要求中“和/或”表示所连接对象的至少其中之一,字符“/”,一般表示前后关联对象是一种“或”的关系。
下面结合图1至图5描述本申请的基于三维视线估计和屏幕平面估计的鼠标定位的方法。
需要说明的是,基于三维视线估计和屏幕平面估计的鼠标定位的方法的执行主体可以为服务器,或者可以为基于三维视线估计和屏幕平面估计的鼠标定位的装置,或者还可以为用户的终端,包括但不限于移动终端和非移动终端。
例如,移动终端包括但不限于手机、PDA智能终端、平板电脑以及车载智能终端等;非移动终端包括但不限于PC端等。
如图1所示,该基于三维视线估计和屏幕平面估计的鼠标定位的方法,包括:步骤110、步骤120、步骤130和步骤140。
步骤110、基于用户彩色图像,确定用户彩色图像中目标人脸的视线方向向量,用户彩色图像由第一相机采集。
在该步骤中,第一相机可以为RGB-D相机。
用户彩色图像由第一相机采集。
用户彩色图像为包含用户特征(如脸部特征或眼部特征)的图像。
用户彩色图像中可以包括一张人脸,或者可以包括多张人脸,本申请不作限定。
目标人脸为用户彩色图像中用于视线估计的人脸。
在用户彩色图像包括多张人脸的情况下,可基于随机算法确定目标人脸;或者可以通过用户输入以将用户选择的人脸确定为目标人脸,或者可以基于***默认算法确定目标人脸,或者还可以基于如下方式确定目标人脸。
在一些实施例中,步骤110可以包括:
对用户彩色图像进行特征识别,获取至少一个人脸图像;
将至少一个人脸图像中最大的人脸图像,确定为目标人脸。
在该步骤中,如图2所示,在采集到的用户彩色图像中存在多张人脸的情况下,可以对用户彩色图像进行人脸特征识别,以获取用户彩色图像中所包含的至少部分人脸特征,并分别基于人脸特征分割得到各人脸所在的区域图像(即人脸图像),然后比较各人脸图像的像素区域大小,将像素区域最大的人脸图像确定为目标人脸,以排除背景环境对后续视线预测结果的干扰,从而提高预测结果的准确性。
例如,可以基于用户彩色图像生成大小不同、宽高比各异的预选框,预选框的内存占比为10k~100k;
计算每个预选框的类别分数,并对预选框进行修正;
基于类别分数,滤除类别分数低于目标阈值的预选框;从而确定人脸对应的预选框;
对于包括有多张人脸的预选框,对该预选框进行非极大值抑制(NMS)去重,以确定目标人脸对应的预选框,从而确定目标人脸。
根据本申请实施例提供的基于三维视线估计和屏幕平面估计的鼠标定位的方法,通过对用户彩色图像进行特征识别,获取至少一个人脸图像,并将至少一个人脸图像中最大的人脸图像,确定为目标人脸,能够在采集到的用户彩色图像中存在多张人脸的情况下准确筛选出目标人脸,排除背景环境对后续视线预测结果的干扰,从而提高预测结果的准确性。
视线方向向量用于表征用户彩色图像中目标人脸中的眼睛的视线方向。
在实际执行过程中,可以使用第一相机实时拍摄目标屏幕前的用户的图像,获取各个时刻用户彩色图像。
例如,可以基于建模或采用深度学习的方法,基于用户彩色图像确定目标人脸中的视线方向向量,本申请不作限定。
在一些实施例中,步骤110还可以包括:
对用户彩色图像进行图像分割,获取目标人脸对应的脸部图像和目标人脸中目标人眼对应的眼部图像中的至少一种;目标人眼包括左眼或右眼中的至少一个;
对脸部图像和眼部图像中的至少一种进行特征提取,获取视线特征;
基于视线特征,确定视线方向向量。
在该实施例中,脸部图像为包括有目标人脸的图像。
眼部图像为包括有目标人眼的图像。
目标人眼可以包括左眼,或者可以包括右眼,或者也可以包括左眼和右眼。
视线特征为基于脸部图像特征和眼部图像特征中的至少一种特征所得。
对用户彩色图像进行图像分割时,可以获取目标人脸对应的脸部图像,或者可以获取目标人脸中目标人眼对应的眼部图像,或者也可以获取目标人脸对应的脸部图像和目标人脸中目标人眼对应的眼部图像,本申请不作限定。
根据本申请实施例提供的基于三维视线估计和屏幕平面估计的鼠标定位的方法,通过对用户彩色图像进行图像分割并获得眼部图像,再对脸部图像和眼部图像中的至少一种进行特征提取,并获取视线特征,然后基于视线特征确定视线方向向量,能够在进行视线估计时结合用户头部转动特征以及眼部特征等多种特征,综合预测出用户实时的视线方向,有效提高了视线定位的精度和准确度,且适用于任意用户姿态,拓宽了定位范围。
下面参考图3,在一些实施例中,对脸部图像和眼部图像中的至少一种进行特征提取,获取视线特征,可以包括:
对脸部图像进行特征提取,获取头部转动特征;
对眼部图像进行特征提取,获取眼部特征;
融合头部转动特征和眼部特征,获取视线特征。
在该实施例中,头部转动特征为基于脸部图像进行特征提取所得,用于表征目标人脸的头部转动情况。
眼部特征为基于眼部图像进行特征提取所得,用于表征用户的左右眼视线交互情况。
视线特征为基于脸部图像特征和眼部图像特征中的至少一种特征所得。
在融合头部转动特征和眼部特征时,融合相关信息并去除冗余信息,以得到视线特征。
发明人在研发过程中发现,相关技术中存在基于传统几何算法对图像中的虹膜和瞳孔等进行3D建模以确定视线方向的方法,但该方法需要高分辨相机以及额外的光源,且对用户头部转动角度有限制,成本高且预测结果准确性较差。
在本申请中,通过提取头部转动特征以确定视线特征,有效考虑到头部转动的角度对视线的方向的影响,从而提高视线估计的精度;
通过提取左右眼的眼部特征,结合左右眼所看方向具有相关性的特点,结合两只眼睛的视线共同确定视线方向,通过提高左、右眼特征之间的相关性,以提高视线估计的精度;
除此之外,通过将头部转动特征作为引导信息,以获得更加准确的眼部特征,然后融合头部转动特征和眼部特征,以获取视线特征,能够进一步提高视线估计的精确性和准确性,且无需设置额外的光源,对硬件要求较低,成本低。
根据本申请实施例提供的基于三维视线估计和屏幕平面估计的鼠标定位的方法,通过分别对脸部图像和眼部图像进行特征提取,以得到头部转动特征和眼部特征,并融合头部转动特征和眼部特征以获得视线特征,能够在进行视线估计时根据用户头部转动,预测出用户实时的视线方向,进而提高视线估计的精度。
在一些实施例中,在步骤110之前,该方法还可以包括:对采集到的用户彩色图像进行归一化(Normalization)处理。
在实际执行过程中,用户的姿态以及与第一相机的距离是不可控的,通过对用户彩色图像进行Normalization处理,用图像变换的方式模拟相机的物理移动,使得变换后的用户彩色图像接近第一相机物理移动后拍摄的图像。
步骤120、基于视线方向向量和目标点的坐标,确定目标人脸的视线表示向量,目标点的坐标由第一相机采集的用户深度图像以及用户彩色图像确定。
在该步骤中,视线表示向量为基于视线方向向量和目标点的坐标所得。
目标点为用户视线所在射线上的点。
例如,目标点可以为用户的瞳孔,视线表示向量可以基于视线方向向量和用户的瞳孔处的坐标确定。在得到视线表示向量后,计算视线表示向量和屏幕表示向量之间的交点坐标,即可确定第一交点坐标。
步骤130、基于视线表示向量和目标屏幕的屏幕表示向量,确定视线表示向量与屏幕表示向量的第一交点坐标,第一交点坐标为第一相机对应的第一坐标系下的坐标。
在该步骤中,目标屏幕为与用户进行人机交互时的屏幕,也即用户所面向的屏幕。
屏幕表示向量用于表征目标屏幕所在的平面的位置。
第一坐标系为以第一相机为参考系的坐标系。
第一交点坐标为第一相机对应的第一坐标系下的坐标,是基于视线表示向量与屏幕表示向量的交点所得。
可以理解的是,在人机交互过程中,该交点可以表现为用户对屏幕的控制点,如可以对应于屏幕中的鼠标。
步骤140、基于第一交点坐标和目标旋转平移矩阵,确定第二交点坐标,第二交点坐标为目标屏幕对应的第二坐标系下的坐标。
在该步骤中,目标旋转平移矩阵Rs为第一相机和目标屏幕之间的旋转平移矩。
第二坐标系为以目标屏幕为参考系的坐标系。
第二交点坐标为目标屏幕对应的第二坐标系下的坐标,是基于第一交点坐标和目标旋转平移矩阵所得。
发明人在研发过程中还发现,相关技术中存在基于深度学习,直接获得用户图像中人眼与所看屏幕的位置映射关系的方法,但此方法需要依据特定设备,并且在采集的数据不同的情况下,需要重新训练一个独立的模型,通用性较低,步骤较为繁杂。
而在本申请中,通过建立目标旋转平移矩阵以建立第一相机与目标屏幕之间的位置转换关系,在实际使用过程中,仅需基于实际情况修改目标旋转平移矩阵即可将获取的第一交点坐标转换为当前实际目标屏幕所对应的第二交点坐标,无需依据特定设备,且无需独立训练模型,实现了模型的通用性,普适性强且易于实现,成本低。
步骤150、基于第二交点坐标,控制目标屏幕中的鼠标移动。
在该步骤中,第二交点坐标即为鼠标的位置。在实际执行过程中,第一相机采集用户图像,用户图像包括用户彩色图像和用户深度图像,基于用户彩色图像确定用户彩色图像中目标人脸的视线方向向量。
视线方向向量可以表示为:
(gx,gy,gz),
其中,gx为视线方向向量的横坐标,gy为视线方向向量的纵坐标,gz为视线方向向量的竖坐标。
通过人脸特征点检测,确定瞳孔位置,然后获得第一相机坐标系下瞳孔处的x,y轴坐标;在用户深度图像和用户彩色图像对齐之后,基于用户深度图像获得瞳孔处深度(即瞳孔在第一相机坐标系下的z轴坐标),进而获得瞳孔在RGB-D相机坐标系(即第一相机对应的第一坐标系)下的三维坐标为(x0,y0,z0);
基于视线方向向量和瞳孔处的三维坐标(x0,y0,z0),视线表示向量可以表示为:
其中,x、y和z均为变量,x0为瞳孔处的三维坐标的横坐标,y0为瞳孔处的三维坐标的纵坐标,z0为瞳孔处的三维坐标的竖坐标,gx为视线方向向量的横坐标,gy为视线方向向量的纵坐标,gz为视线方向向量的竖坐标。
目标屏幕的法向量为目标屏幕的坐标系的z轴,则目标屏幕的法向量可以表示为:
n=Rs[:,2]=(nx,ny,nz),
其中,n为目标屏幕的法向量,Rs为目标旋转平移矩阵,Nx为目标屏幕的法向量的横坐标,ny为目标屏幕的法向量的纵坐标,nz为目标屏幕的法向量的竖坐标。
取目标屏幕所在的平面中的一个点Ts=[tx,ty,tz],由平面的点法式方程,可将目标屏幕所在平面的方程(即目标屏幕的屏幕表示向量)表示为:
nxx+nyy+nzz=nxtx+nyty+nztz,
其中,x、y和z均为变量,nx为目标屏幕的法向量的横坐标,ny为目标屏幕的法向量的纵坐标,nz为目标屏幕的法向量的竖坐标,tx为点Ts的横坐标,ty为点Ts的纵坐标,tz为点Ts的竖坐标。
如图4所示,联合求解视线的表达式和目标屏幕所在平面的方程,获得第一交点坐标,再基于第一交点坐标和目标旋转平移矩阵Rs,确定第二交点坐标,最后基于第二交点坐标,获得鼠标移动权限,将鼠标移动至第二交点坐标。
根据本申请实施例提供的基于三维视线估计和屏幕平面估计的鼠标定位的方法,通过采集用户彩色图像以获得视线方向向量,并基于视线方向向量和目标点的坐标获得视线表示向量,再基于视线表示向量和屏幕表示向量确定第一交点坐标,然后基于第一交点坐标和目标旋转平移矩阵,确定第二交点坐标,再控制目标屏幕中的鼠标移动至第二交点坐标,在实际应用过程中能够通过用户彩色图像中的目标人脸的特征以及对应的用户深度图像预测出视线坐标,具有较高的精确性和准确性,从而有助于提高后续定位结果的精准性;通过建立第一相机与目标屏幕之间的目标旋转平移矩阵,适用于任意情境下的坐标系转换从而实现准确定位,拓宽了应用场景,且无需设置额外光源等其他设备以及特定设备,定位成本较低且易于实现。
下面对目标旋转平移矩阵的确定方式进行说明。
在一些实施例中,在步骤110之前,该方法还可以包括:
获取第一相机与第二相机之间的第一旋转平移矩阵,并获取第二相机与目标屏幕之间的第二旋转平移矩阵;
基于第一旋转平移矩阵和第二旋转平移矩阵,确定目标旋转平移矩阵。
在该实施例中,第一旋转平移矩阵RT1用于转换第一相机和第二相机所对应的坐标系。
第二旋转平移矩阵RT2用于转换第二相机与目标屏幕所对应的坐标系。
目标旋转平移矩阵Rs为第一相机和目标屏幕之间的旋转平移矩阵,用于转换第一相机和目标屏幕之间的坐标系,在实际应用中,基于目标旋转平移矩阵Rs确定鼠标位置。
在实际执行过程中,目标旋转平移矩阵Rs可以由以下公式得到:
Rs=RT1*RT2
其中,Rs为目标旋转平移矩阵,RT1为第一旋转平移矩阵,RT2为第二旋转平移矩阵。
根据本申请实施例提供的基于三维视线估计和屏幕平面估计的鼠标定位的方法,通过获取第一旋转平移矩阵RT1和第二旋转平移矩阵RT2以得到目标旋转平移矩阵Rs,从而建立第一相机与目标屏幕之间的坐标转换关系,能够在实际执行过程中基于目标旋转平移矩阵Rs将预测得到的第一交点坐标转换为目标屏幕中的鼠标位置坐标,适用于任意通用模型所输出的视线表示向量,无需基于特定应用场景单独训练模型,具有广泛的应用场景且通用性高。
下面参考图5,在一些实施例中,获取第一相机与第二相机之间的第一旋转平移矩阵,并获取第二相机与目标屏幕之间的第二旋转平移矩阵,可以包括:
获取第一相机采集的第一标定板对应的第一图像,以及第二相机采集的第二标定板对应的第二图像;第一标定板为双面标定板的第一面,第二标定板为双面标定板的第二面,第一相机和第二相机的视场相对;
基于第一图像,确定第一相机与第一标定板之间的第三旋转平移矩阵;
基于第二图像,确定第二相机与第二标定板之间的第四旋转平移矩阵;
基于第一图像,获取第一标定板的第一原点位置;
基于第二图像,获取第二标定板的第二原点位置;
基于第一原点位置、第二原点位置和双面标定板的厚度,确定第一标定板和第二标定板之间的第五旋转平移矩阵;
基于第三旋转平移矩阵、第四旋转平移矩阵和第五旋转平移矩阵,确定第一旋转平移矩阵。
在该实施例中,第一标定板为双面标定板的第一面。
第二标定板为双面标定板的第二面。
第一标定板和第二标定板可近似认为平行放置。
第一图像为第一相机采集的第一标定板对应的图像。
第二图像为第二相机采集的第二标定板对应的图像。
双面标定板放置于第一相机和第二相机中间。
第一原点位置为第一标定板的中心位置,可以基于第一相机和第一标定板的标定结果获得。
第二原点位置为第二标定板的中心位置,可以基于第二相机和第二标定板的标定结果获得。
再基于第一相机和第一标定板的标定结果,获取第一标定板的第一原点位置;基于第二相机和第二标定板的标定结果,获取第二标定板的第二原点位置;基于第一原点位置、第二原点位置和双面标定板的厚度,获取第一标定板和第二标定板之间的第五旋转平移矩阵
第一相机与第二相机之间的第一旋转平移矩阵RT1可以由以下公式得到:
根据本申请实施例提供的基于三维视线估计和屏幕平面估计的鼠标定位的方法,通过基于第三旋转平移矩阵、第四旋转平移矩阵和第五旋转平移矩阵,确定第一相机与第二相机之间的第一旋转平移矩阵RT1,能够标定第一相机与第二相机之间的位置关系,便于后续建立第一相机与目标屏幕之间的坐标转换关系,以得到目标屏幕中的鼠标位置坐标,适用于任意通用模型所输出的视线方向向量,无需基于特定应用场景单独训练模型,具有广泛的应用场景且通用性高。
在一些实施例中,获取第二相机与目标屏幕之间的第二旋转平移矩阵,可以包括:
获取第二相机采集的第三标定板对应的第三图像,第三标定板为目标屏幕所显示的标定板;
基于第三图像,确定第二旋转平移矩阵。
在该实施例中,第三图像为第二相机采集的第三标定板对应的图像。
第三标定板为目标屏幕所显示的标定板,如显示于目标屏幕上的棋盘格,如图5所示。
第二旋转平移矩阵RT2为基于第三图像所得,用于转换第二相机与目标屏幕之间的坐标关系。
在实际执行过程中,使用第二相机拍摄第三标定板以获得第三图像,基于第三图像,可以使用张正友标定法获得第二相机与目标屏幕之间的第二旋转平移矩阵RT2。
根据本申请实施例提供的基于三维视线估计和屏幕平面估计的鼠标定位的方法,通过获取第二相机采集的第三标定板对应的第三图像,并基于第三图像,确定第二旋转平移矩阵RT2,能够标定第二相机与目标屏幕之间的位置关系,便于后续建立第一相机与目标屏幕之间的坐标转换关系,以得到目标屏幕中的鼠标位置坐标,适用于任意通用模型所输出的视线方向向量,无需基于特定应用场景单独训练模型,具有广泛的应用场景且通用性高。
在实际执行过程中,可以采用神经网络模型来实现步骤110,下面以目标神经网络为例,对步骤110的实现方式进行说明。
在一些实施例中,步骤110还可以包括:
将用户彩色图像输入至目标神经网络,获取目标神经网络输出的视线方向向量;
其中,目标神经网络为以样本用户彩色图像为样本,以与样本用户彩色图像对应的样本视线方向向量为样本标签,训练得到。
在该实施例中,目标神经网络可以包括顺次连接的图像分割层、特征提取层和融合层。
如图3所示,在实际执行过程中,图像分割层用于将用户彩色图像分割为脸部图像和眼部图像,具体实现方法为:将用户彩色图像输入目标神经网络,得到人脸特征点,基于人脸特征点,对用户彩色图像进行图像分割并获得脸部图像和眼部图像。
特征提取层用于对脸部图像和眼部图像进行特征提取,具体实现方法为:将脸部图像输入脸部特征提取子模块,以提取脸部特征信息,其中,脸部特征提取子模块包括多个Conv2d/BatchNorm/ReLU块;将眼部图像输入眼睛特征提取子模块,以提取眼部特征信息,眼部特征信息可以包括左眼特征信息和右眼特征信息,其中,眼睛特征提取子模块包括Conv2d/BatchNorm/ReLU块和残差网络。
融合层用于融合脸部特征信息与眼部特征信息,具体实现方法为:将脸部特征信息和眼部特征信息输入至特征融合子模块,以融合脸部特征信息和眼部特征信息。
在一些实施例中,神经网络还可以包括池化层、线性层和激活层。
池化层用于对特征信息进行压缩,去除冗余信息。
线性层用于对前一层输出的特征信息进行线性变换。
激活层用于对特征信息进行非线性变换。
在实际执行过程中,通过特征融合子模块将多个特征信息拼接在一起,再由池化层做信息剔除,以去除冗余信息,然后通过多个线性层以及激活层,以输出处理后的脸部特征信息和眼部特征信息。
同时,可以将左眼和右眼特征信息通过attention机制融合,以更加关注左眼和右眼特征信息之间的相关性。
最后将融合后的眼部特征信息和眼部特征信息分别输入至左右眼各自的线性层,以预测左右眼各自的视线方向向量。
另外,目标神经网络以样本用户彩色图像为样本,以与样本用户彩色图像对应的样本视线方向向量为样本标签,训练得到。
在实际执行过程中,输入样本用户彩色图像,经过多个神经元以输出尽可能接近样本标签的输出值,在输出值与样本标签误差较大的情况下,修改神经元的权,直至输出值与样本标签的误差在目标范围内。
在应用过程中,可以将用户彩色图像输入至预先训练好的目标神经网络,以获取目标神经网络输出的视线方向向量。
根据本申请实施例提供的基于三维视线估计和屏幕平面估计的鼠标定位的方法,通过将用户彩色图像输入至预先训练好的目标神经网络,以获取目标神经网络输出的视线方向向量,在实际应用中只需使用前进行预训练,之后即可直接获取数据,计算效率高且准确性好;并且目标神经网络的学习能力强,每一次应用过程中的数据均可以作为下一次训练过程中的训练数据,从而提高模型的精度和准确度,便于用户使用,拓宽了定位范围,通用性较高,同时提高了最终视线估计的精度。
下面对本申请提供的基于三维视线估计和屏幕平面估计的鼠标定位的方法在实际应用过程中的流程做具体说明,如图2所示。
首先使用第一相机采集用户彩色图像;
将用户彩色图像送入目标神经网络,再判断用户彩色图像中是否存在人脸,在用户彩色图像中存在人脸的情况下,判断用户彩色图像中是否存在多张人脸,在用户彩色图像中存在多张人脸的情况下,将最大的人脸图像确定为目标人脸;
在用户彩色图像中不存在人脸的情况下,将再次采集用户彩色图像;
然后获取用户彩色图像中人脸的位置,即人脸框的坐标;
对用户彩色图像进行图像分割,获取脸部图像和眼部图像;
对用户彩色图像进行归一化(Normalization)处理;
将用户彩色图像输入至目标神经网络,即视线估计模型,以获取目标神经网络输出的视线方向向量;基于视线方向向量和瞳孔处的三维坐标获得视线表示向量;然后基于视线表示向量确定与目标屏幕的第一交点坐标;
再基于目标旋转平移矩阵转换第一交点坐标,获取第二交点坐标;
基于第二交点坐标,获取鼠标移动权限并将鼠标移动至对应位置。
下面对本申请提供的基于三维视线估计和屏幕平面估计的鼠标定位的装置进行描述,下文描述的基于三维视线估计和屏幕平面估计的鼠标定位的装置与上文描述的基于三维视线估计和屏幕平面估计的鼠标定位的方法可相互对应参照。
本申请实施例提供的基于三维视线估计和屏幕平面估计的鼠标定位的方法,执行主体可以为基于三维视线估计和屏幕平面估计的鼠标定位的装置。本申请实施例中以基于三维视线估计和屏幕平面估计的鼠标定位的装置执行基于三维视线估计和屏幕平面估计的鼠标定位的方法为例,说明本申请实施例提供的基于三维视线估计和屏幕平面估计的鼠标定位的装置。
本申请实施例还提供一种基于三维视线估计和屏幕平面估计的鼠标定位的装置。
如图6所示,该基于三维视线估计和屏幕平面估计的鼠标定位的装置,包括:第一处理模块610、第二处理模块620、第三处理模块630、第四处理模块640和第五处理模块650。
在该实施例中,第一处理模块610,用于基于用户彩色图像,确定用户彩色图像中目标人脸的视线方向向量,用户彩色图像由第一相机采集;
第二处理模块620,基于视线方向向量和目标点的坐标,确定目标人脸的视线表示向量,目标点的坐标由第一相机采集的用户深度图像以及用户彩色图像确定;
第三处理模块630,用于基于视线表示向量和目标屏幕的屏幕表示向量,确定视线表示向量与屏幕表示向量的第一交点坐标,第一交点坐标为第一相机对应的第一坐标系下的坐标;
第四处理模块640,用于基于第一交点坐标和目标旋转平移矩阵,确定第二交点坐标,第二交点坐标为目标屏幕对应的第二坐标系下的坐标,目标旋转平移矩阵为第一相机和目标屏幕之间的旋转平移矩阵;
第五处理模块650,用于基于第二交点坐标,控制目标屏幕中的鼠标移动。
根据本申请实施例提供的基于三维视线估计和屏幕平面估计的鼠标定位的装置,通过采集用户彩色图像以获得视线方向向量,并基于视线方向向量和目标点的坐标获得视线表示向量,再基于视线表示向量和屏幕表示向量确定第一交点坐标,然后基于第一交点坐标和目标旋转平移矩阵,确定第二交点坐标,再控制目标屏幕中的鼠标移动至第二交点坐标,在实际应用过程中能够通过用户彩色图像中的目标人脸的特征以及对应的用户深度图像预测出视线坐标,具有较高的精确性和准确性,从而有助于提高后续定位结果的精准性;通过建立第一相机与目标屏幕之间的目标旋转平移矩阵,适用于任意情境下的坐标系转换从而实现准确定位,拓宽了应用场景,且无需设置额外光源等其他设备以及特定设备,定位成本较低且易于实现。
在一些实施例中,第一处理模块610还可以用于:
对用户彩色图像进行图像分割,获取目标人脸对应的脸部图像和目标人脸中目标人眼对应的眼部图像中的至少一种;目标人眼包括左眼或右眼中的至少一个;
对脸部图像和眼部图像中的至少一种进行特征提取,获取视线特征;
基于视线特征,确定视线方向向量。
根据本申请实施例提供的基于三维视线估计和屏幕平面估计的鼠标定位的装置,通过对用户彩色图像进行图像分割并获得眼部图像,再对脸部图像和眼部图像中的至少一种进行特征提取,并获取视线特征,然后基于视线特征确定视线方向向量,能够在进行视线估计时结合用户头部转动特征以及眼部特征等多种特征,综合预测出用户实时的视线方向,有效提高了视线定位的精度和准确度,且适用于任意用户姿态,拓宽了定位范围。
在一些实施例中,该装置还可以包括第六处理模块,用于对脸部图像进行特征提取,获取头部转动特征;
对眼部图像进行特征提取,获取眼部特征;
融合头部转动特征和眼部特征,获取视线特征。
根据本申请实施例提供的基于三维视线估计和屏幕平面估计的鼠标定位的装置,通过分别对脸部图像和眼部图像进行特征提取,以得到头部转动特征和眼部特征,并融合头部转动特征和眼部特征以获得视线特征,能够在进行视线估计时根据用户头部转动,预测出用户实时的视线方向,进而提高视线估计的精度。
在一些实施例中,该装置还可以包括第七处理模块,用于获取第一相机与第二相机之间的第一旋转平移矩阵,并获取第二相机与目标屏幕之间的第二旋转平移矩阵;
基于第一旋转平移矩阵和第二旋转平移矩阵,确定目标旋转平移矩阵。
根据本申请实施例提供的基于三维视线估计和屏幕平面估计的鼠标定位的装置,通过获取第一旋转平移矩阵RT1和第二旋转平移矩阵RT2以得到目标旋转平移矩阵Rs,从而建立第一相机与目标屏幕之间的坐标转换关系,能够在实际执行过程中基于目标旋转平移矩阵Rs将预测得到的第一交点坐标转换为目标屏幕中的鼠标位置坐标,适用于任意通用模型所输出的视线方向向量,无需基于特定应用场景单独训练模型,具有广泛的应用场景且通用性高。
在一些实施例中,该装置还可以包括第八处理模块,用于获取第一相机采集的第一标定板对应的第一图像,以及第二相机采集的第二标定板对应的第二图像;第一标定板为双面标定板的第一面,第二标定板为双面标定板的第二面,第一相机和第二相机的视场相对;
基于第一图像,确定第一相机与第一标定板之间的第三旋转平移矩阵;
基于第二图像,确定第二相机与第二标定板之间的第四旋转平移矩阵;
基于第一图像,获取第一标定板的第一原点位置;
基于第二图像,获取第二标定板的第二原点位置;
基于第一原点位置、第二原点位置和双面标定板的厚度,确定第一标定板和第二标定板之间的第五旋转平移矩阵;
基于第三旋转平移矩阵、第四旋转平移矩阵和第五旋转平移矩阵,确定第一旋转平移矩阵。
根据本申请实施例提供的基于三维视线估计和屏幕平面估计的鼠标定位的装置,通过基于第三旋转平移矩阵、第四旋转平移矩阵和第五旋转平移矩阵,确定第一相机与第二相机之间的第一旋转平移矩阵RT1,能够标定第一相机与第二相机之间的位置关系,便于后续建立第一相机与目标屏幕之间的坐标转换关系,以得到目标屏幕中的鼠标位置坐标,适用于任意通用模型所输出的视线方向向量,无需基于特定应用场景单独训练模型,具有广泛的应用场景且通用性高。
在一些实施例中,该装置还可以包括第九处理模块,用于获取第二相机采集的第三标定板对应的第三图像,第三标定板为目标屏幕所显示的标定板;
基于第三图像,确定第二旋转平移矩阵。
根据本申请实施例提供的基于三维视线估计和屏幕平面估计的鼠标定位的装置,通过获取第二相机采集的第三标定板对应的第三图像,并基于第三图像,确定第二旋转平移矩阵RT2,能够标定第二相机与目标屏幕之间的位置关系,便于后续建立第一相机与目标屏幕之间的坐标转换关系,以得到目标屏幕中的鼠标位置坐标,适用于任意通用模型所输出的视线方向向量,无需基于特定应用场景单独训练模型,具有广泛的应用场景且通用性高。
在一些实施例中,第一处理模块610还可以用于:
对用户彩色图像进行特征识别,获取至少一个人脸图像;
将至少一个人脸图像中最大的人脸图像,确定为目标人脸。
根据本申请实施例提供的基于三维视线估计和屏幕平面估计的鼠标定位的装置,通过对用户彩色图像进行特征识别,获取至少一个人脸图像,并将至少一个人脸图像中最大的人脸图像,确定为目标人脸,能够在采集到的用户彩色图像中存在多张人脸的情况下准确筛选出目标人脸,排除背景环境对后续视线预测结果的干扰,从而提高预测结果的准确性。
在一些实施例中,第一处理模块610还可以用于:
将用户彩色图像输入至目标神经网络,获取目标神经网络输出的视线方向向量;
其中,目标神经网络为以样本用户彩色图像为样本,以与样本用户彩色图像对应的样本视线方向向量为样本标签,训练得到。
根据本申请实施例提供的基于三维视线估计和屏幕平面估计的鼠标定位的装置,通过将用户彩色图像输入至预先训练好的目标神经网络,以获取目标神经网络输出的视线方向向量,在实际应用中只需使用前进行预训练,之后即可直接获取数据,计算效率高且准确性好;并且目标神经网络的学习能力强,每一次应用过程中的数据均可以作为下一次训练过程中的训练数据,从而提高模型的精度和准确度,便于用户使用,拓宽了定位范围,通用性较高,同时提高了最终视线估计的精度。
本申请实施例中的基于三维视线估计和屏幕平面估计的鼠标定位的装置可以是电子设备,也可以是电子设备中的部件,例如集成电路或芯片。该电子设备可以是终端,也可以为除终端之外的其他设备。示例性的,电子设备可以为手机、平板电脑、笔记本电脑、掌上电脑、车载电子设备、移动上网装置(Mobile Internet Device,MID)、增强现实(augmented reality,AR)/虚拟现实(virtual reality,VR)设备、机器人、可穿戴设备、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本或者个人数字助理(personal digital assistant,PDA)等,还可以为服务器、网络附属存储器(NetworkAttached Storage,NAS)、个人计算机(personal computer,PC)、电视机(television,TV)、柜员机或者自助机等,本申请实施例不作具体限定。
本申请实施例中的基于三维视线估计和屏幕平面估计的鼠标定位的装置可以为具有操作***的装置。该操作***可以为安卓(Android)操作***,可以为IOS操作***,还可以为其他可能的操作***,本申请实施例不作具体限定。
本申请实施例提供的基于三维视线估计和屏幕平面估计的鼠标定位的装置能够实现图1至图5的方法实施例实现的各个过程,为避免重复,这里不再赘述。
图7示例了一种电子设备的实体结构示意图,如图7所示,该电子设备可以包括:处理器(processor)710、通信接口(Communications Interface)720、存储器(memory)730和通信总线740,其中,处理器710,通信接口720,存储器730通过通信总线740完成相互间的通信。处理器710可以调用存储器730中的逻辑指令,以执行基于三维视线估计和屏幕平面估计的鼠标定位的方法,该方法包括:基于用户彩色图像,确定用户彩色图像中目标人脸的视线方向向量,用户彩色图像由第一相机采集;基于视线方向向量和目标点的坐标,确定目标人脸的视线表示向量,目标点的坐标由第一相机采集的用户深度图像以及用户彩色图像确定;基于视线表示向量和目标屏幕的屏幕表示向量,确定视线表示向量与屏幕表示向量的第一交点坐标,第一交点坐标为第一相机对应的第一坐标系下的坐标;基于第一交点坐标和目标旋转平移矩阵,确定第二交点坐标,第二交点坐标为目标屏幕对应的第二坐标系下的坐标,目标旋转平移矩阵为第一相机和目标屏幕之间的旋转平移矩阵;基于第二交点坐标,控制目标屏幕中的鼠标移动。
此外,上述的存储器730中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本申请还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法所提供的基于三维视线估计和屏幕平面估计的鼠标定位的方法,该方法包括:基于用户彩色图像,确定用户彩色图像中目标人脸的视线方向向量,用户彩色图像由第一相机采集;基于视线方向向量和目标点的坐标,确定目标人脸的视线表示向量,目标点的坐标由第一相机采集的用户深度图像以及用户彩色图像确定;基于视线表示向量和目标屏幕的屏幕表示向量,确定视线表示向量与屏幕表示向量的第一交点坐标,第一交点坐标为第一相机对应的第一坐标系下的坐标;基于第一交点坐标和目标旋转平移矩阵,确定第二交点坐标,第二交点坐标为目标屏幕对应的第二坐标系下的坐标,目标旋转平移矩阵为第一相机和目标屏幕之间的旋转平移矩阵;基于第二交点坐标,控制目标屏幕中的鼠标移动。
又一方面,本申请还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法所提供的基于三维视线估计和屏幕平面估计的鼠标定位的方法,该方法包括:基于用户彩色图像,确定用户彩色图像中目标人脸的视线方向向量,用户彩色图像由第一相机采集;基于视线方向向量和目标点的坐标,确定目标人脸的视线表示向量,目标点的坐标由第一相机采集的用户深度图像以及用户彩色图像确定;基于视线表示向量和目标屏幕的屏幕表示向量,确定视线表示向量与屏幕表示向量的第一交点坐标,第一交点坐标为第一相机对应的第一坐标系下的坐标;基于第一交点坐标和目标旋转平移矩阵,确定第二交点坐标,第二交点坐标为目标屏幕对应的第二坐标系下的坐标,目标旋转平移矩阵为第一相机和目标屏幕之间的旋转平移矩阵;基于第二交点坐标,控制目标屏幕中的鼠标移动。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (10)
1.一种基于三维视线估计和屏幕平面估计的鼠标定位的方法,其特征在于,包括:
基于用户彩色图像,确定所述用户彩色图像中目标人脸的视线方向向量,所述用户彩色图像由第一相机采集;
基于所述视线方向向量和目标点的坐标,确定目标人脸的视线表示向量,所述目标点的坐标由所述第一相机采集的用户深度图像以及所述用户彩色图像确定;
基于所述视线表示向量和目标屏幕的屏幕表示向量,确定所述视线表示向量与所述屏幕表示向量的第一交点坐标,所述第一交点坐标为所述第一相机对应的第一坐标系下的坐标;
基于所述第一交点坐标和目标旋转平移矩阵,确定第二交点坐标,所述第二交点坐标为所述目标屏幕对应的第二坐标系下的坐标,所述目标旋转平移矩阵为所述第一相机和所述目标屏幕之间的旋转平移矩阵;
基于所述第二交点坐标,控制所述目标屏幕中的鼠标移动。
2.根据权利要求1所述的基于三维视线估计和屏幕平面估计的鼠标定位的方法,其特征在于,所述基于用户彩色图像,确定所述用户彩色图像中目标人脸的视线方向向量,包括:
对所述用户彩色图像进行图像分割,获取所述目标人脸对应的脸部图像和所述目标人脸中目标人眼对应的眼部图像中的至少一种;所述目标人眼包括左眼或右眼中的至少一个;
对所述脸部图像和所述眼部图像中的至少一种进行特征提取,获取视线特征;
基于所述视线特征,确定所述视线方向向量。
3.根据权利要求2所述的基于三维视线估计和屏幕平面估计的鼠标定位的方法,其特征在于,所述对所述脸部图像和所述眼部图像中的至少一种进行特征提取,获取视线特征,包括:
对所述脸部图像进行特征提取,获取头部转动特征;
对所述眼部图像进行特征提取,获取眼部特征;
融合所述头部转动特征和所述眼部特征,获取所述视线特征。
4.根据权利要求1-3任一项所述的基于三维视线估计和屏幕平面估计的鼠标定位的方法,其特征在于,在所述基于用户彩色图像,确定所述用户彩色图像中目标人脸的视线方向向量之前,所述方法还包括:
获取所述第一相机与第二相机之间的第一旋转平移矩阵,并获取所述第二相机与所述目标屏幕之间的第二旋转平移矩阵;
基于所述第一旋转平移矩阵和所述第二旋转平移矩阵,确定所述目标旋转平移矩阵。
5.根据权利要求4所述的基于三维视线估计和屏幕平面估计的鼠标定位的方法,其特征在于,所述获取所述第一相机与第二相机之间的第一旋转平移矩阵,并获取所述第二相机与所述目标屏幕之间的第二旋转平移矩阵,包括:
获取所述第一相机采集的第一标定板对应的第一图像,以及所述第二相机采集的第二标定板对应的第二图像;所述第一标定板为双面标定板的第一面,所述第二标定板为所述双面标定板的第二面,所述第一相机和所述第二相机的视场相对;
基于所述第一图像,确定所述第一相机与所述第一标定板之间的第三旋转平移矩阵;
基于所述第二图像,确定所述第二相机与所述第二标定板之间的第四旋转平移矩阵;
基于所述第一图像,获取所述第一标定板的第一原点位置;
基于所述第二图像,获取所述第二标定板的第二原点位置;
基于所述第一原点位置、所述第二原点位置和所述双面标定板的厚度,确定所述第一标定板和所述第二标定板之间的第五旋转平移矩阵;
基于所述第三旋转平移矩阵、所述第四旋转平移矩阵和所述第五旋转平移矩阵,确定所述第一旋转平移矩阵。
6.根据权利要求4所述的基于三维视线估计和屏幕平面估计的鼠标定位的方法,其特征在于,所述获取所述第二相机与所述目标屏幕之间的第二旋转平移矩阵,包括:
获取所述第二相机采集的第三标定板对应的第三图像,所述第三标定板为所述目标屏幕所显示的标定板;
基于所述第三图像,确定所述第二旋转平移矩阵。
7.根据权利要求1-3任一项所述的基于三维视线估计和屏幕平面估计的鼠标定位的方法,其特征在于,所述基于用户彩色图像,确定所述用户彩色图像中目标人脸的视线方向向量,包括:
对所述用户彩色图像进行特征识别,获取至少一个人脸图像;
将所述至少一个人脸图像中最大的所述人脸图像,确定为所述目标人脸。
8.根据权利要求1-3任一项所述的基于三维视线估计和屏幕平面估计的鼠标定位的方法,其特征在于,所述基于用户彩色图像,确定所述用户彩色图像中目标人脸的视线方向向量,包括:
将所述用户彩色图像输入至目标神经网络,获取所述目标神经网络输出的所述视线方向向量;
其中,所述目标神经网络为以样本用户彩色图像为样本,以与所述样本用户彩色图像对应的样本视线方向向量为样本标签,训练得到。
9.一种基于三维视线估计和屏幕平面估计的鼠标定位的装置,其特征在于,包括:
第一处理模块,用于基于用户彩色图像,确定所述用户彩色图像中目标人脸的视线方向向量,所述用户彩色图像由第一相机采集;
第二处理模块,用于基于所述视线方向向量和目标点的坐标,确定目标人脸的视线表示向量,所述目标点的坐标由所述第一相机采集的用户深度图像以及所述用户彩色图像确定;
第三处理模块,用于基于所述视线表示向量和目标屏幕的屏幕表示向量,确定所述视线表示向量与所述屏幕表示向量的第一交点坐标,所述第一交点坐标为所述第一相机对应的第一坐标系下的坐标;
第四处理模块,用于基于所述第一交点坐标和目标旋转平移矩阵,确定第二交点坐标,所述第二交点坐标为所述目标屏幕对应的第二坐标系下的坐标,所述目标旋转平移矩阵为所述第一相机和所述目标屏幕之间的旋转平移矩阵;
第五处理模块,用于基于所述第二交点坐标,控制所述目标屏幕中的鼠标移动。
10.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1-8任一项所述基于三维视线估计和屏幕平面估计的鼠标定位的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211675699.2A CN116012459A (zh) | 2022-12-26 | 2022-12-26 | 基于三维视线估计和屏幕平面估计的鼠标定位的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211675699.2A CN116012459A (zh) | 2022-12-26 | 2022-12-26 | 基于三维视线估计和屏幕平面估计的鼠标定位的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116012459A true CN116012459A (zh) | 2023-04-25 |
Family
ID=86020389
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211675699.2A Pending CN116012459A (zh) | 2022-12-26 | 2022-12-26 | 基于三维视线估计和屏幕平面估计的鼠标定位的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116012459A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117912086A (zh) * | 2024-03-19 | 2024-04-19 | 中国科学技术大学 | 基于撒切尔效应驱动的人脸识别方法、***、设备及介质 |
-
2022
- 2022-12-26 CN CN202211675699.2A patent/CN116012459A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117912086A (zh) * | 2024-03-19 | 2024-04-19 | 中国科学技术大学 | 基于撒切尔效应驱动的人脸识别方法、***、设备及介质 |
CN117912086B (zh) * | 2024-03-19 | 2024-05-31 | 中国科学技术大学 | 基于撒切尔效应驱动的人脸识别方法、***、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11632537B2 (en) | Method and apparatus for obtaining binocular panoramic image, and storage medium | |
CN108229277B (zh) | 手势识别、手势控制及多层神经网络训练方法、装置及电子设备 | |
CN107545302B (zh) | 一种人眼左右眼图像联合的视线方向计算方法 | |
Itoh et al. | Interaction-free calibration for optical see-through head-mounted displays based on 3d eye localization | |
WO2020103700A1 (zh) | 一种基于微表情的图像识别方法、装置以及相关设备 | |
CN109359514B (zh) | 一种面向deskVR的手势跟踪识别联合策略方法 | |
CN107105333A (zh) | 一种基于视线追踪技术的vr视频直播交互方法与装置 | |
WO2014187223A1 (en) | Method and apparatus for identifying facial features | |
CN113366491B (zh) | 眼球追踪方法、装置及存储介质 | |
CN111209811B (zh) | 一种实时检测眼球注意力位置的方法及*** | |
CN108305321B (zh) | 一种基于双目彩色成像***的立体人手3d骨架模型实时重建方法和装置 | |
KR101320683B1 (ko) | 증강현실 기반의 디스플레이 보정 방법 및 모듈, 이를 이용한 객체정보 디스플레이 방법 및 시스템 | |
CN114120432A (zh) | 基于视线估计的在线学习注意力跟踪方法及其应用 | |
CN111046734A (zh) | 基于膨胀卷积的多模态融合视线估计方法 | |
CN111723707A (zh) | 一种基于视觉显著性的注视点估计方法及装置 | |
CN112507840A (zh) | 一种人机混合增强的小目标检测和跟踪方法及*** | |
CN114333046A (zh) | 舞蹈动作评分方法、装置、设备和存储介质 | |
CN116012459A (zh) | 基于三维视线估计和屏幕平面估计的鼠标定位的方法 | |
CN113903210A (zh) | 虚拟现实模拟驾驶方法、装置、设备和存储介质 | |
CN115049819A (zh) | 注视区域识别方法及装置 | |
CN114898447B (zh) | 一种基于自注意力机制的个性化注视点检测方法及装置 | |
Abdallah et al. | An overview of gesture recognition | |
CN112099330B (zh) | 基于外部相机和穿戴式显控设备的全息人体重建方法 | |
CN113807251A (zh) | 一种基于外观的视线估计方法 | |
Li et al. | Feature Point Matching for Human-Computer Interaction Multi-Feature Gesture Recognition Based on Virtual Reality VR Technology |
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 |