著录项信息
专利名称 | 手部虚拟饰品试戴的人机交互方法和系统 |
申请号 | CN201510244231.1 | 申请日期 | 2015-05-14 |
法律状态 | 授权 | 申报国家 | 中国 |
公开/公告日 | 2015-08-05 | 公开/公告号 | CN104820498A |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | 暂无 | IPC分类号 | 暂无查看分类表>
|
申请人 | 周谆 | 申请人地址 | 山东省青岛市市北区太清路45号2号楼1单元604
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 周谆 | 当前权利人 | 周谆 |
发明人 | 周谆 |
代理机构 | 青岛联智专利商标事务所有限公司 | 代理人 | 邵新华 |
摘要
本发明公开了一种手部虚拟饰品试戴的人机交互方法和系统,实现的是提高客户购买饰品的购买体验的技术效果。方法包括:分别导入手部三维模型和饰品三维模型,并将饰品三维模型显示于手部三维模型的指定位置上;接收深度传感器在其感知空间内获取的手部的深度信息,并基于手部的深度信息,调用物理引擎调整手部三维模型与饰品三维模型的显示。构建饰品的三维模型以及客户手部的手部三维模型,将饰品三维模型佩戴于手部三维模型上,并通过佩戴手和交互手的相对运动,结合物理引擎实现虚拟控制饰品三维模型的位置或角度的变化,模拟真实试戴中调整手部和饰品的位置和角度,在客户不能真实试戴饰品时,实现真实试戴饰品的效果。
1.手部虚拟饰品试戴的人机交互方法,其特征在于,包括:
分别导入手部三维模型和饰品三维模型;
将所述饰品三维模型显示于所述手部三维模型的指定位置上;
接收深度传感器在其感知空间内获取的手部的深度信息;
基于所述手部的深度信息,调用物理引擎调整所述手部三维模型和所述饰品三维模型的显示;
所述手部三维模型包括佩戴手三维模型和交互手三维模型;
则基于所述手部的深度信息,调用物理引擎调整所述手部三维模型和所述饰品三维模型的显示,具体为:
基于所述手部的深度信息,判断所述佩戴手三维模型的状态是否发生变化;若否,基于所述手部的深度信息,判断所述佩戴手三维模型与所述交互手三维模型是否存在相互运动;若是,向所述饰品三维模型施力,并调用所述物理引擎模拟所述手部三维模型与所述饰品三维模型之间的摩擦和碰撞,使得所述饰品三维模型相对所述手部三维模型移动;
则所述基于所述手部的深度信息,判断所述佩戴手三维模型与所述交互手三维模型是否存在相对运动,具体为:
基于所述手部的深度信息,得到所述佩戴手三维模型中手指或手腕的方向信息;
判断所述交互手三维模型是否相对于所述佩戴手三维模型中手指或手腕的方向平移移动;若是,则所述调用物理引擎调整所述手部三维模型和所述饰品三维模型的显示,具体为:向所述饰品三维模型施力,并调用所述物理引擎模拟所述手部三维模型与所述饰品三维模型之间的摩擦和碰撞,使得所述饰品三维模型相对所述佩戴手三维模型中手指或手腕上的方向平移移动;
和/或,
基于所述手部的深度信息,得到所述佩戴手三维模型中手指或手腕的方向信息;
判断所述交互手三维模型是否相对于所述佩戴手三维模型中的手指或手腕进行旋转;
若是,则所述调用物理引擎调整所述手部三维模型和所述饰品三维模型的显示,具体为:向所述饰品三维模型施力,并调用所述物理引擎模拟所述手部三维模型与所述饰品三维模型之间的摩擦和碰撞,使得所述饰品三维模型相对所述佩戴手三维模型中手指或手腕旋转。
2.根据权利要求1所述的手部虚拟饰品试戴的人机交互方法,其特征在于,在分别导入并显示手部三维模型和饰品三维模型之前,所述方法包括:
分别构建所述手部三维模型和所述饰品三维模型;
设置所述手部三维模型和所述饰品三维模型的属性;
分别在所述手部三维模型和所述饰品三维模型上设置碰撞器;
设定碰撞器的碰撞条件,和建立所述手部三维模型与所述饰品三维模型的参数。
3.根据权利要求2所述的手部虚拟饰品试戴的人机交互方法,其特征在于,所述调用物理引擎调整所述手部三维模型和所述饰品三维模型的显示,具体为:
根据所述手部的深度信息的变化,同步所述手部三维模型的显示;
调用所述物理引擎模拟所述手部三维模型与所述饰品三维模型之间的摩擦和碰撞,使得所述饰品三维模型与所述手部三维模型同步显示。
4.手部虚拟饰品试戴的人机交互系统,其特征在于,包括深度传感器、导入单元、显示单元、物理引擎和控制单元;
所述导入单元,用于导入手部三维模型和饰品三维模型;
所述深度传感器,用于在其感知空间内获取手部的深度信息;
所述控制单元,用于将所述饰品三维模型显示于所述手部三维模型的指定位置上;并接收和基于手部的深度信息,调用所述物理引擎调整所述手部三维模型和所述饰品三维模型的显示;
所述物理引擎,用于模拟所述手部三维模型和所述饰品三维模型之间的摩擦和碰撞;
所述显示单元,用于显示所述手部三维模型和所述饰品三维模型;
所述手部三维模型包括佩戴手三维模型和交互手三维模型;
则所述控制单元基于所述手部的深度信息,调用物理引擎调整所述手部三维模型和所述饰品三维模型的显示,具体为:
基于所述手部的深度信息,判断所述佩戴手三维模型的状态是否发生变化;若否,基于所述手部的深度信息,判断所述佩戴手三维模型与所述交互手三维模型是否存在相互运动;若是,向所述饰品三维模型施力,并调用所述物理引擎模拟所述手部三维模型与所述饰品三维模型之间的摩擦和碰撞,使得所述饰品三维模型相对所述手部三维模型移动;
所述控制单元基于所述手部的深度信息,判断所述佩戴手三维模型与所述交互手三维模型是否存在相对运动,具体为:
基于所述手部的深度信息,得到所述佩戴手三维模型中手指或手腕的方向信息;
判断所述交互手三维模型是否相对于所述佩戴手三维模型中手指或手腕的方向平移移动;若是,则向所述饰品三维模型施力,并调用所述物理引擎模拟所述手部三维模型与所述饰品三维模型之间的摩擦和碰撞,使得所述饰品三维模型相对所述佩戴手三维模型中手指或手腕上的方向平移移动;
和/或,
基于所述手部的深度信息,得到所述佩戴手三维模型中手指或手腕的方向信息;
判断所述交互手三维模型是否相对于所述佩戴手三维模型中的手指或手腕进行旋转;
若是,则向所述饰品三维模型施力,并调用所述物理引擎模拟所述手部三维模型与所述饰品三维模型之间的摩擦和碰撞,使得所述饰品三维模型相对所述佩戴手三维模型中手指或手腕旋转。
5.根据权利要求4所述的手部虚拟饰品试戴的人机交互系统,其特征在于,所述系统还包括构建单元和设置单元;所述构建单元,用于在所述导入单元导入所述手部三维模型和所述饰品三维模型之前,构建所述手部三维模型和所述饰品三维模型;
所述设置单元,设置所述手部三维模型和所述饰品三维模型的属性,并分别在所述手部三维模型和所述饰品三维模型上设置碰撞器,并设定碰撞器的碰撞条件,和建立所述手部三维模型与所述饰品三维模型的参数。
6.根据权利要求5所述的手部虚拟饰品试戴的人机交互系统,其特征在于,所述控制单元调用物理引擎调整所述手部三维模型和所述饰品三维模型的显示,具体为:
根据所述手部的深度信息的变化,同步所述手部三维模型的显示;
调用所述物理引擎模拟所述手部三维模型与所述饰品三维模型之间的摩擦和碰撞,使得所述饰品三维模型与所述手部三维模型同步显示。
手部虚拟饰品试戴的人机交互方法和系统\n技术领域\n[0001] 本发明涉及虚拟现实技术领域,尤其涉及一种手部虚拟饰品试戴的人机交互方法和系统。\n背景技术\n[0002] 购买饰品时,客户除了观察饰品的样式,更需要试戴饰品,以确定饰品的大小是否合适,以及佩戴的效果是否满意。\n[0003] 对于贵重的饰品,将饰品拿出柜台供客户试戴时存在安全性的问题;因此,更多的贵重饰品并不存放于柜台,而是出示饰品的图片或者视频供客户观看,在客户有意购买时,再带领客户去饰品的存储地,通常是具有保险柜的安防较严格的地方专门试戴,这不但降低了客户的购买体验,也增加了商家的人力消耗成本。\n[0004] 或者,即使不是贵重的饰品,由于商家的饰品款式众多,不可能全部摆在柜台上,也只能用图片或者视频的方式供客户挑选;尤其是在互联网普及的现今,通过网络出售饰品的销售方式增多,这种销售方式中,通常也是展示饰品的图片,或者展示模特佩戴饰品的佩戴效果图,客户通过图片资料和一些尺寸信息来衡量是否购买饰品,而这种方式购买回来的饰品通常会存在佩戴不合适、效果不满意的问题,这都降低了客户的购买体验。\n发明内容\n[0005] 本发明的目的是提供一种手部虚拟饰品试戴的人机交互方法和系统,实现的是提高客户购买饰品的购买体验的技术效果。\n[0006] 本发明的目的是通过以下技术方案实现的:\n[0007] 提出一种手部虚拟饰品试戴的人机交互方法,包括:分别导入手部三维模型和饰品三维模型;将所述饰品三维模型显示于所述手部三维模型的指定位置上;接收深度传感器在其感知空间内获取的手部的深度信息;基于所述手部的深度信息,调用物理引擎调整所述手部三维模型和所述饰品三维模型的显示。\n[0008] 进一步的,在分别导入并显示手部三维模型和饰品三维模型之前,所述方法包括:\n分别构建所述手部三维模型和所述饰品三维模型;设置所述手部三维模型和所述饰品三维模型的属性;分别在所述手部三维模型和所述饰品三维模型上设置碰撞器;设定碰撞器的碰撞条件,和建立所述手部三维模型与所述饰品三维模型的参数。\n[0009] 进一步的,所述调用物理引擎调整所述手部三维模型和所述饰品三维模型的显示,具体为:根据所述手部的深度信息的变化,同步所述手部三维模型的显示;调用所述物理引擎模拟所述手部三维模型与所述饰品三维模型之间的摩擦和碰撞,使得所述饰品三维模型与所述手部三维模型同步显示。\n[0010] 进一步的,所述手部三维模型包括佩戴手三维模型和交互手三维模型;则基于所述手部的深度信息,调用物理引擎调整所述手部三维模型和所述饰品三维模型的显示,具体为:基于所述手部的深度信息,判断所述佩戴手三维模型的状态是否发生变化;若否,基于所述手部的深度信息,判断所述佩戴手三维模型与所述交互手三维模型是否存在相互运动;若是,向所述饰品三维模型施力,并调用所述物理引擎模拟所述手部三维模型与所述饰品三维模型之间的摩擦和碰撞,使得所述饰品三维模型相对所述手部三维模型移动。\n[0011] 进一步的,所述基于所述手部的深度信息,判断所述佩戴手三维模型与所述交互手三维模型是否存在相对运动,具体为:基于所述手部的深度信息,得到所述佩戴手三维模型中手指或手腕的方向信息;判断所述交互手三维模型是否相对于所述佩戴手三维模型中手指或手腕的方向平移移动;若是,则所述调用物理引擎调整所述手部三维模型和所述饰品三维模型的显示,,具体为:向所述饰品三维模型施力,并调用所述物理引擎模拟所述手部三维模型与所述饰品三维模型之间的摩擦和碰撞,使得所述饰品三维模型相对所述佩戴手三维模型中手指或手腕上的方向平移移动。\n[0012] 进一步的,所述基于所述手部的深度信息,判断所述佩戴手三维模型与所述交互手三维模型是否存在相对运动,具体为:基于所述手部的深度信息,得到所述佩戴手三维模型中手指或手腕的方向信息;判断所述交互手三维模型是否相对于所述佩戴手三维模型中的手指或手腕进行旋转;若是,则所述调用物理引擎调整所述手部三维模型和所述饰品三维模型的显示,具体为:向所述饰品三维模型施力,并调用所述物理引擎模拟所述手部三维模型与所述饰品三维模型之间的摩擦和碰撞,使得所述饰品三维模型相对所述佩戴手三维模型中手指或手腕旋转。\n[0013] 提出一种手部虚拟饰品试戴的人机交互系统,包括深度传感器、导入单元、显示单元、物理引擎和控制单元;所述导入单元,用于导入手部三维模型和饰品三维模型;所述深度传感器,用于在其感知空间内获取手部的深度信息;所述控制单元,用于将所述饰品三维模型显示于所述手部三维模型的指定位置上;并接收和基于手部的深度信息,调用所述物理引擎调整所述手部三维模型和所述饰品三维模型的显示;所述物理引擎,用于模拟所述手部三维模型和所述饰品三维模型之间的摩擦和碰撞;所述显示单元,用于显示所述手部三维模型和所述饰品三维模型。\n[0014] 进一步的,所述系统还包括构建单元和设置单元;所述构建单元,用于在所述导入单元导入所述手部三维模型和所述饰品三维模型之前,构建所述手部三维模型和所述饰品三维模型;所述设置单元,设置所述手部三维模型和所述饰品三维模型的属性,并分别在所述手部三维模型和所述饰品三维模型上设置碰撞器,并设定碰撞器的碰撞条件,和建立所述手部三维模型与所述饰品三维模型的参数。\n[0015] 进一步的,所述控制单元调用物理引擎调整所述手部三维模型和所述饰品三维模型的显示,具体为:根据所述手部的深度信息的变化,同步所述手部三维模型的显示;调用所述物理引擎模拟所述手部三维模型与所述饰品三维模型之间的摩擦和碰撞,使得所述饰品三维模型与所述手部三维模型同步显示。\n[0016] 进一步的,所述构建单元构建的手部三维模型包括佩戴手三维模型和交互手三维模型;则所述控制单元基于所述手部的深度信息,调用物理引擎调整所述手部三维模型和所述饰品三维模型的显示,具体为:基于所述手部的深度信息,判断所述佩戴手三维模型的状态是否发生变化;若否,基于所述手部的深度信息,判断所述佩戴手三维模型与所述交互手三维模型是否存在相互运动;若是,向所述饰品三维模型施力,并调用所述物理引擎模拟所述手部三维模型与所述饰品三维模型之间的摩擦和碰撞,使得所述饰品三维模型相对所述手部三维模型移动。\n[0017] 进一步的,所述控制单元基于所述手部的深度信息,判断所述佩戴手三维模型与所述交互手三维模型是否存在相对运动,具体为:基于所述手部的深度信息,得到所述佩戴手三维模型中手指或手腕的方向信息;判断所述交互手三维模型是否相对于所述佩戴手三维模型中手指或手腕的方向平移移动;若是,则向所述饰品三维模型施力,并调用所述物理引擎模拟所述手部三维模型与所述饰品三维模型之间的摩擦和碰撞,使得所述饰品三维模型相对所述佩戴手三维模型中手指或手腕上的方向平移移动。\n[0018] 进一步的,所述控制单元基于所述手部的深度信息,判断所述佩戴手三维模型与所述交互手三维模型是否存在相对运动,具体为:基于所述手部的深度信息,得到所述佩戴手三维模型中手指或手腕的方向信息;判断所述交互手三维模型是否相对于所述佩戴手三维模型中手指或手腕进行旋转;若是,则向所述饰品三维模型施力,并调用所述物理引擎模拟所述手部三维模型与所述饰品三维模型之间的摩擦和碰撞,使得所述饰品三维模型相对所述佩戴手三维模型中手指或手腕旋转。\n[0019] 本发明提供的技术方案的有益效果或者优点是:采用手部虚拟饰品试戴的方式,在诸如电脑等智能主控设备中,构建饰品以及客户虚拟的手部三维模型和饰品三维模型,在客户想要试戴某个饰品时,导入并显示饰品的饰品三维模型以及客户手部的手部三维模型,并控制将虚拟饰品佩戴于虚拟手部上,随后采用深度传感器获取客户的手部的深度信息,基于手部的深度信息得到手部三维模型或者饰品三维模型的移动参数,驱动手部三维模型和饰品三维模型移动;在构建手部三维模型和饰品三维模型时,设置手部三维模型和饰品三维模型的参数,例如材质、重量、阻力、碰撞机制等,并在手部三维模型和饰品三维模型上设置碰撞器,对于饰品三维模型,根据移动参数对饰品三维模型施加力,使得饰品三维模型相对手部三维模型移动,并调用物理引擎模拟手部运动时与饰品之间的碰撞和摩擦,令虚拟世界的三维模型之间的运动符合真实世界的物理定律,从而实现调整手部三维模型和饰品三维模型的显示的效果,例如,根据手部的动作调整虚拟手部和虚拟饰品的显示角度,使客户能够了解饰品与自身手部的大小是否合适,饰品佩戴于自身的手部的效果是否好看等,由于调用了物理引擎模拟手部与饰品之间的碰撞和摩擦,使得手部三维模型和饰品三维模型的相对移动更加真实和符合实际,产生客户真实试戴饰品的效果,在客户不能真实试戴饰品时,提高客户试戴饰品的购买体验感。\n附图说明\n[0020] 图1为深度传感器感知空间示意图;\n[0021] 图2为本发明实施例提出的手部虚拟饰品试戴的人机交互方法的方法流程图;\n[0022] 图3为本发明实施例中佩戴手与交互手相对运动示意图;\n[0023] 图4为本发明实施例中佩戴手与交互手相对运动示意图;\n[0024] 图5为本发明实施例提出的手部虚拟饰品试戴的人机交互方法的又一方法流程图;\n[0025] 图6为本发明实施例提出的手部虚拟饰品试戴的人机交互方法的又一方法流程图;\n[0026] 图7为本发明实施例提出的手部虚拟饰品试戴的人机交互系统框图。\n具体实施方式\n[0027] 本发明通过提供一种手部虚拟饰品试戴的人机交互方法和系统,采用虚拟试戴的方式,在系统中构建饰品三维模型和手部三维模型,也即构建了虚拟饰品和虚拟手部,采用虚拟手部佩戴虚拟饰品,并通过深度传感器获取手部的深度信息,基于该深度信息并调用物理引擎来调整虚拟手部佩戴虚拟饰品的显示关系,达到与真实手部试戴真实饰品相同的效果。\n[0028] 目前的深度传感器,可以获取到手部,包括手掌、手腕和各手指等部位的骨骼信息、空间三维坐标和速度等信息,以kinect传感器为例,其可以以每秒几十帧的频率获取手部的信息,而LeapMotion传感器更可以以超过每秒一百帧的频率获取。\n[0029] 如图1中所示,以深度传感器1放置于电脑等装置的显示界面21前端为例,其能感知的范围在显示界面前方形成一个能感知手掌、手腕和各手指的感知空间4,客户在此感知空间内进行手部操作时,其手掌、手腕和各手指的三维坐标、速度信息(包括速率和速度方向)能够被该深度传感器感知,深度传感器基于这些信息计算出手部的骨骼信息供应用使用;骨骼信息中包括手掌、手腕、手指以及各个手指节的骨骼尺寸、速度、方向等信息。当然,在深度传感器与电脑等装置实现无线连接的情况下,深度传感器不必限于放置在电脑等装置的周围,而是使其根据实际手部操作的空间位置放置,不必使手部局限于固定位置进行手势操作。显示界面可以是但不受限于电视屏幕、投影屏幕、电脑屏幕、头戴式3D显示系统等。\n[0030] 本发明实施例中提及的基于深度传感器获取的手部深度信息,通常是指深度传感器获取到手部深度信息后计算得到的手部的骨骼信息。\n[0031] 本发明实施例中提到的饰品,包括但不受限于戒指、手表、手镯和手环等。\n[0032] 下面将结合附图,对本发明实施例提供的技术方案进行详细描述。\n[0033] 如图2所示,为本发明实施例提出的虚拟饰品试戴的人机交互方法的方法流程图,该方法包括以下步骤:\n[0034] 步骤S21:分别导入手部三维模型和饰品三维模型;\n[0035] 在导入手部三维模型和饰品三维模型之前,首先要构建手部的三维模型和饰品的三维模型。\n[0036] 饰品三维模型的构建,可以采用现有的任一种构建三维模型的方法进行;其可以按照实际存在的饰品去构建,也可以是按照饰品设计构思或图纸去构建的;在互联网电子商务中,客户甚至可以自己创意和构建饰品三维模型然后上传给供应商。\n[0037] 多个饰品,需要构建多个饰品三维模型,将所有构建的饰品三维模型存放于一个饰品三维模型库中,在导入饰品三维模型时,从该饰品三维模型库中选取目标饰品三维模型,并导入该目标饰品三维模型;客户可以采用现有的方法,例如鼠标点中拖动,或者手势控制等方式,从饰品三维模型库中选取中意饰品的三维模型。\n[0038] 由于客户是不断更换的,因此客户的手部三维模型是实时构建的,如图1所示,在深度传感器1的感知空间4中,客户的手部信息由深度传感器获取,这其中包括手部(包括手腕、手掌和各个手指)的骨骼信息,该骨骼信息包括骨骼宽度信息和骨骼长度信息,也即手腕骨骼的宽度、手掌骨骼的宽度和长度、各个手指的宽度和长度(包括各个指关节)等信息,基于深度传感器获取的这些骨骼信息,可以实时构建客户手部的三维模型,当然,也可以为手部三维模型创建一个手部三维模型库,将构建的客户手部三维模型存储起来,当客户下次来试戴饰品时,不必再重新构建手部三维模型,这尤其适用于老客户,提高客户的购买体验。\n[0039] 为使构建的手部三维模型更贴合客户的手部特征,在构建手部三维模型时,将手部三维模型分两步构建,首先构建手部模型,然后再在手部模型中建立骨骼模型,将手部模型与骨骼模型进行蒙皮处理,这样深度传感器可以捕捉感知空间中的手部的深度信息,经过处理得到相应的骨骼信息,并关联骨骼信息与骨骼模型,利用这个骨骼信息构建出手部三维模型。具体的,利用骨骼信息来驱动骨骼模型,这样,显示界面中的手部就可以与现实中的手部动作实现同步,包含手部的位移、旋转、手指的点击、伸缩等;同时,利用骨骼信息拉伸或者收缩骨骼模型的尺寸,使得骨骼模型更符合客户手部骨骼的个人特征。\n[0040] 导入手部三维模型和饰品三维模型后,将他们在显示界面上显示出来。\n[0041] 步骤S22:将饰品三维模型显示于手部三维模型的指定位置上;\n[0042] 为模拟真实情况中手部试戴饰品的情况,在导入饰品三维模型和手部三维模型并显示后,模拟手部试戴饰品的情况,使饰品三维模型显示于手部三维模型的指定位置上。\n[0043] 具体的一种实施方式是,在手部三维模型上选定需要佩戴饰品的位置,将饰品三维模型显示于这个位置上。例如,选定手部三维模型的其中一个手指,则将戒指的三维模型显示在手指部位;或者,选定手部三维模型中的手腕部位后,将手镯、手表等饰品的三维模型显示在手腕部位上。深度传感器能获取手腕、手掌和各个手指的骨骼信息,这其中除了骨骼的宽度和长度等信息,也包括手腕、手掌和各个手指的位置信息,则在佩戴手三维模型上选定了佩戴饰品三维模型的具体位置后,也即确定了佩戴位置的具体三维坐标,将饰品三维模型显示在这个位置上即可;具体的戒指、手镯、手表等饰品,可以采用将其三维模型的中心点位置与手腕骨骼或手指骨骼中心点位置重合的方式,实现将戒指和手镯套接在手指或手腕上的效果。\n[0044] 通过这种虚拟试戴的方式,可以直观的了解到饰品的款式与手部是否合适。\n[0045] 虽然将饰品三维模型显示于手部三维模型上之后,可以实现手部佩戴首饰的视觉效果,但是手部三维模型与饰品三维模型之间没有发生实际的接触或者碰撞,饰品三维模型如同浮在手部三维模型上,使用户难以产生真实佩戴的感觉,若此时根据深度信息调整手部三维模型与饰品三维模型的显示时,容易发生手部三维模型与饰品三维模型的边缘发生重合的现象。\n[0046] 为使虚拟模型之间展现佩戴的效果更真实和贴合实际,本发明实施例中引入物理引擎模拟手部三维模型与饰品三维模型之间的碰撞和摩擦,实现客户虚拟佩戴首饰的效果,能带来逼真的交互体验。物理引擎例如Nvidia公司的PhysX等,其使用CPU、GPU等资源准确模拟物体在三维空间中所受的重力、摩擦、碰撞等仿真效果。\n[0047] 在构建了手部三维模型和饰品三维模型之后,分别设置手部三维模型和饰品三维模型的属性,该属性的设置包括设定模型的重量、阻力、碰撞机制、材质、环境变量、背景音效以及灯光等;并分别在手部三维模型和饰品三维模型上设置碰撞器,设定碰撞条件、建立手部三维模型和饰品三维模型的参数;完成上述的设置后,再导入手部三维模型和饰品三维模型,并将饰品三维模型显示于手部三维模型的指定位置上。\n[0048] 将饰品三维模型显示于手部三维模型上之后,可以基于骨骼信息,也即根据客户手部的宽度等信息,对饰品三维模型的细节,例如戒指周长、手表表带长度等,进行细微的调整,使得饰品三维模型可以恰好套接在手部的指定位置上。\n[0049] 步骤S23:接收深度传感器在其感知空间内获取的手部的深度信息;\n[0050] 客户在试戴饰品时,不仅仅是为了试看饰品是否合适,更需要试看饰品与手部搭配是否具有美感,在真实试戴时,会调整手部或者饰品的角度,从各个角度观看饰品的佩戴效果。\n[0051] 针对于此,在导入了手部三维模型与饰品三维模型,并将饰品三维模型显示于手部三维模型指定位置之后,深度传感器实时获取手部的深度信息,这其中包括手部的三维坐标和速度等信息,客户的手部在深度传感器的感知空间内,像真实佩戴饰品一样调整手部的角度,以实现虚拟系统中模拟真实佩戴试看的效果。\n[0052] 步骤S24:基于手部的深度信息,调用物理引擎调整手部三维模型与饰品三维模型的显示。\n[0053] 深度传感器在其感知空间内获取手部的深度信息,包括手掌、手腕和各个手指的骨骼信息,这些骨骼信息能反应手部的特征信息;深度信息还包括手掌、手腕和各个手指的三维坐标以及速度信息,这可以精确捕获手部的位置、姿态和动作等;在深度传感器的感知空间内,以一定频率获取手部的移动、翻转等产生的深度信息,基于这些深度信息和上述的特征信息,反应到显示界面上即为虚拟仿真的手部进行相应的动作。\n[0054] 基于深度传感器获取的深度信息,根据骨骼信息构建手部三维模型之后,以一定频率获取手部的运动信息,以此来控制显示界面中手部三维模型的运动,这样可以使得在感知空间内的手部特征信息、运动信息与显示界面中的手部三维模型特征信息、运动信息一一对应,以此来模拟真实手部运动的效果。\n[0055] 同时,由于分别在手部三维模型和饰品三维模型中设置了碰撞器并进行了相关设置,此时调用物理引擎模拟手部三维模型与饰品三维模型之间的碰撞和摩擦,使得手部三维模型与饰品三维模型发生真实的接触,如同在现实中一样,饰品三维模型通过施加外力、重力、摩擦力等因素共同作用在手部三维模型的指定位置上,提供给客户一种通过虚拟试戴实现真实试戴的用户体验效果。\n[0056] 例如,根据手部的动作调整手部三维模型和饰品三维模型的显示角度,使客户能够了解饰品佩戴于自身的手部的效果是否好看等,产生客户真实试戴饰品的效果,在客户不能真实试戴饰品时,提高客户试戴饰品的购买体验感。\n[0057] 客户可以通过设定来实现饰品是显示在左手还是右手上,亦或是手指上还是手腕上等,如图1所示。客户可以从饰品三维模型库中选择饰品三维模型,也可以在虚拟试戴过程中更换饰品三维模型;选择的方式可以采用例如键盘、鼠标或者触摸屏等现有的选择方式,也可以通过手势控制来选择和更换饰品三维模型;通过手势选择时,具体的,接收深度传感器在其感知空间内获取的手部的深度信息,并基于手部的深度信息分析手部对应的手势,例如,手掌在感知空间内向一个方向挥动,表示显示下一个饰品三维模型,向另一个方向挥动,则表示显示上一个饰品三维模型等。\n[0058] 调用物理引擎调整手部三维模型和饰品三维模型的显示的一个具体实施例是,根据手部深度信息的变化,同步手部三维模型的显示,使得手部三维模型与感知空间内客户的手部移动同步,然后调用物理引擎模拟手部三维模型与饰品三维模型之间的摩擦和碰撞,使得饰品三维模型受摩擦力的作用与手部三维模型同步显示,包括同步移动、同步旋转等,如此,实现现实中手部佩戴饰品的效果。\n[0059] 具体的,客户的两只手都在深度传感器的感知空间内时,对应构建的手部三维模型,可以区别为佩戴手三维模型和交互手三维模型,如图3和图4所示,左手为佩戴手,右手为交互手。\n[0060] 则模拟真实手部佩戴饰品的以下情况:左手佩戴饰品,而右手调整饰品的位置或者角度,本发明实施例提出以下具体的方法;当然,也可以根据客户实际用手习惯对佩戴手和交互手进行设定,此处不予赘述。\n[0061] 基于手部的深度信息,调用物理引擎调整手部三维模型和饰品三维模型的显示,具体可以是如图5所示的步骤:\n[0062] 步骤S51:基于手部的深度信息,判断佩戴手三维模型的状态是否发生变化;\n[0063] 真实佩戴情况下,佩戴手通常保持不动,由另一只手来调整饰品的位置和角度。则相应的,设计为在虚拟系统中,若佩戴手三维模型的状态保持不变化,也即佩戴手的手部的深度信息没有发生变化,反应了客户的佩戴手保持不动的状态,说明客户即将调整饰品的位置或者角度。则\n[0064] 步骤S52:基于手部的深度信息,判断佩戴手三维模型与交互手三维模型是否存在相对运动;\n[0065] 当佩戴手三维模型与交互手三维模型存在相对运动时,也即反映了佩戴手与交互手存在相对的运动;而在佩戴手保持不动的状态下,若佩戴手与交互手发生相对运动,则必然是交互手发生了运动,也即交互手的手部的深度信息发生了变化;而交互手发生的运动对应为对饰品位置或者角度的调整,则\n[0066] 步骤S53:向饰品三维模型施力,并调用物理引擎模拟手部三维模型与饰品三维模型之间的摩擦和碰撞,使得饰品三维模型相对手部三维模型移动。\n[0067] 真实佩戴时,交互手的不同运动对应对饰品不同的调整,则交互手三维模型发生运动时,对应需要根据运动状态的不同来调整饰品三维模型的位置并显示,例如,移动饰品三维模型的位置,或者调整饰品三维模型的角度等。\n[0068] 基于手部的深度信息,判断佩戴手三维模型与交互手三维模型是否存在相对运动的一种具体实施例如图3所示,基于手部的深度信息,包括交互手(对应右手)和佩戴手(对应左手)的深度信息,得到佩戴手三维模型中手指或者手腕的方向信息,并判断交互手三维模型是否相对于佩戴手三维模型中手指或手腕的方向平移移动,这对应为交互手相对佩戴手的手指或手腕方向平移移动;若判断得出交互手三维模型是相对于佩戴手三维模型中手指或手腕的方向平移移动的,则将该动作对应为调整饰品三维模型在佩戴手三维模型中手指或手腕上的位移,并显示出来;对应实际佩戴情况,则为调整戒指在手指上的位置,调整手表在手腕上的位置等;平移移动包括整个手部的平移,以及仅手指的平移;具体实施时,在饰品三维模型上施加力,使得饰品三维模型相对手部三维模型的手指或者手腕方向平移移动,同时,调用物理引擎模拟饰品三维模型与手部三维模型之间的摩擦和碰撞,使得饰品三维模型结合施加的力、摩擦以及碰撞等因素,模拟真实佩戴的情况进行平移移动,使得虚拟试戴与真实试戴的体验更加一致,提高客户的购买体验效果。\n[0069] 基于手部的深度信息,判断佩戴手三维模型与交互手三维模型是否存在相对运动的又一种具体实施例如图4所示,基于手部的深度信息,包括交互手(对应右手)三维模型相对佩戴手(对应左手)的深度信息,得到佩戴手三维模型中手指或者手腕的方向信息,并判断交互手三维模型是否相对于佩戴手三维模型中的手指或手腕的方向进行旋转,这对应为旋转手腕或是手指上的饰品;若判断得出交互手三维模型是相对于佩戴手三维模型中手指或手腕的方向进行旋转,则将该动作对应为调整饰品三维模型在佩戴手三维模型中手指或手腕上的角度,并显示出来;对应实际佩戴情况,则为调整戒指在手指上的角度,调整手表在手腕上的角度等;具体实施时,在饰品三维模型上施加力,使得饰品三维模型相对手部三维模型的围绕手指或者手腕方向旋转,同时,调用物理引擎模拟饰品三维模型与手部三维模型之间的摩擦和碰撞,使得饰品三维模型结合施加的力、摩擦以及碰撞等因素,模拟真实佩戴的情况进行垂直移动,使得虚拟试戴与真实试戴的体验更加一致,提高客户的购买体验效果。\n[0070] 客户在虚拟佩戴饰品之前,还可以只选择导入饰品三维模型,并通过鼠标、键盘等输入设备的操作来调节饰品三维模型的显示,例如翻转、缩放等。\n[0071] 客户也可以基于深度传感器,通过手势来实现控制饰品三维模型的翻转或者缩放,具体的如图6所示:\n[0072] 步骤S61:接收深度传感器在其感知空间内获取的手部的深度信息;\n[0073] 步骤S62:基于手部的深度信息,分析得到手部对应的手势;\n[0074] 步骤S63:基于手势,控制饰品三维模型的选择、旋转、移动或者缩放。\n[0075] 基于手部的深度信息,得到手部的三维坐标和速度信息;并根据手部的三维坐标,分析手部的位移,以及根据手部的速度信息,分析手部的运动方向。\n[0076] 深度传感器采集其感知空间内手部变化的深度信息,因此,获取到的深度信息中的三维坐标在时间轴上形成了手部的运动位移,而速度信息中的速度方向和速率则在空间中构建出了手部的运动方向和运动速度。\n[0077] 基于手部的运动,可以推算得到手部运动对应的手势;具体的,结合手部的运动位移以及运动方向和运动速度,可以构建出手部在空间发生的手势模型,不同的手势模型对应不同的人机交互指令,例如,从饰品三维模型库中选择饰品三维模型、翻转饰品三维模型、放大或者缩小饰品三维模型等,而具体的手势与人机交互指令的对应关系可以依据游戏实际情况确定,本方案不予限制。\n[0078] 客户在虚拟试戴饰品时,通过上述方式来调整饰品三维模型的大小,例如用鼠标或键盘输入参数的方式来改变饰品三维模型的大小,又例如,基于交互手的两指相对运动产生的距离的大小变化来调整饰品三维模型大小的变化等;这样做的好处是,客户可以根据手部的大小,定制适合自身手部的饰品尺寸,而不局限于现有饰品的大小,进而提高客户的购买体验。而且用户可以自行完成饰品的选择购买过程,降低了饰品商家的人力成本。\n[0079] 基于上述虚拟饰品试戴的人机交互方法,本发明实施例还提出一种虚拟饰品试戴的人机交互系统,如图7所示,包括深度传感器1、显示单元2、导入单元3、物理引擎4和主控单元5;深度传感器用于在其感知空间内获取手部的深度信息;导入单元用于分别导入手部三维模型和饰品三维模型;主控单元将饰品三维模型显示于手部三维模型的指定位置上,并接收深度传感器在其感知空间内获取的手部的深度信息,基于手部的深度信息,调用物理引擎调整手部三维模型和饰品三维模型的显示;显示单元显示手部三维模型和饰品三维模型;物理引擎用于模拟手部三维模型和饰品三维模型之间的摩擦和碰撞。\n[0080] 上述系统还包括构建单元5和设置单元7;构建单元用于构建饰品的饰品三维模型和客户的手部三维模型。具体的,构建的手部三维模型包括手部模型和手部模型中的骨骼模型,控制单元接收深度传感器在其感知空间内获取的手部的深度信息,并基于手部的深度信息分析得到的手部的骨骼信息,构建单元关联骨骼信息与骨骼模型,构建出手部的手部三维模型;这其中,骨骼信息包括手腕、手掌和各个手指的骨骼宽度信息和骨骼长度信息;具体的,构建单元基于骨骼信息,拉伸或者收缩骨骼模型的尺寸,以及,在将饰品三维模型显示于手部三维模型的指定位置上之后,基于骨骼信息,调整饰品三维模型的石村,使得饰品三维模型更符合实际的套接在手部三维模型上。\n[0081] 设置单元7,设置手部三维模型和饰品三维模型的属性,分别在手部三维模型和饰品三维模型上设置碰撞器,并设定碰撞器的碰撞条件,以及建立手部三维模型和饰品三维模型的参数;在模拟客户试戴饰品时,基于这些设定,调用物理引擎来模拟真实手部佩戴饰品的效果。\n[0082] 相应于饰品三维模型,上述系统还包括饰品三维模型库6,用于存储饰品的饰品三维模型,以供客户从饰品三维模型库中选择中意的饰品三维模型进行虚拟试戴。\n[0083] 客户可以采用手势控制的方式从饰品三维模型库中选取饰品三维模型,还可以基于手势控制的方式在导入单元导入饰品三维模型后,控制饰品三维模型的选择、缩放、移动或者旋转;具体为,在接收深度传感器在其感知空间内获取的手部的深度信息后,基于手部的深度信息,分析手部对应的手势,并基于手势的不同控制饰品三维模型的缩放、移动、旋转或者不同饰品三维模型间的切换等。\n[0084] 主控单元在导入手部三维模型和饰品三维模型后,将饰品三维模型佩戴于手部三维模型上,具体为:在手部三维模型上选定需要佩戴饰品三维模型的位置;并将饰品三维模型显示于该位置上。\n[0085] 模拟真实试戴饰品的场景中区分的佩戴饰品的佩戴手和调整饰品位置和角度的交互手,则构建手部三维模型相应的包括佩戴手三维模型和交互手三维模型。\n[0086] 则模拟真实手部佩戴饰品的以下情况:左手佩戴饰品,而右手调整饰品的位置或者角度,可以对应为佩戴手保持不动,而交互手相对佩戴手的状态发生变化;具体的,基于获取的手部的深度信息,判断佩戴手三维模型的状态是否发生变化;若否,则基于获取的手部的深度信息,判断佩戴手三维模型与交互手三维模型是否存在相对运动;若是,向饰品三维模型施力,并调用物理引擎模拟饰品三维模型与手部三维模型之间的碰撞和摩擦,使得饰品三维模型相对手部三维模型移动。\n[0087] 相应于交互手调整饰品的位置,佩戴手三维模型与交互手三维模型存在相对运动,可以为交互手三维模型相对佩戴手三维模型的手指或手腕方向的平移移动,佩戴手三维模型中手指或者手腕的方向信息是基于手部的深度信息得到,包括交互手(对应右手)和佩戴手(对应左手);若判断得出交互手三维模型是相对于佩戴手三维模型中手指或手腕的方向平移移动的,则将该动作对应为调整饰品三维模型在佩戴手三维模型中手指或手腕上的位移,并显示出来;对应实际佩戴情况,则为调整戒指在手指上的位置,调整手表在手腕上的位置等;平移移动包括整个手部的平移,以及仅手指的平移;具体实施时,在饰品三维模型上施加力,使得饰品三维模型相对手部三维模型的手指或者手腕方向平移移动,同时,调用物理引擎模拟饰品三维模型与手部三维模型之间的摩擦和碰撞,使得饰品三维模型结合施加的力、摩擦以及碰撞等因素,模拟真实佩戴的情况进行平移移动,使得虚拟试戴与真实试戴的体验更加一致,提高客户的购买体验效果。\n[0088] 相应于交互手调整饰品的角度,佩戴手三维模型与所述交互手三维模型存在相对运动,可以为交互手三维模型相对佩戴手三维模型中围绕手指或手腕的方向进行旋转,若判断得出交互手三维模型是相对于佩戴手三维模型中围绕手指或手腕的方向旋转的,则将该动作对应为调整饰品三维模型在佩戴手三维模型中手指或手腕上的角度,并显示出来;\n对应实际佩戴情况,则为调整戒指在手指上的角度,调整手表在手腕上的角度等;具体实施时,在饰品三维模型上施加力,使得饰品三维模型相对手部三维模型的手指或者手腕方向垂直移动,同时,调用物理引擎模拟饰品三维模型与手部三维模型之间的摩擦和碰撞,使得饰品三维模型结合施加的力、摩擦以及碰撞等因素,模拟真实佩戴的情况进行旋转,使得虚拟试戴与真实试戴的体验更加一致,提高客户的购买体验效果。\n[0089] 在客户只将佩戴手置于深度传感器的感知空间内时,客户通过翻转或者移动佩戴手来实现从不同角度观看试戴效果,则最直接的一种方式是,根据手部深度信息的变化,同步手部三维模型和饰品三维模型的显示;也即,将饰品三维模型的显示与手部三维模型的显示同步起来,然后调用物理引擎模拟手部三维模型与饰品三维模型之间的摩擦和碰撞,使得饰品三维模型受摩擦力的作用与手部三维模型同步显示,包括同步移动、同步旋转等,反应的效果是,客户调整佩戴手的位置和角度时,饰品跟随佩戴手的运动而运动,以实现观察饰品与手部在不同角度的佩戴效果。\n[0090] 具体虚拟饰品试戴的人机交互系统的工作方法,已经在上述虚拟饰品试戴的人机交互方法中详述,此处不予赘述。\n[0091] 本发明实施例提出的虚拟饰品试戴的人机交互方法和系统,构建饰品的饰品三维模型以及客户手部的手部三维模型,将饰品三维模型佩戴于手部三维模型上,采用这种饰品与手部虚拟的试戴的方式,实现真实试戴饰品的效果;并通过佩戴手和交互手的相对运动来实现虚拟控制饰品三维模型的位置或角度的变化,模拟真实试戴中调整手部和饰品的位置和角度,在客户不能真实试戴饰品时,通过虚拟试戴的方式,达到真实试戴的效果,同时引入物理引擎模拟手部三维模型与饰品三维模型之间的碰撞和摩擦,使得虚拟佩戴更真实,能使客户产生与真实试戴一致的体验感和体验效果。\n[0092] 当深度传感器普及到客户家里时,客户可以在家里进行虚拟饰品的试戴而不用去饰品店面,在网络上的应用商店里选择饰品款式并进行虚拟饰品试戴,在试戴满意后,可以通过网上交易订购满意的饰品,更可以通过网上交易定制适合自身的饰品,这样客户在足不出户的情况下即可以购买满意的饰品。\n[0093] 在全息技术中,可以以全息显示的方式将饰品三维模型显示在处于全息显示环境空间内的真实手部上,实现虚拟与现实的结合,深度传感器实时获取手部的深度信息后(包括佩戴手和交互手),主控单元根据手部的深度信息,并调用物理引擎按照上述实施例的方式实时调整全息显示的饰品三维模型的显示状态,实现虚拟试戴饰品的效果。\n[0094] 在最新的微软hololens全息眼镜技术中,饰品三维模型通过光线被投入人眼中,而深度传感器置于眼镜框体上,在人体前部形成感知空间,客户手部的动作被深度传感器感知,并将感知的深度信息传递给主控单元,主控单元根据深度信息,将虚拟饰品与现实世界的手部叠加在一起,在人眼中实现饰品佩戴于手部的效果,并调用物理引擎按照上述实施例的方式实时调整饰品三维模型在人眼中的显示,实现虚拟与现实的结合和虚拟试戴饰品的效果。\n[0095] 显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
法律信息
- 2018-05-08
- 2015-09-02
实质审查的生效
IPC(主分类): G06F 3/01
专利申请号: 201510244231.1
申请日: 2015.05.14
- 2015-08-05
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有引用任何外部专利数据! |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |