在增强现实中控制虚拟控制对象移动的方法、装置及终端与流程

文档序号:15461575发布日期:2018-09-18 18:17阅读:157来源:国知局

本发明涉及增强现实应用领域,具体而言,涉及一种在增强现实中控制虚拟控制对象移动的方法、装置及终端。



背景技术:

目前,在增强现实(AR)技术上开发赛车的应用或游戏较少。相关技术中提供了一种丰田86开发的实景赛车演示,该演示的交互方法是在AR摄像的基础上在场景中生成赛道和赛车,并使用传统的左右方向遥杆实现对赛车的控制。具体地,通过使用左遥杆可以控制赛车的左转向与右转向;通过使用右遥杆可以控制赛车的前进和后退。

然而,这种方式的缺陷在于:单纯依靠传统的摇杆控制方式难以充分利用AR技术的优势。

针对上述的问题,目前尚未提出有效的解决方案。



技术实现要素:

本发明至少部分实施例提供了一种在增强现实中控制虚拟控制对象移动的方法、装置及终端,以至少解决相关技术中所提供的在AR场景下基于摇杆的赛车控制方式较为复杂、游戏体验较差的技术问题。

根据本发明其中一实施例,提供了一种在增强现实中控制虚拟控制对象移动的方法,包括:

在控制设备当前的图像采集范围内生成虚拟移动区域;在虚拟移动区域内生成虚拟控制对象;根据控制设备的现实移动调整虚拟移动区域中虚拟控制标识的位置,并通过虚拟控制标识的位置引导虚拟控制对象进行虚拟移动。

可选地,在图像采集范围内生成虚拟移动区域包括:在图像采集方向上确定图像采集范围内的现实平面;在现实平面中规划虚拟移动区域。

可选地,在虚拟移动区域内生成虚拟控制对象包括:在控制设备上选取参考标识;以参考标识为起点,沿图像采集方向射出的光线与现实平面相交,将光线与现实平面的交点设置为虚拟控制标识;在虚拟控制标识所在位置生成虚拟控制对象。

可选地,根据控制设备的现实移动调整虚拟移动区域中虚拟控制标识的位置,并通过虚拟控制标识的位置引导虚拟控制对象进行虚拟移动包括:通过控制设备触发虚拟控制标识的位置按照现实移动的轨迹移动至现实移动的轨迹终点处;根据虚拟控制标识的位置与虚拟控制对象之间的距离确定虚拟控制对象的移动速度,其中,移动速度与距离成正比;按照移动速度引导虚拟控制对象向虚拟控制标识的位置移动。

可选地,在根据虚拟控制标识的位置与虚拟控制对象之间的距离确定虚拟控制对象的移动速度之前,还包括:获取虚拟控制标识的位置和虚拟控制对象之间的虚拟连线与虚拟控制对象的当前朝向之间的夹角;按照夹角实时调整当前朝向,直至现实移动的移动方向与当前朝向相同。

可选地,根据控制设备的现实移动调整虚拟移动区域中虚拟控制标识的位置,并通过虚拟控制标识的位置引导虚拟控制对象进行虚拟移动还包括:确定虚拟控制标识的位置和虚拟控制对象之间的虚拟连线上存在阻挡物;检测阻挡物所占据的阻挡区域;在阻挡区域中确定虚拟控制对象当前朝向的阻挡面;根据阻挡面与虚拟连线的夹角以及虚拟连线的长度引导虚拟控制对象进行横向移动,直至绕过阻挡物。

根据本发明其中一实施例,还提供了一种在增强现实中控制虚拟控制对象移动的装置,包括:

生成模块,用于在控制设备当前的图像采集范围内生成虚拟移动区域,以及在虚拟移动区域内生成虚拟控制对象;控制模块,用于根据控制设备的现实移动调整虚拟移动区域中虚拟控制标识的位置,并通过虚拟控制标识引导虚拟控制对象进行虚拟移动。

可选地,生成模块包括:第一确定单元,用于在图像采集方向上确定图像采集范围内的现实平面;第一生成单元,用于在现实平面中规划虚拟移动区域。

