首页> 中国专利> 虚拟物体操作系统及虚拟物体操作方法

虚拟物体操作系统及虚拟物体操作方法

摘要

本发明提供一种虚拟物体操作系统及虚拟物体操作方法。所述虚拟物体操作方法包括以下步骤。获得多个图像。确定图像中操作物体的运动。操作物体存在于真实环境中。根据操作物体的运动来确定与操作物体交互作用的虚拟物体的运动。虚拟物体存在于虚拟环境中。因此,可在用户的操作身体部位上没有运动传感器的条件下跟踪操作物体的运动。

著录项

  • 公开/公告号CN112711326A

    专利类型发明专利

  • 公开/公告日2021-04-27

    原文格式PDF

  • 申请/专利权人 未来市股份有限公司;

    申请/专利号CN201911288526.3

  • 发明设计人 柯士豪;严伟齐;王志文;周明达;

    申请日2019-12-12

  • 分类号G06F3/01(20060101);

  • 代理机构11205 北京同立钧成知识产权代理有限公司;

  • 代理人罗英;刘芳

  • 地址 中国台湾桃园市桃园区中正路1351号18楼

  • 入库时间 2023-06-19 10:46:31

说明书

技术领域

本发明一般来说涉及虚拟世界中的模拟,具体来说涉及一种虚拟物体操作系统及一种虚拟物体操作方法。

背景技术

当今,例如虚拟现实(virtual reality,VR)、增强现实(augmented reality,AR)、混合现实(mixed reality,MR)及扩展现实(extended reality,XR)等用于模拟感觉、感知和/或环境的技术受到欢迎。上述技术可应用于多种领域(例如游戏、军事训练、医疗保健、远程工作等)中。

为让用户将模拟环境感知为真实环境,将跟踪用户在真实世界中的运动,从而可响应于用户的运动来改变VR、AR、MR或XR显示器上的显示图像及化身(avatar)的运动。另外,化身可与模拟环境中的虚拟物体交互作用。由于模拟环境是由创建者产生的,因此创建者可对化身与虚拟物体之间的交互作用情形进行配置。因此,如何定义交互作用情形对于虚拟世界模拟来说颇为重要。

发明内容

交互作用情形可能有很多种,且反应于不同的交互作用情形,可能难以模拟出顺畅及自然的运动。因此,本发明涉及一种虚拟物体操作系统及虚拟物体操作方法。

在其中一个示例性实施例中,一种虚拟物体操作方法包括以下步骤。从真实环境获得多个图像。根据图像来确定操作物体的运动。操作物体存在于图像中。根据确定因素来确定与操作物体交互作用的虚拟物体的运动。虚拟物体存在于虚拟环境中,确定因素包括操作物体的运动。

在其中一个示例性实施例中,一种虚拟物体操作系统包括图像拍摄装置以及处理器。图像拍摄装置用于从真实环境获得多个图像。处理器耦接图像拍摄装置。处理器经配置用以:根据图像来确定操作物体的运动;以及根据确定因素来确定与操作物体交互作用的虚拟物体的运动。确定因素包括操作物体的运动,且虚拟物体存在于虚拟环境中。

基于上述,在本发明实施例的虚拟物体操作系统及虚拟物体操作方法中,分析多张图像以判断操作物体的运动。而判断的动作将影响虚拟环境中的虚拟物体的动作。藉此,在未有配戴于用户的操作部位的运动传感器的情况下,也可追踪操作物体的运动。

然而应理解,此发明内容可不含有本发明的所有方面及实施例且并不意在以任何方式进行限制或约束,且所属领域中的普通技术人员会理解且将理解,本文中所公开的发明囊括对本发明的显而易见的改进及润饰。

附图说明

本文包括附图以提供对本发明的进一步理解,且所述附图被并入本说明书中并构成本说明书的一部分。附图示出本发明的实施例,且与本说明一起用于阐释本发明的原理。

图1是示出根据本发明的其中一个示例性实施例的虚拟物体操作系统的框图;

图2是示出根据本发明的其中一个示例性实施例的虚拟物体操作方法的流程图;

图3A是示出真实环境中的操作物体的运动的示意图;

图3B是示出虚拟环境中的虚拟物体的运动的示意图;

图4是示出图像中的位置差异的示意图。

附图标号说明

100:虚拟物体操作系统

110:图像拍摄装置

120:运动传感器

130:显示器

140:存储器

150:处理器

EM:结尾图像

IM:初始图像

MM:中间图像

OO:操作物体

P1、P2、P3:位置

S210、S230、S250:步骤

VO:虚拟物体

具体实施方式

