掌桥专利:专业的专利平台
掌桥专利
首页

一种增强现实环境下虚拟模型三维手势操纵方法及系统

文献发布时间:2023-06-19 18:34:06


一种增强现实环境下虚拟模型三维手势操纵方法及系统

技术领域

本发明属于增强现实的人机交互领域,尤其涉及一种增强现实环境下的虚拟模型手势操纵方法。

背景技术

增强现实(Augmented Reality,AR)是一种将虚拟信息叠加在真实环境,实现虚拟信息和真实环境融合的技术。在增强现实环境中,由于信息以立体、三维的方式被呈现,基于键鼠等额外输入设备进行交互的传统方式不再适用,因为这些方式会妨碍无缝的交互体验。因此,在增强现实中被研究和应用更多的是自然的交互方式,包括手势,语音,身体语言和眼动追踪等。其中,手势交互相比于其他几种交互方式,在与三维模型直接交互方面更具有优势,依靠手势交互可以实现对三维模型多自由度的操纵任务。例如增强现实装配系统,手势交互可以提供自然和直观的用户界面,以便在虚拟装配期间操纵虚拟的零部件或工装夹具。

当前手势交互方案有二维和三维两种。二维手势交互方案一般面向手机平板等移动设备上的AR系统,可以通过二维(平面上的)手势来与模型进行简单交互,例如拖动虚拟对象等。但由于AR信息是三维的,二维的手势交互方法不够直观和准确。与二维手势交互相比,三维手势交互方法支持用户在三维空间下与虚拟物体的交互,更符合人的直观感受和体验。例如中国专利公开号CN110221690B公开了一种基于AR场景的手势交互方法,提供一种新的手势交互方式,可以准确的呈现手部与虚拟物体之间的遮挡关系以及手部和虚拟物体的“接触”,使手部与虚拟物体之间做出更多的交互动作,实现用户在AR场景中与虚拟物体之间的更加真实交互体验。但当前三维手势交互技术方案存在一些缺点和问题,大多依靠固定的手势识别结果来驱动虚拟物体移动或旋转,不能支持双手与虚拟物体的自然交互,例如抓握等,而且用户在实际操纵过程中对虚拟物体的位姿的调整不够自然,难以准确地将虚拟物体放置到用户期待的位置。

发明内容

本发明的主要目的是提供一种增强现实环境下虚拟模型三维手势操纵方法及系统,在增强现实环境下,高效准确地识别用户针对三维虚拟模型的自然抓握意图,支持用户以自然的手势移动和旋转虚拟物体,提高三维手势交互过程的鲁棒性,使手势交互的体验更加直观自然,进而提升增强现实对三维手势操纵的虚拟效果,并能够提高用户沉浸感。

本发明的目的是通过下述技术方案实现的。

本发明公开的一种增强现实环境下虚拟模型三维手势操纵方法,包括如下步骤:

步骤一:采集当前帧双手的图像,基于卷积神经网络双手位姿估计算法确定双手关键节点相对于AR设备的位置和姿态数据。所述的卷积神经网络算法是由两个卷积神经网络组成的由2D到3D双手位姿估计的算法。第一个卷积神经网络被训练用于实现手的定位,估计图像中手中心的2D位置;之后手所在位置局部化图像连同相应的输入深度值一起用于生成归一化裁剪图像,该图像被传递到第二个卷积神经网络实时回归相对3D手关节位置。

步骤二:在当前帧识别的双手关键节点处,叠加虚拟手模型,并根据关键节点位置姿态确定虚拟手模型的位置和姿态,实现真实双手在虚拟空间的映射。

所述的虚拟手模型由若干个虚拟关节模型组成,每个虚拟关节模型是圆柱体,近似模拟真实双手的手指关节。虚拟手关节模型之间存在拓扑关系,即高层次的虚拟关节模型包含低层次的虚拟关节模型,当高层次的虚拟关节模型运动时将带动低层次虚拟关节模型的运动。所述的虚拟手模型由以下参数化表示:

