技术领域
本发明涉及计算机技术领域,尤其涉及一种应用场景的交互方法和终端以及存储介质。
背景技术
计算机仿真系统可以创建虚拟世界,并用户来体验虚拟世界,它利用计算机生成一种模拟环境,是一种多源信息融合的交互式的三维动态视景和实体行为的系统仿真,使用户沉浸到该环境中。
目前,重要的应用是移动端游戏,该游戏的一大特色就是让玩家在游戏中进行操作交互,为此玩家需要通过手指和终端的触摸屏幕进行交互。在目前的移动端游戏中,用户仍然需要手指和触摸屏幕进行游戏交互,例如通过手指点击触摸屏幕、或者手指操作手柄按钮、或者手指滑动触摸屏幕等操作完成。
基于前述的现有技术提供的移动端游戏中,频繁的手指点击触摸屏幕进行交互,会降低场景代入感。另外,在用户不方便使用手指或者移动端没有配置触摸屏幕时,无法完成交互。
发明内容
本发明实施例提供了一种应用场景的交互方法和终端以及存储介质,用于实现移动终端上的沉浸式交互。
本发明实施例提供以下技术方案:
一方面,本发明实施例提供一种应用场景的交互方法,包括:
通过移动终端配置的摄像头对目标人脸进行实时的图像采集,得到第一帧图像和第二帧图像,其中,所述第一帧图像和所述第二帧图像是分别拍摄得到的前后相邻的两帧图像;
将所述第一帧图像和所述第二帧图像进行对比,得到所述目标人脸的动作和相应的幅度;
根据所述目标人脸的动作和相应的幅度生成模拟对象在交互式应用场景中的控制指令,所述交互式应用场景中显示有所述模拟对象和可交互物件;
根据所述控制指令控制所述模拟对象在所述交互式应用场景中与所述可交互物件进行交互。
另一方面,本发明实施例还提供一种移动终端,包括:
图像采集模块,用于通过移动终端配置的摄像头对目标人脸进行实时的图像采集,得到第一帧图像和第二帧图像,其中,所述第一帧图像和所述第二帧图像是分别拍摄得到的前后相邻的两帧图像;
对比模块,用于将所述第一帧图像和所述第二帧图像进行对比,得到所述目标人脸的动作和相应的幅度;
指令生成模块,用于根据所述目标人脸的动作和相应的幅度生成模拟对象在交互式应用场景中的控制指令,所述交互式应用场景中显示有所述模拟对象和可交互物件;
交互模块,用于根据所述控制指令控制所述模拟对象在所述交互式应用场景中与所述可交互物件进行交互。
在前述方面中,移动终端的组成模块还可以执行前述一方面以及各种可能的实现方式中所描述的步骤,详见前述对前述一方面以及各种可能的实现方式中的说明。
另一方面,本发明实施例提供一种移动终端,该移动终端包括:处理器、存储器;存储器用于存储指令;处理器用于执行存储器中的指令,使得移动终端执行如前述一方面中任一项的方法。
在本发明实施例中,通过移动终端配置的摄像头对目标人脸进行实时的图像采集,得到第一帧图像和第二帧图像,第一帧图像和第二帧图像是分别拍摄得到的前后相邻的两帧图像,将第一帧图像和第二帧图像进行对比,得到目标人脸的动作和相应的幅度,根据目标人脸的动作和相应的幅度生成模拟对象在交互式应用场景中的控制指令,交互式应用场景中显示有模拟对象和可交互物件,根据控制指令控制模拟对象在交互式应用场景中与可交互物件进行交互。本发明实施例可以依据摄像头实时拍摄的多帧图像的比对结果获取到人脸的动作以及幅度,进而可以生成模拟对象的控制指令,通过该控制指令实现模拟对象与可交互物件的交互,本发明实施例中可以依赖于用户的人脸表情进行场景交互,而不通过用户的手指来下发指令,因此可以实现在移动终端上的沉浸式交互。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的技术人员来讲,还可以根据这些附图获得其他的附图。
图1为本申请实施例中用户和移动终端之间交互场景示意图;
图2为本发明实施例提供的一种应用场景的交互方法的流程方框示意图;
图3为本发明实施例提供的另一种应用场景的交互方法的流程方框示意图;
图4为本发明实施例提供的磁吸效果的示意图;
图5为本发明实施例提供的阻尼效果的示意图;
图6为本发明实施例提供的游戏场景下的交互检测流程示意图;
图7为本发明实施例提供的一种游戏场景下的交互检测示意图;
图8为本发明实施例提供的另一种游戏场景下的交互检测示意图;
图9为本发明实施例提供的另一种游戏场景下的交互检测示意图;
图10-a为本发明实施例提供的一种移动终端的组成结构示意图;
图10-b为本发明实施例提供的一种对比模块的组成结构示意图;
图10-c为本发明实施例提供的另一种移动终端的组成结构示意图;
图10-d为本发明实施例提供的另一种移动终端的组成结构示意图;
图10-e为本发明实施例提供的一种交互模块的组成结构示意图;
图10-f为本发明实施例提供的另一种移动终端的组成结构示意图;
图11为本发明实施例提供的应用场景的交互方法应用于终端的组成结构示意图。
具体实施方式
本发明实施例提供了一种应用场景的交互方法和终端以及存储介质,用于实现移动终端上的沉浸式交互。
为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而非全部实施例。基于本发明中的实施例,本领域的技术人员所获得的所有其他实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,以便包含一系列单元的过程、方法、系统、产品或设备不必限于那些单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它单元。
请参考图1,其示出了本申请实施例提供的用户和移动终端之间交互场景示意图。移动终端(简称终端)与用户之间可以进行交互,终端可以是手机、平板电脑、电子书阅读器、MP3播放器(Moving Picture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving Picture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、膝上型便携计算机和台式计算机等等。
终端上配置有摄像头,该摄像头具体可以是前置摄像头。摄像头可以采集用户的人脸图像,该终端执行本发明实施例提供的应用场景的交互方法,在兼容现有移动端的输入交互方式的同时,通过摄像头逐帧捕捉用户的脸部图像,通过前后帧的脸部数据对比,计算得出用户所做出的动作和相应幅度,并对应成不同交互式应用场景下的控制指令,基于该控制指令可以实现在交互式应用场景中的模拟对象与可交互物件之间的交互。相比现有技术,在脸部控制的精准度和顺滑度方面,做出极大的提升,使无需任何手指操作的新的交互方式成为了可能。该交互方式运用于强调沉浸式体验,因不需要任何通过手指触碰屏幕来进行交互的操作,完全使用脸部表情识别来进行交互操作,所以能大幅提升用户的代入感。
以下从移动终端的角度进行详细说明。本发明应用场景的交互方法的一个实施例,具体可以应用于基于人脸图像的交互检测处理中,请参阅图2所示,本发明一个实施例提供的应用场景的交互方法,可以包括如下步骤:
201、通过移动终端配置的摄像头对目标人脸进行实时的图像采集,得到第一帧图像和第二帧图像,其中,第一帧图像和第二帧图像是分别拍摄得到的前后相邻的两帧图像。
在本发明实施例中,终端中设置有摄像头,首先对移动终端的摄像头进行初始化运行,在初始化运行完成之后,启动摄像头采集在摄像头的视野内出现的物体图像,在该物体图像被识别为用户人脸图像的情况下,将该用户人脸作为目标人脸进行实时拍摄,并生成在不同帧时刻拍摄的图像,本发明实施例中终端上安装的摄像头可以是后置摄像头或者前置摄像头。终端首先获取到待处理的第一帧图像和第二帧图像,每帧图像可以是通过摄像头对用户的人脸进行拍摄后生成的人脸图像,本发明实施例中人脸图像也可以称为面部图像或者头部图像等。
本发明实施例中摄像头采集在不同帧时刻的图像时可以得到多个帧时刻的图像,其中为了区别上述多个帧时刻的图像,将摄像头在第一帧时刻拍摄得到的图像定义为第一帧图像,将摄像头在第二帧时刻拍摄得到的图像定义为第二帧图像,第一帧图像和第二帧图像只是用于区分摄像头在不同帧时刻拍摄到的图像。
在本发明实施例中,对于在第一帧时刻拍摄得到的第一帧图像进行特征点的检测计算可以得到第一帧图像的特征点,对于在第二帧时刻拍摄得到的第二帧图像进行特征点的检测计算可以得到第二帧图像的特征点。其中,图像的特征点在基于特征点的图像匹配算法中有着十分重要的作用,图像特征点能够反映图像本质特征,能够标识图像中目标物体,通过特征点的匹配能够完成图像的匹配,本发明实施例图像的特征点可以是局部图像特征点,对于第一帧图像和第二帧图像的特征点提取可以有多种实现方式,例如可以是ORB(英文名称:ORiented Binary Robust Independent Elementary Features)特征点的提取,也可以是加速鲁棒特征(Speeded Up Robust Features,SURF)的提取,还可以是尺度不变特征变换(Scale-Invariant Feature Transform,SIFT)的提取等,因此本发明实施例中局部图像特点可以是ORB特征点、SURF特征点、SIFT特征点。通过对特征点的检测可以识别出每个帧图像上的人脸,例如通过特征点检测可以识别出人脸中的五官器官,这些五官器官可以作为人脸的定位点。
在本发明的一些实施例中,步骤201通过移动终端配置的摄像头对目标人脸进行实时的图像采集之前,本发明实施例提供的方法还包括如下步骤:
检测移动终端的触摸屏幕上是否产生有触摸输入;
当触摸屏幕上没有产生触摸输入时,触发执行如下步骤:通过移动终端配置的摄像头对目标人脸进行实时的图像采集。
其中,为了实现用户与移动终端的全程为无接触控制,首先判断触摸屏幕上是否产生有触摸输入,在确定触摸屏幕上没有产生触摸输入时,说明用户没有通过手指来触摸移动终端的屏幕,此时再启动移动终端的摄像头来采集用户的图像。
202、将第一帧图像和第二帧图像进行对比,得到目标人脸的动作和相应的幅度。
在本发明实施例中,终端在获取到前后帧的人脸图像之后,通过人脸图像在前后帧中的位置变化,可以确定出目标人脸所做的动作,以及该动作所对应的幅度。其中,目标人脸的动作指的是终端的摄像头所拍摄到的额用户动作,例如动作可以是脸部的上下左右移动,幅度指的是脸部动作移动的方向以及距离。
举例说明,本发明实施例中,通过前后帧图像的对比,可以识别出目标人脸的动作为左右转动脸部,即对应屏幕脸部左右移动,转动幅度对应屏幕移动距离。又如通过前后帧图像的对比,可以识别出人脸的动作为抬头低头,对应屏幕脸部上下移动,移动幅度对应屏幕移动距离。
在本发明的一些实施例中,步骤202将第一帧图像和第二帧图像进行对比,得到目标人脸的动作和相应的幅度,包括:
确定脸部定位点出现在第一帧图像中的第一像素位置,以及脸部定位点出现在第二帧图像中的第二像素位置;
将第一像素位置和第二像素位置进行对比,得到第一像素位置和第二像素位置之间的相对位移;
根据第一像素位置和第二像素位置之间的相对位移确定目标人脸的动作和相应的幅度。
在本发明实施例,通过前述步骤对目标人脸采集得到的多帧图像进行脸部检测之后,可以输出图像中的脸部位置,脸部位置在摄像头采集到的图像中表示的位置是以像素为单位的,接下来从对该脸部位置进行脸部定位点检测,该脸部定位点的定位点特征可以通过预先的统计分类的方式来确定,从而从脸部位置上检测是否存在满足预置的定位点特征,如果在脸部位置上存在符合该定位点特征的像素位置,则确定在脸部位置上存在符合该定位点特征的像素位置就是脸部定位点在脸部位置中的定位点位置。其中本发明实施例采用的脸部定位点是指在目标对象的脸部位置上用于定位脸部位置是否发生转向的定位参考点。在实际应用中,脸部定位点的选择可以基于脸部位置上可实现的五官特征来选取脸部定位点,需要说明的是,脸部定位点可以指的是脸部位置上的某个器官所在的像素位置,也可以指的是多个器官所在的像素位置,此处不做限定。
在每帧图像中都检测同一个脸部定位点所在的像素位置,例如脸部定位点在第一帧图像中的像素位置称为第一像素位置,脸部定位点在第二帧图像中的像素位置称为第二像素位置,比对在两帧图像中的这两个像素位置,确定出相对位移,基于该相对位移计算出目标人脸的动作以及幅度。举例说明如下,以人脸的上下移动为例,当前人脸眉心点坐标与上一次眉心点坐标数据对比,Y坐标增大表示抬头;Y坐标减少表示低头。以人脸的左右移动为例,当前人脸鼻尖坐标与上一次鼻尖坐标数据对比,X坐标增大表示左转,X坐标减小表示右转。以人脸的前后移动为例,当前人脸左眼远角到右眼远角距离,与上一次同样距离数据对比是变大的,则说明人脸产生了前移,若该数据对比是变小的,则说明人脸产生了后移。以用户的点击为例,当前人脸中心点坐标与上一次中心点坐标数据对比,在一定坐标范围内保持一定时间,则确定人脸产生的是点击操作。
203、根据目标人脸的动作和相应的幅度生成模拟对象在交互式应用场景中的控制指令,交互式应用场景中显示有模拟对象和可交互物件。
本发明实施例中交互式应用场景具体可以是游戏场景,也可以是应用程序的交互场景。举例说明,本发明实施例提供的交互式应用场景的处理方法可以适用于为游戏角色搭建的场景,也可以适用于在软件应用系统中为用户对象搭建的场景。本发明实施例中所述的交互式应用场景中显示有模拟对象,该模拟对象可以是游戏场景中的游戏角色,也可以是游戏场景中的英雄和士兵,例如模拟对象可以是策略游戏由用户控制的人或事物,此处不做限定。在交互式应用场景中除了显示有模拟对象之外,交互式应用场景中还显示有可交互物件,该可交互物件是指交互式应用场景中能够与模拟对象进行交互的物件,该物件在不同的交互式场景下可以是为多种物件,例如可以是游戏场景中的道具。
在本发明实施例中,终端在获取到目标人脸的动作以及相应的幅度之后,将该动作和相应的幅度可以映射为模拟对象在交互式应用场景中的控制指令,该控制指令也可以称为“交互指令”,即用户通过自己的脸部做出动作,基于该动作的类型以及幅度可以对应成模拟对象的控制指令,通过该控制指令可以控制模拟对象。
在本发明的一些实施例中,接下来对本发明实施例中可交互物件的锁定方式进行说明,步骤203根据目标人脸的动作和相应的幅度生成模拟对象在交互式应用场景中的控制指令之后,本发明实施例提供的方法还包括如下步骤:
根据控制指令确定焦点是否在可交互物件范围内保持稳定达到预设的时长,焦点为目标人脸映射在交互式应用场景中的参考点;
当模拟对象在可交互物件范围内保持稳定达到预设的时长时,从可交互物件范围内锁定出可交互物件。
其中,目标人脸在交互式应用场景中映射有一个焦点,该焦点是用户的人脸映射在交互式应用场景中的参考点,首先通过该控制指令确定出该焦点是否在可交互物件范围内,可交互物件范围是指在交互式应用场景中可交互物件所处的一定区域大小的范围,只有焦点进入该可交互物件范围内模拟对象才能与可交互物件进行交互,若焦点没有进入该可交互物件范围内,模拟对象无法与可交互物件进行交互。确定该模拟对象在该可交互物件范围保持稳定的时长是否达到预设的时长,预设的时长以x秒表示,则在一定范围内维持定点达到x秒时,确定对应屏幕中的交互物件,进行焦点锁定,达成对应操作。可以理解的是,在交互式应用场景中,可交互物件的锁定可以采用默认配置,也可以在有多个可交互物件时,通过焦点与可交互物件范围的距离来锁定出可交互物件,被锁定的可交互物件即为模拟对象需要进行交互的物件。
204、根据控制指令控制模拟对象在交互式应用场景中与可交互物件进行交互。
在本发明实施例中,终端生成控制指令之后,终端可以根据该控制指令来控制模拟对象与可交互物件的交互方式,本发明实施例中根据交互式应用场景的设置不同,模拟对象与可交互物件之间的交互行为可以有多种。举例说明如下,以交互式应用场景为吃鱼游戏为例,可交互物件为在游戏场景中设置的鱼类道具,若通过前述实施例生成的控制指令为张嘴,则可以控制游戏角色(例如嘴巴)开始张嘴吃鱼,实现游戏角色与可交互物件之间的交互。本发明实施例中模拟对象的控制指令通过图像检测来生成,全程以非触控的形式,以第一人称视觉增强游戏代入感,并带来与众不同的游戏体验。
在本发明的一些实施例中,步骤204根据控制指令控制模拟对象在交互式应用场景中与可交互物件进行交互,包括:
实时计算焦点与可交互物件之间的距离,焦点为目标人脸映射在交互式应用场景中的参考点;
根据实时计算出的距离确定焦点是否在可交互物件范围内;
当焦点在可交互物件范围内时,根据实时计算出的距离更新焦点对应的位移速率;
根据更新后的位移速率更新控制指令,并使用更新后的控制指令控制模拟对象与可交互物件进行交互。
其中,在控制模拟对象与可交互物件进行交互时,终端可以实时计算模拟对象与可交互物件的距离,通过该距离可以判断焦点是否在可交互物件范围内,只有焦点在可交互物件范围内时才能执行后续的交互流程,若焦点没有在可交互物件范围内则无法进行交互。当焦点在可交互物件范围内时,根据实时计算出的距离更新焦点对应的位移速率,即可以根据该距离的实时变化来实时的更新焦点对应的位移速率,根据不断更新的位移速率可以更新控制指令,使得该控制指令可以用于控制模拟对象与可交互物件的交互。例如,焦点对应的位移速率发生变化时,模拟对象可以根据控制指令进行实时的移,在不同的应用场景下,模拟对象与可交互物件之间的交互方式可以结合具体场景来确定。
可选的,在本申请的一些实施例中,在实时计算出焦点与可交互物件之间的距离之后,根据该距离的实时变化情况可以更新焦点对应的位移速率,以实现对位移速率的实时更新,可以实现磁吸效果和阻尼效果。具体的,根据实时计算出的距离更新焦点对应的位移速率,包括:
当焦点与可交互物件之间的距离减小时,在焦点的移动方向上先减少位移速率再增加位移速率;或者,
当焦点与可交互物件之间的距离增大时,在焦点的移动方向上先减少位移速率,再在移动方向的相反方向上增加位移速率。
其中,终端可以采用磁吸对焦的方式,即可以通过实时计算模拟对象与可交互物件的距离,当焦点处于可交互物品状态下,焦点与可交互物件之间的距离减小时,在焦点的移动方向上先减少位移速率再增加位移速率,增大了焦点脱离可交互物件的移动阻力,实现动态调节焦点对应的位移速率,基于该增大后的移动阻力来更新控制指令,使得该控制指令可以产生交互点的吸力作用,使得进行物品交互操作难度降低,精确度提升。
如图4所示,为本发明实施例提供的磁吸效果的示意图。模拟对象在控制指令的控制下,所产生的速度通过如下公式计算:
速度=(初始速度×初始方向-目标速度×目标方向)×(当前时间/总时间)×磁吸常数。
其中,交互物外指的是人脸映射于设备中的焦点在可交互物件范围外,交互物内指的是人脸映射于设备中的焦点在可交互物件范围内。初始速度、初始方向、目标速度、目标方向,这些都是人脸的移动对应到屏幕上的移动数据,磁吸常数可以根据实际场景来调整,磁吸常数用于扩大人脸转速到焦点移速的体验,例如磁吸常数的取值可以为1.32。举例说明如下,对于可交互物件,当脸部操作光标靠近时,会加大移动阻力,即需要更大的动作幅度才能脱离物体。本发明实施例通过磁吸对焦在脸部控制的精准度和顺滑度方面,做出了较大提升,使完全依托于脸部表情识别来进行交互的游戏成为了可能。
在本申请的另一些实施例中,在控制模拟对象与可交互物件进行交互时,终端可以采用阻尼效果的方式,根据实时计算出的模拟对象与可交互物件之间的距离,焦点与可交互物件之间的距离增大时,在焦点的移动方向上先减少位移速率,再在移动方向的相反方向上增加位移速率。判断该焦点对应的位移速率是否超过阈值,若位移速率超过该阈值,则说明脸部操作过快导致来回双方向的高速位移发生,此时可以在同方向上先减小焦点对应的位移速率,再在相反方向上增加位移速率,产生阻尼效果,减缓操控的不确定性。
如图5所示,为本发明实施例提供的阻尼效果的示意图。模拟对象在控制指令的控制下,所产生的速度通过如下公式计算:
速度=cos(初始速度×方向/目标速度×方向)×(当前时间/总时间)×阻尼常数。
其中,初始速度、初始方向、目标速度、目标方向,这些都是人脸的移动对应到屏幕上的移动数据,阻尼常数可以根据实际场景来调整,阻尼常数用于增强人脸转向映射到焦点转向的加减速的体验,例如阻尼常数的取值可以为0.53。本发明实施例中可以减少焦点对应的位移速率,产生阻尼效果,减缓操控的不确定性,从而在脸部控制的精准度和顺滑度方面,做出了较大提升,使完全依托于脸部表情识别来进行交互的游戏成为了可能。
前述内描述了交互式应用场景下基于人脸映射出的焦点进行的交互检测过程,接下来请参阅图3所示,接下来对脱焦判定的过程进行详细说明,在本发明的一些实施例中,本发明实施例提供的方法还包括如下步骤:
301、确定实时采集到的每一帧图像上的多个人脸关键点像素坐标。
其中,在每一帧图像上,终端通过摄像头可以捕捉到多个人脸关键点像素坐标,人脸关键点的个数可以设置为90。
302、根据多个人脸关键点像素坐标判断目标人脸是否失去焦点。
终端通过这些人脸关键点像素坐标来确定目标人脸是否失去焦点,例如,根据摄像头捕捉到的90个人脸关键点像素坐标分析,当这些关键点无法采集到90个,或者抬头低头超过一定幅度(例如45度),就判断为脱焦。
303、当目标人脸失去焦点时,对目标人脸进行对焦校正。
在本发明实施例中,当脸部无法识别或脱离摄像头判定时,通过实时计算用户脸部数据,判定用户是否失去焦点,给予对焦校正,通过步骤301至步骤303对人脸所映射的焦点进行实时的脱焦判定,从而可以即时进行对焦校正,以使得前述基于焦点的磁吸对焦和阻尼效果能够即时完成。
通过以上实施例对本发明实施例的描述可知,通过移动终端配置的摄像头对目标人脸进行实时的图像采集,得到第一帧图像和第二帧图像,第一帧图像和第二帧图像是分别拍摄得到的前后相邻的两帧图像,将第一帧图像和第二帧图像进行对比,得到目标人脸的动作和相应的幅度,根据目标人脸的动作和相应的幅度生成模拟对象在交互式应用场景中的控制指令,交互式应用场景中显示有模拟对象和可交互物件,根据控制指令控制模拟对象在交互式应用场景中与可交互物件进行交互。本发明实施例可以依据摄像头实时拍摄的多帧图像的比对结果获取到人脸的动作以及幅度,进而可以生成模拟对象的控制指令,通过该控制指令实现模拟对象与可交互物件的交互,本发明实施例中可以依赖于用户的人脸表情进行场景交互,而不通过用户的手指来下发指令,因此可以实现在移动终端上的沉浸式交互。
为便于更好的理解和实施本发明实施例的上述方案,下面举例相应的应用场景来进行具体说明。
本发明实施例在兼容现有输入交互方式的同时,通过摄像头逐帧捕捉用户脸部特征,通过前后帧脸部数据对比,计算得出用户所做出的动作和相应幅度,并对应成不同游戏输入,实现了无需任何手指操作的新的交互方式。在脸部控制的精准度和顺滑度方面,做出了较大提升,使完全依托于脸部表情识别来进行交互的游戏成为了可能。
本发明实施例对于终端的硬件需求如下:包含摄像头的手机或个人计算机均可。如图6所示,为本发明实施例提供的游戏场景下的交互检测流程示意图。主要的实现逻辑可以包括如下过程:
S01、用户输入。
其中,用户可以通过终端的摄像头采集人脸图像,也可以通过手指来操作触摸屏。
S02、判断是否手指数据输入。
终端可以检测触摸屏上是否有用户输入的手指数据。
S03、手指屏幕点击滑动。
在检测到有手指数据输入的情况下,用户可以在屏幕上点击滑动。
S04、判断是否摄像头脸部数据输入。
在没有检测到手指数据的情况下,终端可以判断摄像头是否有脸部数据输入。
S05、判断输入数据是否错误。
在步骤S04之后,终端判断输入的数据是否有误,即是否可以检测到完整的人脸图像。
S06、提示用户。
在无法输入数据有误的情况下,提示用户重新输入,或者提述用户输入失败。
S07、判断是否有对比数据。
终端在采集到多帧连续的人脸图像的情况下,针对前后连续的多帧图像进行对比。
S08、数据对比。
在数据对比环节,终端可以比对前后两帧的人脸图像,具体对比过程详见前述实施例的描述,此处不再展开说明。
需要说明的是,第一次输入没有对比数据时,会跳转到数据存储,在第二次数据对比时,会拿之前存储的数据与当前的数据做对比。
S09、根据数据对比,判断出用户不同脸部动作,及幅度。
在完成数据对比之后,终端可以判断出用户当前所做的动作以及相应的幅度。
举例说明如下,以人脸的上下移动为例,当前人脸眉心点坐标与上一次眉心点坐标数据对比,Y坐标增大表示抬头;Y坐标减少表示低头。以人脸的左右移动为例,当前人脸鼻尖坐标与上一次鼻尖坐标数据对比,X坐标增大表示左转,X坐标减小表示右转。以人脸的前后移动为例,当前人脸左眼远角到右眼远角距离,与上一次同样距离数据对比是变大的,则说明人脸产生了前移,若该数据对比是变小的,则说明人脸产生了后移。以用户的点击为例,当前人脸中心点坐标与上一次中心点坐标数据对比,在一定坐标范围内保持一定时间,则确定人脸产生的是点击操作。
举例说明如下,请参阅表1所示,为基础功能与实现机制的对应关系表:
请参阅表2所示,为特殊功能与实现机制的对应关系表:
S10、生成控制指令(例如上下左右前后移动,点击)。
在上述表1和表2中,左右转动脸部是指对应屏幕左右移动,转动幅度对应屏幕移动距离。抬头低头对应屏幕上下移动,幅度对应屏幕移动距离。张嘴闭嘴对应屏幕的相关操作,例如:咬合吃鱼操作。在一定范围内维持定点x秒,定点为维持具体视线的焦点在范围内保持稳定,对应屏幕交互物品,进行焦点锁定,达成对应操作。
接下来对模拟对象与可交互物件之间的交互方式进行说明:
磁吸对焦:通过实时计算人脸在设备中所映射的模拟对象与可交互物件距离,当处于可交互物品状态下,动态调节人脸映射与设备中的焦点对应的位移速率,产生交互点的吸力作用,使得进行物品交互操作难度降低,精确度提升。
脱焦判定:通过实时计算获取用户脸部数据,判定用户是否失去焦点,给予脱焦校正。例如,根据摄像头捕捉到的人脸关键点(90个)的坐标分析,当点不全,或者抬头低头超过一定幅度(45度),就判断为脱焦。
阻尼效果:当脸部操作过快导致来回双方的高速移位发生时,产生阻尼效果,减缓操控的不确定性。
S11、驱动相应游戏表现。
其中,终端可以基于上述步骤生成的控制指令来驱动游戏表现。接下来对各种游戏场景进行举例说明:
以基于脸部识别进行精确控制操作的游戏为例,在游戏场景中,用户将全程用脸部控制操作来进行游戏,通过手机的摄像头,根据每个不同关卡的玩法,以第一人称的形式来控制游戏中的角色完成不同的操作,如:移动、锁定、咬合、啄等等。不同于传统游戏的触摸式操作,本发明实施例中全程以非触控的形式,以第一人称视觉增强游戏代入感,并带来与众不同的游戏体验。
主要特点如下:
全程无触碰,整个游戏过程全部无触控操作,仅以脸部识别完成所有的游戏行为。
精准操控交互,通过磁吸对焦、脱焦矫正、阻尼效果等等产品技术方案,将原本较为模糊不精确的脸部控制变得实用且更加的精准。会使得脸部控制的难度降低,能更加精准的控制。
沉浸式代入感,第一人称视角,完整全面的契合脸部控制玩法,带来感同身受的体验感,增强游戏的冲击力。
如图7所示,在游戏场景的一种版本样图中,以玩法关卡游戏场景为例,玩家控制的模拟对象是一位醉汉的角色,在玩法关卡游戏场景中可交互物件为障碍物。移动终端的摄像头实时采集玩家的人脸,通过对拍摄到的前后相邻的两帧图像进行对比,得到玩家的动作以及相应的幅度,根据玩家的动作以及幅度可以生成对醉汉的控制指令,比如控制该醉汉向左移动,当醉汉向左移动后,该醉汉与障碍物发生碰撞,比如控制该醉汉向右移动,当醉汉向右移动后,该醉汉成功躲避障碍物。通过图7所示的场景举例,本申请实施例可以通过脸部控制醉汉的移动来躲避障碍,以此实现醉汉和障碍物的交互。
如图8所示,在游戏场景的另一种版本样图中,以海底玩法关卡游戏场景为例,玩家控制的模拟对象是一个鱼的角色,在海底玩法关卡游戏场景中可交互物件为嘴巴。移动终端的摄像头实时采集玩家的人脸,通过对拍摄到的前后相邻的两帧图像进行对比,得到玩家的动作以及相应的幅度,根据玩家的动作以及幅度可以生成对鱼的控制指令,比如控制该鱼向左移动,当鱼向左移动后,该嘴巴吃掉一条鱼,比如控制该鱼向右移动,当鱼向右移动后,鱼成功躲避掉嘴巴的捕捉。通过图8所示的场景举例,本申请实施例可以通过脸部控制鱼的游动,以及嘴巴咬合进行捕猎(吃鱼),以此实现鱼和嘴巴的交互。
如图9所示,在游戏场景的另一种版本样图中,当脸部识别出现脱离摄像头的情况下,游戏中会以脱焦矫正的形式进行用户界面(User Interface,UI)交互,即用户按照屏幕中出现的UI轮廓提示,进行脸部位置调整,达到重新对焦的目的,对于脱焦矫正的详细过程,请参阅前述的举例说明。
S12、数据存储。
在每获取到一帧的人脸图像之后,都进行数据存储,以方便下一帧的数据对比时可以调用前一帧的人脸图像。
本发明实施例提供的技术方案,实现了完全依托于脸部表情识别来进行交互的游戏,大幅提升了移动端上的沉浸式体验游戏的代入感。此外,不依赖于屏幕触碰的交互方式,提高了在一些特殊场景下进行游戏时的无障碍性。并且,利用该技术方案,也可以开发针对手部有缺陷的特殊人群的游戏,从而在用户不方便使用手指或者移动端没有配置触摸屏幕时,完成交互。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
为便于更好的实施本发明实施例的上述方案,下面还提供用于实施上述方案的相关装置。
请参阅图10-a所示,本发明实施例提供的一种移动终端1000,可以包括:图像采集模块1001、对比模块1002、指令生成模块1003、交互模块1004,其中,
图像采集模块1001,用于通过移动终端配置的摄像头对目标人脸进行实时的图像采集,得到第一帧图像和第二帧图像,其中,所述第一帧图像和所述第二帧图像是分别拍摄得到的前后相邻的两帧图像;
对比模块1002,用于将所述第一帧图像和所述第二帧图像进行对比,得到所述目标人脸的动作和相应的幅度;
指令生成模块1003,用于根据所述目标人脸的动作和相应的幅度生成模拟对象在交互式应用场景中的控制指令,所述交互式应用场景中显示有所述模拟对象和可交互物件;
交互模块1004,用于根据所述控制指令控制所述模拟对象在所述交互式应用场景中与所述可交互物件进行交互。
在本发明的一些实施例中,如图10-b所示,所述对比模块1002,包括:
像素位置确定单元10021,用于确定脸部定位点出现在所述第一帧图像中的第一像素位置,以及所述脸部定位点出现在所述第二帧图像中的第二像素位置;
位移确定单元10022,用于将所述第一像素位置和所述第二像素位置进行对比,得到所述第一像素位置和所述第二像素位置之间的相对位移;
动作确定单元10023,用于根据所述第一像素位置和所述第二像素位置之间的相对位移确定所述目标人脸的动作和相应的幅度。
在本发明的一些实施例中,如图10-c所示,相对于图10-a所示,所述移动终端1000还包括:
触摸检测模块1005,用于所述图像采集模块1001通过移动终端配置的摄像头对目标人脸进行实时的图像采集之前,检测移动终端的触摸屏幕上是否产生有触摸输入;当所述触摸屏幕上没有产生触摸输入时,触发执行所述图像采集模块。
在本发明的一些实施例中,如图10-d所示,相对于图10-a所示,所述移动终端1000还包括:
焦点检测模块1006,用于所述指令生成模块1003根据所述目标人脸的动作和相应的幅度生成模拟对象在交互式应用场景中的控制指令之后,根据所述控制指令焦点是否在可交互物件范围内保持稳定达到预设的时长,所述焦点为所述目标人脸映射在所述交互式应用场景中的参考点;
物件锁定模块1007,用于当所述焦点在所述可交互物件范围内保持稳定达到预设的时长时,从所述可交互物件范围内锁定出可交互物件。
在本发明的一些实施例中,如图10-e所示,所述交互模块1004包括:
距离计算单元10041,用于实时计算焦点与所述可交互物件之间的距离,所述焦点为所述目标人脸映射在所述交互式应用场景中的参考点;
范围确定单元10042,用于根据实时计算出的所述距离确定所述焦点是否在可交互物件范围内;
速率更新单元10043,用于当所述焦点在所述可交互物件范围内时,根据实时计算出的所述距离更新所述焦点对应的位移速率;
交互单元10044,用于根据更新后的所述位移速率更新所述控制指令,并使用更新后的控制指令控制所述模拟对象与所述可交互物件进行交互。
在本发明的一些实施例中,速率更新单元10043,具体用于当所述焦点与所述可交互物件之间的距离减小时,在所述焦点的移动方向上先减少所述位移速率再增加所述位移速率;或者,当所述焦点与所述可交互物件之间的距离增大时,在所述焦点的移动方向上先减少所述位移速率,再在所述移动方向的相反方向上增加所述位移速率。
在本发明的一些实施例中,如图10-f所示,相对于图10-a所示,所述移动终端1000还包括:
关键点采集模块1008,用于确定实时采集到的每一帧图像上的多个人脸关键点像素坐标;
脱焦判定模块1009,用于根据所述多个人脸关键点像素坐标判断所述目标人脸是否失去焦点;
对焦模块1010,用于当所述目标人脸失去焦点时,对所述目标人脸进行对焦校正。
通过以上对本发明实施例的描述可知,通过移动终端配置的摄像头对目标人脸进行实时的图像采集,得到第一帧图像和第二帧图像,第一帧图像和第二帧图像是分别拍摄得到的前后相邻的两帧图像,将第一帧图像和第二帧图像进行对比,得到目标人脸的动作和相应的幅度,根据目标人脸的动作和相应的幅度生成模拟对象在交互式应用场景中的控制指令,交互式应用场景中显示有模拟对象和可交互物件,根据控制指令控制模拟对象在交互式应用场景中与可交互物件进行交互。本发明实施例可以依据摄像头实时拍摄的多帧图像的比对结果获取到人脸的动作以及幅度,进而可以生成模拟对象的控制指令,通过该控制指令实现模拟对象与可交互物件的交互,本发明实施例中可以依赖于用户的人脸表情进行场景交互,而不通过用户的手指来下发指令,因此可以实现在移动终端上的沉浸式交互。
本发明实施例还提供了另一种终端,如图11所示,为了便于说明,仅示出了与本发明实施例相关的部分,具体技术细节未揭示的,请参照本发明实施例方法部分。该终端可以为包括手机、平板电脑、PDA(Personal Digital Assistant,个人数字助理)、POS(Point of Sales,销售终端)、车载电脑等任意终端设备,以终端为手机为例:
图11示出的是与本发明实施例提供的终端相关的手机的部分结构的框图。参考图11,手机包括:射频(Radio Frequency,RF)电路1010、存储器1020、输入单元1030、显示单元1040、传感器1050、音频电路1060、无线保真(wireless fidelity,WiFi)模块1070、处理器1080、以及电源1090等部件。本领域技术人员可以理解,图11中示出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合图11对手机的各个构成部件进行具体的介绍:
RF电路1010可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器1080处理;另外,将设计上行的数据发送给基站。通常,RF电路1010包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(Low Noise Amplifier,LNA)、双工器等。此外,RF电路1010还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(Global System of Mobile communication,GSM)、通用分组无线服务(General Packet Radio Service,GPRS)、码分多址(Code Division Multiple Access,CDMA)、宽带码分多址(Wideband Code Division Multiple Access,WCDMA)、长期演进(Long Term Evolution,LTE)、电子邮件、短消息服务(Short Messaging Service,SMS)等。
存储器1020可用于存储软件程序以及模块,处理器1080通过运行存储在存储器1020的软件程序以及模块,从而执行手机的各种功能应用以及数据处理。存储器1020可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器1020可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
输入单元1030可用于接收输入的数字或字符信息,以及产生与手机的用户设置以及功能控制有关的键信号输入。具体地,输入单元1030可包括触控面板1031以及其他输入设备1032。触控面板1031,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板1031上或在触控面板1031附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板1031可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器1080,并能接收处理器1080发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板1031。除了触控面板1031,输入单元1030还可以包括其他输入设备1032。具体地,其他输入设备1032可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元1040可用于显示由用户输入的信息或提供给用户的信息以及手机的各种菜单。显示单元1040可包括显示面板1041,可选的,可以采用液晶显示器(Liquid Crystal Display,LCD)、有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置显示面板1041。进一步的,触控面板1031可覆盖显示面板1041,当触控面板1031检测到在其上或附近的触摸操作后,传送给处理器1080以确定触摸事件的类型,随后处理器1080根据触摸事件的类型在显示面板1041上提供相应的视觉输出。虽然在图11中,触控面板1031与显示面板1041是作为两个独立的部件来实现手机的输入和输入功能,但是在某些实施例中,可以将触控面板1031与显示面板1041集成而实现手机的输入和输出功能。
手机还可包括至少一种传感器1050,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板1041的亮度,接近传感器可在手机移动到耳边时,关闭显示面板1041和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路1060、扬声器1061,传声器1062可提供用户与手机之间的音频接口。音频电路1060可将接收到的音频数据转换后的电信号,传输到扬声器1061,由扬声器1061转换为声音信号输出;另一方面,传声器1062将收集的声音信号转换为电信号,由音频电路1060接收后转换为音频数据,再将音频数据输出处理器1080处理后,经RF电路1010以发送给比如另一手机,或者将音频数据输出至存储器1020以便进一步处理。
WiFi属于短距离无线传输技术,手机通过WiFi模块1070可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图11示出了WiFi模块1070,但是可以理解的是,其并不属于手机的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器1080是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器1020内的软件程序和/或模块,以及调用存储在存储器1020内的数据,执行手机的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器1080可包括一个或多个处理单元;优选的,处理器1080可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1080中。
手机还包括给各个部件供电的电源1090(比如电池),优选的,电源可以通过电源管理系统与处理器1080逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
手机还可以包括摄像头1011,该摄像头1011可以是手机的前置摄像头,摄像头1011在采集到多帧人脸图像之后,由处理器1080对多帧人脸图像进行处理。在本发明实施例中,该终端所包括的处理器1080还具有控制执行以上由终端执行的应用场景的交互方法流程。
另外需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本发明提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件的方式来实现,当然也可以通过专用硬件包括专用集成电路、专用CPU、专用存储器、专用元器件等来实现。一般情况下,凡由计算机程序完成的功能都可以很容易地用相应的硬件来实现,而且,用来实现同一功能的具体硬件结构也可以是多种多样的,例如模拟电路、数字电路或专用电路等。但是,对本发明而言更多情况下软件程序实现是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘、U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
综上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照上述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对上述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。