可选地,生成模块包括:选取单元,用于在控制设备上选取参考标识;设置单元,用于以参考标识为起点,沿图像采集方向射出的光线与现实平面相交,将光线与现实平面的交点设置为虚拟控制标识;第二生成单元,用于在虚拟控制标识所在位置生成虚拟控制对象。

可选地,控制模块包括:触发单元,用于通过控制设备触发虚拟控制标识的位置按照现实移动的轨迹移动至现实移动的轨迹终点处;第二确定单元,用于根据虚拟控制标识的位置与虚拟控制对象之间的距离确定虚拟控制对象的移动速度,其中,移动速度与距离成正比;第一控制单元,用于按照移动速度引导虚拟控制对象向虚拟控制标识的位置移动。

可选地,控制模块还包括:获取单元,用于获取虚拟控制标识的位置和虚拟控制对象之间的虚拟连线与虚拟控制对象的当前朝向之间的夹角;调整单元,用于按照夹角实时调整当前朝向,直至现实移动的移动方向与当前朝向相同。

可选地,控制模块还包括:第三确定单元,用于确定虚拟控制标识的位置和虚拟控制对象之间的虚拟连线上存在阻挡物;检测单元,用于检测阻挡物所占据的阻挡区域;第四确定单元,用于在阻挡区域中确定虚拟控制对象当前朝向的阻挡面;第二控制单元,用于根据阻挡面与虚拟连线的夹角以及虚拟连线的长度引导虚拟控制对象进行横向移动,直至绕过阻挡物。

根据本发明其中一实施例,提供了一种存储介质,存储介质包括存储的程序,其中,在程序运行时控制存储介质所在设备执行上述在增强现实中控制虚拟控制对象移动的方法。

根据本发明其中一实施例,提供了一种处理器,处理器用于运行程序,其中,程序运行时执行上述在增强现实中控制虚拟控制对象移动的方法。

根据本发明其中一实施例,提供了一种终端,包括:一个或多个处理器,存储器,显示装置以及一个或多个程序,其中,一个或多个程序被存储在存储器中,并且被配置为由一个或多个处理器执行,一个或多个程序用于执行上述在增强现实中控制虚拟控制对象移动的方法。

在本发明至少部分实施例中,采用在控制设备当前的图像采集范围内生成虚拟移动区域以及在虚拟移动区域内生成虚拟控制对象的方式,根据控制设备的现实移动调整虚拟移动区域中虚拟控制标识的位置,并通过虚拟控制标识的位置引导虚拟控制对象进行虚拟移动,达到了在AR场景下通过控制设备的现实移动轨迹来引导虚拟控制对象的移动的目的,从而实现了操作方式简便易行、扩展性较强、游戏体验良好的技术效果,进而解决了相关技术中所提供的在AR场景下基于摇杆的赛车控制方式较为复杂、游戏体验较差的技术问题。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是根据本发明其中一实施例的在增强现实中控制虚拟控制对象移动的方法的流程图;

图2是根据本发明其中一优选实施例的生成虚拟控制对象的示意图;

图3是根据本发明其中一优选实施例的虚拟控制对象转向过程示意图;

图4是根据本发明其中一实施例的虚拟控制对象避开阻挡物继续前进的示意图;

图5是根据本发明其中一实施例的在增强现实中控制虚拟控制对象移动的装置的结构框图。

具体实施方式

为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

根据本发明其中一实施例,提供了一种在增强现实中控制虚拟控制对象移动的方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

图1是根据本发明其中一实施例的在增强现实中控制虚拟控制对象移动的方法的流程图,如图1所示,该方法包括如下步骤:

步骤S12,在控制设备当前的图像采集范围内生成虚拟移动区域;

步骤S14,在虚拟移动区域内生成虚拟控制对象;

步骤S16,根据控制设备的现实移动调整虚拟移动区域中虚拟控制标识的位置,并通过虚拟控制标识的位置引导虚拟控制对象进行虚拟移动。