其中,Jointi为第i个虚拟关节模型,pi为虚拟关节模型的位置,由增强现实环境坐标系下的一组向量xi,yi和zi表示,ei为虚拟关节模型的姿态,由增强现实环境坐标系下的一组向量wi,ri和li表示,Size是虚拟关节模型的参数,li表示圆柱体的长度,di表示圆柱体的直径,children表示该虚拟关节模型的所驱动的子关节模型,Jk表示第k个虚拟关节模型。

所述的虚拟手模型中各个虚拟关节模型,将与步骤一中手势追踪识别的关键节点对应,每个识别的手部关键节点的位置和姿态数据将用于更新当前帧的虚拟关节模型位置和姿态,根据关键节点位置姿态确定虚拟手模型的位置和姿态,实现真实双手在虚拟空间的映射,公式如下所示:

r

其中,pi为第i个虚拟关节模型的位置向量,ri为虚拟关节模型的旋转矩阵,该旋转矩阵与欧拉角存在转换关系如式所示,其中Rz(wi)表示围绕z轴旋转wi度;T为表示虚拟关节模型所在的增强现实环境坐标系和相机坐标系的转换矩阵。Pi为第i个虚拟关节模型对应的关键节点的位置向量,ri为第i个虚拟关节模型对应的关键节点的的旋转矩阵。

步骤三:基于碰撞检测算法,在每帧实时计算虚拟手模型和其他待被操纵的虚拟模型之间是否发生接触或者碰撞。

步骤四:根据真实物体抓握物理过程特点和增强现实环境构建“抓握副”条件,基于“抓握副”构建抓握意图识别算法。如果步骤三所述基于碰撞检测算法检测到双手和在其他虚拟模型发生接触,根据抓握意图识别算法,计算手和被操纵模型多个接触点之间能否形成“抓握副”,判断是否双手与虚拟模型之间存在抓握情况,“抓握副”由两个接触点组成,如果存在一个以上的“抓握副”,则被抓握虚拟模型被判定为抓握状态,无需基于多个接触点的接触计算来判断是否完成抓握,使抓取意图判断更加灵活,更接近真实三维手势操纵情况,更适应复杂手势交互场景,也更加符合用户直观交互感受,同时,如果存在多对“抓握副”,则多个组成抓握副的接触点都将参与到交互意图识别中,提高手势交互意图识别的鲁棒性、灵活性、效率和沉浸感。

所述真实物体抓握物理过程特点是应用牛顿刚体力学的基本规律,以抓取对象是否受力平衡和虚拟手模型与被操纵模型的接触面间的摩擦力来判断能否抓取,其实现原理是利用简化的库伦摩擦力模型分析物体的受力状态。

所述的“抓握副”是由符合条件的虚拟手模型和被抓取模型的两个接触点构成的。所述“抓握副”条件如下:两个接触点的连线与各自接触面法线之间的角度不超过一个固定角度α,则所述两个接触点将构成一个稳定的抓握副g(a,b)。所述固定角度α即为摩擦角。

所述的抓握意图识别算法根据“抓握副”条件建立,循环判断当前所有的接触点是否能与另外一个接触点组成一对“抓握副”。对于一次循环判断中虚拟手与虚拟物体的任意两个接触点a、b来说,两个接触点的连线与各自接触面法线之间的角度不超过一个固定角度α,则所述两个接触点将构成一个稳定的抓握副g(a,b)。所述的这个固定角度α即为摩擦角,即抓握副g(a,b)应满足

其中,n

步骤五:根据步骤四构建的“抓握副”条件构建抓取中心获取方法,以获取抓取中心。如果基于步骤四中的抓握意图识别算法判断出虚拟模型在抓握状态,根据操纵意图识别算法,基于双手在被操纵模型上抓取中心的位移和姿态变换,计算双手施加在虚拟模型上的虚拟力或力矩,并以虚拟力或力矩驱动虚拟模型的移动或旋转。采用操纵意图识别算法且增加抓取中心判断条件后,使任意个接触点全部参与到操纵意图识别过程,使操纵意图识别更加灵活,并提高操纵意图识别的鲁棒性。