现将详细参照本发明的当前优选实施例,附图中示出所述优选实施例的实例。尽可能地,在附图及说明中使用相同的元件符号指代相同或相似的部件。

图1是示出根据本发明的其中一个示例性实施例的虚拟物体操作系统100的框图。参照图1,虚拟物体操作系统100包括但不限于一个或多个图像拍摄装置110、显示器130、存储器140及处理器150。虚拟物体操作系统100适用于VR、AR、MR、XR或其他现实相关技术。

图像拍摄装置110可为照相机、录像机或其他能够成像的图像传感器。图像拍摄装置110可放置在使图像拍摄装置110可拍摄用户或用户的身体部位的位置。举例来说,当用户穿戴头戴式显示器(head mounted display)(即,虚拟物体操作系统100的一个实施例)时,图像拍摄装置110可被放置在用户眼睛前方的位置且朝向用户的手和/或腿拍摄。作为另一个实例,一个或多个图像拍摄装置110被放置在地板、墙壁或天花板处,且图像拍摄装置110朝向用户拍摄。

在一些实施例中,虚拟物体操作系统100可还包括一个或多个运动传感器120。运动传感器120可为加速度计、陀螺仪、磁强计(magnetometer)、激光传感器、惯性测量单元(inertial measurement unit,IMU)、红外线(infrared ray,IR)传感器或前述传感器的任何组合。在本发明的实施例中,运动传感器120用于感测用户的身体部位的运动,以产生对应的感测数据(例如3自由度(degree of freedom,DoF)/6自由度信息)。身体部位可为手、头、脚踝、腿、腰或其他部分。应注意,运动传感器120可嵌置在手持控制器或可穿戴装置(例如智能手表、脚踝传感器等)中。

显示器130可为液晶显示器(liquid-crystal display,LCD)、发光二极管(light-emitting diode,LED)显示器、有机发光二极管(organic light-emitting diode,OLED)显示器或其他显示器。在本发明的实施例中,显示器130用于显示图像。应注意,在一些实施例中,显示器130可为外部装置(例如智能手机、平板电脑等)的显示器,且外部装置可放置在头戴式显示器的主体上。

存储器140可为任何类型的固定的或可移动的随机存取存储器(Random AccessMemory,RAM)、只读存储器(Read-Only Memory,ROM)、闪存、类似器件或以上器件的组合。在一些实施例中,存储器140记录程序码、器件配置、缓冲数据或永久数据(例如图像、虚拟环境、确定因素、探测结果等),且这些数据将在稍后进行介绍。

处理器150耦接图像拍摄装置110、运动传感器120、显示器130及存储器140。处理器150经配置用以加载存储在存储器140中的程序码,以执行本发明的示例性实施例的过程。在一些实施例中,处理器150的功能可使用可编程单元(例如中央处理器(centralprocessing unit,CPU)、微处理器、微控制器、数字信号处理(digital signalprocessing,DSP)芯片、现场可编程门阵列(field programmable gate array,FPGA)等)来实施。在一些实施例中,处理器150的功能也可由独立的电子器件或集成电路(integratedcircuit,IC)来实施,且处理器150的操作也可由软件来实施。

应注意,处理器150可不与图像拍摄装置110、运动传感器120或显示器130设置在同一装置上。然而,分别配备有这些元件或装置的装置可还包括具有兼容的通信技术(例如蓝牙(Bluethooth)、无线保真(Wi-Fi)、红外(IR))或物理传输线(physical transmissionline)的通信收发器以相互传输/接收数据。

为了更好地理解本发明的一个或多个实施例中提供的操作过程,以下将举例说明若干实施例来详细说明虚拟物体操作系统100的操作过程。在以下实施例中应用虚拟物体操作系统100中的器件及模块来阐释本文中所提供的虚拟物体操作方法。所述方法的每一步骤可根据实际实施情形进行调整且不应仅限于本文中所述的内容。

图2是示出根据本发明的其中一个示例性实施例的虚拟物体操作方法的流程图。参照图2,图像拍摄装置110朝向一个或多个操作物体拍摄以从真实环境获得多个图像(步骤S210)。具体来说,操作物体可为真实环境中的用户的手、腿、脚、脚踝、腰或其他身体部位。操作物体也可为手持控制器、可穿戴器件或真实环境中的任何实体物体。操作物体的定义可基于实际要求改变。然后,可将图像存储在存储器140中,且稍后可由处理器150进行存取。