通过上述步骤,可以采用在控制设备当前的图像采集范围内生成虚拟移动区域以及在虚拟移动区域内生成虚拟控制对象的方式,根据控制设备的现实移动调整虚拟移动区域中虚拟控制标识的位置,并通过虚拟控制标识的位置引导虚拟控制对象进行虚拟移动,达到了在AR场景下通过控制设备的现实移动轨迹来引导虚拟控制对象的移动的目的,从而实现了操作方式简便易行、扩展性较强、游戏体验良好的技术效果,进而解决了相关技术中所提供的在AR场景下基于摇杆的赛车控制方式较为复杂、游戏体验较差的技术问题。

可选地,在步骤S12中,在图像采集范围内生成虚拟移动区域可以包括以下执行步骤:

步骤S121,在图像采集方向上确定图像采集范围内的现实平面;

步骤S122,在现实平面中规划虚拟移动区域。

上述控制设备可以是移动终端,例如:智能手机、平板电脑。这些控制设备可以通过内置摄像头进行图像采集。在开启AR摄像之后,可以在图像采集方向上拍摄到的现实平面(例如:办公桌的桌面)内采用特定颜色(例如:蓝色)来标注规划出的虚拟移动区域。在虚拟移动区域的生成过程中,游戏玩家需要手持移动终端对准上述现实平面保持静止。此时在移动终端的显示界面内可以呈现生成进度,并在维持一段时间后,在场景中生成虚拟移动区域(例如:赛车类游戏中使用的赛道)。

可选地,在步骤S14中,在虚拟移动区域内生成虚拟控制对象可以包括以下执行步骤:

步骤S141,在控制设备上选取参考标识;

步骤S142,以参考标识为起点,沿图像采集方向射出的光线与现实平面相交,将光线与现实平面的交点设置为虚拟控制标识;

步骤S143,在虚拟控制标识所在位置生成虚拟控制对象。

图2是根据本发明其中一优选实施例的生成虚拟控制对象的示意图,如图2所示,在控制设备上需要选取参考标识(即移动判定点),例如:移动终端显示屏幕的中心位置、移动终端摄像头的中心焦点。其次,从该参考标识发出的射线会与现实平面相交并在虚拟移动区域内确定虚拟控制标识(即虚拟移动区域内的交点),其可以标记为P点(相当于上述虚拟控制标识的位置)。然后,虚拟控制标识对应的虚拟场景位置生成虚拟控制对象(例如:赛车类游戏中使用的赛车)。最终,P点将会作为引导虚拟控制对象移动的目标点。其中,参考标识为与虚拟控制标识对应的,且显示在移动终端显示屏幕上的具有视觉指示的标识,即虚拟控制标识在虚拟移动区域内随终端移动而移动;参考标识在显示屏幕上的位置保持不变。

可选地,在步骤S16中,根据控制设备的现实移动调整虚拟移动区域中虚拟控制标识的位置,并通过虚拟控制标识的位置引导虚拟控制对象进行虚拟移动可以包括以下执行步骤:

步骤S161,通过控制设备触发虚拟控制标识的位置按照现实移动的轨迹移动至现实移动的轨迹终点处;

步骤S165,根据虚拟控制标识的位置与虚拟控制对象之间的距离确定虚拟控制对象的移动速度,其中,移动速度与距离成正比;

步骤S166,按照移动速度引导虚拟控制对象向虚拟控制标识的位置移动。

通过控制设备的现实移动轨迹可以触发虚拟控制标识的虚拟控制标识的位置发生变化,并在现实移动轨迹的终点位置确定最新得到的虚拟控制标识的位置。虚拟控制对象会朝向对应场景内最新得到的虚拟控制标识的位置进行移动,并在虚拟控制对象与最新得到的虚拟控制标识的位置之间形成一条参考线,该参考线用于提示虚拟控制对象的位置及前进方向。对于虚拟控制对象的移动速度,可以通过虚拟控制对象与最新得到的虚拟控制标识的位置之间的距离来确定。两者之间的距离越大,虚拟控制对象的移动速度越快,而随着两者之间的距离不断缩小,虚拟控制对象的移动速度会不断下降。当虚拟控制对象移动至最新得到的虚拟控制标识的位置时,虚拟控制对象的移动速度会减小至0。即,根据两者之间的距离确定虚拟控制对象的初始速度,并且在行驶过程中,遵循物理规律(地面阻力等),虚拟控制对象的移动速度会逐渐减小。

