CN102681661A - 在玩游戏中使用三维环境模型 - Google Patents

在玩游戏中使用三维环境模型 Download PDF

Info

Publication number
CN102681661A
CN102681661A CN2012100215790A CN201210021579A CN102681661A CN 102681661 A CN102681661 A CN 102681661A CN 2012100215790 A CN2012100215790 A CN 2012100215790A CN 201210021579 A CN201210021579 A CN 201210021579A CN 102681661 A CN102681661 A CN 102681661A
Authority
CN
China
Prior art keywords
depth
model
camera
degree
intensive
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2012100215790A
Other languages
English (en)
Other versions
CN102681661B (zh
Inventor
S·伊扎迪
D·莫利尼奥克斯
O·希利格斯
D·金
J·D·J·肖顿
P·科利
A·费茨吉本
S·E·豪杰斯
D·A·巴特勒
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of CN102681661A publication Critical patent/CN102681661A/zh
Application granted granted Critical
Publication of CN102681661B publication Critical patent/CN102681661B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/52Controlling the output signals based on the game progress involving aspects of the displayed game scene
    • A63F13/525Changing parameters of virtual cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/213Input arrangements for video game devices characterised by their sensors, purposes or types comprising photodetecting means, e.g. cameras, photodiodes or infrared cells
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
    • A63F13/65Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor automatically by game devices or servers from real world data, e.g. measurement in live racing competition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/10Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals
    • A63F2300/1087Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals comprising photodetecting means, e.g. a camera
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/6009Methods for processing data by generating or executing the game program for importing or creating game content, e.g. authoring tools during game development, adapting content to different platforms, use of a scripting language to create content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30244Camera pose

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Software Systems (AREA)
  • Geometry (AREA)
  • Computer Graphics (AREA)
  • Processing Or Creating Images (AREA)
  • User Interface Of Digital Computer (AREA)
  • Image Processing (AREA)
  • Position Input By Displaying (AREA)
  • Image Analysis (AREA)

Abstract

描述了在玩游戏中使用3D环境模型。在一实施例中,随着移动深度相机四处移动,该移动深度相机被用于捕捉一系列深度图像并且从这一系列深度图像中生成环境的密集3D模型。该密集3D模型被合并到交互式应用(诸如游戏)中。移动深度相机随后被放置在静态位置以用于交互式阶段,在某些示例中是玩游戏,且***从由相机捕捉的第二系列的深度图像中检测用户在环境的一部分中的运动。这一运动向交互式应用(诸如游戏)提供了用户输入。在其他实施例中,可执行3D模型中的对象的自动识别和标识,并且这些所标识的对象随后改变交互式应用操作的方式。

Description

在玩游戏中使用三维环境模型
技术领域
本发明涉及计算机应用,尤其涉及游戏应用。
背景技术
已经开发了使用诸如摄影机或深度相机之类的相机来检测用户的移动或用户所持的控制器的移动并因此允许用户与游戏进行交互的游戏***。为了检测用户的位置/运动,相机所捕捉的图像被分割以选择前景(用户)并移除背景。用户随后可以在在游戏本身内创建的环境中与游戏中的角色或对象交互,该环境完全与用户的实际环境分开。
以下描述的各实施例不限于解决已知游戏***的缺点中的任一个或全部的实现。
发明内容
下面呈现了本发明的简要概述,以便向读者提供基本理解。本发明内容不是本发明的详尽概述,并且不标识本发明的关键/重要元素,也不描述本发明的范围。其唯一的目的是以简化形式呈现此处所公开的精选概念,作为稍后呈现的更详细的描述的序言。
描述了在玩游戏中使用3D环境模型。在一实施例中,随着移动深度相机四处移动,该移动深度相机被用于捕捉一系列深度图像,并从该一系列深度图像中生成环境的密集(dense)3D模型。该密集3D模型被合并到交互式应用中,诸如游戏中。移动深度相机随后被置于静态位置以用于交互式阶段(在某些示例中是玩游戏),且***从相机捕捉的第二系列深度图像中检测用户在该环境的一部分中的移动。这一移动将用户输入提供给交互式应用(诸如游戏)。在其他实施例中,可执行对3D模型中的对象的自动识别和标识,并且这些所标识的对象随后改变交互式应用操作的方式。
通过结合附图参考以下具体实施方式,可更易于领会并更好地理解许多附带特征。
附图说明
根据附图阅读以下具体实施方式,将更好地理解本发明,在附图中:
图1示出站在房间中并且持有移动深度相机的人的示意图,该移动深度相机可被用于生成该房间的3D模型;
图2示出由持有移动深度相机的人来探测的建筑物某层的平面视图;
图3是图1中所示的交互式计算***的操作的示例的流程图;
图4和5是连接到交互式计算***的移动深度相机的示意图;
图6示出交互式计算***的操作的一部分的流程图,该流程图涉及使用图5中示出的对象识别模块;
图7示出校准定点设备的已知方法和自动校准方法两者的示意图;
图8是与图1中示出的安排类似的但具有多个深度相机的安排的示意图;
图9是多个深度相机的自动校准的示例方法的示例流程图;
图10示出可在其中实现本文所描述的各种方法的各实施例的示例性的基于计算的设备;
图11是帧对齐引擎处的示例迭代过程的流程图;
图12是更详细地示出计算对应点的对的步骤的流程图;
图13是用于生成3D环境模型的可并行化过程的示例的流程图;以及
图14示出了示例可并行化的、带符号的距离函数计算。
在各个附图中使用相同的附图标记来指代相同的部件。
具体实施方式
下面结合附图提供的具体实施方式旨在作为本发明示例的描述,并不旨在表示可以构建或使用本发明示例的唯一形式。本描述阐述了本发明示例的功能,以及用于构建和操作本发明示例的步骤的序列。然而,可以通过不同的示例来实现相同或等效功能和序列。
图1是站在房间中的且持有移动深度相机102的人100的示意图,该移动深度相机102与交互式计算***103(诸如游戏***)通信(且可被认为形成交互式计算***103的一部分)。该房间包含各种对象106(诸如椅子、桌子、门、窗、植物和灯)、另一个人104、显示器105和一只猫108。显示器105可例如是电视机或计算机监视器,或者可另选地是能够显示交互式计算***103的图形用户界面(GUI)的任何其他形式的显示器,包括结合了显示器或投影显示器的眼镜。对象106中的许多是静态的,但这些对象中的一些可以移动,如人100、104和猫108。随着持有移动深度相机102的人100在房间中四处移动或者静止站立着的同时使移动深度相机102移动,该移动深度相机捕捉房间和对象的深度图像。
移动深度相机102与密集3D环境建模***110(在这种情况下环境是房间)通信,该3D环境建模***110可以是交互式计算***103的一部分。“密集”在该示例中指的是从使用来自传入深度图的全部或许多点以隐式地描述表面中所得的模型的高度准确性和分辨率。这可与“稀疏”模型相反,“稀疏”模型仅取点的子集来加速计算和减少存储器占用(footprint)。例如,使用由移动深度相机102捕捉的图像来随着人在房间里四处移动或将移动深度相机102四处移动来形成和构建环境的密集3D模型。实时相机跟踪***112监视相机102在房间中的位置和方向。实时相机跟踪***112可与移动深度相机102集成,或者可以处于另一位置,诸如作为交互式计算***103的一部分。不管实时相机跟踪***112位于何处,它都能够直接或间接地接收来自移动深度相机102的通信。在一示例中,实时相机跟踪***112可被提供在作为交互式计算***103的一部分的计算设备处,并且可与移动深度相机102进行无线通信。在其他示例中,实时相机跟踪***112可以处于建筑物中的别处或处于使用任何合适类型的通信网络与移动深度相机102进行通信的另一远程位置。
实时相机跟踪***112向密集3D建模***提供输入,以允许各单独的深度图像被构建到总体3D模型中。实时相机跟踪***112还可跟踪相机相对于环境的3D模型的位置。相机跟踪和3D建模的组合被称为同时定位和绘图(SLAM)。
实时相机跟踪***112和密集3D建模***110的输出可被集成引擎114使用,集成引擎114可包括游戏引擎、增强现实引擎或实现环境的密集3D模型的至少一部分到应用的集成的任何引擎。例如,集成引擎可使得用户能够与交互式应用(可以是游戏)交互。例如,被建模的真实世界对象可被包括在游戏(或其他交互式)环境中,这在下文中更详细地描述。在另一示例中,移动深度相机102处的投影仪可被安排取决于实时相机跟踪***112和3D建模***110的输出来投影图像。
作为另一示例,图2示出建筑物某层200的平面视图。持有移动深度相机204的人202正如虚线箭头208所示在该层四处移动。此人沿走廊206走过各个房间和家具210。实时相机跟踪***112能够在移动深度相机204移动时跟踪它的位置,并且3D建模***生成该层的3D模型或图。人202携带移动深度相机204不是必要的。在其他示例中,移动深度相机204被安装在机器人或运载工具上。这也适用于图1的示例。
在图3中示出交互式计算***103的操作的示例的流程图。随着移动深度相机102在环境(诸如图1所示的房间)中四处移动,从移动深度相机102接收一系列深度图像(框302)。随后使用这一系列的深度图像来生成环境的密集3D模型(框304),随后将该3D模型(或模型的一部分)集成到交互式应用内,该交互式应用在交互式计算***上运行并且用户可以与其进行交互(框306)。在交互式计算***103是游戏***的情况下,交互式应用是游戏且3D模型(或其一部分)被集成到游戏中。一旦3D模型被集成到了游戏中,该模型就可对用户可见或者可在游戏内使用但不对用户可见。环境的密集3D模型(也可被称为密集3D背景模型)的生成可被认为是交互式计算***的操作的第一阶段(如虚线框31所指示的),并且可离线执行或作为应用(例如,游戏)的一部分实时地执行或作为分开的活动(例如,作为游戏或游戏***的设置阶段)。
当相机处于静态时,随后从移动深度相机102接收第二系列深度图像(框308),使用这第二系列深度图像来用3D动态地跟踪相机的视野(FOV)内的实时移动,该实时移动将仅表示在第一阶段被建模的环境区域(例如,仅仅是房间的一部分)(框310)该环境区域可被称为‘感兴趣的区域’,并且在某些实现中,在这一***操作阶段期间存在移动深度相机的定义的固定位置(例如,在图1所示的显示器105以上或以下)。在环境的一部分中的实时传感(框308和310)可被认为是交互式计算***的操作的第二阶段(如虚线框32所指示的)。实时移动数据作为输入被提供给交互式应用,该实时移动数据可包括原始数据或经处理的数据(诸如关于所标识的用户姿势的数据)(框312)。还可(实时地或稍后)使用第二系列深度图像来更新先前生成的3D模型(框314),经更新的模型(或经更新的模型的各方面)随后可被反馈回到应用中(如从框314到框306的虚线箭头所指示的)。
将环境的详细模型(可被认为是背景)合并到交互式应用(诸如游戏)中提升了总体用户体验并且可增加交互的真实性。例如,在用户与交互式应用中的虚拟对象(诸如球)交互的情况下,可基于密集3D模型来适应球的移动和行为。如果用户对着墙或其他对象踢虚拟球,则交互式应用可基于密集3D模型来修改虚拟球的行为(如应用的GUI中所示),以使得球看上去从墙弹回来。在另一示例中,如果用户对着房间内的较小的(真实)对象踢虚拟球,则球可能不一定弹回来,但可遵循虚拟球对真实对象的虚拟影响来改变虚拟球的轨迹。在确定虚拟球的所得运动时可使用特定的较小的真实对象的特性,如下文更详细地描述的。还可将环境的其他方面合并到交互式应用中,诸如来自真实光源(例如,图1的台灯或窗)的光、来自对象(例如,图1中的植物)的阴影等。
另外,将环境的详细模型合并到交互式应用(诸如游戏)中可提供新的用户体验。例如,在用户自己家里(例如,在第一阶段已经被捕捉的他们的起居室中)玩的微型规模的飞行模拟游戏(例如,用户在模拟的微型飞机中飞行)。在另一示例中,交互式应用(诸如游戏)可将房间变换成森林或其他替换环境,例如,带有从沙发上滚降的瀑布的环境等等。在其他示例中,交互式应用(诸如游戏)可使得用户能够将他们自己的家合并到模拟游戏中。在又一示例中,将详细模型合并到交互式应用中可使得用户能够在实际对家庭装饰作出改变(例如,将墙刷成不同的颜色、改变地毯的颜色、拆除一面墙等)或购买新的家具之前尝试对房间的虚拟表示内家庭装饰的改变、新家具等。在一种实现中,交互式应用可由家庭家具店来提供(例如,经由他们的网站),以使得你可以在创建集成到应用中的模型时导入要使用的深度数据,然后从商店向虚拟场景导入各项。
图1所示的***包括单个深度相机(移动深度相机102),而图3所示的方法允许使用单个深度传感设备来创建环境的详细3D模型并且还允许3D地跟踪更大的环境的区域内的实时移动。这提供了比包括多个深度传感设备的***成本更低的***。图3的方法还可结合包括多个深度相机的***来使用,这将在下文中结合图8更详细地描述。
图4是用于实时相机***416、密集模型形成***424和集成引擎432(可以是游戏引擎)的移动环境捕捉设备400的示意图。移动环境捕捉设备400包括深度相机402,深度相机402被安排成捕捉场景的深度图像序列(或系列)。稍后对深度相机的引用指的是单独的深度相机或作为如图4所示的移动环境捕捉设备的一部分的深度相机。取决于用于深度传感的技术,深度相机可能需要附加的组件(例如,在深度相机402检测到红外结构化光图案的情况下,需要发射器404),尽管这些附加的组件可能不一定与深度相机位于同处。
每一深度图像414(或,深度图帧)包括二维图像,该二维图像中的每一图像元素(即,像素)包括诸如从相机到所捕捉的场景中的造成了该图像元素的对象的长度或距离等深度值。这一深度值可以是以指定测量单位(如米或厘米)来提供的绝对值,或可以是相对深度值。在每一捕捉到的深度图像414中,存在大约300,000或更多个图像元素,每一图像元素具有深度值。深度相机402的帧速率足够高以能够将深度图像用于运转中的机器人、计算机游戏或其他应用(例如,每秒20帧或更高)。
深度信息可以使用任何合适的技术来获得,包括但不限于飞行时间、结构化光、以及立体图像。移动环境捕捉设备400还可包括被安排成以可由深度相机402查明深度信息的方式来照亮该场景的发射器404。
例如,在深度相机402是红外(IR)飞行时间相机的情况下,发射器404将IR光发射到该场景上,并且深度相机402被安排成检测从该场景中的一个或多个对象的表面反向反射的光。在一些示例中,可以从发射器404发出脉冲红外光,使得外出光脉冲与对应的传入光脉冲之间的时间可由深度相机来检测和测量,并被用来确定从环境捕捉设备400到场景中的对象上的位置的物理距离。另外,在一些示例中,可将来自发射器404的出射光波的相位与入射光波的相位在深度相机402处进行比较来确定相移。随后经由包括例如快门式光脉冲成像的各种技术通过分析发射光束随时间的强度来将相移用于确定从移动环境捕捉设备400到各对象上的位置的物理距离。
在另一示例中,移动环境捕捉设备400可使用结构化光来捕捉深度信息。在这种技术中,可使用发射器404将图案化光(例如,显示为诸如斑点、网格、或条形图案等已知图案的光,它也可随时间变化)投影到场景上。在撞击到场景中的对象表面时,图案从捕捉该图案的深度相机402的视角变形。分析所捕捉的图案的变形来确定从深度相机402到场景中的对象的绝对或相对距离。
在另一示例中,深度相机402包括一对立体相机,以便获得并解析视觉立体数据来生成相对深度信息。在这种情况下,发射器404可被用来照亮场景或可被省略。
在某些示例中,除了深度相机402之外,移动环境捕捉设备400包括被称为RGB相机406的彩色摄像机。RGB相机406被安排成在可见光频率处捕捉场景的图像序列。
移动环境捕捉设备400可包括定向传感器408,诸如惯性测量装置(IMU)、加速计、陀螺仪、罗盘或其他定向传感器408。然而,使用定向传感器不是必要的。移动环境捕捉设备400可包括诸如GPS等位置跟踪设备,但这不是必须的。
移动环境捕捉设备可包括如上所述的投影仪412,尽管这并非必需。移动环境捕捉设备还包括一个或多个处理器、存储器和通信基础结构,如下文更详细地描述的。移动环境捕捉设备可以在外壳中提供,该外壳的形状和大小制定成由用户手持或由用户佩戴。在其他示例中,移动环境捕捉设备的大小和形状被制定成被合并或安装在运载工具、玩具、或其他可移动装置上。还可使得移动环境相机成形以使得在固定(或静态)位置中(例如,在第二阶段中,图3的框32)操作时它可被放置在表面或支架上。
移动环境捕捉设备400连接到实时***416。这一连接可以是物理有线连接或可以使用无线通信。在一些示例中,移动环境捕捉设备400通过诸如因特网等一个或多个通信网络间接连接到实时***416。
实时***416是通过使用通用微处理器控制一个或多个图形处理单元(GPU)或其他并行计算单元而计算机实现的。它包括帧对齐引擎418并且可任选地包括环闭合引擎420和重新定位引擎422。实时***416从深度相机402获得深度图像帧,并还可任选地从移动环境捕捉设备400获得输入,并可任选地获得地图数据434。实时***416可用于使深度图像帧在空间对齐,以产生深度相机402的六自由度(6DOF)姿势估计的实时系列428。它还产生各对深度图像帧之间的变换的变换参数。在一些示例中,实时***操作来自深度相机的各对深度图像帧414。在其他示例中,实时***416采用单个深度图像414并将它与该环境的密集3D模型426对齐而非与另一深度图像对齐。在与本申请同一天提交的题为‘使用深度图的实时相机跟踪’的共同待批的美国专利申请中描述了实时跟踪的方法的示例。下面还将参考图11和12来简要描述该方法。
实时***416将相机姿态作为输出提供给密集3D模型生成***424,密集3D模型生成***424将该信息与深度图像帧一起使用来形成和存储移动环境捕捉设备400在其中移动的场景或环境的密集3D模型426。例如,在图1的情况下,3D模型将是房间中的表面和对象的3D模型。在图2的情况下,3D模型将是建筑物的该层的3D模型。密集3D模型可被存储在GPU存储器中。在与本申请同一天提交的题为‘三维环境重构’的共同待批的美国专利申请中描述了密集3D模型生成的方法的示例。下面还将参考图13和14来简要描述该方法。在SIGGRAPH′96上发布的由Curless和Levoy撰写的题为‘用于从范围图像中构建复杂模型的容量法’论文的方法中描述了密集3D模型生成的方法的另一示例。
在一个示例中,实时***416和/或密集3D模型形成***424所执行的处理可以离开移动环境捕捉设备400的位置而远程执行。例如,移动环境捕捉设备400可被连接到(或包括)具有相对低处理能力并且通过通信网络将深度图像流传送到服务器的计算设备。该服务器具有相对高的处理能力,并且执行实时***416和/或密集3D模型形成***424的在计算上复杂的任务。该服务器可以逐帧返回密集重构(dense reconstruction)的已渲染图像以向用户提供交互体验,并且在模型完成时还返回最终密集3D重构以供后续本地使用(例如,在游戏中使用)。这样的安排避免了用户对拥有高能力本地计算设备的需要。
为了协助用户构建密集3D模型,可将反馈以密集3D模型的实时渲染的形式提供给用户。这使得用户能够在密集模型被构建时查看该密集模型的状态,从而协助用户捕捉已经被遗漏的区域。可将色彩和/或纹理叠加到渲染上以便向用户指示环境中的哪些区域需要更多的数据。这为用户提供了更交互的体验。还可向用户提供音频或视觉提示以将他们引导至被遗漏的区域或在密集3D模型中质量较差的区域。
移动环境捕捉设备400可结合连接到显示设备430的集成引擎432(可以是游戏引擎)使用。例如,游戏可以是第一人称射击(FPS)游戏、高尔夫游戏、拳击游戏、摩托车赛车游戏或其他类型的计算机游戏。密集3D模型可被提供给集成引擎432,且模型的各方面被合并到游戏中,如上文参考图3所描述的。例如,3D模型可用于确定房间中对象的形状和位置,这些对象随后可被合并到游戏本身中作为玩家可与其进行交互的游戏中对象,或者游戏中的虚拟对象可与环境中的对象(虚拟地)交互(例如,玩家踢的虚拟球在击中房间的墙或环境中的其他对象之后可能看上去弹回来)。集成引擎432在第二阶段期间(例如,在集成引擎是游戏***的情况下的玩游戏期间)还使用所捕捉的深度图像来3D地跟踪在感兴趣区域中的实时移动并使用该移动作为到应用(诸如游戏)的输入。使用深度图像414来跟踪实时移动可使用已知技术来执行,该已知技术诸如由基于样本(exemplar)的身体部位识别所遵循的背景移除(例如,如在2009年5月1日提交的题为‘人类身体姿态估计’的共同待批的美国专利申请中描述的,公开号为US2010-0278384-A1)。还可将来自集成引擎432的诸如关于游戏的游戏状态或元数据等的数据提供给实时***416。
可任选地,图数据434对实时***416是可用的。例如,这可以是架构师对该环境(例如,房间或建筑物的层)的绘图、该环境中已知的地标的位置、可从另一源获得的该环境的图。
实时***的帧对齐引擎418被安排成对齐各对深度图像帧,或深度图像帧和来自密集3D模型的深度图像帧的估计。它使用迭代过程,该迭代过程是用一个或多个图形处理单元来实现的,以使帧对齐引擎实时操作。循环闭合引擎420被安排成检测移动环境捕捉设备何时移动到循环中,以使得当前深度帧中描绘的场景与先前的深度帧中描绘的场景至少部分地重叠。例如,这可在用户在图2中的建筑物的整层四处走动并再次到达起始点时发生。这也可以在用户在房间四处移动至某家具背后并再次出来到原始起始位置或接近该原始起始位置时发生。重新定位引擎422被安排成处理以下情况:实时***失去移动环境捕捉设备400的当前位置并且重新定位或再次找出当前位置。
如上所述,在一个示例中,实时***416和/或密集3D模型生成***424所执行的处理可以在移动环境捕捉设备400的位置的远程处执行。例如,移动环境捕捉设备400可被连接到(或包括)具有相对低处理能力并且通过通信网络将深度图像流传送到服务器的计算设备。服务器具有相对高的处理能力,并且执行实时***416和/或密集3D模型生成***424的在计算上复杂的任务。该服务器可以逐帧返回密集重构(dense reconstruction)的已渲染图像以向用户提供交互体验,并且在模型完成时还返回最终密集3D重构以供后续本地使用(例如,在游戏中使用)。这样的安排避免了用户对拥有高能力本地计算设备的需要。
在上述***和方法中,基于在移动深度相机运动的同时所捕捉的深度图像来构造的密集3D模型(阶段1,图3中的框31)被集成到在交互式计算***上运行的应用中,且一旦移动深度相机被安置并因此变为静态时,用户可通过被检测的运动来与应用(以及环境)交互(阶段2,图3中的框32)。在某些示例中,***可向用户提供关于如何在阶段1中移动移动深度相机的指令,而在其他示例中,用户可以用任何方式自由地移动移动深度相机。在上述***和方法的一种变型中,交互式计算***还可包括对象识别模块502,如图5的示意图所示。由该模块502从3D模型中识别出的对象可包括有源对象(诸如显示设备430或其他***设备504,诸如扬声器、投影仪、光源等)和无源对象(诸如家具项)。
图6示出涉及使用对象识别模块502的交互式计算***的操作的一部分的流程图。该方法例如可形成将3D模型集成到图3中的应用中的步骤(框306)的一部分,或者可由集成引擎在这一步骤之后执行。分析3D模型(如由密集3D模型生成***424所生成的)(框602)来寻找可识别的对象。这可以例如通过寻找所生成的模型中的特定特征或者将模型的各部分与所存储的模板进行比较来执行,其中这些模板或特定特征可被存储在对象数据库506中。在一示例中,通用‘电视机’模板可被存储,该模板定义了电视机的近似形状(例如,大约10cm深且具有大约16∶9的宽高比)。可使用任何合适的图像分析或机器学习方法来执行该分析(框602中),而在某些示例中,训练数据可被存储在对象数据库506中。
取决于密集3D模型的分辨率,对象识别模块502能够标识压纹的或镌刻的产品徽标以协助对象标识(例如,戴尔(商标)徽标可指示计算机或计算机显示器)。在移动环境捕捉设备400包括除了深度相机402之外的可任选的RGB相机406(如图4所示)的情况下,RGB图像可结合3D模型来使用以执行对象识别(例如,用于徽标检测或读取条形码或产品ID)。在要被识别的对象包括显示器(诸如电视机、计算机监视器或移动电话)的情况下,可在扫描的同时在设备上显示已知的特定图案(且在设备在***的控制之下的情况下,该已知的图案可由***输出到设备),以使得它可被容易地用RGB来检测出。类似地,对于投影仪,投影仪可独立地或在***的控制下输出已知图案(可任选地随着时间变化),且可通过在世界中寻找该RGB图案来确定投影仪在房间中的位置(例如,通过使用从深度重构中所知的房间几何图形)。在某些***中,可使用标记物(例如,红外反射性标记物)来协助对象识别/分类。
当对象已被识别时(框604中的‘是’),关于该对象的数据被输入到在集成引擎432上运行的应用中(框606),该应用可以是例如在游戏***上运行的游戏。关于该对象的这一数据可例如包括对象类型(例如,‘电视机’或‘显示器’)和(例如,相对于移动深度相机或移动环境捕捉设备400的当前位置的)位置信息。随后基于所标识的对象来调整应用执行(或操作)(框608)。
存在可基于所标识的对象来调整应用执行(或操作)(框608中)的许多不同的方式,且这可取决于已经被标识的对象的类型。当对象是有源对象(诸如扬声器)时,可调整交互式计算***的音频输出(框681)以将扬声器的位置和间隔考虑在内。以此方式,***能够模拟环绕声***的效果,或者真实的环绕***能够使用完整的3D房间重构来校准和优化其输出。在某些示例中,当标识了多个扬声器时,执行附加步骤可能是需要的,诸如按顺序从每一扬声器发出声音以在来自交互式计算***的音频输出与所检测的扬声器对象的音频输出之间进行区分(移动环境捕捉设备400可任选地包括未在图4中示出的麦克风)。在某些情形中,这可能不是必须的,因为这一信息可以从所检测的扬声器对象的大小/形状和/或从扬声器的相对定位中推断出。对扬声器的检测和稍后对环绕声的模拟可例如用于提高游戏的真实性或增加的真实性环境。
有源对象的另一示例是显示设备430本身,并且可以使用相机和显示器的相对位置的知识来执行对定点设备的自动校准(框682),如参考图7所述的。在许多已知***中,为将定点设备与显示器702校准,在在显示器的每一角落中显示的十字线704(或其他标记物)处点击(且可能在点击的同时按压按钮)是必要的,如图7的上半部图所示。然而在所述***中,集成引擎知道深度相机712、显示器714和定点设备716(诸如在玩球类游戏时的球拍或在玩FPS游戏时的模拟武器)的相对位置,因此可以(例如,通过使用三角法)计算用户在显示器上点击的位置(由图7的下半部的图中的箭头718所标记),而不需要初始校准阶段(如图7的上半部的图所示)。此外,基于已经生成的环境的密集3D模型,集成引擎还可确定用户正在指向环境中的什么,即使用户并未指向显示器。这可以例如使得用户能够选择在移动深度相机在其静态位置(在阶段2中)的视野外部的真实对象(例如,通过指向它)并将其导入到游戏中作为游戏中对象。
在图7所示的且如上所述的一种变型中,该方法可用于确定用户正看着环境中的哪里。由于***知道深度相机和显示器的相对位置以及用户的头和眼睛的相对位置,该***可执行头部跟踪以使得通过移动他们的头用户可四处查看GUI。这提供了用于探索游戏中的虚拟环境或增加的真实性应用的非常真实且直观的界面。
在另一示例中,可例如基于所标识的对象来调整应用的GUI(框683),其中识别出光源(诸如图1所示的台灯或窗),可调整GUI以模拟源自光源的所标识的位置的所显示的场景中的附加的光。当所检测的对象是窗时,GUI可被适应以调整可能从通过该窗的阳光中预期的任何闪光(例如,基于一天中的时间和一年中的时间)或者模拟如先前示例中的附加的光。
可以理解,扬声器和显示器仅仅是有源对象的两个示例,且***可识别其他有源对象并随后调整来自应用至该有源对象的输出(框608中)。可基于该有源对象的所检测的位置和/或其他对象的所检测的位置来调整至有源对象的输出(框685中)。
在其他示例中,设备可以是所标识的有源对象,诸如投影仪,且可基于它所确定的相对于环境中所标识的其他对象的位置来调整投影仪的输出。这消除了对校准阶段的需要,且意味着***可基于所标识的有源对象的所检测的位置来自动适应以校准本身。投影仪可投影可视图像(或其他GUI),且可基于投影仪的已知位置及其与图像将被投影到的表面的相对位置来调整这些可视图像,例如,以补偿表面不平整或相对于投影仪成角度。还可基于投影仪的已知位置来为投影生成图像,以向用户提供更身临其境的环境并将显示从主显示器中延伸,主显示器可以是所投影的显示或在电视机上示出的显示、计算机监视器或其他显示屏幕。具体地,可实时地将所投影的图像适应到用户的位置(例如,他们的脸和眼睛的位置),以使得实现3D效果并且图像可被投影到任意的表面几何图形上。
在另一示例中,投影仪可投影供在深度检测中使用的结构化光图案,且可基于投影仪的已知位置(例如,相对于移动深度相机的当前位置)来改变所投影的结构化光图案(框685中)。在投影以某一角度击中平面的情况下,图像可能预先变形以便补偿投影图像的任何透视变形(也被称为梯形效应)。在一示例中,按两个步骤来使图像预先变形。第一,从与投影表面中心垂直的位置将表面与2D投影图像在投影上纹理化到所捕捉的3D模型中。随后使用与投影仪共享相同非本征和本征透镜参数的虚拟相机将纹理化的3D表面投影回2D图像。投影相对于用户(而非平面)而言可能是未变形的,这允许***在任意的不平坦表面上校正变形。可通过从用户的所估计的眼睛位置在投影上将表面(即使是不平坦的)纹理化到所捕捉的3D模型中来修改上述技术。
上述示例都是有源对象;然而,还可基于对无源对象的检测来调整应用执行,该无源对象诸如家具项或实际上其他动画对象(诸如图1所示的其他人104或猫108)。当用户正与虚拟对象(诸如球)交互时并且扔/踢该虚拟对象,集成引擎内的物理引擎可被调整(框684)以更准确地模拟虚拟对象和真实对象之间的交互。如果虚拟球从墙弹回来,它可能比从诸如沙发(也被称为沙发椅)等更软的对象弹回来移动得更快。如果虚拟球意外地接触到了台灯106或真实的猫108,则集成引擎可模拟近似的声效并向用户播放(例如,打碎玻璃的声音或猫的‘喵喵’叫声)。
尽管上述对象识别在开始玩游戏(或阶段2中的其他用户交互)之前执行,但对象识别可另外地或替换地基于当深度相机处于静态时生成的第二系列的深度图像来执行(如图3的框308中所接收的)。在这样的示例中,用户与对象交互的方式可用于识别或分类对象,且这可使用基于样本的身体部位识别方法或其他方法。例如,用户坐在其上的对象可由对象识别模块502标识为椅子或沙发。
可以理解,可基于上述所标识的对象来调整或适应应用执行(框608中)的方式仅仅提供了某些示例。一旦从密集3D模型中标识了对象并将这一信息反馈到适合的引擎/模块,存在作出调整以提升用户体验并增强用户与应用的交互的真实性的许多方式。
上述***仅包括单个深度相机、移动深度相机102、204、402,然而其他示例***还可包括一个或多个附加的深度相机802-806,如图8所示,且在这样的示例***中也可使用上述方法(例如,如图3和6所示)。***中的深度相机102、802-806中的每一个可以是相同的或者它们可以是不同的(例如,它们可具有不同形状的视野,它们可包括广角、短距和长距深度相机的组合和/或它们可包括使用不同技术的相机,诸如结构化光、飞行时间、立体声、激光测距仪等)。附加的深度相机802-806可以是静态相机,并因此可具有对移动深度相机102的不同形状的外壳,或者附加的深度相机802-806中的一个或多个也可以是移动深度相机。每一深度相机都使用有线或无线连接连接到交互式计算***。
在这样的***的一种实现中,移动深度相机102可单独用于生成环境的密集3D模型(在图3的框304中)或者可使用从多个深度相机接收的一系列图像。此外,在第二阶段中(框32),来自所有深度相机102、802-806或这些相机的子集的图像可用于3D地跟踪实时移动(在图3的框310中)。在一示例中,为每一深度相机运行分开的实时身体部位识别,且使用具有最高置信度值的***的结果,以便补偿家具、其他用户或用户本身导致的对用户的遮挡。
在包括多个深度相机的***的一种实现(诸如图8所示)中,图6所示的方法可用于检测附加的深度相机802-806的在场和位置,并基于它们所确定的位置来调整应用执行(在图6的框608中)。另外,每一静态相机可单独地跟踪用户以便确定其相对于用户的方向。可使用这一知识来解析关于相机相对于其他静态相机的位置的任何不清楚。在该示例中,调整应用执行可包括基于已知相机位置来执行***的自动校准,且这一校准可在实时地检测运动时使用(例如,在图3中的框32的操作的第二阶段中,其中使用来自多个深度相机的一系列图像)。
在深度相机不完全相同的情况下,除了相机的在场和位置之外,(图6的)对象识别可用于检测相机的类型。如上所述,在移动深度相机作为还包括RGB相机的移动环境捕捉设备(例如,如图4所示)的一部分的情况下,由RGB相机捕捉的图像也可用于对相机的类型的标识。在其他示例中,其他特性可用于标识相机的类型,诸如特定的标记物或设备上的标签(例如,红外反射性标记物)。
在另一种变型中,基于多个深度相机的所确定的位置(或相对位置)的自动校准可通过比较3D模型来执行。图9是多个深度相机的自动校准的示例方法的流程图,其中使用从每一深度相机(框902中)接收的一系列深度图像来生成分开的密集3D模型(框904中),该方法包括一个移动深度相机的情况。可使用该系列中的所有图像或来自图像的子集(例如,以减少所需的计算)来生成模型。一旦生成了模型,随后将各个模型进行比较以标识在一个以上的模型中可见的公共特征集(框906),并且基于在两个或更多个模型中的公共特征集的标识,可计算与每一模型相关联的相机的相对位置(框908)。在一示例中,在环境包括交错的表面(诸如其上具有多个对象的咖啡桌)的情况下,这样的特征为计算相机的相对位置提供了良好的基准点,因为在对象的安排中几乎不可能或不存在对称性。在图9所示的方法的一种实现中,对公共特征集的标识可通过标识第一模型(诸如交错的咖啡桌)中的特定特征的安排并然后检测每一其他模型以确定相同的特征安排是否在该模型中可见来实现。在一示例实现中,可在稀疏兴趣点处从每一个模型中提取描述符向量,然后将这些描述符向量进行匹配以给出不同模型之间的初始对应关系。最后,对基准帧之间(例如,在比较两个模型的情况下的两个基准帧之间)的变换执行某种优化以将它们对齐。
图10示出了示例性的基于计算的设备1000的各种组件,该设备可以实现为计算和/或电子设备中的任何形式,且其中可以实现此处所描述的方法中的任何方法的实施例。
基于计算的设备1000包括一个或多个处理器1002,处理器1002可以是微处理器、控制器或用于处理计算机可执行指令的任何其他合适类型的处理器,该计算机可执行指令用于控制设备的操作以便从第一系列的深度图像中生成环境的密集3D模型并在应用中使用该模型的至少一部分并从第二系列的深度图像中跟踪环境的一部分中的实时移动以用作至应用的输入。在某些示例中,对于使用片上***体系结构的示例,处理器1002可包括用硬件(而非软件或固件)实现此处描述的方法的一部分的一个或多个固定功能块(也被称为加速计)。
基于计算的设备1000还可包括图形处理***1004,图形处理***1004经由通信接口1006与处理器1002通信,并且包括一个或多个图形处理单元(GPU)1008,图形处理单元1008被安排成以快速且高效的方式来执行并行的线程操作。图形处理***1004还包括存储器设备1010,其被安排成允许从GPU 1008的快速并行访问。在各示例中,可在生成密集3D模型中使用GPU,如下文中更详细地描述的。
基于计算的设备1000还包括输入/输出(I/O)接口1012,输入/输出接口1012被安排成从一个或多个设备(诸如移动环境捕捉设备(包括深度相机)、深度相机、以及可任选地一个或多个用户输入设备(例如,游戏控制器、鼠标、键盘等))接收输入并处理输入。I/O接口1012还可用作通信接口,其可被安排为与一个或多个通信网络(例如,因特网)通信。
还提供了显示接口1014,其被安排为将显示信息输出到显示设备,显示设备可以与基于计算的设备1000分开或集成到基于计算的设备1000。显示信息可提供图形用户界面,例如,用于密集3D模型的至少一部分已经被集成到其中的应用的图形用户界面。在一实施例中,显示设备还可在显示设备是触敏显示设备的情况下担当用户输入设备,且在这样的情形中,I/O接口1012和显示接口1014可被组合成单个接口或显示设备可经由这两个接口来连接。
可以使用可由基于计算的设备1000访问的任何计算机可读介质来提供计算机可执行指令。计算机可读介质可以包括例如诸如存储器1016等计算机存储介质和通信介质。诸如存储器1016等计算机存储介质包括以用于存储如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括但不限于,RAM、ROM、EPROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光存储、磁带盒、磁带、磁盘存储或其他磁存储设备,或者可用于存储信息以供计算设备访问的任何其他非传输介质。相反,通信介质可以以诸如载波或其他传输机制等已调制数据信号来体现计算机可读指令、数据结构、程序模块或者其他数据。如本文所定义的,计算机存储介质不包括通信介质。尽管计算机存储介质(存储器1016)被示为在基于计算的设备1000内,但可以理解,该存储可远程地分布或位于远程,并且经由网络或其他通信链路来访问(例如,使用I/O接口1012)。
可以在基于计算的设备处提供包括操作***1018或任何其他合适的平台软件的平台软件以使得能够在该设备上执行应用软件1020。存储器1016还可存储可执行指令以实现密集模型集成引擎1022、对象识别模块1024、集成引擎1026(例如游戏引擎)和相机跟踪引擎1028中的一个或多个的功能。存储器还可提供数据存储1030,数据存储1030可用于提供对处理器1002使用的数据的存储,例如,存储所接收的一系列深度图像、存储所生成的密集3D模型、存储在执行对象识别中使用的数据(例如,以提供图5所示的对象数据库506)等。
在与本申请同一天提交的题为‘使用深度图的实时相机跟踪’的共同待批的美国专利申请,如上文在图4的讨论中所引用的,描述了使用由深度相机生成的深度图的实时相机跟踪的方法,且该方法的各方面可参考图4、11和12来描述。在一种示例实现中,图4的帧对齐引擎418是在具有一个或多个GPU4 16或其他并行计算单元的计算设备处用计算机实现的。例如,并行计算单元可以是向量处理器、单指令多数据(SIMD)体系结构、图形处理单元或其他并行计算设备。它包括迭代最接近的点的过程和可任选的平面提取分量。迭代最接近的点的过程使用投影数据关联和点到面的错误度量。帧对齐引擎从深度相机接收当前的深度图。这也被称为目的地深度图。在某些示例中,它还从深度相机接收源深度图,该源深度图是先前的深度图帧。在其他示例中,帧对齐引擎取源深度图的密集表面模型估计。帧对齐引擎的输出是用于将当前的帧和源帧进行对齐(或帧估计)的变换的一组配准参数,且这些参数可使用图11所示的方法来计算。在某些示例中,这些配准参数作为SE3矩阵来提供(将在下文中更详细地描述);然而,配准参数也可用任何合适的形式来提供。这些配准参数被实时***416用来产生该深度相机的6自由度姿势估计的实时系列。
图11是帧对齐引擎处的示例迭代过程的流程图。形成(1100)配准参数的初始估计。这些是用于将当前帧和源帧对齐的变形的配准参数。这一初始估计是用任何合适的方式形成的。例如,以下信息源中的一个或多个可被用来形成初始估计:游戏状态、游戏元数据、图数据、RGB相机输出、定向传感器输出、GPS数据等。在另一示例中,通过预测相机在何处正使用关于相机的先前运动路径的信息来形成初始估计。例如,可假定该相机具有恒定的速度或恒定的加速度。可以使用相机从时刻0到时刻t-1的运动路径来估计在时刻t相机将在何处,并因此获得配准参数的估计。
使用初始估计,计算(1102)当前帧和源帧(深度图或估计的深度图)之间的各对相应点。一对相应点是来自来自一个深度图的一点和来自另一深度图的一点,其中这些点被估计为来自场景中的同一真实世界点。术语“点”在此处被用于指示像素、或一组或一小块相邻像素。由于点的可能组合的很大的数量,这个对应性问题是非常困难的。通过标识每个图像中的诸如线、边缘、角落等形状然后尝试在各对图像间匹配那些形状,前面的使用彩色或灰度图像的方法已经解决了这个问题。相反,图12所示的和下文中所述的方法标识对应点而无需寻找深度图中的形状。计算(1104)配准参数的经更新的估计,其对被应用到所计算的相应点的误差度量进行优化。进行检查以评估是否达到收敛(1106)。如果达到,则输出经更新的估计和配准参数中的很少的改变或没有改变(1108)。如果没有达到,则该迭代过程重复,如图11中所指示的。
参考图12,现在给出有关如何计算各对相应点的更多细节。计算每一可用点的表面法线(框1202)且在一示例中,对于给定点,这通过寻找深度图中的两个(或更多个)最接近的相邻点并计算并入这些相邻点和该点本身的表面片来实现该给定点的表面法线。随后计算该表面小块在该点的位置处的法线。
随后执行寻找对应的点对的过程(框1204)。现在在源深度图和当前深度图可用而不使用密集3D模型的情况下描述这一点。对于来自源深度图的每一被采样的源点,从与源深度图相关联的相机位置通过采样的源点将光线投影到目的地深度图中的目的地点(框1206)。在一些情况下,目的地点可以沿着所投影的光线在被采样的源点前方。这一投影过程可被称为“投影数据关联”。随后作出对周围候选的对应点以及包括目的地点的搜索(框1208)。例如,搜索是针对具有与被采样的源点的表面法线兼容的表面法线且在目的地点的指定欧几里德距离内的点的。表面法线在它们在彼此的指定范围内时被称为是兼容的。例如,这一指定范围和欧几里德距离可以是用户可配置的和/或使用与有关特定应用条件相关的经验数据来设置的。
找到一个或多个候选对应点作为这一搜索的结果(框1208中)。从这些候选对应点中选择单个点(框1210中)以形成与源点的对。这种选择是以距离度量为基础做出的。例如,计算源点和所述候选对应点中的每个点之间的欧几里德距离。然后选择给出最小欧几里德距离的那对点。随后对每一个被采样的源点重复框604的过程,或者在未实现采样的情况下对源深度图的每一可用点重复框604的过程。
在某些实施例中,向对应点对中的每一个赋予权重(框1212中)。例如,可以使用来自其他源(诸如RGB相机或其他传感器)的信息来赋予权重。在一示例中,计算与深度相机的测量特性有关的权重(诸如径向透镜变形和/或与深度有关的错误)并将其与对应点对中的每一个一起存储。在另一示例中,包括使用边缘检测算法在深度图中检测的边缘处的点的对比其他对被赋予更高的权重。在应用误差度量以改善结果的质量的过程期间,可以使用这些权重。例如,与深度有关的错误的权重允许将高深度值考虑在内,该高深度值可能由于缺乏准确性而具有很大的波动。
在某些实施例中,拒绝包括在深度图边缘处或附近的点的对(框1214)。这有助于避免两个深度图间只是部分重叠的情况下的误差。还可以使用其他准则来拒绝对。例如,在某些实施例中执行平面提取,且在这种情况下,可拒绝该平面上的对,以便阻止由大平面偏差的***并因此忽略深度图中较小的但唯一的部分。
在某些实施例中,从当前深度图和源深度图中的任一个或两者中取采样点(框1200中),并且将这些采样点用作候选以从中寻找对应点对。在这样的实施例中,为每一被采样的点而非每一可用点计算表面法线(框1202中),然后为每一被采样的源点实现框1204的过程。采样可以通过随机地选择指定比例的点而实现。在另一实施例中,以将点的表面法线考虑在内的方式来实现采样(框1200中),并因此可在框1202之后执行。例如,为每一点计算表面法线(框1202)并且为不同范围的表面法线值用多个柱创建直方图。如此进行采样:实现跨越各柱的均匀采样。
在与本申请同一天提交的题为‘三维环境重构’的共同待批的美国专利申请,如上文在图4的讨论中所引用的,描述了从描述相机位置和方向以及由深度相机生成的深度图中构建真实世界环境的3D模型的方法,且该方法的各方面可参考图4、13和14来描述。
图13示出了用于生成3D环境模型的可并行化过程的示例的流程图。在一个示例中,图13的过程在GPU处理器上、多核处理器上、或允许高度的执行并行化的其他类型的处理器上执行。在其他示例中,如果单核处理器足够快速的话,也可使用单核处理器。首先,在存储器设备上创建用于存储模型的3D体(框1300)。在一个示例中,在图形处理***(例如,图10的***1004)的存储器上创建3D体,这允许从GPU的快速、并行的访问。
3D体可被可视化为存储器的立方体,其中每一存储器位置是表示正被建模的环境的空间中的点的体素。因此,3D体直接表示真实世界环境的空间部分。由于3D体直接对应于真实世界体,所以固定大小的存储器中表示的真实世界体的大小确定了模型的分辨率。例如,如果较大的真实世界体要被建模,则存储器的每一体素表示真实世界空间中较大的区域,并因此分辨率低于较小的真实世界体被建模的情况。然而如果更多存储器可用,则可以更高的分辨率对较大的真实世界体建模。
一旦在存储器中创建了3D体(框1300中),则建模过程通过从移动环境捕捉设备400接收(框1302中)深度图像414以及在捕捉该深度图像时深度相机402的6DOF姿态估计来开始。6DOF姿态估计指示了深度相机402的位置和方向,并且可由实时***416来提供。在一个示例中,6DOF姿态估计可以采用SE3矩阵的形式,该矩阵描述了深度相机402相对于真实世界坐标的旋转和转换。此变换矩阵可以被更加正式地表示为:
T k = R k t k 0 T 1 ∈ SE 3
其中Tk是深度图像帧k的变换矩阵,Rk是帧k的相机旋转,tk是帧k处的相机转换,欧几里德组
Figure BDA0000133313650000212
通过乘以这个变换矩阵,可以将相机空间中的坐标(即,来自相机角度)映射到真实世界坐标。
可对3D体的平面中的每一体素赋予独立的执行线程(框1304)。例如,如果体的平面是z平面,则对3D体的x坐标和y坐标的每一组合赋予执行线程。每一个独立的执行线程随后执行相同的操作,如图13中的虚线框1306所指示的。每一线程执行的操作在图14中示出。图14示出3D体1400的仰俯视图(即,示出x轴1420和z轴1422,而处于清楚的目的忽略了y轴)。对体的z平面上的每一坐标赋予执行线程,被表示为T1 1402、T2 1404......Tn-1 1406、Tn 1408。框1306中的每一线程执行的操作首先被参考T1 1402来示出。
执行线程的z坐标被设为零(框1308中),而与该线程相关联的体素的x、y、z坐标被转换为真实世界坐标(框13 10中)。例如,在线程T1 1402的情况下,与该线程相关联的x、y坐标是(0,0),所以当z坐标被设为零时,这给出可被转换为真实世界坐标的坐标(0,0,0)(即,图14中的体素1410)。一旦确定了体素1410的真实世界坐标,则它们可使用深度相机的6DOF位置和方向来进行变换以确定深度图像414中该体素的对应位置。这意味着与该线程相关联的当前体素的真实世界坐标通过深度相机的投影来透视投影。换言之,如果表示真实世界中的这一点的体素正由具有其位置和方向的深度相机查看,则这确定深度图像414中该点的坐标是什么。该体素的深度相机透视坐标被表示为pX、pY、pZ。深度相机透视坐标可通过u=pX/pZ和v=pY/pZ被转换为深度图像像素坐标(被表示为u、v)。
深度相机402的透视在图14中由虚线示出,该虚线指示深度相机402的截锥体1412。图14还示出从深度相机输出的深度图像414中的表面1414。
当前与该线程相关联的体素的深度图像坐标(u,v)用于确定(框1314中)该体素是否位于深度相机的截锥体1412中。如果否,则可跳过这一体素。参考图14,注意,在线程T1的情况中,当前体素1410在相机的截锥体1412内。这可以例如与由线程Tn-1考虑的第一体素相反,该第一体素在相机截锥体1412之外,因此被跳过。
如果确定当前体素在相机截锥体1412内,则确定关于体素与环境中的点之间的距离的因子,该点位于环境中从相机角度的与该体素对应的位置处。位于环境中对应位置处的点可由深度图像中(u,v)处的深度值给出。因此,参考图14,这一因子考虑了体素1410和深度图像414中的表面1414上映射到体素1410上的点之间的距离1416。
在一个示例中,所计算的因子(框1320)是带符号的距离函数。带符号的距离函数计算给出当前体素与深度图像414中的对应点之间的距离的值,且带有符号以使得在深度图像中的对应点之外(即,外部)的体素(从相机的角度)被给予正距离,而在深度图像中的对应点之内(即,内部)的体素(从相机的角度)被给予负距离。零值指示相关联的体素恰巧与对应点一致。带符号的距离函数可容易地从深度图像中(u,v)处的深度值减去pZ来计算。例如,图14中的体素1410在表面141上的对应点前方,并因此具有正的带符号的距离函数值。相反,图14中的体素1418在表面1414上的其对应点后方,并因此具有负的带符号的距离函数值。
带符号的距离函数值随后被归一化(框1322中)为预定义距离值。在一个示例中,该预定义值可以是小的距离,诸如5cm,尽管可使用任何合适的值。随后确定(框1314中)该经归一化的距离是否大于正的阈值(如果带符号的距离是正的)或小于负的阈值(如果带符号的距离是负的)。如果是,则带符号的距离函数值被截断(框1326中)为最大或最小值。例如,如果经归一化的距离大于正的阈值,则该值可在+1处截断(在归一化之后正的阈值),而如果经归一化的距离小于负的阈值,则该值可在-1处截断(在归一化之后负的阈值)。这一计算的结果被称为截断的带符号的距离函数(TSDF)。
例如,参考图14,体素1410是表面1414之外的相对较大的距离,并因此可被截断为+1。相反,体素1418是表面1414之内相对较短的距离,并因此可能不被截断,并保持其经归一化的距离(例如-0.6)。
经归一化的(并如果合适,被截断的)带符号的距离函数值随后与先前存储在当前体素处的任何值进行组合。在这是被合并到3D体中的第一深度图像的情况下,不存在先前的值。然而,随着从深度相机接收和合并其他帧,则值可能已经存在于体素处。
在一个示例中,通过求平均将带符号的距离函数值与先前的值进行组合(框1328)。这可有助于用移动对象构建环境的模型,因为它允许已经移动的对象随着时间随着所添加的测量变得更旧以及与更近的测量进行平均而消失。例如,可以使用指数衰减移动平均。在另一示例中,平均可以是使用与从深度相机到相关联的体素的距离有关的加权函数的加权平均。经平均的带符号的距离函数值随后可被存储在当前体素处(框1330)。
在一替换示例中,可在每一体素处存储两个值。可计算和存储带符号的距离函数值的加权和,并且还可计算和存储所计算的权重的和。加权平均随后可被计算为(加权和)/(权重和)。
随后确定(框1316中)3D体的所有z平面是否都被该线程考虑了。如果否,则递增z坐标(框1318),且可对z方向上的下一体素重复该过程。换言之,线程开始沿着体的z方向通过等效体素(即,具有相同x、y坐标的)来迭代,确定截断的带符号的距离函数值并用先前的值对它们求平均。
这被重复直到线程已经迭代通过了所有的z平面。这由每一个线程来执行,这些线程中的每一个被分配到z平面上的不同x、y坐标。对于图5中的存储器布局,在某一时刻体的一个平面的这一序列具有良好的存储器访问效率特性,因为一个z平面对应于线性结合阵列的较小的连续区域。因此,一旦这由所有的线程完成且分析了整个3D体,则为每一体素计算相对于深度图像414的截断的带符号的距离函数。该过程随后等待要从深度相机接收的下一深度图像帧,并且再次开始,在可能的情况下向3D体添加更多的值。
该过程的结果是3D体包括具有在-1和+1之间的均值的体素(尽管注意,这一均值可由诸如以上的“加权和”和“权重和”值之类的多个值表示)。零均值指示环境中的表面出现在该位置。因为深度图像的多个帧随着时间被添加到体,所以存储在体中的模型被逐渐地构建地越来越详细。对环境的相同区域的重复测量增加了更多的细节,并有效地提高了由深度相机提供的信息的分辨率。此外,还有效地从深度图像中平均出了噪声,留下了更平滑的表面。这使得可以模型中看到不能从各个深度图像中看到的细节。
以此方式使用单独的执行线程实现了整个3D体上的计算上的高效处理。例如,GPU处理器被安排为高效地执行并行程序线程,其中每一线程执行相同的操作。这使得以上参考图13描述的模型生成过程被实时地执行,从而使得该模型按深度相机的帧率来构建。
虽然在本文中将本发明的示例描述并示出为在游戏***中实现,但是所描述的***只是作为示例而非限制来提供的。本领域中的技术人员将会认识到,本发明的示例适于在包括增强的真实性***和机器人学***、遥现和模拟在内的各种不同类型的交互式计算***中的应用。其他示例包括扫描3D电视机或3D呈现的远程显示、生成虚拟观光的内容、远程协作、扫描紧急服务和第一响应者的场景。
此处所使用的术语“计算机”是指带有处理能力使得它可以执行指令的任何设备。本领域的技术人员将认识到,这样的处理能力被集成到许多不同的设备中,因此,术语计算机憭包括PC、服务器、移动电话、个人数字助理和许多其他设备。
本文描述的方法可由有形存储介质上的机器可读形式的软件来执行,例如计算机程序的形式,该计算机程序包括在该程序在计算机上运行时适用于执行本文描述的任何方法的所有步骤的计算机程序代码装置并且其中该计算机程序可被包括在计算机可读介质上。有形(或非瞬态)存储介质的示例可包括盘(disk)、拇指型驱动器、存储器等,而不包括所传播的信号。软件可以适合于在并行处理器或串行处理器上执行,使得各方法步骤可以以任何适当的顺序实现,或同时实现。
这确认了软件可以是有价值的、可单独交易的商品。它旨在包含运行于或者控制哑摂或标准硬件以实现所需功能的软件。它还旨在包含例如用于设计硅芯片,或者用于配置通用可编程芯片的HDL(硬件描述语言)软件等“描述”或者定义硬件配置以实现期望功能的软件。
本领域的技术人员将认识到,用来存储程序指令的存储设备可以分布在网络上。例如,远程计算机可以存储被描述为软件的进程的示例。本地或终端计算机可以访问远程计算机并下载软件的一部分或全部以运行程序。可另选地,本地计算机可以根据需要下载软件的片段,或在本地终端上执行一些软件指令,并在远程计算机(或计算机网络)上执行另一些软件指令。本领域的技术人员还将认识到,通过利用本领域的技术人员已知的传统技术,软件指令的全部,或一部分可以通过诸如DSP、可编程逻辑阵列等等之类的专用电路来实现。
如本领域技术人员将清楚的,此处给出的任何范围或者设备值都可以被扩展或者改变而不失去所寻求的效果。
尽管用结构特征和/或方法动作专用的语言描述了本主题,但可以理解,所附权利要求书中定义的主题不必限于上述具体特征或动作。相反,上述具体特征和动作是作为实现权利要求的示例形式公开的。
可以理解,上文所描述的优点可以涉及一个实施例或可以涉及多个实施例。各实施例不限于解决所述问题中的任一个或全部的实施例或具有所述好处和优点中的任一个或全部的实施例。进一步可以理解,对“一个”项目的引用是指那些项目中的一个或多个。
此处所描述的方法的步骤可以在适当的情况下以任何合适的顺序,或同时实现。另外,在不偏离此处所描述的主题的精神和范围的情况下,可以从任何一个方法中删除各单独的框。上文所描述的任何示例的各方面可以与所描述的其他示例中的任何示例的各方面相结合,以构成进一步的示例,而不会丢失寻求的效果。
此处使用了术语“包括”旨在包括已标识的方法的框或元素,但是这样的框或元素不构成排它性的列表,方法或设备可以包含额外的框或元素。
可以理解,上面对一较佳实施例的描述只是作为示例给出并且本领域的技术人员可以做出各种修改。以上说明、示例和数据提供了对本发明的各示例性实施例的结构和使用的全面描述。虽然上文以一定的详细度或参考一个或多个单个实施例描述了本发明的各实施例,但是,在不偏离本发明的精神或范围的情况下,本领域的技术人员可以对所公开的实施例作出很多更改。

Claims (10)

1.一种交互式计算***(103),包括:
输入,所述输入用于当移动深度相机(102、402)处于运动时从所述移动深度相机接收第一系列深度图像(414)以及当移动深度相机(102、402)处于静态时从所述移动深度相机接收第二系列深度图像(414);
实时相机跟踪引擎(112、416),所述实时相机跟踪引擎用于当移动深度相机(102、402)处于运动时跟踪所述移动深度相机的位置;
密集3D环境建模***(110、424),所述密集3D环境建模***被安排为从任何系列深度图像(414)以及来自实时相机跟踪引擎(112、416)的位置数据中生成环境的密集3D模型(426);以及
集成引擎(114、32),所述集成引擎被安排成将所述密集3D模型(426)的至少一部分集成到应用中并通过使用第二系列深度图像(414)跟踪环境的一部分中的实时移动来将用户输入提供给应用。
2.如权利要求1所述的交互式计算***,其特征在于,还包括:
对象识别模块,所述对象识别模块被安排为分析环境的密集3D模型并标识模型中的对象。
3.如权利要求2所述的交互式计算***,其特征在于,所述集成引擎还被安排为基于所述密集3D模型中所标识的对象来适应应用,适应应用包括基于检测到的显示器和移动深度相机的相对位置来自动确定对象的位置校准信息,且所述对象包括定点设备或***的用户。
4.一种操作交互式计算***的方法(103),所述方法包括:
当移动深度相机(102、402)在环境中四处运动时从所述移动深度相机接收(302)一系列深度图像(414);
从所述一系列深度图像(414)中生成(304)环境的密集3D模型(426);
将所述密集3D模型(426)的至少一部分集成(306)到应用中;
当移动深度相机(102、402)未运动时从所述移动深度相机接收(308)第二系列深度图像(414);以及
使用所述第二系列深度图像(414)3D地跟踪环境的区域中的实时移动。
5.如权利要求4所述的方法,其特征在于,还包括:
使用所述第二系列深度图像来生成所述密集3D模型;以及
使用所述第二系列深度图像来更新所述密集3D模型;
其中,将所述密集3D模型的至少一部分集成到应用中包括:
分析所述密集3D模型以自动标识所述模型中的对象;
在对象被标识的情况下,将对象类型和对象位置信息输入到应用中;以及
基于输入对象类型和位置信息来调整应用的操作。
6.如权利要求5所述的方法,其特征在于,所述对象包括有源对象,且调整应用的执行包括调整所述有源对象的输出。
7.如权利要求5所述的方法,其特征在于,所述对象包括显示器,且调整应用的执行包括基于检测到的显示器和移动深度相机的相对位置来自动校准对象相对于显示器的位置。
8.如权利要求5所述的方法,其特征在于,调整应用的执行包括调整另一检测到的对象的输出。
9.如权利要求5所述的方法,其特征在于,所述对象包括另一深度相机,且调整应用的执行包括基于每一深度相机的相对位置来校准***。
10.如权利要求4所述的方法,其特征在于,还包括:
从一个或多个附加深度相机中的每一个接收一系列深度图像;
从所述每一系列深度图像中生成环境的密集3D模型;
标识一个以上的密集3D模型中的公共特征;以及
基于所标识的公共特征来计算相机的相对位置。
CN201210021579.0A 2011-01-31 2012-01-31 在玩游戏中使用三维环境模型 Active CN102681661B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/017,729 2011-01-31
US13/017,729 US8570320B2 (en) 2011-01-31 2011-01-31 Using a three-dimensional environment model in gameplay

Publications (2)

Publication Number Publication Date
CN102681661A true CN102681661A (zh) 2012-09-19
CN102681661B CN102681661B (zh) 2015-05-20

Family

ID=46576972

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210021579.0A Active CN102681661B (zh) 2011-01-31 2012-01-31 在玩游戏中使用三维环境模型

Country Status (9)

Country Link
US (1) US8570320B2 (zh)
EP (1) EP2670496B1 (zh)
JP (1) JP6001562B2 (zh)
KR (1) KR101881620B1 (zh)
CN (1) CN102681661B (zh)
AR (1) AR084931A1 (zh)
HK (1) HK1174113A1 (zh)
TW (1) TWI442311B (zh)
WO (1) WO2012106070A2 (zh)

Cited By (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103218826A (zh) * 2013-03-19 2013-07-24 浙江中控研究院有限公司 基于Kinect的抛体检测、三维定位与轨迹预测方法
CN103869933A (zh) * 2012-12-11 2014-06-18 联想(北京)有限公司 信息处理的方法和终端设备
CN105190703A (zh) * 2012-12-28 2015-12-23 微软技术许可有限责任公司 使用光度立体来进行3d环境建模
CN105453559A (zh) * 2013-04-16 2016-03-30 点积公司 手持式便携光学扫描器及其使用方法
CN105493155A (zh) * 2013-08-30 2016-04-13 高通股份有限公司 用于表示物理场景的方法和设备
CN105797378A (zh) * 2016-03-16 2016-07-27 成都电锯互动科技有限公司 一种基于虚拟现实技术的游戏视频实现方法
CN105797379A (zh) * 2016-03-16 2016-07-27 成都电锯互动科技有限公司 一种基于虚拟现实技术的游戏视频处理方法
CN106844289A (zh) * 2017-01-22 2017-06-13 苏州蜗牛数字科技股份有限公司 基于手机摄像头扫描环境进行建模的方法
CN106959747A (zh) * 2017-02-14 2017-07-18 深圳奥比中光科技有限公司 三维人体测量方法及其设备
CN107168532A (zh) * 2017-05-05 2017-09-15 武汉秀宝软件有限公司 一种基于增强现实的虚拟同步显示方法及***
CN107185245A (zh) * 2017-05-31 2017-09-22 武汉秀宝软件有限公司 一种基于slam技术的虚实同步显示方法及***
CN107209818A (zh) * 2015-02-06 2017-09-26 高通股份有限公司 用于检测与移动装置的虚假用户交互以用于改进的恶意软件防护的方法和***
CN107431800A (zh) * 2015-02-12 2017-12-01 奈克斯特Vr股份有限公司 用于进行环境测量和/或使用此类测量的方法和装置
CN107551551A (zh) * 2017-08-09 2018-01-09 广东欧珀移动通信有限公司 游戏效果构建方法及装置
CN107683165A (zh) * 2015-06-26 2018-02-09 英特尔公司 用于生成计算机模型的技术以及利用它们的设备、***和方法
CN107730561A (zh) * 2017-10-17 2018-02-23 深圳奥比中光科技有限公司 深度相机温度误差校正方法及***
US10210382B2 (en) 2009-05-01 2019-02-19 Microsoft Technology Licensing, Llc Human body pose estimation
CN109960545A (zh) * 2019-03-29 2019-07-02 网易(杭州)网络有限公司 虚拟对象控制方法、***、装置、介质及电子设备
CN110152293A (zh) * 2018-02-13 2019-08-23 腾讯科技(深圳)有限公司 操控对象的定位方法及装置、游戏对象的定位方法及装置
US10448000B2 (en) 2012-10-17 2019-10-15 DotProduct LLC Handheld portable optical scanner and method of using
CN110520899A (zh) * 2017-04-14 2019-11-29 微软技术许可有限责任公司 标识在环境中的标记的位置
CN110673114A (zh) * 2019-08-27 2020-01-10 三赢科技(深圳)有限公司 校准三维相机深度的方法、装置、计算机装置及存储介质
CN110719532A (zh) * 2018-02-23 2020-01-21 索尼互动娱乐欧洲有限公司 映射虚拟环境的装置和方法
CN110892410A (zh) * 2017-07-07 2020-03-17 奈安蒂克公司 启用云的增强现实
WO2020062998A1 (zh) * 2018-09-25 2020-04-02 上海瑾盛通信科技有限公司 图像处理方法、存储介质及电子设备
US10674135B2 (en) 2012-10-17 2020-06-02 DotProduct LLC Handheld portable optical scanner and method of using
CN111432900A (zh) * 2017-12-06 2020-07-17 环球城市电影有限责任公司 交互式视频游戏***
CN112135671A (zh) * 2018-05-07 2020-12-25 微软技术许可有限责任公司 基于远程用户输入的上下文游戏内元素识别、注释和交互
CN112245910A (zh) * 2020-10-27 2021-01-22 苏州欢跳体育文化科技有限公司 一种基于Quest头显的建模、极限运动方法和***
CN112569574A (zh) * 2019-09-30 2021-03-30 超级魔方(北京)科技有限公司 一种模型拆解方法、装置、电子设备及可读存储介质
CN112950759A (zh) * 2021-01-28 2021-06-11 北京房江湖科技有限公司 基于房屋全景图的三维房屋模型构建方法及装置
CN113436136A (zh) * 2020-03-06 2021-09-24 苹果公司 以对象为中心的扫描
CN113826376A (zh) * 2019-05-24 2021-12-21 Oppo广东移动通信有限公司 用户设备和斜视校正方法
CN115191788A (zh) * 2022-07-14 2022-10-18 慕思健康睡眠股份有限公司 一种基于智能床垫的体感互动方法及相关产品
CN115699098A (zh) * 2020-05-29 2023-02-03 开放空间实验室公司 使用比例图和三维模型的基于机器学习的对象标识
US11710309B2 (en) 2013-02-22 2023-07-25 Microsoft Technology Licensing, Llc Camera/object pose from predicted coordinates

Families Citing this family (191)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8121361B2 (en) 2006-05-19 2012-02-21 The Queen's Medical Center Motion tracking system for real time adaptive imaging and spectroscopy
US10080107B2 (en) * 2007-04-30 2018-09-18 Intech 21, Inc. Topographical display generator for ad hoc network
US9766074B2 (en) * 2008-03-28 2017-09-19 Regents Of The University Of Minnesota Vision-aided inertial navigation
US8427424B2 (en) 2008-09-30 2013-04-23 Microsoft Corporation Using physical objects in conjunction with an interactive surface
EP2193825B1 (en) * 2008-12-03 2017-03-22 Alcatel Lucent Mobile device for augmented reality applications
US8532962B2 (en) * 2009-12-23 2013-09-10 Honeywell International Inc. Approach for planning, designing and observing building systems
US8730309B2 (en) 2010-02-23 2014-05-20 Microsoft Corporation Projectors and depth cameras for deviceless augmented reality and interaction
JP2011197777A (ja) * 2010-03-17 2011-10-06 Sony Corp 情報処理装置、情報処理方法およびプログラム
US9256982B2 (en) 2010-03-17 2016-02-09 Microsoft Technology Licensing, Llc Medical image rendering
US8990049B2 (en) 2010-05-03 2015-03-24 Honeywell International Inc. Building structure discovery and display from various data artifacts at scene
US8538687B2 (en) 2010-05-04 2013-09-17 Honeywell International Inc. System for guidance and navigation in a building
US8773946B2 (en) * 2010-12-30 2014-07-08 Honeywell International Inc. Portable housings for generation of building maps
US9247238B2 (en) 2011-01-31 2016-01-26 Microsoft Technology Licensing, Llc Reducing interference between multiple infra-red depth cameras
US8401242B2 (en) 2011-01-31 2013-03-19 Microsoft Corporation Real-time camera tracking using depth maps
US8942917B2 (en) 2011-02-14 2015-01-27 Microsoft Corporation Change invariant scene recognition by an agent
US9329469B2 (en) * 2011-02-17 2016-05-03 Microsoft Technology Licensing, Llc Providing an interactive experience using a 3D depth camera and a 3D projector
US9480907B2 (en) 2011-03-02 2016-11-01 Microsoft Technology Licensing, Llc Immersive display with peripheral illusions
US10972680B2 (en) * 2011-03-10 2021-04-06 Microsoft Technology Licensing, Llc Theme-based augmentation of photorepresentative view
US11372391B2 (en) * 2011-04-06 2022-06-28 Koninklijke Philips N.V. Safety in dynamic 3D healthcare environment
US8849030B2 (en) 2011-04-22 2014-09-30 Microsoft Corporation Image retrieval using spatial bag-of-features
US8760499B2 (en) * 2011-04-29 2014-06-24 Austin Russell Three-dimensional imager and projection device
US9053571B2 (en) 2011-06-06 2015-06-09 Microsoft Corporation Generating computer models of 3D objects
US9597587B2 (en) 2011-06-08 2017-03-21 Microsoft Technology Licensing, Llc Locational node device
US9268520B1 (en) * 2011-06-21 2016-02-23 Amazon Technologies, Inc. Altering content projection
US8890953B1 (en) * 2011-06-27 2014-11-18 Rawles Llc Optical-based scene detection and audio extraction
US9342928B2 (en) 2011-06-29 2016-05-17 Honeywell International Inc. Systems and methods for presenting building information
US9606209B2 (en) 2011-08-26 2017-03-28 Kineticor, Inc. Methods, systems, and devices for intra-scan motion correction
WO2013032955A1 (en) 2011-08-26 2013-03-07 Reincloud Corporation Equipment, systems and methods for navigating through multiple reality models
KR20130043300A (ko) * 2011-10-20 2013-04-30 삼성전자주식회사 프로젝터를 통해 투사되는 영상을 보정하기 위한 장치 및 방법
US9710958B2 (en) * 2011-11-29 2017-07-18 Samsung Electronics Co., Ltd. Image processing apparatus and method
US9241141B1 (en) * 2011-12-23 2016-01-19 Amazon Technologies, Inc. Projection block extraction
US9501152B2 (en) 2013-01-15 2016-11-22 Leap Motion, Inc. Free-space user interface and control using virtual constructs
US10691219B2 (en) 2012-01-17 2020-06-23 Ultrahaptics IP Two Limited Systems and methods for machine control
US8693731B2 (en) 2012-01-17 2014-04-08 Leap Motion, Inc. Enhanced contrast for object detection and characterization by optical imaging
US11493998B2 (en) 2012-01-17 2022-11-08 Ultrahaptics IP Two Limited Systems and methods for machine control
US9679215B2 (en) 2012-01-17 2017-06-13 Leap Motion, Inc. Systems and methods for machine control
US8638989B2 (en) 2012-01-17 2014-01-28 Leap Motion, Inc. Systems and methods for capturing motion in three-dimensional space
US20130182079A1 (en) * 2012-01-17 2013-07-18 Ocuspec Motion capture using cross-sections of an object
US20150253428A1 (en) 2013-03-15 2015-09-10 Leap Motion, Inc. Determining positional information for an object in space
US9070019B2 (en) 2012-01-17 2015-06-30 Leap Motion, Inc. Systems and methods for capturing motion in three-dimensional space
KR101929451B1 (ko) * 2012-02-03 2018-12-14 삼성전자주식회사 로봇의 제어 장치 및 방법
CN104641399B (zh) * 2012-02-23 2018-11-23 查尔斯·D·休斯顿 用于创建环境并用于共享环境中基于位置的体验的***和方法
US10600235B2 (en) 2012-02-23 2020-03-24 Charles D. Huston System and method for capturing and sharing a location based experience
WO2013176660A1 (en) * 2012-05-23 2013-11-28 Intel Corporation Depth gradient based tracking
JP5966624B2 (ja) * 2012-05-29 2016-08-10 株式会社リコー 情報処理装置及び情報表示システム
EP2672461A1 (de) * 2012-06-05 2013-12-11 a.tron3d GmbH Verfahren zum Fortsetzen von Aufnahmen zum Erfassen von dreidimensionalen Geometrien von Objekten
US8983662B2 (en) 2012-08-03 2015-03-17 Toyota Motor Engineering & Manufacturing North America, Inc. Robots comprising projectors for projecting images on identified projection surfaces
US9576183B2 (en) * 2012-11-02 2017-02-21 Qualcomm Incorporated Fast initialization for monocular visual SLAM
US9285893B2 (en) 2012-11-08 2016-03-15 Leap Motion, Inc. Object detection and tracking with variable-field illumination devices
KR101839035B1 (ko) * 2012-11-26 2018-03-19 한국전자통신연구원 멀티 gpu를 기반으로 하는 3차원 복원을 위한 장치 및 그 방법
US20210390330A1 (en) * 2012-12-20 2021-12-16 Sarine Technologies Ltd. System and method for determining the traceability of gemstones based on gemstone modeling
US9357199B2 (en) 2013-01-04 2016-05-31 Qualcomm Incorporated Separate track storage of texture and depth views for multiview coding plus depth
US10609285B2 (en) 2013-01-07 2020-03-31 Ultrahaptics IP Two Limited Power consumption in motion-capture systems
US9626015B2 (en) 2013-01-08 2017-04-18 Leap Motion, Inc. Power consumption in motion-capture systems with audio and optical signals
US9459697B2 (en) 2013-01-15 2016-10-04 Leap Motion, Inc. Dynamic, free-space user interactions for machine control
US9153067B2 (en) * 2013-01-21 2015-10-06 Honeywell International Inc. Systems and methods for 3D data based navigation using descriptor vectors
US9123165B2 (en) 2013-01-21 2015-09-01 Honeywell International Inc. Systems and methods for 3D data based navigation using a watershed method
US9305365B2 (en) 2013-01-24 2016-04-05 Kineticor, Inc. Systems, devices, and methods for tracking moving targets
US10327708B2 (en) 2013-01-24 2019-06-25 Kineticor, Inc. Systems, devices, and methods for tracking and compensating for patient motion during a medical imaging scan
US9251590B2 (en) * 2013-01-24 2016-02-02 Microsoft Technology Licensing, Llc Camera pose estimation for 3D reconstruction
US9717461B2 (en) 2013-01-24 2017-08-01 Kineticor, Inc. Systems, devices, and methods for tracking and compensating for patient motion during a medical imaging scan
WO2014120734A1 (en) 2013-02-01 2014-08-07 Kineticor, Inc. Motion tracking system for real time adaptive motion compensation in biomedical imaging
JP6250024B2 (ja) * 2013-02-19 2017-12-20 ミラマ サービス インク キャリブレーション装置、キャリブレーションプログラム、およびキャリブレーション方法
WO2014130854A1 (en) * 2013-02-21 2014-08-28 Regents Of The Univesity Of Minnesota Extrinsic parameter calibration of a vision-aided inertial navigation system
US9916009B2 (en) 2013-04-26 2018-03-13 Leap Motion, Inc. Non-tactile interface systems and methods
US9607401B2 (en) 2013-05-08 2017-03-28 Regents Of The University Of Minnesota Constrained key frame localization and mapping for vision-aided inertial navigation
US9349179B2 (en) * 2013-05-10 2016-05-24 Microsoft Technology Licensing, Llc Location information determined from depth camera data
DE102013208654A1 (de) * 2013-05-10 2014-11-13 Iris-Gmbh Infrared & Intelligent Sensors Sensorsystem und Verfahren zur Aufnahme eines Handvenenmusters
US9025863B2 (en) 2013-06-27 2015-05-05 Intel Corporation Depth camera system with machine learning for recognition of patches within a structured light pattern
EP2818948B1 (en) * 2013-06-27 2016-11-16 ABB Schweiz AG Method and data presenting device for assisting a remote user to provide instructions
US9210417B2 (en) * 2013-07-17 2015-12-08 Microsoft Technology Licensing, Llc Real-time registration of a stereo depth camera array
WO2015013418A2 (en) * 2013-07-23 2015-01-29 The Regents Of The University Of California Method for processing feature measurements in vision-aided inertial navigation
US9843689B1 (en) 2013-08-01 2017-12-12 Amazon Technologies, Inc. Self stabilizing projector
US20150042640A1 (en) * 2013-08-07 2015-02-12 Cherif Atia Algreatly Floating 3d image in midair
US10281987B1 (en) 2013-08-09 2019-05-07 Leap Motion, Inc. Systems and methods of free-space gestural interaction
US10846942B1 (en) 2013-08-29 2020-11-24 Ultrahaptics IP Two Limited Predictive information for free space gesture control and communication
KR102115930B1 (ko) * 2013-09-16 2020-05-27 삼성전자주식회사 디스플레이 장치 및 영상 처리 방법
US9591295B2 (en) 2013-09-24 2017-03-07 Amazon Technologies, Inc. Approaches for simulating three-dimensional views
US9530243B1 (en) 2013-09-24 2016-12-27 Amazon Technologies, Inc. Generating virtual shadows for displayable elements
US9437038B1 (en) 2013-09-26 2016-09-06 Amazon Technologies, Inc. Simulating three-dimensional views using depth relationships among planes of content
US9224237B2 (en) * 2013-09-27 2015-12-29 Amazon Technologies, Inc. Simulating three-dimensional views using planes of content
US9632572B2 (en) 2013-10-03 2017-04-25 Leap Motion, Inc. Enhanced field of view to augment three-dimensional (3D) sensory space for free-space gesture interpretation
US9367203B1 (en) 2013-10-04 2016-06-14 Amazon Technologies, Inc. User interface techniques for simulating three-dimensional depth
US10152136B2 (en) 2013-10-16 2018-12-11 Leap Motion, Inc. Velocity field interaction for free space gesture interface and control
JP6318542B2 (ja) * 2013-10-24 2018-05-09 富士通株式会社 表示制御方法、表示制御プログラムおよび情報処理装置
US9996638B1 (en) 2013-10-31 2018-06-12 Leap Motion, Inc. Predictive information for free space gesture control and communication
US20150139505A1 (en) * 2013-11-18 2015-05-21 Electronics And Telecommunications Research Institute Method and apparatus for predicting human motion in virtual environment
CN104679397A (zh) * 2013-11-29 2015-06-03 英业达科技有限公司 显示器及其控制方法
CN103678892A (zh) * 2013-12-03 2014-03-26 腾讯科技(成都)有限公司 一种角色对象管理的方法和装置
US9891712B2 (en) 2013-12-16 2018-02-13 Leap Motion, Inc. User-defined virtual interaction space and manipulation of virtual cameras with vectors
TWI549476B (zh) * 2013-12-20 2016-09-11 友達光電股份有限公司 顯示系統及調整可視範圍的方法
KR102035670B1 (ko) * 2013-12-27 2019-10-23 한국전자통신연구원 표면 모델 정합 장치 및 방법
TWI530909B (zh) 2013-12-31 2016-04-21 財團法人工業技術研究院 影像合成系統及方法
US20150193971A1 (en) * 2014-01-03 2015-07-09 Motorola Mobility Llc Methods and Systems for Generating a Map including Sparse and Dense Mapping Information
US20180350216A1 (en) * 2014-01-03 2018-12-06 Google Inc. Generating Representations of Interior Space
US9613262B2 (en) 2014-01-15 2017-04-04 Leap Motion, Inc. Object detection and tracking for providing a virtual device experience
US10004462B2 (en) 2014-03-24 2018-06-26 Kineticor, Inc. Systems, methods, and devices for removing prospective motion correction from medical imaging scans
US9779508B2 (en) 2014-03-26 2017-10-03 Microsoft Technology Licensing, Llc Real-time three-dimensional reconstruction of a scene from a single camera
CA2944023A1 (en) * 2014-03-27 2015-10-01 Game Complex, Inc. Gamification of actions in physical space
EP2933779A1 (en) * 2014-04-15 2015-10-21 Alcatel Lucent Capturing an environment with objects
JP6003942B2 (ja) * 2014-04-24 2016-10-05 トヨタ自動車株式会社 動作制限装置及び動作制限方法
US9977844B2 (en) * 2014-05-13 2018-05-22 Atheer, Inc. Method for providing a projection to align 3D objects in 2D environment
CN104008571B (zh) * 2014-06-12 2017-01-18 深圳奥比中光科技有限公司 基于深度相机的人体模型获取方法及网络虚拟试衣***
US10012504B2 (en) 2014-06-19 2018-07-03 Regents Of The University Of Minnesota Efficient vision-aided inertial navigation using a rolling-shutter camera with inaccurate timestamps
US9658070B2 (en) 2014-07-11 2017-05-23 Regents Of The University Of Minnesota Inverse sliding-window filters for vision-aided inertial navigation systems
CN106714681A (zh) 2014-07-23 2017-05-24 凯内蒂科尔股份有限公司 用于在医学成像扫描期间追踪和补偿患者运动的***、设备和方法
JP2016038889A (ja) 2014-08-08 2016-03-22 リープ モーション, インコーポレーテッドLeap Motion, Inc. モーション感知を伴う拡張現実
WO2016040862A2 (en) 2014-09-12 2016-03-17 Chizeck Howard Jay Integration of auxiliary sensors with point cloud-based haptic rendering and virtual fixtures
US10110881B2 (en) * 2014-10-30 2018-10-23 Microsoft Technology Licensing, Llc Model fitting from raw time-of-flight images
US11250630B2 (en) 2014-11-18 2022-02-15 Hallmark Cards, Incorporated Immersive story creation
US10235806B2 (en) * 2014-11-21 2019-03-19 Rockwell Collins, Inc. Depth and chroma information based coalescence of real world and virtual world images
US10684485B2 (en) * 2015-03-06 2020-06-16 Sony Interactive Entertainment Inc. Tracking system for head mounted display
US9699394B2 (en) 2015-03-09 2017-07-04 Microsoft Technology Licensing, Llc Filter arrangement for image sensor
US9639166B2 (en) 2015-03-11 2017-05-02 Microsoft Technology Licensing, Llc Background model for user recognition
US9709404B2 (en) 2015-04-17 2017-07-18 Regents Of The University Of Minnesota Iterative Kalman Smoother for robust 3D localization for vision-aided inertial navigation
WO2016204658A1 (ru) * 2015-06-15 2016-12-22 Арташес Валерьевич ИКОНОМОВ Оптическая приставка к мобильному телефону типа смартфон
JP6756090B2 (ja) * 2015-06-17 2020-09-16 凸版印刷株式会社 画像処理装置、方法、及びプログラム
US9943247B2 (en) 2015-07-28 2018-04-17 The University Of Hawai'i Systems, devices, and methods for detecting false movements for motion correction during a medical imaging scan
DK3337585T3 (da) 2015-08-17 2022-11-07 Lego As Fremgangsmåde til at skabe et virtuelt spilmiljø og interaktivt spilsystem under anvendelse af fremgangsmåden
WO2017029279A2 (en) * 2015-08-17 2017-02-23 Lego A/S Method of creating a virtual game environment and interactive game system employing the method
US20170091999A1 (en) * 2015-09-25 2017-03-30 Rafael Blumenfeld Method and system for determining a configuration of a virtual robot in a virtual environment
US20170092000A1 (en) * 2015-09-25 2017-03-30 Moshe Schwimmer Method and system for positioning a virtual object in a virtual simulation environment
US9813623B2 (en) 2015-10-30 2017-11-07 Essential Products, Inc. Wide field of view camera for integration with a mobile device
US9906721B2 (en) 2015-10-30 2018-02-27 Essential Products, Inc. Apparatus and method to record a 360 degree image
US9819865B2 (en) * 2015-10-30 2017-11-14 Essential Products, Inc. Imaging device and method for generating an undistorted wide view image
EP3377853A4 (en) * 2015-11-20 2019-07-17 Magic Leap, Inc. METHOD AND SYSTEMS FOR LARGE DETERMINATION OF RGB CAMERA POSITIONS
WO2017091479A1 (en) 2015-11-23 2017-06-01 Kineticor, Inc. Systems, devices, and methods for tracking and compensating for patient motion during a medical imaging scan
US10220172B2 (en) 2015-11-25 2019-03-05 Resmed Limited Methods and systems for providing interface components for respiratory therapy
KR20180121494A (ko) 2015-12-31 2018-11-07 엠엘 네덜란드 씨.브이. 단안 카메라들을 이용한 실시간 3d 캡처 및 라이브 피드백을 위한 방법 및 시스템
JP6362631B2 (ja) * 2016-01-15 2018-07-25 株式会社meleap 画像表示システム、画像表示システムの制御方法、画像配信システムおよびヘッドマウントディスプレイ
JP2017182129A (ja) * 2016-03-28 2017-10-05 ソニー株式会社 情報処理装置。
US10257490B2 (en) 2016-04-28 2019-04-09 Verizon Patent And Licensing Inc. Methods and systems for creating and providing a real-time volumetric representation of a real-world event
US10275937B2 (en) 2016-05-06 2019-04-30 National Taiwan University Indirect illumination method and 3D graphics processing device
US10326979B2 (en) 2016-05-23 2019-06-18 Microsoft Technology Licensing, Llc Imaging system comprising real-time image registration
US10339662B2 (en) 2016-05-23 2019-07-02 Microsoft Technology Licensing, Llc Registering cameras with virtual fiducials
US10203209B2 (en) 2016-05-25 2019-02-12 Regents Of The University Of Minnesota Resource-aware large-scale cooperative 3D mapping using multiple mobile devices
JP6088094B1 (ja) * 2016-06-20 2017-03-01 株式会社Cygames 複合現実環境を作成するためのシステム等
WO2018026544A1 (en) 2016-07-22 2018-02-08 Regents Of The University Of Minnesota Square-root multi-state constraint kalman filter for vision-aided inertial navigation system
WO2018062251A1 (ja) * 2016-09-30 2018-04-05 株式会社ソニー・インタラクティブエンタテインメント 情報処理装置
US20180124378A1 (en) * 2016-11-03 2018-05-03 Qualcomm Incorporated Enhanced depth map images for mobile devices
US10152851B2 (en) 2016-11-29 2018-12-11 Microsoft Technology Licensing, Llc Notification artifact display
US10843068B2 (en) 2017-01-18 2020-11-24 Xvisio Technology Corp. 6DoF inside-out tracking game controller
US10817724B2 (en) * 2017-05-01 2020-10-27 Microsoft Technology Licensing, Llc Real time object surface identification for augmented reality environments
JP7161281B2 (ja) * 2017-05-23 2022-10-26 トヨタ紡織株式会社 乗物シート用移動システム
JP6275310B1 (ja) 2017-05-26 2018-02-07 株式会社テクテック 拡張現実表示システム、プログラム及び方法
CN109089090A (zh) * 2017-06-13 2018-12-25 中强光电股份有限公司 投影触控***及其校正方法
US10805684B2 (en) * 2017-06-21 2020-10-13 mindHIVE Inc. Systems and methods for creating and editing multi-component media
US10467804B2 (en) * 2017-06-29 2019-11-05 Open Space Labs, Inc. Automated spatial indexing of images based on floorplan features
US10482575B2 (en) * 2017-09-28 2019-11-19 Intel Corporation Super-resolution apparatus and method for virtual and mixed reality
US10559126B2 (en) * 2017-10-13 2020-02-11 Samsung Electronics Co., Ltd. 6DoF media consumption architecture using 2D video decoder
WO2019092161A1 (en) * 2017-11-10 2019-05-16 Koninklijke Kpn N.V. Obtaining image data of an object in a scene
US10907971B2 (en) 2017-12-08 2021-02-02 Regents Of The University Of Minnesota Square root inverse Schmidt-Kalman filters for vision-aided inertial navigation and mapping
US10339718B1 (en) * 2017-12-29 2019-07-02 Verizon Patent And Licensing Inc. Methods and systems for projecting augmented reality content
JP6353994B1 (ja) * 2018-01-17 2018-07-04 任天堂株式会社 情報処理システム、情報処理プログラム、情報処理方法、および情報処理装置
US11250592B2 (en) * 2018-01-30 2022-02-15 Sony Interactive Entertainment Inc. Information processing apparatus
JP6453501B1 (ja) * 2018-02-01 2019-01-16 株式会社Cygames 複合現実システム、プログラム、方法、及び携帯端末装置
US11328474B2 (en) * 2018-03-20 2022-05-10 Interdigital Madison Patent Holdings, Sas System and method for dynamically adjusting level of details of point clouds
KR20200144543A (ko) 2018-03-20 2020-12-29 피씨엠에스 홀딩스, 인크. 우선 변환에 기반한 동적 포인트 클라우드를 최적화하는 시스템 및 방법
US10984583B2 (en) * 2018-03-28 2021-04-20 Apple Inc. Reconstructing views of real world 3D scenes
US10846923B2 (en) * 2018-05-24 2020-11-24 Microsoft Technology Licensing, Llc Fusion of depth images into global volumes
US11170224B2 (en) 2018-05-25 2021-11-09 Vangogh Imaging, Inc. Keyframe-based object scanning and tracking
US11875012B2 (en) 2018-05-25 2024-01-16 Ultrahaptics IP Two Limited Throwable interface for augmented reality and virtual reality environments
US11940277B2 (en) 2018-05-29 2024-03-26 Regents Of The University Of Minnesota Vision-aided inertial navigation system for ground vehicle localization
CN112789544B (zh) * 2018-08-03 2023-06-30 奇跃公司 图腾在用户交互***中的融合姿势的基于未融合姿势的漂移校正
US11412194B2 (en) * 2018-08-17 2022-08-09 Dana Comradd Method and system for employing depth perception to alter projected images on various surfaces
US11276244B2 (en) * 2018-09-18 2022-03-15 AB Strategies SEZC Ltd. Fixing holes in a computer generated model of a real-world environment
CN109448137B (zh) * 2018-10-23 2023-01-10 网易(杭州)网络有限公司 交互方法、交互装置、电子设备及存储介质
US11170577B2 (en) * 2018-10-30 2021-11-09 Facebook Technologies, Llc Generating and modifying representations of objects in an augmented-reality or virtual-reality scene
US11113867B1 (en) * 2018-11-02 2021-09-07 Facebook Technologies, Llc Display engine for post-rendering processing
CN113273211A (zh) 2018-12-14 2021-08-17 Pcms控股公司 用于对空间数据进行程序化着色的***和方法
US11562714B1 (en) * 2019-03-28 2023-01-24 Amazon Technologies, Inc. Remote generation of augmented reality overlays
CN113646730A (zh) * 2019-03-28 2021-11-12 索尼集团公司 信息处理装置、信息处理方法和程序
US11232633B2 (en) * 2019-05-06 2022-01-25 Vangogh Imaging, Inc. 3D object capture and object reconstruction using edge cloud computing resources
US11170552B2 (en) 2019-05-06 2021-11-09 Vangogh Imaging, Inc. Remote visualization of three-dimensional (3D) animation with synchronized voice in real-time
WO2020246400A1 (ja) * 2019-06-06 2020-12-10 ソニー株式会社 情報処理装置、情報処理方法及びプログラム
US20200394932A1 (en) * 2019-06-13 2020-12-17 Ampliospeech Ltd. Systems and methods for generating interactive online material for therapy and learning
JP7335221B2 (ja) * 2019-08-20 2023-08-29 株式会社Cygames 画像認識モデルを用いた識別子情報推論のための電子装置、方法、プログラム及びシステム
WO2021042277A1 (zh) * 2019-09-03 2021-03-11 浙江大学 基于神经网络的三维物体法向量、几何及材质获取方法
US11325041B2 (en) * 2019-09-20 2022-05-10 Martin Thomas Horstman, III Codeless video game creation platform
JP2021051537A (ja) * 2019-09-25 2021-04-01 ミストウォーカー・コーポレーション 画像表示システム、方法、およびプログラム
US11400376B2 (en) * 2019-10-23 2022-08-02 Sony Interactive Entertainment Inc. AI-generated internal environments based on external geometry
US11301712B2 (en) * 2019-11-07 2022-04-12 Sap Se Pointer recognition for analog instrument image analysis
EP4062268A1 (en) * 2019-11-19 2022-09-28 Orcam Technologies Ltd. Wearable systems and methods for locating an object
US11335063B2 (en) 2020-01-03 2022-05-17 Vangogh Imaging, Inc. Multiple maps for 3D object scanning and reconstruction
US11237641B2 (en) * 2020-03-27 2022-02-01 Lenovo (Singapore) Pte. Ltd. Palm based object position adjustment
TWI745955B (zh) * 2020-05-06 2021-11-11 宏碁股份有限公司 擴增實境系統與其錨定顯示方法
US11508085B2 (en) * 2020-05-08 2022-11-22 Varjo Technologies Oy Display systems and methods for aligning different tracking means
CN113703161B (zh) * 2020-05-22 2023-07-25 宏碁股份有限公司 扩增实境***与其锚定显示方法
US20220128347A1 (en) * 2020-10-28 2022-04-28 Kamerai Private Limited System and method to measure object dimension using stereo vision
CN112435316B (zh) * 2020-11-30 2023-05-12 上海米哈游天命科技有限公司 一种游戏中的防穿模方法、装置、电子设备及存储介质
US20230031480A1 (en) * 2021-07-28 2023-02-02 Htc Corporation System for tracking camera and control method thereof

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999035855A1 (en) * 1998-01-06 1999-07-15 Intel Corporation Method of determining relative camera orientation position to create 3-d visual images
CN1802586A (zh) * 2003-06-12 2006-07-12 西门子共同研究公司 校准真实和虚拟视图
US20080130985A1 (en) * 2006-12-02 2008-06-05 Electronic And Telecommunications Research Institute Correlation extract method for generating 3d motion data, and motion capture system and method for easy composition of humanoid character on real background image using the same
US20100194863A1 (en) * 2009-02-02 2010-08-05 Ydreams - Informatica, S.A. Systems and methods for simulating three-dimensional virtual interactions from two-dimensional camera images
US20100316282A1 (en) * 2009-06-16 2010-12-16 Hope Clinton B Derivation of 3D information from single camera and movement sensors

Family Cites Families (70)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5699444A (en) * 1995-03-31 1997-12-16 Synthonics Incorporated Methods and apparatus for using image data to determine camera location and orientation
US5729471A (en) * 1995-03-31 1998-03-17 The Regents Of The University Of California Machine dynamic selection of one video camera/image of a scene from multiple video cameras/images of the scene in accordance with a particular perspective on the scene, an object in the scene, or an event in the scene
US5696591A (en) 1996-01-05 1997-12-09 Eastman Kodak Company Apparatus and method for detecting longitudinally oriented flaws in a moving web
US6084979A (en) * 1996-06-20 2000-07-04 Carnegie Mellon University Method for creating virtual reality
US6009359A (en) 1996-09-18 1999-12-28 National Research Council Of Canada Mobile system for indoor 3-D mapping and creating virtual environments
US7098435B2 (en) * 1996-10-25 2006-08-29 Frederick E. Mueller Method and apparatus for scanning three-dimensional objects
US6130677A (en) * 1997-10-15 2000-10-10 Electric Planet, Inc. Interactive computer vision system
US6504569B1 (en) 1998-04-22 2003-01-07 Grass Valley (U.S.), Inc. 2-D extended image generation from 3-D data extracted from a video sequence
US20010008561A1 (en) 1999-08-10 2001-07-19 Paul George V. Real-time object tracking system
JP3740865B2 (ja) * 1998-10-08 2006-02-01 コニカミノルタホールディングス株式会社 多視点3次元データの合成方法および記録媒体
US20040075738A1 (en) 1999-05-12 2004-04-22 Sean Burke Spherical surveillance system architecture
US20020024517A1 (en) * 2000-07-14 2002-02-28 Komatsu Ltd. Apparatus and method for three-dimensional image production and presenting real objects in virtual three-dimensional space
US6735387B1 (en) 2001-01-10 2004-05-11 Tim Schnell Motion detector camera
KR20020011851A (ko) * 2001-01-15 2002-02-09 정영균 인공시각과 패턴인식을 이용한 체감형 게임 장치 및 방법.
US20040104935A1 (en) * 2001-01-26 2004-06-03 Todd Williamson Virtual reality immersion system
GB2378337B (en) * 2001-06-11 2005-04-13 Canon Kk 3D Computer modelling apparatus
US6781618B2 (en) 2001-08-06 2004-08-24 Mitsubishi Electric Research Laboratories, Inc. Hand-held 3D vision system
US6940538B2 (en) 2001-08-29 2005-09-06 Sony Corporation Extracting a depth map from known camera and model tracking data
US7023432B2 (en) 2001-09-24 2006-04-04 Geomagic, Inc. Methods, apparatus and computer program products that reconstruct surfaces from data point sets
JP4115117B2 (ja) * 2001-10-31 2008-07-09 キヤノン株式会社 情報処理装置および方法
US7646372B2 (en) * 2003-09-15 2010-01-12 Sony Computer Entertainment Inc. Methods and systems for enabling direction detection when interfacing with a computer program
US7352358B2 (en) * 2002-07-27 2008-04-01 Sony Computer Entertainment America Inc. Method and system for applying gearing effects to acoustical tracking
US9474968B2 (en) * 2002-07-27 2016-10-25 Sony Interactive Entertainment America Llc Method and system for applying gearing effects to visual tracking
US7391409B2 (en) * 2002-07-27 2008-06-24 Sony Computer Entertainment America Inc. Method and system for applying gearing effects to multi-channel mixed input
US7352359B2 (en) * 2002-07-27 2008-04-01 Sony Computer Entertainment America Inc. Method and system for applying gearing effects to inertial tracking
US9682319B2 (en) * 2002-07-31 2017-06-20 Sony Interactive Entertainment Inc. Combiner method for altering game gearing
US6974373B2 (en) * 2002-08-02 2005-12-13 Geissler Technologies, Llc Apparatus and methods for the volumetric and dimensional measurement of livestock
US7162338B2 (en) 2002-12-17 2007-01-09 Evolution Robotics, Inc. Systems and methods for computing a relative pose for global localization in a visual simultaneous localization and mapping system
US7257237B1 (en) * 2003-03-07 2007-08-14 Sandia Corporation Real time markerless motion tracking using linked kinematic chains
US8072470B2 (en) * 2003-05-29 2011-12-06 Sony Computer Entertainment Inc. System and method for providing a real-time three-dimensional interactive environment
US7874917B2 (en) * 2003-09-15 2011-01-25 Sony Computer Entertainment Inc. Methods and systems for enabling depth and direction detection when interfacing with a computer program
WO2005036371A2 (en) 2003-10-09 2005-04-21 Honda Motor Co., Ltd. Moving object detection using low illumination depth capable computer vision
US8134637B2 (en) 2004-01-28 2012-03-13 Microsoft Corporation Method and system to increase X-Y resolution in a depth (Z) camera using red, blue, green (RGB) sensing
US7831094B2 (en) 2004-04-27 2010-11-09 Honda Motor Co., Ltd. Simultaneous localization and mapping using multiple view feature descriptors
CN101014983B (zh) * 2004-06-23 2011-03-30 皇家飞利浦电子股份有限公司 虚拟内窥镜检查
US7697748B2 (en) * 2004-07-06 2010-04-13 Dimsdale Engineering, Llc Method and apparatus for high resolution 3D imaging as a function of camera position, camera trajectory and range
US7860301B2 (en) 2005-02-11 2010-12-28 Macdonald Dettwiler And Associates Inc. 3D imaging system
WO2006089417A1 (en) * 2005-02-23 2006-08-31 Craig Summers Automatic scene modeling for the 3d camera and 3d video
US20060262188A1 (en) * 2005-05-20 2006-11-23 Oded Elyada System and method for detecting changes in an environment
US7944454B2 (en) 2005-09-07 2011-05-17 Fuji Xerox Co., Ltd. System and method for user monitoring interface of 3-D video streams from multiple cameras
US7440615B2 (en) 2005-10-27 2008-10-21 Nec Laboratories America, Inc. Video foreground segmentation method
WO2008013568A2 (en) 2005-12-30 2008-01-31 Irobot Corporation Autonomous mobile robot
US8601379B2 (en) * 2006-05-07 2013-12-03 Sony Computer Entertainment Inc. Methods for interactive communications with real time effects and avatar environment interaction
EP1862969A1 (en) * 2006-06-02 2007-12-05 Eidgenössische Technische Hochschule Zürich Method and system for generating a representation of a dynamically changing 3D scene
US9348463B2 (en) 2006-08-03 2016-05-24 New York University Retroreflection based multitouch sensor, method and program
US8023726B2 (en) * 2006-11-10 2011-09-20 University Of Maryland Method and system for markerless motion capture using multiple cameras
US8351646B2 (en) 2006-12-21 2013-01-08 Honda Motor Co., Ltd. Human pose estimation and tracking using label assignment
FR2911211B1 (fr) * 2007-01-05 2009-06-12 Total Immersion Sa Procede et dispositifs pour inserer en temps reel des objets virtuels dans un flux d'images a partir de donnees issues de la scene reelle representee par ces images
US8175374B2 (en) * 2007-04-20 2012-05-08 Softkinetic Software Volume recognition method and system
JP5380789B2 (ja) 2007-06-06 2014-01-08 ソニー株式会社 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム
US8726194B2 (en) * 2007-07-27 2014-05-13 Qualcomm Incorporated Item selection using enhanced control
GB2452508A (en) * 2007-09-05 2009-03-11 Sony Corp Generating a three-dimensional representation of a sports game
US8902227B2 (en) * 2007-09-10 2014-12-02 Sony Computer Entertainment America Llc Selective interactive mapping of real-world objects to create interactive virtual-world objects
DE102007045835B4 (de) * 2007-09-25 2012-12-20 Metaio Gmbh Verfahren und Vorrichtung zum Darstellen eines virtuellen Objekts in einer realen Umgebung
US8542907B2 (en) * 2007-12-17 2013-09-24 Sony Computer Entertainment America Llc Dynamic three-dimensional object mapping for user-defined control device
US8368753B2 (en) 2008-03-17 2013-02-05 Sony Computer Entertainment America Llc Controller with an integrated depth camera
US20090244097A1 (en) * 2008-03-25 2009-10-01 Leonardo William Estevez System and Method for Providing Augmented Reality
CA2734143C (en) 2008-08-15 2021-08-31 Brown University Method and apparatus for estimating body shape
US9245382B2 (en) 2008-10-04 2016-01-26 Microsoft Technology Licensing, Llc User-guided surface reconstruction
US8610706B2 (en) 2008-10-04 2013-12-17 Microsoft Corporation Parallel surface reconstruction
US8855819B2 (en) 2008-10-09 2014-10-07 Samsung Electronics Co., Ltd. Method and apparatus for simultaneous localization and mapping of robot
US9600067B2 (en) 2008-10-27 2017-03-21 Sri International System and method for generating a mixed reality environment
US20100128112A1 (en) * 2008-11-26 2010-05-27 Samsung Electronics Co., Ltd Immersive display system for interacting with three-dimensional content
EP2193825B1 (en) * 2008-12-03 2017-03-22 Alcatel Lucent Mobile device for augmented reality applications
KR101199492B1 (ko) * 2008-12-22 2012-11-09 한국전자통신연구원 광역 이동을 고려한 실시간 카메라 트래킹 장치 및 방법
US8503720B2 (en) 2009-05-01 2013-08-06 Microsoft Corporation Human body pose estimation
US9377857B2 (en) 2009-05-01 2016-06-28 Microsoft Technology Licensing, Llc Show body position
US8542252B2 (en) * 2009-05-29 2013-09-24 Microsoft Corporation Target digitization, extraction, and tracking
US8379101B2 (en) 2009-05-29 2013-02-19 Microsoft Corporation Environment and/or target segmentation
JP4609603B2 (ja) * 2010-07-21 2011-01-12 コニカミノルタホールディングス株式会社 3次元情報表示装置および3次元情報表示方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999035855A1 (en) * 1998-01-06 1999-07-15 Intel Corporation Method of determining relative camera orientation position to create 3-d visual images
CN1802586A (zh) * 2003-06-12 2006-07-12 西门子共同研究公司 校准真实和虚拟视图
US20080130985A1 (en) * 2006-12-02 2008-06-05 Electronic And Telecommunications Research Institute Correlation extract method for generating 3d motion data, and motion capture system and method for easy composition of humanoid character on real background image using the same
US20100194863A1 (en) * 2009-02-02 2010-08-05 Ydreams - Informatica, S.A. Systems and methods for simulating three-dimensional virtual interactions from two-dimensional camera images
US20100316282A1 (en) * 2009-06-16 2010-12-16 Hope Clinton B Derivation of 3D information from single camera and movement sensors

Cited By (55)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10210382B2 (en) 2009-05-01 2019-02-19 Microsoft Technology Licensing, Llc Human body pose estimation
US10674135B2 (en) 2012-10-17 2020-06-02 DotProduct LLC Handheld portable optical scanner and method of using
US10448000B2 (en) 2012-10-17 2019-10-15 DotProduct LLC Handheld portable optical scanner and method of using
CN103869933B (zh) * 2012-12-11 2017-06-27 联想(北京)有限公司 信息处理的方法和终端设备
CN103869933A (zh) * 2012-12-11 2014-06-18 联想(北京)有限公司 信息处理的方法和终端设备
CN105190703A (zh) * 2012-12-28 2015-12-23 微软技术许可有限责任公司 使用光度立体来进行3d环境建模
US11215711B2 (en) 2012-12-28 2022-01-04 Microsoft Technology Licensing, Llc Using photometric stereo for 3D environment modeling
US9857470B2 (en) 2012-12-28 2018-01-02 Microsoft Technology Licensing, Llc Using photometric stereo for 3D environment modeling
US11710309B2 (en) 2013-02-22 2023-07-25 Microsoft Technology Licensing, Llc Camera/object pose from predicted coordinates
CN103218826A (zh) * 2013-03-19 2013-07-24 浙江中控研究院有限公司 基于Kinect的抛体检测、三维定位与轨迹预测方法
CN103218826B (zh) * 2013-03-19 2016-08-10 浙江中控研究院有限公司 基于Kinect的抛体检测、三维定位与轨迹预测方法
CN105453559A (zh) * 2013-04-16 2016-03-30 点积公司 手持式便携光学扫描器及其使用方法
CN105453559B (zh) * 2013-04-16 2017-12-29 点积公司 手持式便携光学扫描器及其使用方法
US9996974B2 (en) 2013-08-30 2018-06-12 Qualcomm Incorporated Method and apparatus for representing a physical scene
CN105493155A (zh) * 2013-08-30 2016-04-13 高通股份有限公司 用于表示物理场景的方法和设备
CN107209818A (zh) * 2015-02-06 2017-09-26 高通股份有限公司 用于检测与移动装置的虚假用户交互以用于改进的恶意软件防护的方法和***
US10692234B2 (en) 2015-02-12 2020-06-23 Nextvr Inc. Methods and apparatus for making environmental measurements and/or using such measurements
CN107431800A (zh) * 2015-02-12 2017-12-01 奈克斯特Vr股份有限公司 用于进行环境测量和/或使用此类测量的方法和装置
CN107683165B (zh) * 2015-06-26 2022-06-03 英特尔公司 用于生成计算机模型的技术以及利用它们的设备、***和方法
CN107683165A (zh) * 2015-06-26 2018-02-09 英特尔公司 用于生成计算机模型的技术以及利用它们的设备、***和方法
US11189085B2 (en) 2015-06-26 2021-11-30 Intel Corporation Technologies for generating computer models, devices, systems, and methods utilizing the same
CN105797379A (zh) * 2016-03-16 2016-07-27 成都电锯互动科技有限公司 一种基于虚拟现实技术的游戏视频处理方法
CN105797378A (zh) * 2016-03-16 2016-07-27 成都电锯互动科技有限公司 一种基于虚拟现实技术的游戏视频实现方法
CN106844289A (zh) * 2017-01-22 2017-06-13 苏州蜗牛数字科技股份有限公司 基于手机摄像头扫描环境进行建模的方法
CN106959747B (zh) * 2017-02-14 2020-02-18 深圳奥比中光科技有限公司 三维人体测量方法及其设备
CN106959747A (zh) * 2017-02-14 2017-07-18 深圳奥比中光科技有限公司 三维人体测量方法及其设备
CN110520899A (zh) * 2017-04-14 2019-11-29 微软技术许可有限责任公司 标识在环境中的标记的位置
CN107168532B (zh) * 2017-05-05 2020-09-11 武汉秀宝软件有限公司 一种基于增强现实的虚拟同步显示方法及***
CN107168532A (zh) * 2017-05-05 2017-09-15 武汉秀宝软件有限公司 一种基于增强现实的虚拟同步显示方法及***
CN107185245A (zh) * 2017-05-31 2017-09-22 武汉秀宝软件有限公司 一种基于slam技术的虚实同步显示方法及***
CN110892410B (zh) * 2017-07-07 2024-06-07 奈安蒂克公司 启用云的增强现实
CN110892410A (zh) * 2017-07-07 2020-03-17 奈安蒂克公司 启用云的增强现实
CN107551551A (zh) * 2017-08-09 2018-01-09 广东欧珀移动通信有限公司 游戏效果构建方法及装置
CN107730561A (zh) * 2017-10-17 2018-02-23 深圳奥比中光科技有限公司 深度相机温度误差校正方法及***
US11335020B2 (en) 2017-10-17 2022-05-17 Orbbec Inc. Method and system for correcting temperature error of depth camera
CN111432900A (zh) * 2017-12-06 2020-07-17 环球城市电影有限责任公司 交互式视频游戏***
CN110152293A (zh) * 2018-02-13 2019-08-23 腾讯科技(深圳)有限公司 操控对象的定位方法及装置、游戏对象的定位方法及装置
CN110719532A (zh) * 2018-02-23 2020-01-21 索尼互动娱乐欧洲有限公司 映射虚拟环境的装置和方法
CN110719532B (zh) * 2018-02-23 2023-10-31 索尼互动娱乐欧洲有限公司 映射虚拟环境的装置和方法
CN112135671B (zh) * 2018-05-07 2024-05-28 微软技术许可有限责任公司 基于远程用户输入的上下文游戏内元素识别、注释和交互
CN112135671A (zh) * 2018-05-07 2020-12-25 微软技术许可有限责任公司 基于远程用户输入的上下文游戏内元素识别、注释和交互
WO2020062998A1 (zh) * 2018-09-25 2020-04-02 上海瑾盛通信科技有限公司 图像处理方法、存储介质及电子设备
CN109960545B (zh) * 2019-03-29 2022-09-13 网易(杭州)网络有限公司 虚拟对象控制方法、***、装置、介质及电子设备
CN109960545A (zh) * 2019-03-29 2019-07-02 网易(杭州)网络有限公司 虚拟对象控制方法、***、装置、介质及电子设备
CN113826376A (zh) * 2019-05-24 2021-12-21 Oppo广东移动通信有限公司 用户设备和斜视校正方法
CN113826376B (zh) * 2019-05-24 2023-08-15 Oppo广东移动通信有限公司 用户设备和斜视校正方法
CN110673114A (zh) * 2019-08-27 2020-01-10 三赢科技(深圳)有限公司 校准三维相机深度的方法、装置、计算机装置及存储介质
CN112569574A (zh) * 2019-09-30 2021-03-30 超级魔方(北京)科技有限公司 一种模型拆解方法、装置、电子设备及可读存储介质
CN112569574B (zh) * 2019-09-30 2024-03-19 超级魔方(北京)科技有限公司 一种模型拆解方法、装置、电子设备及可读存储介质
CN113436136A (zh) * 2020-03-06 2021-09-24 苹果公司 以对象为中心的扫描
CN115699098A (zh) * 2020-05-29 2023-02-03 开放空间实验室公司 使用比例图和三维模型的基于机器学习的对象标识
CN112245910A (zh) * 2020-10-27 2021-01-22 苏州欢跳体育文化科技有限公司 一种基于Quest头显的建模、极限运动方法和***
CN112245910B (zh) * 2020-10-27 2023-08-11 苏州欢跳体育文化科技有限公司 一种基于Quest头显的建模、极限运动方法和***
CN112950759A (zh) * 2021-01-28 2021-06-11 北京房江湖科技有限公司 基于房屋全景图的三维房屋模型构建方法及装置
CN115191788A (zh) * 2022-07-14 2022-10-18 慕思健康睡眠股份有限公司 一种基于智能床垫的体感互动方法及相关产品

Also Published As

Publication number Publication date
WO2012106070A2 (en) 2012-08-09
EP2670496A4 (en) 2017-02-08
HK1174113A1 (zh) 2013-05-31
EP2670496A2 (en) 2013-12-11
TWI442311B (zh) 2014-06-21
WO2012106070A3 (en) 2012-10-26
AR084931A1 (es) 2013-07-10
JP6001562B2 (ja) 2016-10-05
KR101881620B1 (ko) 2018-07-24
KR20140008510A (ko) 2014-01-21
TW201234261A (en) 2012-08-16
EP2670496B1 (en) 2021-01-06
JP2014513822A (ja) 2014-06-05
US8570320B2 (en) 2013-10-29
CN102681661B (zh) 2015-05-20
US20120194517A1 (en) 2012-08-02

Similar Documents

Publication Publication Date Title
CN102681661B (zh) 在玩游戏中使用三维环境模型
JP7377837B2 (ja) ゲームプレイを介して環境の詳細データセットを生成する方法およびシステム
CN102609942B (zh) 使用深度图进行移动相机定位
CN102622762B (zh) 使用深度图的实时相机跟踪
US8933931B2 (en) Distributed asynchronous localization and mapping for augmented reality
JP2021530814A (ja) 位置ベクトルを使用して半球曖昧性を解決するための方法およびシステム
CA3034644A1 (en) Augmented reality display device with deep learning sensors
US11776242B2 (en) Augmented reality deep gesture network
CN105190703A (zh) 使用光度立体来进行3d环境建模
CN102622776A (zh) 三维环境重构
CN109255749A (zh) 自主和非自主平台中的地图构建优化
CN102222329A (zh) 深度检测的光栅扫描
CN102411783A (zh) 在视频聊天应用中自动跟踪用户移动
CN102663722A (zh) 使用深度图像的活动对象分割
CN105917386A (zh) 信息处理设备、信息处理***、块***和信息处理方法
CN109069929A (zh) 用于玩具识别的***和方法
CN105917385A (zh) 信息处理设备和信息处理方法
CN102375541A (zh) 将用户运动转换成多个对象响应

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1174113

Country of ref document: HK

C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150805

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20150805

Address after: Washington State

Patentee after: Micro soft technique license Co., Ltd

Address before: Washington State

Patentee before: Microsoft Corp.

REG Reference to a national code

Ref country code: HK

Ref legal event code: GR

Ref document number: 1174113

Country of ref document: HK