然后,处理器150根据图像来确定操作物体的运动(步骤S230)。具体来说,处理器150提取图像中的特征(例如颜色、纹理、几何形状等)来识别图像中的操作物体。处理器150可创建与真实环境中所识别的操作物体对应的虚拟环境中的虚拟操作物体。举例来说,在图像中识别手,且将创建化身的虚拟手。处理器150还可在显示器130上显示虚拟环境中的虚拟操作物体。然后,处理器150基于图像的分析结果来估测真实环境中的操作物体的运动。

在一个实施例中,处理器150选择图像中的起始图像,且起始图像拍摄操作物体与虚拟物体之间的交互作用情形的初始状态。虚拟物体可为虚拟环境中的任何物体。举例来说,虚拟物体是虚拟棒球、虚拟篮球、虚拟高尔夫球棍、化身等。交互作用情形可为虚拟物体与虚拟操作物体之间的接触。举例来说,化身的手触摸虚拟高脚杯的柄部。交互作用情形也可为对虚拟物体的选择或锁定行为。举例来说,通过对手持控制器进行选择操作(例如按压实体按钮/虚拟按钮等)来选择虚拟膝上型计算机的顶部盖体(top cover)。作为另一个实例,在图像中识别化身的手的特定手势(例如握持、握手手势等),且特定手势旨在与虚拟枪交互作用。再举一个实例,根据用户的眼睛凝视将虚拟球锁定为目标。应注意,交互作用情形可为操作物体与虚拟物体交互作用的任何其他情形,且实施例且并不仅限于此。

响应于交互作用情形满足触发条件,将拍摄交互作用情形的初始状态的其中一个图像确定为起始图像。触发条件可为虚拟物体与虚拟操作物体之间存在接触,或者接触被解除。触发条件可为探测到对虚拟物体的选择或锁定行为。触发条件还可为探测到特定手势、操作物体的速度小于阈值、探测到特定场景等。初始状态是交互作用情形正好发生时的状态。

然后,处理器150选择图像中的结尾图像,且结尾图像拍摄操作物体与虚拟物体之间的交互作用情形的最终状态。图像将根据它们的拍摄时间点按次序排列。与初始状态相比,最终状态是与初始状态对应的交互作用情形正好结束时的状态。举例来说,初始状态是用户的右手触摸虚拟球的情形,且最终状态是虚拟球被右手投掷出的情形。在一些实施例中,最终状态可为预定义状态。举例来说,预定义状态可为用户的特定姿势、用户的特定手势等。

然后,处理器150可通过对起始图像与结尾图像进行比较来确定操作物体的运动。如果操作物体移动,则操作物体在不同拍摄时间点的不同图像中的位置可能不同。在一个实施例中,起始图像与结尾图像之间的比较结果是位置变化,且操作物体的运动包括操作物体的速度。在一些实施例中,处理器150可计算操作物体在起始图像与结尾图像之间的经过时间及位置变化。处理器150可在起始图像与结尾图像之间对操作物体的位置进行比较,且操作物体从起始图像到结尾图像的位移或轨迹(在下文中称为位置变化路线)将被确定为位置变化。通过连接起始图像及结尾图像中的操作物体的代表点/块来形成位置变化路线。另外,图像拍摄装置110可配置有帧率(frame rate),帧率是图像拍摄装置110拍摄图像的次数,例如每秒30帧、60帧或120帧(fps)。每一所拍摄的图像都存储有它的拍摄时间。处理器150可将起始图像的拍摄时间与结尾图像的拍摄时间之间的时间差确定为经过时间。

然后,处理器150可根据操作物体在起始图像与结尾图像之间的经过时间及位置变化来获得操作物体的平均速度。位置变化可包括相对距离及相对方向(与相对于参考线的角度对应)。相对距离是操作物体在所述两个图像中的两个位置之间的距离。相对方向是操作物体在一个图像中的位置面朝操作物体在另一图像中的位置的方向。然后,可根据位置变化的相对距离除以经过时间的计算结果来确定操作物体的速度。另外,速度的方向将根据两个图像之间的位置变化的相对方向来确定。然后,处理器150可使用操作物体的平均速度作为参考来确定操作物体的运动。

举例来说,图3A是示出真实环境中的操作物体的运动的示意图。参照图3A,虚拟物体操作系统100是头戴式显示器,且操作物体OO是手。假设用户执行投掷运动,且操作物体OO的位置P1、P2及P3在不同的时间点会不同。

图3B是示出虚拟环境中的虚拟物体的运动的示意图。参照图3B,虚拟物体VO是虚拟棒球。设置在头戴式显示器上的图像拍摄装置110朝向操作物体拍摄。处理器150可在显示器130上显示示出与操作物体OO对应的虚拟手抓住虚拟物体VO的图像。示意图显示三个交叠的图像IM、MM及EM以易于理解操作物体OO的位置P1、P2及P3之间的差异。

图4是示出图像中的位置差异的示意图。参照图3B及图4,假设初始图像IM与操作物体OO的使虚拟棒球被虚拟手握持的位置P1对应,且结尾图像EM与操作物体OO的使虚拟棒球正好离开虚拟手的位置P3对应。虚拟手的中心点(即图中的黑点)将是操作物体OO的代表点。将位置P3与位置P1之间的相对距离除以位置P3与位置P1的两个拍摄时间点之间的经过时间,且可根据计算结果来确定操作物体的速度。

在一个实施例中,除了起始图像及结尾图像之外,处理器150还可选择图像中的中间图像,且中间图像拍摄操作物体与虚拟物体之间的交互作用情形的中间状态。中间状态是初始状态与最终状态之间的状态。然后,处理器150可通过对起始图像、中间图像及结尾图像进行比较来确定操作物体的运动。

在一些实施例中,处理器150计算操作物体从起始图像到中间图像的第一经过时间及第一位置变化,且根据操作物体从起始图像到中间图像的第一经过时间及第一位置变化来获得操作物体的第一速度。另外,处理器150计算操作物体从中间图像到结尾图像的第二经过时间及第二位置变化,且根据操作物体从中间图像到结尾图像的第二经过时间及第二位置变化来获得操作物体的第二速度。应注意,位置变化、经过时间及速度的说明可参照前述实施例,且将予以省略。在此实施例中,处理器150还根据操作物体的第一经过时间、第二经过时间、第一速度及第二速度来获得操作物体的平均加速度,且使用操作物体的平均加速度作为参考来确定操作物体的运动。平均加速度将是第一速度与第二速度之和除以第一经过时间与第二经过时间之和的计算结果。操作物体的平均加速度可作为参考来确定由操作物体的运动形成的力。

举例来说,当用户投球时,手的速度可能会改变。中间图像可用于确定手的运动轨迹。作为另一实例,当用户想要打出变向球(breaking ball)时,在球离开手指之前手指滚动球的方式可改变球的飞行路径。

以图3B为例,假设中间图像MM与操作物体OO的使虚拟棒球仍然由虚拟手握持的位置P2对应。操作物体的第一速度可基于操作物体在初始图像IM与中间图像MM之间的第一经过时间及第一位置变化来确定。操作物体的第二速度可基于操作物体在中间图像MM与结尾图像EM之间的第二经过时间及第二位置变化来确定。可确定第一速度与第二速度之间的速度变化。另外,可根据基于第一速度与第二速度的平均加速度来估测由操作物体OO施加的力。

在一个实施例中,处理器150可根据第一位置变化及第二位置变化来获得操作物体的位置变化路线,且使用操作物体的位置变化路线作为参考来确定操作物体的运动。举例来说,位置变化路线将是由第一位置变化及第二位置变化形成的轨迹。

在另一实施例中,处理器150可通过操作物体上的运动传感器120来进一步探测真实环境中的操作物体的运动。探测结果可为加速度、旋转量、磁力、定向或它们的组合。然后,处理器150可使用操作物体的运动探测数据作为参考来确定操作物体的运动。举例来说,处理器150根据运动传感器120的探测结果来校正图像中的操作物体的运动。操作物体的速度可通过对探测结果的加速度进行积分来估测。分别通过拍摄图像分析及运动传感器120的探测结果确定的操作物体的速度可具有权重关系,且处理器150根据权重关系来确定操作物体的最终速度。

回到图2,在确定操作物体的运动之后,处理器150可根据确定因素来确定与操作物体交互作用的虚拟物体的运动(步骤S250)。具体来说,基于操作物体与虚拟物体之间的不同的交互作用情形,虚拟物体的运动可不同。确定因素可包括操作物体的运动。举例来说,操作物体的运动是投掷运动,且虚拟物体的对应运动将是飞行运动。作为另一实例,操作物体的运动是摆动运动,且虚拟物体的对应运动将是旋转运动。然而,操作物体的速度、加速度和/或位置变化路线会影响虚拟物体的运动。在一个实施例中,操作物体移动得越快,虚拟物体移动得越快。相反,操作物体移动得越慢,虚拟物体移动得越慢。操作物体的速度和/或由操作物体形成的力可与虚拟物体的速度具有线性关系、指数关系或其他数学公式关系。应注意,操作物体的速度和/或力可影响移动速度或旋转速度。另外,前述交互作用情形或运动可显示在显示器130上。