可选地,在步骤S165,根据虚拟控制标识的位置与虚拟控制对象之间的距离确定虚拟控制对象的移动速度之前,还可以包括以下执行步骤:

步骤S162,获取虚拟控制标识的位置和虚拟控制对象之间的虚拟连线与虚拟控制对象的当前朝向之间的夹角;

步骤S163,按照夹角实时调整当前朝向,直至现实移动的移动方向与当前朝向相同。

如果虚拟控制标识的虚拟控制标识的位置并非位于虚拟控制对象的当前朝向所在方向,那么虚拟控制对象需要先转向至虚拟控制标识的虚拟控制标识的位置,然后再向虚拟控制标识的虚拟控制标识的位置直线前进。

图3是根据本发明其中一优选实施例的虚拟控制对象转向过程示意图,如图3所示,将虚拟控制标识的虚拟控制标识的位置与虚拟控制对象中心位置之间的连线设置为第一连线以及将虚拟控制对象在当前朝向上头部与尾部之间的连线设置为第二连线。第一连线与第二连续之间形成夹角α。虚拟控制对象以固定的每秒转向角度向α夹角的方向转向,直到α的角度减小至0,然后再进行直线移动到P点。

另外,在虚拟控制对象转向期间,如果P点的位置发生改变,导致α角度随之发生变化,则虚拟控制对象依然需要持续进行转向或改变转向,直到α的角度减小至0。

可选地,在步骤S162中,根据控制设备的现实移动调整虚拟移动区域中虚拟控制标识的位置,并通过虚拟控制标识的位置引导虚拟控制对象进行虚拟移动还可以包括以下执行步骤:

步骤S167,确定虚拟控制标识的位置和虚拟控制对象之间的虚拟连线上存在阻挡物;

步骤S168,检测阻挡物所占据的阻挡区域;

步骤S169,在阻挡区域中确定虚拟控制对象当前朝向的阻挡面;

步骤S170,根据阻挡面与虚拟连线的夹角以及虚拟连线的长度引导虚拟控制对象进行横向移动,直至绕过阻挡物。

在虚拟移动区域内,如果虚拟控制标识的虚拟控制标识的位置与虚拟控制对象之间的连线上存在阻挡物,那么将会发出提示信息。例如:虚拟控制标识的虚拟控制标识的位置与虚拟控制对象之间的连线显示为红色。此时,虚拟控制对象将会被阻挡物阻拦而无法继续前进。阻挡物的判断规则需要借助于AR实景技术以及物体识别技术的支持,判断在虚拟控制标识的虚拟控制标识的位置与虚拟控制对象之间的连线上是否存在阻挡物以及阻挡物的体积,由此根据阻挡物所占据的位置以及体积确定阻挡区域。

如果虚拟控制标识的虚拟控制标识的位置和虚拟控制对象之间的连线与虚拟控制对象所朝向的阻挡物的阻挡面垂直,则虚拟控制对象可以停止不动。图4是根据本发明其中一实施例的虚拟控制对象避开阻挡物继续前进的示意图,如图4所示,通过改变虚拟控制标识的虚拟控制标识的位置(即P点),使得该虚拟控制标识的位置不再位于虚拟控制对象的当前朝向所在方向,那么虚拟控制对象需要先转向至虚拟控制标识的虚拟控制标识的位置,然后确定虚拟控制标识的虚拟控制标识的位置和虚拟控制对象之间的连线与虚拟控制对象所朝向的阻挡物的阻挡面能够形成夹角α。由此,虚拟控制对象将以固定速度横向移动,直到前方没有阻挡物,其中,横向移动的距离为AQ的长度,而AQ=AP*cosα。