所述的抓取中心是代表整个手的运动的中心点,将整个手视为一个完整的刚体,由抓取中心的位置、姿态和速度代表整个虚拟手的运动参数。

所述的抓取中心判断方法如下:根据步骤四构建的“抓握副”条件判定“抓握副”的位置和数量。将“抓握副”视为一个统一的刚体,由抓取中心来表示该刚体的位置和姿态。如果存在一个“抓握副”,则抓取中心为组成“抓握副”的接触点连线的中心,抓取中心位置和姿态计算如下:

其中,Pc表示抓取中心位置,p1和p2表示组成“抓握副”的接触点的位置,wc、rc和lc分别表示抓取中心的三个欧拉角参数,

如果存在多个“抓握副”,将根据多个“抓握副”的接触点的连线长度进行判断,确定连线长度最长的“抓握副”为主抓握副,根据所述公式(7)(8)构建抓取中心。

步骤5.1,判断“抓握副”是否满足“抓握副”取消条件,如果满足取消条件,则视为用户放下被操纵虚拟模型,将不执行后续步骤,在下一帧不再更新虚拟模型的位置和姿态;如果不满足则执行步骤5.2;

所述的“抓握副”取消条件计算如下所示:

其中,

步骤5.2,根据操纵意图识别算法,计算双手施加在虚拟模型上的虚拟力或力矩,继续执行步骤5.3。所述的操纵意图识别算法,是基于抓取中心的位姿变换趋势来计算出当前帧双手对虚拟模型施加的虚拟力或虚拟力矩,并根据虚拟力或虚拟力矩来计算虚拟模型移动和旋转的参数,所述移动和旋转的参数包括移动方向和距离以及旋转的方向和角度。采用操纵意图识别算法且增加“抓取中心”条件判断后,使任意个接触点全部参与到操纵意图识别过程,使操纵意图识别更加灵活,并提高操纵意图识别的鲁棒性。

所述的操纵意图识别算法是基于虚拟线性和扭转的弹簧阻尼模型(springer-dampers)构建。所述的操纵意图识别算法的计算公式如下所示。

公式(11)为虚拟力的计算公式,f

步骤5.3,根据步骤5.2所述的操纵意图识别算法计算的虚拟力或力矩,结合刚体动力学计算虚拟模型的位移变化量和旋转变化量。并根据位移和旋转变化量在当前帧更新被操纵虚拟模型的位置和姿态,并根据新的位置和姿态渲染该虚拟模型。

位移变化量计算公式如下:

其中,Si表示在当前第i帧被操纵虚拟模型位移,vi表示当前第i帧被操纵虚拟模型的速度,Δt表示在当前第i帧到下一帧第i+1帧之间的时间差,f

旋转变化量计算公式如下:

ΔR

其中,θ

步骤六:重复步骤一至步骤五,根据所述的虚拟手模型、抓握意图识别方法和操纵意图识别方法,在增强现实环境下进行三维手势操纵,高效准确地识别用户针对三维虚拟模型的自然抓握意图,支持用户以自然的手势移动和旋转虚拟物体,提高三维手势交互过程的鲁棒性,使手势交互的体验更加直观自然,进而提升增强现实环境下三维手势操纵的虚拟效果,并能够提高用户沉浸感。

本发明还公开一种手势交互系统,用于实现所述一种增强现实环境下虚拟模型三维手势操纵方法,所述一种手势交互系统包括数据采集与处理模块、虚拟手模块、碰撞计算模块、手势意图识别模块。

数据采集与处理模块,用于采集当前帧的RGB图像和深度图像,并基于所述的卷积神经网络双手位姿估计算法,根据RGB图像和深度图像获取当前帧的手部关键节点的位置和姿态信息;

虚拟手模块,用于叠加虚拟手模型,并根据关键节点位置姿态确定虚拟手模型的位置和姿态,实现真实双手在虚拟空间的映射。根据所述的数据采集与处理模块获取的手部关键节点的位置和姿态,在AR设备坐标系下实时更新和维护虚拟手模型的位置和姿态。