在一个实施例中,虚拟物体是由虚拟环境中的用户进行选择。在虚拟环境中,当用户对虚拟物体执行第一运动时,处理器150可向后移动虚拟物体以远离操作物体,或者向前移动虚拟物体以接近虚拟环境中的操作物体。如果用户执行速度比第一运动快的第二运动,则虚拟物体将移动得更快。相反,如果用户执行速度比第一运动慢的第三运动,则虚拟物体将移动得更慢。应注意,上述第一运动到第三运动可为投掷、推、拉、踢、摆动或其他运动。

在一个实施例中,处理器150可进一步获得真实环境中虚拟物体的物理特性,且根据虚拟物体的物理特性修改虚拟物体的运动。确定因素还包括物理特性。物理特性可为质量、体积、形状、摩擦系数等。举例来说,虚拟物体的质量越重,虚拟物体便水平移动得越慢。

在一个实施例中,处理器150通过图像拍摄装置110扫描真实环境中的真实物体以产生扫描结果(例如真实物体的颜色、纹理及几何形状)、根据扫描结果识别真实物体以产生识别结果(例如真实物体的名称或识别符)、根据扫描结果创建与真实环境中的真实物体对应的虚拟环境中的虚拟物体、且根据识别结果确定虚拟物体的物理特性。这意味着虚拟物体在真实环境中具有对应的真实物体。

在另一实施例中,处理器150可确定虚拟物体的至少一个交互特性。确定因素还包括交互特性。交互特性可为操纵点、操纵手势和/或操纵运动。

举例来说,操作物体是手,处理器150可在步骤S230中进一步识别图像中的手的手势,且在步骤S250中根据手的手势修改虚拟物体的运动。作为另一实例,不同的投球抓握方式(pitching grip)可能导致棒球在被投掷时不同的轨迹、旋转量及速度。一种或多种特定手势可用一个或多个特定速度或旋转量变化来定义,且处理器150可根据对应的速度或旋转量变化来修改虚拟物体的运动。

在一个实施例中,处理器150可通过图像拍摄装置110扫描真实环境中的真实物体以产生扫描结果(例如真实物体的颜色、纹理及几何形状)、根据扫描结果识别真实物体以产生识别结果(例如真实物体的名称或识别符)、根据扫描结果创建与真实环境中的真实物体对应的虚拟环境中的虚拟物体、且根据识别结果确定虚拟物体的交互特性。

在又一实施例中,处理器150可在步骤S230中进一步识别虚拟环境中由操作物体接触的虚拟物体上的至少一个操纵点(即接触点)、且在步骤S250中根据操作物体的操纵点修改虚拟物体的运动。在此实施例中,当操纵点与预定义操纵点交会时,确定因素包括至少一个操纵点。每一虚拟物体可在其上面的表面上预定义有一个或多个预定义操纵点。处理器150可跟踪操作物体的运动且判断操作物体是否与虚拟物体接触。响应于操作物体与虚拟物体接触,处理器150根据交互特性判断操纵点是否满足至少一个预定义操纵点。将被接触的操作点或最近的操作点确定为操纵点。另外,可使用一个或多个特定速度、旋转量变化或力来定义一个或多个特定操纵点,且处理器150可根据对应的速度、旋转量变化或力来修改虚拟物体的运动。

在另一实施例中,确定因素包括操纵点,且处理器150识别虚拟环境中由操作物体接触的虚拟物体上的至少一个操纵点。这意味着可操纵虚拟物体的所有表面或几乎所有表面。

在又一实施例中,确定因素包括以下中的至少一者:操纵点、操作物体的加速度、虚拟物体的自旋速度及自旋旋转量。处理器150可识别由虚拟物体接触的操作物体上的一个或多个操纵点、且估测虚拟物体的自旋速度及自旋旋转量中的至少一者。关于投掷虚拟物体,操作物体施加的力、虚拟物体上的操纵点/区域、环境因素(例如风速、风向等)可影响虚拟物体的运动(例如自旋速度、自旋旋转量等)。举例来说,为了打出变向球,抓握球的方式的改变、手施加的力、风速和/或风向可导致打出不同类型的变向球。

综上所述,根据本发明实施例的虚拟对象物体系统及虚拟物体操作方法,可根据获取图像分析追踪真实环境中操作对象的运动。可回溯获取时间点,以比较至少两张图像当中的差异。接着,在虚拟环境中与操作物体互动的虚拟物体的运动将受被追踪的操作物体的运动所影响。藉此,可提供基于运动追踪方法的图像识别。

对于所属领域中的技术人员来说显而易见的是,在不背离本发明的范围或精神的条件下,可对本发明的结构作出各种修改及变化。有鉴于以上所述,本发明旨在涵盖本发明的修改及变化,只要其落于以下权利要求及其等效范围的范围内即可。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号