根据本发明其中一实施例,提供了一种在增强现实中控制虚拟控制对象移动的装置的实施例,图5是根据本发明其中一实施例的在增强现实中控制虚拟控制对象移动的装置的结构框图,如图5所示,该装置包括:生成模块10,用于在控制设备当前的图像采集范围内生成虚拟移动区域,以及在虚拟移动区域内生成虚拟控制对象;控制模块20,用于根据控制设备的现实移动调整虚拟移动区域中虚拟控制标识的位置,并通过虚拟控制标识引导虚拟控制对象进行虚拟移动。

可选地,生成模块10包括:第一确定单元(图中未示出),用于在图像采集方向上确定图像采集范围内的现实平面;第一生成单元(图中未示出),用于在现实平面中规划虚拟移动区域。

可选地,生成模块10包括:选取单元(图中未示出),用于在控制设备上选取参考标识;设置单元(图中未示出),用于以参考标识为起点,沿图像采集方向射出的光线与现实平面相交,将光线与现实平面的交点设置为虚拟控制标识;第二生成单元(图中未示出),用于在虚拟控制标识所在位置生成虚拟控制对象。

可选地,控制模块20包括:触发单元(图中未示出),用于通过控制设备触发虚拟控制标识的位置按照现实移动的轨迹移动至现实移动的轨迹终点处;第二确定单元(图中未示出),用于根据虚拟控制标识的位置与虚拟控制对象之间的距离确定虚拟控制对象的移动速度,其中,移动速度与距离成正比;第一控制单元(图中未示出),用于按照移动速度引导虚拟控制对象向虚拟控制标识的位置移动。

可选地,控制模块20还包括:获取单元(图中未示出),用于获取虚拟控制标识的位置和虚拟控制对象之间的虚拟连线与虚拟控制对象的当前朝向之间的夹角;调整单元(图中未示出),用于按照夹角实时调整当前朝向,直至现实移动的移动方向与当前朝向相同。

可选地,控制模块20还包括:第三确定单元(图中未示出),用于确定虚拟控制标识的位置和虚拟控制对象之间的虚拟连线上存在阻挡物;检测单元(图中未示出),用于检测阻挡物所占据的阻挡区域;第四确定单元(图中未示出),用于在阻挡区域中确定虚拟控制对象当前朝向的阻挡面;第二控制单元(图中未示出),用于根据阻挡面与虚拟连线的夹角以及虚拟连线的长度引导虚拟控制对象进行横向移动,直至绕过阻挡物。

根据本发明其中一实施例,还提供了一种存储介质,存储介质包括存储的程序,其中,在程序运行时控制存储介质所在设备执行上述在增强现实中控制虚拟控制对象移动的方法。上述存储介质可以包括但不限于:U盘、只读存储器(ROM)、随机存取存储器(RAM)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。

根据本发明其中一实施例,还提供了一种处理器,处理器用于运行程序,其中,程序运行时执行上述在增强现实中控制虚拟控制对象移动的方法。上述处理器可以包括但不限于:微处理器(MCU)或可编程逻辑器件(FPGA)等的处理装置。

根据本发明其中一实施例,还提供了一种终端,包括:一个或多个处理器,存储器,显示装置以及一个或多个程序,其中,一个或多个程序被存储在存储器中,并且被配置为由一个或多个处理器执行,一个或多个程序用于执行上述在增强现实中控制虚拟控制对象移动的方法。在一些实施例中,上述终端可以是智能手机(例如:Android手机、iOS手机等)、平板电脑、掌上电脑以及移动互联网设备(Mobile Internet Devices,简称为MID)、PAD等终端设备。上述显示装置可以是触摸屏式的液晶显示器(LCD),该液晶显示器可使得用户能够与终端的用户界面进行交互。此外,上述终端还可以包括:输入/输出接口(I/O接口)、通用串行总线(USB)端口、网络接口、电源和/或相机。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1