碰撞计算模块,基于碰撞检测算法在每帧实时计算虚拟手模型和其他待被操纵的虚拟模型之间是否发生接触或者碰撞。

手势意图识别模块包括抓握意图识别子模块、操纵意图识别子模块。所述抓握意图识别子模块,根据真实物体抓握物理过程特点和增强现实环境构建“抓握副”条件,基于“抓握副”构建抓握意图识别算法,识别双手是否抓握虚拟模型或者松开虚拟模型。如果所述基于碰撞检测模块检测到双手和在其他虚拟模型发生接触,根据抓握意图识别算法,计算手和被操纵模型多个接触点之间能否形成“抓握副”,判断是否双手与虚拟模型之间存在抓握情况,“抓握副”由两个接触点组成,如果存在一个以上的“抓握副”,则被抓握虚拟模型被判定为抓握状态,无需基于多个接触点的接触计算来判断是否完成抓握,使抓取意图判断更加灵活,更接近真实三维手势操纵情况,更适应复杂手势交互场景,也更加符合用户直观交互感受,同时,如果存在多对“抓握副”,则多个组成抓握副的接触点都将参与到交互意图识别中,提高手势交互意图识别的鲁棒性、灵活性、效率和沉浸感。

所述操纵意图识别子模块用于识别用户针对被操纵虚拟模型的操纵意图,所述操纵意图包括移动、旋转。在所述的抓握意图识别子模块识别到抓握意图后,该操纵意图识别模块被调用,基于操纵意图识别算法识别操纵虚拟模型的意图,并以虚拟驱动力、力矩的结果表示,进而基于力或力矩来计算被操纵虚拟模型位移变化量和旋转变化量,更新被操纵模型的运动状态,实现对被操纵模型的驱动。相比于单纯使用双手的位移来预测模型位移的方法,基于虚拟力的操纵意图识别方式更符合物理运动过程,能后实现更加精确的操纵。

有益效果:

1、本发明公开的一种增强现实环境下虚拟模型三维手势操纵方法及系统,根据真实物体抓握物理过程特点和增强现实环境构建“抓握副”条件,基于“抓握副”构建抓握意图识别算法,识别用户抓握意图。如果碰撞检测算法检测到双手和在其他虚拟模型发生接触,根据抓握意图识别算法,计算手和被操纵模型多个接触点之间能否形成“抓握副”,判断是否双手与虚拟模型之间存在抓握情况,“抓握副”由两个接触点组成,如果存在一个以上的“抓握副”,则被抓握虚拟模型被判定为抓握状态,无需基于多个接触点的接触计算来判断是否完成抓握,使抓取意图判断更加灵活,更接近真实三维手势操纵情况,更适应复杂手势交互场景,也更加符合用户直观交互感受,同时,如果存在多对“抓握副”,则多个组成抓握副的接触点都将参与到交互意图识别中,提高手势交互意图识别的鲁棒性、灵活性、效率和沉浸感。

2、本发明公开的一种增强现实环境下虚拟模型三维手势操纵方法及系统,采用操纵意图识别算法识别用户施加在被操纵模型上的虚拟力和力矩,进而结合刚体动力学驱动被操纵模型运动,而不是单纯基于用户双手的位移来预测被操纵模型的位移,使得增强现实环境下的手势交互更加精确、更加符合物理运动过程,使用户在交互过程中能够更加精细地操纵虚拟对象。

附图说明

图1为抓握副示意图。

图2为本发明公开的一种增强现实环境下虚拟模型三维手势操纵方法流程图。

图3为本发明公开的一种增强现实环境下虚拟模型三维手势操纵系统的系统框图。

具体实施方式

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

实施例

本实施例公开的一种增强现实环境下的手势交互方法,能够应用于配备摄像头的AR终端设备,包括手机、平板、AR眼镜或者AR头盔。本发明将以AR眼镜为例,详细说明手势交互的方法。

本实施例公开的一种增强现实环境下的手势交互方法,参考图2所示,具体实现步骤如下:

步骤1:采集当前帧双手的图像,基于卷积神经网络双手位姿估计算法识别和追踪双手关键节点相对于AR设备的位置和姿态数据。

双手图像采集使用AR终端设备上朝向同一侧的一对摄像头,其中一个是用于采集彩色图像的彩色摄像头,另一个是用于采集深度图像的摄像头。本实施例方式中,使用AR眼镜配置的RGB摄像机和TOF模组采集彩色图像和深度图像,并根据两个摄像头之间的外参数,将每一帧的深度图像配准到彩色图像,便于后面的处理。所述的外参数是深度摄像头和彩色摄像头以光心为原点的相机坐标系之间的位移和旋转变换关系。

所述的卷积神经网络双手位姿估计算法用于实时地识别和追踪双手关键节点位置和姿态信息。该算法使用两个卷积神经网络,一个卷积神经网络用于在RGB图像上定位双手区域,根据定位结果裁切RGB图像,并和对应区域的深度值做归一化,输入到下一个神经网络中,实时回归计算和估计双手关键节点在相机坐标系下的位置和姿态信息。最后根据相机坐标系和AR设备坐标系的位姿变换矩阵,将相机坐标系的下的双手关键节点的位姿和姿态结果换算到AR设备坐标系下。

步骤2:在当前帧识别的双手关键节点处,叠加虚拟手模型,并根据关键节点位置姿态确定虚拟手模型的位置和姿态。

所述的虚拟手模型由19个虚拟关节模型组成,每个虚拟关节模型是圆柱体,近似模拟真实双手的手指。虚拟手关节模型之间存在拓扑关系,即高层次的虚拟关节模型包含低层次的虚拟关节模型,当高层次的虚拟关节模型运动时将带动低层次虚拟关节模型的运动,例如手指根关节的运动将带动中关节和顶关节的运动。该虚拟手模型的参数化表达如下所示:

其中,Jointi为第i个虚拟关节模型,pi为虚拟关节模型的位置,由增强现实环境坐标系下的一组向量xi,yi和zi表示,ei为虚拟关节模型的姿态,由增强现实环境坐标系下的一组向量wi,ri和li表示,Size是虚拟关节模型的参数,li表示圆柱体的长度,di表示圆柱体的直径,children表示该虚拟关节模型的所驱动的子关节模型,Jk表示第k个虚拟关节模型。

所述的虚拟手模型中各个虚拟关节模型,将与步骤1中手势追踪识别的关键节点对应,每个识别的手部关键节点的位置和姿态数据将用于更新当前帧的虚拟关节模型位置和姿态,实现虚拟手模型的映射,如下所示:

r

其中,pi为第i个虚拟关节模型的位置向量,ri为虚拟关节模型的旋转矩阵,该旋转矩阵与欧拉角存在转换关系如式所示,其中Rz(wi)表示围绕z轴旋转wi度;T为表示虚拟关节模型所在的增强现实环境坐标系和相机坐标系的转换矩阵。Pi为第i个虚拟关节模型对应的关键节点的位置向量,ri为第i个虚拟关节模型对应的关键节点的的旋转矩阵。

步骤3:启动碰撞检测算法,在每帧实时计算虚拟手模型和其他可被操纵的虚拟模型之间是否发生接触或者碰撞;

本实施例中采用的碰撞检测算法是层次包围盒算法,在虚拟关节模型和当前AR环境中其他虚拟模型周围生成OBB(Oriented Bounding Box)包围盒,根据包围盒来实时计算虚拟手模型中各个虚拟关节模型和可被操纵的虚拟模型之间的是否碰撞。其中,由于虚拟关节模型是规则的凸多面体(圆柱形),因此生成与自身几何参数一致的圆柱体形包围盒,其他虚拟模型将根据外形生成近似的凸多面体包围盒。

如果虚拟关节模型和虚拟模型之间发生碰撞,将基于三维的GJK(Gilbert–Johnson–Keerthi,GJK)算法和EPA(Epanding Polytop Algorithm)算法,计算两者发生碰撞的具体位置和穿透方向,并执行步骤4。

步骤4:如果检测到双手和在其他虚拟模型发生接触,根据抓握意图识别算法,计算手和模型多个接触点能否形成“抓握副”,判断是否双手与虚拟模型之间存在抓握情况,如果存在“抓握副”,则被抓握虚拟模型被判定为抓握状态并跳转到步骤5;

所述的“抓握副”是由符合条件的虚拟手模型和被抓握模型的两个接触点构成的,如附图1所示。所述的“抓握副”条件是对于虚拟手与虚拟物体的两个接触点a、b来说,两个接触点的连线与各自接触面法线之间的角度不超过一个固定角度α,则这两个接触点将构成一个稳定的抓握副g(a,b)。所述的这个固定角度α即为摩擦角,即抓握副g(a,b)判断条件如下:

其中,n

所述的抓握意图识别算法根据“抓握副”条件构建,循环当前所有的接触点,判断是否能与另外一个接触点组成一对“抓握副”,当虚拟手与虚拟物体至少存在一对“抓握副”时,则判断虚拟物体抓取成功。

步骤5:如果虚拟模型在抓握状态,接下根据双手在被操纵虚拟模型上抓取中心的位置和姿态变换趋势,结合操纵意图识别算法,计算虚拟模型被操纵产生的虚拟力或力矩,并以虚拟力或力矩驱动虚拟模型的移动或旋转;

所述的抓取中心是代表整个手的运动的中心点,将整个手视为一个完整的刚体,由抓取中心的位置、姿态和速度代表整个虚拟手的运动参数。

所述的抓取中心获取方法如下:根据步骤四构建的“抓握副”条件判定“抓握副”的位置和数量。将“抓握副”视为一个统一的刚体,由抓取中心来表示该刚体的位置和姿态。如果存在一个“抓握副”,则抓取中心为组成“抓握副”的接触点连线的中心,抓取中心位置和姿态计算如下:

其中,Pc表示抓取中心位置,p1和p2表示组成“抓握副”的接触点的位置,wc、rc和lc分别表示抓取中心的三个欧拉角参数,

如果存在多个“抓握副”,将根据多个“抓握副”的接触点的连线长度进行判断,确定连线长度最长的“抓握副”为主抓握副,根据所述公式(8)(9)构建抓取中心。

在本实施例中,具体的说,步骤5可以包括以下内容:

步骤5.1,判断“抓握副”是否满足取消条件,如果满足取消条件,则则视为用户放下被操纵虚拟模型,将不执行后续步骤,在后续帧不再更新虚拟模型的位置和姿态;如果不满足则执行步骤5.2;

所述的“抓握副”取消条件计算如下所示:

其中,

步骤5.2,根据所述的抓取中心获取方法获取当前的抓取中心。根据意图识别算法,通过抓取中心的位姿变化趋势,计算双手抓取中心施加在虚拟模型上的虚拟力或力矩,并继续执行步骤5.3。

所述的操纵意图识别算法,是基于抓取中心的位姿变换趋势来计算出当前帧双手对虚拟模型施加的虚拟力或虚拟力矩,并根据虚拟力或虚拟力矩来计算虚拟模型移动和旋转的参数,包括移动方向和距离以及旋转的方向和角度。

所述的操纵意图识别算法是基于一种虚拟线性和扭转的弹簧阻尼模型(springer-dampers)构建。该算法的计算公式如下所示:

公式(11)为虚拟力的计算公式,公式(12)为虚拟力矩的计算公式。其中,第i帧(当前帧)双手接触中心点的姿势表示为

步骤5.3,根据步骤5.2所述的操纵意图识别算法计算得出的虚拟力或力矩,结合刚体动力学计算虚拟模型的位移变化量和旋转变化量。并根据位移和旋转变化量在当前帧更新被操纵虚拟模型的位置和姿态,并根据新的位置和姿态渲染该虚拟模型,并在下一帧中继续执行5.1。

位移变化量计算公式如下:

其中,Si表示在当前第i帧被操纵虚拟模型位移,vi表示当前第i帧被操纵虚拟模型的速度,Δt表示在当前第i帧到下一帧第i+1帧之间的时间差,f

旋转变化量计算公式如下:

ΔR

其中,θ

步骤6,重复步骤1至步骤5,根据所述的虚拟手模型、抓握意图识别方法和操纵意图识别方法,在增强现实环境下进行三维手势操纵,高效准确地识别用户针对三维虚拟模型的自然抓握意图,支持用户以自然的手势移动和旋转虚拟物体,提高三维手势交互过程的鲁棒性,使手势交互的体验更加直观自然,进而提升增强现实对三维手势操纵的虚拟效果,并能够提高用户沉浸感。

进一步,参考图3所示,本实施例还提供一种增强现实环境下手势交互的系统,该系统包括数据采集模块,虚拟手模块,碰撞计算模型和手势交互意图识别模块。

所述的数据采集与处理模块,用于采集获取当前帧的RGB图像和深度图像并基于所述的卷积神经网络双手位姿估计算法获取双手关键节点位置和姿态数据。该模块调用深度和RGB摄像头获取深度图像和RGB图像,并应用卷积神经网络,基于RGB图像和深度图像来估计当前帧的手部关键节点的位置和姿态信息并传递给虚拟手模块。

所述的虚拟手模块,根据数据处理模块获取的当前帧的手部关键节点的位置和姿态,在AR设备坐标系下更新组成虚拟手的各个虚拟关节模型的位置和姿态。

所述的碰撞计算模块用于检测虚拟手模型与AR环境下待被操纵虚拟模型之间的是否发生接触,在每帧维护虚拟手关节模型和AR模型的OBB包围盒,并计算虚拟手模型与AR环境下其他模型之间的碰撞与接触,在发生接触后根据GJK算法计算接触的位置和方向。

所述的手势交互意图识别模块包括抓握意图识别子模块、操纵意图识别子模块。所述抓握意图识别子模块,根据真实物体抓握物理过程特点和增强现实环境构建“抓握副”条件,基于“抓握副”构建抓握意图识别算法,识别双手是否抓握虚拟模型或者松开虚拟模型。如果所述基于碰撞检测模块检测到双手和在其他待被操纵虚拟模型发生接触,根据抓握意图识别算法,计算手和被操纵模型多个接触点之间能否形成“抓握副”,判断是否双手与虚拟模型之间存在抓握情况,“抓握副”由两个接触点组成,如果存在一个以上的“抓握副”,则被抓握虚拟模型被判定为抓握状态,无需基于多个接触点的接触计算来判断是否完成抓握,使抓取意图判断更加灵活,更接近真实三维手势操纵情况,更适应复杂手势交互场景,也更加符合用户直观交互感受,同时,如果存在多对“抓握副”,则多个组成抓握副的接触点都将参与到交互意图识别中,提高手势交互意图识别的鲁棒性、灵活性、效率和沉浸感。

所述操纵意图识别子模块用于识别用户针对被操纵虚拟模型的操纵意图,包括移动旋转等。在所述的抓握意图识别子模块识别到抓握意图后,该操纵意图识别模块被调用,基于操纵意图识别算法识别操纵虚拟模型的意图,并以虚拟驱动力、力矩的结果表示,进而基于力或力矩来计算被操纵虚拟模型位移变化量和旋转变化量,更新被操纵模型的运动状态,实现对被操纵模型的驱动。相比于单纯使用双手的位移来预测模型位移的方法,基于虚拟力的操纵意图识别方式更符合物理运动过程,能后实现更加精确的操纵。

以上所述的具体描述,对发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

相关技术
  • 一种虚拟现实环境下三维几何物体可视化的方法及系统
  • 一种删除房源虚拟三维模型中细小虚像的方法及系统
  • 一种基于虚拟现实和增强现实的验证集成系统以及方法
  • 一种虚拟现实中手势识别的方法及系统
  • 一种增强现实环境下的手势纠错方法、系统及装置
  • 一种增强现实环境下的手势纠错方法、系统及装置
技术分类

06120115611173