CN109069929A - 用于玩具识别的系统和方法 - Google Patents

用于玩具识别的系统和方法 Download PDF

Info

Publication number
CN109069929A
CN109069929A CN201780027648.XA CN201780027648A CN109069929A CN 109069929 A CN109069929 A CN 109069929A CN 201780027648 A CN201780027648 A CN 201780027648A CN 109069929 A CN109069929 A CN 109069929A
Authority
CN
China
Prior art keywords
real world
build elements
elements
toy building
candidate
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
CN201780027648.XA
Other languages
English (en)
Other versions
CN109069929B (zh
Inventor
T.G.K-R.奥尔森
T.雅各布森
J.索德伯格
F.洛瓦特
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.)
Lego AS
Original Assignee
Lego AS
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 Lego AS filed Critical Lego AS
Publication of CN109069929A publication Critical patent/CN109069929A/zh
Application granted granted Critical
Publication of CN109069929B publication Critical patent/CN109069929B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/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
    • 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/40Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
    • A63F13/42Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle
    • 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
    • A63F13/655Generating 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 by importing photos, e.g. of the player
    • 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/90Constructional details or arrangements of video game devices not provided for in groups A63F13/20 or A63F13/25, e.g. housing, wiring, connections or cabinets
    • A63F13/98Accessories, i.e. detachable arrangements optional for the use of the video game device, e.g. grip supports of game controllers
    • 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/50Depth or shape recovery
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/90Determination of colour characteristics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/64Three-dimensional objects
    • 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/6045Methods for processing data by generating or executing the game program for mapping control signals received from the input arrangement into game commands
    • 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/69Involving elements of the real world in the game world, e.g. measurement in live races, real video
    • A63F2300/695Imported photos, e.g. of the player
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63HTOYS, e.g. TOPS, DOLLS, HOOPS OR BUILDING BLOCKS
    • A63H33/00Other toys
    • A63H33/04Building blocks, strips, or similar building parts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2415Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on parametric or probabilistic models, e.g. based on likelihood ratio or false acceptance rate versus a false rejection rate
    • 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/10024Color image
    • 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/20Special algorithmic details
    • G06T2207/20076Probabilistic image processing
    • 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

Abstract

一种用于识别组装以形成真实世界玩具建造模型的玩具建造系统的多个真实世界玩具建造元件的计算机实现的方法,每个真实世界玩具建造元件包括联接构件,用于将所述真实世界玩具建造元件与所述玩具建造系统的一个或多个其他真实世界玩具建造元件可拆卸地连接,从而形成所述真实世界玩具建造模型;其中所述方法包括:接收所述真实世界玩具建造模型的至少一个捕获图像;处理所述至少一个捕获图像,以便从所述玩具建造系统的多个已知的真实世界玩具建造元件的存储的数字表示将所述至少一个捕获图像中的至少第一真实世界玩具建造元件至少初步地识别为第一已知的真实世界玩具建造元件,每个数字表示包括连接性信息,所述连接性信息指示对应的真实世界玩具建造元件如何可拆卸地连接到所述玩具建造系统的其他真实世界玩具建造元件;检测所识别的第一真实世界玩具建造元件附近的图像中的至少第二真实世界玩具建造元件的图像数据;从所述玩具建造系统的所述多个已知的真实世界玩具建造元件的所述存储的数字表示将所述第二真实世界玩具建造元件识别为第二已知的真实世界玩具建造元件;其中识别所述第二真实世界玩具建造元件至少部分地基于与所述第一和第二已知的玩具建造元件相关联的连接性信息。

Description

用于玩具识别的系统和方法
技术领域
本发明涉及计算机视觉技术对实体玩具(toys-to-life)的应用,更特别地,涉及使用模块化、可相互互连的玩具建造元件的玩具建造模型的识别的系统和方法。
背景技术
已经进行了将物理对象的虚拟表示集成到虚拟游戏中的不同尝试。然而,仍然缺失的是,激发用户的互动参与,特别是通过儿童游戏来激发不同技能的发展的物理世界和虚拟游戏之间的紧密联系。因此,需要一种新的交互式游戏方法。
大多数玩具增强型计算机游戏或所谓的实体玩具系统目前涉及这样的系统,其中玩具必须具有物理部件,该物理部件配置为经由某种形式的无线通信(如RFID,NFC等)与特殊读取器通信。这样的系统的示例例如在US 2012/0295703、EP 2749327和US 2014/256430中公开。通常希望提供这样的游戏系统,其不要求玩具包括能够与读取器设备通信的元件,以便能够识别玩具元件,并创建其虚拟数字表示并将其与附加的数字数据相关联。
WO2011/017393描述了一种使用计算机视觉来检测特定背景上的玩具建造模型的系统。为此,组装好的模型放在特殊的背景板上,其上印有特定的图案。在一些系统中,图像获取装置甚至可能需要相对于玩具元件组件对准到特定角度以进行识别。此外,该现有技术方法限于平面的、平行于背景平面的模型的构造。因此,通常希望增加这种方法的鲁棒性,特别是增加识别构成玩具建造模型的单独的玩具建造元件的识别性能,甚至对于任意3D模型的识别性能。例如,对于要创建尽可能对应于真实世界3D玩具建造模型的虚拟玩具建造模型的应用,期望足够准确地识别各个元件。
在检测3D玩具建造模型中的各个玩具建造元件时的一个特别的困难与以下事实有关:各个元件可能并不总是完全可见,或者不能从所有侧面可见,因为它们连接到模型的其他元件,其他元件可能至少部分地隐藏玩具建造元件。
发明内容
根据本文公开的一个方面,一种计算机实现的方法,其用于识别组装以形成真实世界建造模型的建造系统的多个真实世界建造元件,特别是组装以形成真实世界玩具建造模型的玩具建造系统的真实玩具建造元件,每个真实世界建造元件包括联接构件,用于将所述真实世界建造元件与所述建造系统的一个或多个其他真实世界建造元件可拆卸地连接,从而形成所述真实世界建造模型;其中所述方法包括:
-接收所述真实世界建造模型的至少一个捕获图像;
-处理所述至少一个捕获图像,以便从所述建造系统的多个已知的真实世界建造元件的存储的数字表示将所述至少一个捕获图像中的至少第一真实世界建造元件识别为第一已知的真实世界建造元件,每个数字表示包括连接性信息,所述连接性信息指示对应的真实世界建造元件如何可拆卸地连接到所述建造系统的其他真实世界建造元件;
-检测所识别的第一真实世界建造元件附近的图像中的至少第二真实世界建造元件的图像数据;
-从所述建造系统的所述多个已知的真实世界建造元件的所述存储的数字表示将所述第二真实世界建造元件识别为第二已知的真实世界建造元件;其中识别所述第二真实世界建造元件至少部分地基于与所述第一和第二已知的建造元件相关联的连接性信息。
真实世界建造模型是可拆卸地互连的真实世界建造元件的组件,例如由多个部件(例如躯干部分、腿部分、附件部分和/或类似物)构成的小雕像。这种模块化建造系统允许构造各种各样的组装的建造模型。组装的建造模型可以包括可以彼此相同或不同的几个或多个单独的建造元件。例如,迄今为止,包括玩具建造元件的玩具建造模型难以以高效但可靠且鲁棒的方式被检测。特别地,建造模型可以包括一个或多个真实世界建造元件,当从一个视点、从多于一个视点或甚至从所有视点观察时,所述真实世界建造元件被模型的其他建造元件部分地或甚至完全地隐藏。连接性信息的使用允许该过程标识这样的建造元件,即使它们被部分或甚至完全隐藏。即使只能从图像中辨别建造元件的视图可见特征,例如,元件的颜色和元件从一个方向的局部侧视图,在过程还可以确定部分隐藏的建造元件与哪些相邻的建造元件相连时,这些信息可能就足够了。
通过使用与待识别的建造元件相关联的连接性信息以及与建造模型的一个或多个其他建造元件相关联的对应的连接性信息,可以因此显著增加识别性能。连接性信息可以存储为建造系统的多个已知的真实世界建造元件的存储数字表示的一部分或以其他方式与其相关联。出于本公开的目的,建造系统的多个已知的真实世界建造元件的存储的数字表示也将被称为建造系统的已知的真实世界建造元件的库(或简称为库)。
在一些实施例中,该方法包括处理捕获图像以便产生捕获图像的一个或多个处理版本,并且基于捕获图像的至少一个或多个经处理的版本进行识别。处理步骤可包括任何合适的图像处理机制,例如,用于改变图像对比度、改变颜色分布、裁剪、模糊、侵蚀、扩张、添加随机掩模或创建不同的图像子帧等,或其组合。在一些实施例中,处理至少一个捕获图像包括标识至少一个捕获图像的对象部分和背景部分,所述对象部分表示建造模型。
在一些实施例中,该方包括:确定第一似然值,所述第一似然值指示所述识别的第一真实世界建造元件是第一已知的真实世界建造元件的似然性。特别地,在一些实施例中,该方法包括:
-创建第一组候选建造元件,从多个已知的真实世界建造元件中选择每个候选建造元件;以及
-对于每个候选建造元件,确定指示所识别的第一真实世界建造元件是所述候选建造元件的似然性的相关的第一似然值。
因此,所识别的第一建造元件不需要绝对确定地被识别,而可以仅以一定的概率被识别,并且可能存在一组识别替代物,即一组候选建造元件,其每一个都具有成为所识别的第一建造元件的各自的似然性。可以进一步理解的是,其同样适用于第二建造元件的识别,即第二建造元件也可以用相关的第二似然值来识别,并且可以存在第二组候选建造元件,其每一个具有相关的第二似然值,其指示所识别的第二建造元件确实是相关的候选建造元件的似然性。
特别地,在一些实施例中,识别真实世界建造元件,例如,第一或第二真实世界建造元件,包括:
-从建造系统的所述多个已知的真实世界建造元件的所述存储的数字表示确定一个或多个候选建造元件,每个候选建造元件具有相关联的似然值,其指示相应的候选建造元件是至少一个捕获图像中描绘的所检测到的真实世界建造元件的似然性。
因此,所识别的第一真实世界建造元件可以是第一组候选世界建造元件中的一个,例如,具有所述第一组候选建造元件的最高第一似然值的候选建造元件。在一些实施例中,识别过程可以是包括多次迭代的迭代过程,其中每次迭代可以利用一个或多个先前迭代的结果。第一真实世界建造系统的识别可以是最终的,即它可以在识别过程的剩余部分期间保持不变。替代地,第一真实世界建造元件可以是初步识别的第一真实世界建造元件,其中识别决定在后续迭代中仍然可发生变化,例如,因为相关的似然值可以在后续迭代中重新计算。特别地,在一些实施例中,该方法还包括基于对第二真实世界建造元件的识别来更新第一似然值。例如,识别具有高第二似然值的第二真实世界建造元件可以使得该过程增加来自具有与第二真实世界建造元件的联接构件兼容的联接构件的第一组候选建造元件的候选的第一似然值。类似地,识别具有高第二似然值的第二真实世界建造元件可以使得该过程减少来自具有与第二真实世界建造元件的联接构件不兼容的联接构件的第一组中的候选的第一似然值。特别地,在一些实施例中,该过程可以创建候选真实世界建造元件的相应的第一和第二候选组,每个候选组与彼此接近的相应的第一和第二检测到的建造元件相关联。对于第二候选组中的每个候选,该过程因此可以计算似然值的似然性组,其中,可以在假定第一建造元件是第一候选组中的相应的一个候选的情况下,计算似然性组中的每个似然值。类似地,对于第一候选组中的每个候选,该过程可以计算似然值的似然性组,其中,可以在假定第二建造元件是第二候选组中的相应的一个候选的情况下,计算所述似然性组中的每个似然值。因此,该过程可以将第一和第二建造元件识别为来自具有最高组合似然值的第一和第二候选组的候选对。
在一些实施例中,该过程可以涉及优化过程,例如,使用线性编程技术或其他合适的优化技术,以识别在彼此接近的范围内检测到的两个或更多个建造元件。通常,建造元件之间的接近度可以例如包括被检测为彼此相邻的建造元件,例如,检测为具有彼此相邻或彼此连接的相邻边界体积,或者可能的是,其相应的位置在检测到的建造元件之间形成互连。优化过程可以配置为最大化所述两个或更多个建造元件的组合似然值。
计算相应的候选建造元件的似然值可以基于候选建造元件相对于建造模型的定位程度,以便与捕获图像一致。特别地,在一些实施例中,识别第二真实世界建造元件包括:
-对于所述候选建造元件中的每一个且基于所述至少一个捕获图像,估计对应的虚拟建造元件在对应于所述真实世界建造模型的虚拟建造模型中的放置;
-基于所估计的放置与至少所述捕获图像的相关性,计算每个候选建造元件的相应的对应值;
-至少部分地基于所计算的对应值选择候选建造元件和对应的放置。
为此,库的每个已知的真实世界建造元件的数字表示可以包括所述建造元件的虚拟版本的数字3D表示,例如,网格模型、体素模型或其他合适的数字表示。该表示还可以包括建造元件的可见属性,例如(多种)颜色、(多种)表面纹理和/或类似物。基于数字表示,该过程可以计算指示建造元件的候选放置(位置和取向)与捕获图像数据的对应程度的对应值。可选地,该计算可以至少部分地基于捕获的3D数据。对应值可以指示捕获相对于相机位置定位在候选放置处的真实世界建造元件的图像是否将导致与实际捕获的一个或多个图像一致的图像(和可选的深度)数据。因此,估计虚拟建造模型中的放置可以至少部分地基于接收到的深度信息和/或接收到的颜色信息。
根据一些实施例,识别第二真实世界建造元件包括确定所识别的第一真实世界建造元件的联接构件连接到真实世界建造模型的另一真实世界建造元件的第一连接似然性。为此,库的每个已知的真实世界建造元件的数字表示可以包括连接性信息,例如,包括已知的真实世界建造元件的联接构件的位置和类型。联接构件的位置可以相对于已知的建造元件的几何形状来指定。基于捕获图像数据,并且对于识别的建造元件,该过程可以例如确定建造元件的哪些联接构件是可见的,哪些是被相邻的建造元件隐藏的。因此,对于建造元件的每个联接构件,该过程可以计算所述联接构件实际上接合相邻建造元件的另一个联接构件的连接似然性。例如,可以为可见的联接构件分配低似然性,而由相邻建构元件隐藏的联接构件具有较高概率。在实施例中,在该过程还从不同视点接收深度信息和/或图像的情况下,可以更准确地执行该确定。应当理解,出于该确定的目的,不一定必须已经识别相邻的建造元件。给定建造元件的相邻建造元件可以是在给定建造元件的预定接近度中的建造元件。
此外,对于候选虚拟建造元件(对应于已知的候选建造元件的虚拟建造元件)在虚拟建造模型中的估计放置,该过程可以确定该放置是否与建造模型内的其他虚拟建造元件的放置一致,特别是对应于相应的其他已经识别的或候选的真实世界建造元件的其他虚拟建造元件。因此,该过程可以确定虚拟建造模型中的其他虚拟建造元件的位置和类型是否实际上允许候选虚拟建造元件的放置以及允许候选虚拟建造元件与虚拟建造模型的一个或多个其他虚拟建造元件的连接。因此,该过程可以计算候选虚拟建造元件的连接性似然值,其中该连接性似然值指示联接构件与模型中的其他(特别是相邻的)虚拟建造元件的对应的联接构件的符合程度(即,它们的位置和类型)。因此,可以将为建造模型的虚拟版本和已知的建造元件的虚拟版本计算的连接似然性(即,根据存储在已知的建造元件的库中的它们的数字表示)分配给候选建造元件并用于从已知的元件的库计算检测到的建造元件确实是所述候选建造元件的似然性。
因此,在一些实施例中,识别第二真实世界建造元件包括:
-对于候选建造元件,确定所述候选建造元件的联接构件在位于所述真实世界建造模型内的所检测到的第二真实世界建造元件的位置时可与所识别的第一真实世界建造元件的联接构件连接的第二连接似然性;
-至少部分地基于所确定的第二连接似然性来确定所述第二似然值。
可以至少部分地基于所确定的第一连接似然性和/或第二连接似然性来确定第二似然值。
已知的真实世界建造元件的数字表示可以包括多个数据记录,每个数据记录代表已知的建造元件。数据记录可以存储在数据库或其他合适的数据结构中。每个数据记录可以包括已知的真实世界建造元件的标识符和已知的真实世界建造元件的多个属性,例如以下中的一个或多个:颜色、大小、形状、连接性信息等。连接性信息指示真实世界建造元件如何连接到其他真实世界建造元件。特别地,建造元件可以以有限数量的空间配置连接,即相对于另外的一个或多个建造元件以有限数量的位置和/或取向连接。此外,真实世界建造元件可包括与系统的其他真实世界建造元件的对应的配合联接构件兼容的联接构件。例如,连接性信息可以被存储并用于确定真实世界建造元件相对于其他真实世界建造元件的放置的物理约束,例如,如WO 04/034333中所公开的。
在一些实施例中,每个已知的真实世界建造元件的数字表示指示相对于对应的已知的真实世界建造元件的多个网格,每个网格具有多个网格点;且已知的真实世界建造元件的联接构件中的每一个与网格点中的一个相关联并具有对应的连接类型。
通常,真实世界建造元件的识别可以基于数据驱动方法,例如神经网络或在计算机视觉领域中已知的其他对象识别技术。
在一些实施例中,该方法输出单独的识别的真实世界建造元件的标识符和位置坐标,例如,指示所识别的建造元件的位置和取向,例如,相对于全局坐标系或相对于与建造模型相关联的坐标系。
一旦真实世界建造模型的真实世界建造元件被识别,该信息可以以各种方式使用。例如,该方法可以包括将一个或多个所识别的真实世界建造元件和/或建造模型与可以存储在已知的建造元件的库或其他合适的数据存储器中的附加信息相匹配。这样的附加信息可以例如包括关于对应的建造模型或其组成的属性的信息,例如,指示虚拟建造模型或单独的虚拟建造元件如何在虚拟世界中移动或以其他方式行动的行为信息,和/或类似物。在一些实施例中,对应于所识别的真实世界玩具建造模型的虚拟玩具建造模型可以作为游戏中的虚拟对象或角色插入虚拟世界中。
在一些实施例中,建造系统可以包括建造元件的层次结构,其包括不同类别的元件,例如,主要元件,例如小雕像,人仔等,以及可能与之相关的次要元件,例如连接到主要元件。这种次要元件的示例可以包括小雕像或人仔的附件,例如武器、布料、工具等。因此,基于对各个元件的识别,可以执行复合识别,例如,标识添加有一个或多个次要元件的主要元件,例如,携带剑和盾的骑士。在计算机游戏或其他虚拟环境中,所识别的建造模型可以表示为虚拟建造元件的虚拟组件。虚拟建造元件可以对应于所识别的真实世界建造元件,因为它们是具有相同形状、比例和性质的真实世界建造元件的直接表示。真实世界建造元件可以由物理空间中的预定长度单元(1L.U.)限定,其中笛卡尔坐标系中的真实世界建造元件在物理空间的x、y和z方向上的线性尺寸表示为物理空间中的预定长度单位的整数倍(n L.U.)。因此,虚拟建造元件可以由对应的预定长度单元限定,其中笛卡尔坐标系中的虚拟建造元件在虚拟空间的x、y和z方向上线性尺寸表示为虚拟空间中的对应的预定长度单位的整数倍。物理空间中的预定单位长度和虚拟空间中的对应的预定单位长度可以相同。
通过识别物理玩具建造模型可以增强许多类型的游戏,包括但不限于培育游戏、战斗类型游戏(玩家对玩家)、赛车游戏和角色扮演动作/资源游戏、虚拟建造游戏、大型多人在线游戏、策略游戏、增强现实游戏、移动设备上的游戏等。
该方法的一些实施例可以进一步包括自动地或响应于用户输入来控制虚拟建造模型与其他虚拟对象的交互,其中交互的一个或多个方面或结果至少部分地由所识别的建造元件的虚拟属性控制。例如,该交互可以涉及虚拟建造模型的用户控制的操纵,包括例如单独的虚拟建造元件的添加、删除或重新定位。此外,在一些实施例中,虚拟建造模型的能力或其他属性可以至少部分地由所识别的建造模型的特征和/或建造它的建造元件来确定。
在一些实施例中,该方法还可以包括控制所识别的真实世界建造模型的一个或多个功能。特别地,该方法可以包括将一个或多个控制信号通信到控制器,该控制器配置为控制真实世界建造模型的可控功能。控制器可以包含在真实世界建造模型中,例如,在其中一个真实世界建造元件中,或它可以是单独的控制器。可以响应于所识别的建造元件来生成或选择控制信号,并且特别是生成或选择控制信号以匹配所识别的真实世界建造模型。例如,建造系统可以包括一个或多个输出建造元件,其配置为执行可控制的功能,例如,用于实现运动的电动机或其他装置,光源等。附加地或替代地,建造系统可以包括输入建造元件,其包括输入装置或传感器,例如按钮、光传感器、倾斜传感器等。玩具建造系统还可以包括接口电路,该接口电路配置为与处理设备通信,以便将来自输入建造元件的输入/传感器信号或数据通信到处理装置和/或从数据处理系统向输出建造元件通信控制信号或数据。接口电路可以配置为以有线或无线方式与处理装置通信。接口电路可以实现为单独的接口建造元件,其可以以无线或有线方式连接到一个或多个输出和/或输入建造元件。接口电路还可以集成到一个、一些或甚至所有输入和/或输出建造元件中。例如,所有的输入和/或输出建造元件可以包括蓝牙电路或其他无线通信电路。因此,处理装置可以配置为检测建造模型中存在哪些输入和/或输出建造元件,并相应地控制和/或编程建造模型。而且,处理设备可以包括将一般命令(例如,向前移动)转换成适合于特定的、所识别的玩具建造模型(例如,对一组电动机中的各个电动机的控制)的特定命令的逻辑。
在一些实施例中,该方法包括检测已添加到真实世界建造模型的真实世界建造元件,例如通过基于捕获图像的序列检测真实世界建造模型的变化。该方法可以包括利用关于哪个真实世界建造元件已经存在于真实世界建造模型中的信息,例如,从如本文所述的识别过程的先前迭代,该方法可以利用已知的物理约束来促进对新添加的真实世界建造元件的识别。特别地,在一些实施例中,该方法可以提供候选真实世界建造元件的列表,其每一个都具有作为新添加的玩具对象的似然性。然后,该过程可以确定在场景内的检测位置处的候选真实世界建造元件的放置(特别地,以及模型的先前识别的第一建造元件)是否与建造系统施加的约束相兼容。因此,该过程可以确定最可能的候选真实世界建造元件之一。
在一些实施例中,该方法可以接收彩色图像,例如从数码相机,以及可选的附加的深度信息,然后其可以由该识别过程使用。例如,该方法的实施例可以利用深度信息来检测要识别的真实世界建造元件的3D位置。替代地或附加地,该方法的实施例可以使用深度信息来确定候选建造元件是否可以根据建造系统施加的物理约束定位在检测到的3D位置和/或取向。深度信息可以以多种形式提供,例如,基于3D深度图、局部表面属性(例如表面曲率)的地图,和/或类似物。
本公开涉及包括上面和下面描述的方法、对应的装置、系统、方法,和/或产品的不同方面,其每一个产生结合一个或多个其他方面描述的一个或多个益处和优点,且其每一个具有一个或多个实施例,所述实施例对应于结合其他方面所描述和/或在所附权利要求中公开的一个或多个实施例。
特别地,根据一个方面,本文公开了一种在计算机可读介质上编码的计算机程序,计算机可读介质例如是磁盘驱动器、存储器装置或其他数据存储装置。该计算机程序包括可执行计算机程序代码,其配置为指示数据处理系统以执行本文描述的方法的实施例的步骤。
根据另一方面,本文公开了包括数据处理系统的识别系统的实施例,该数据处理系统配置为执行本文公开的方法的实施例的步骤。例如,数据处理系统可以通过在其上存储如本文公开的计算机程序来配置。数据处理系统的示例包括适当编程的通用计算机,例如固定计算机或便携式处理装置,例如平板计算机、笔记本计算机、智能手机或其他移动装置。可以理解,数据处理系统可以实现为客户端-服务器或类似的分布式系统,其中图像捕获和其他用户交互由客户端装置执行,而图像处理和/或识别任务和/或其他计算任务可以由与客户端装置通信的远程主机系统执行。
在一些实施例中,数据处理系统可以包括图像捕获装置,例如,作为便携式数据处理装置的集成相机或类似的图像捕获装置。在一些实施例中,识别系统可以包括与数据处理系统分开的图像捕获装置,例如,图像捕获装置,其可连接以将数据或信号通信到计算机、便携式数据处理装置或其他数据处理装置。
图像捕获装置可包括相机。在一些实施例中,相机是数码相机,例如常规的数码相机。在一些实施例中,图像捕获装置包括3D捕获装置,例如3D敏感相机,比如将高分辨率图像信息与深度信息相结合的深度敏感相机。深度敏感型相机的一个示例是RealSenseTM3D相机,例如英特尔公司的开发人员套件中提供的型号F200。在一些实施例中,图像捕获装置可以包括在图像采集站中,该图像采集站可以包括图像捕获装置,例如,一个或多个数码相机,以及用于接收其图像将被捕获的真实世界建造模型的对象支撑件。图像采集站还可以包括一个或多个机构,用于改变相机相对于对象支撑件的视点。例如,相机可以可移动地安装,或者对象支撑件可以可移动地安装,例如,可旋转地和/或可移动地安装,使得相机和对象支撑件之间的距离和/或它们之间的相对取向可以改变。图像采集站还可以包括一个或多个光源,并且可选地包括适于改变物理玩具对象的照明的照明控制器,例如,照明光的强度和/或颜色分布和/或照明玩具对象的方向。
在识别过程期间,建造模型可以被图像捕获装置瞄准。在一些实施例中,图像捕获装置与显示由图像捕获装置看到的场景的显示器通信,以便于瞄准其图像将被捕获的所需真实世界建造模型。图像捕获装置和/或显示器还与识别系统的处理器和数据存储器通信。优选地,图像捕获装置、处理器和/或显示器集成在单个便携式装置中,例如平板计算机、便携式计算机、智能手机等。替代地,根据一些实施例,具有图像捕获装置的图像捕获装置或便携式装置可以与计算机通信,例如,与包括处理器、数据存储器和显示器的计算装置进行无线通信。在一些实施例中,图像捕获装置可以相对于建造模型是静止的,而在其他实施例中,图像捕获装置和/或建造模型被移来移去以便从不同的视点捕获建造模型的一系列图像。在一些实施例中,该过程包括从相同或不同的视点捕获建造模型的一系列图像,并且检测建造模型随时间的变化,例如,由于用户将建造元件添加到建造模型,从建造模型中删除建造元件,或相对于建造模型重新定位建造元件。一系列的图像可以是在离散时间捕获的图像、视频流等的形式。
识别系统的一些实施例可包括检测模块和识别模块。检测模块可以配置为进行捕获图像的图像检测,以便检测捕获的数字图像中的一个或多个建造元件。检测模块可以输出捕获图像内的一个或多个感兴趣区域的指示,例如包括潜在的可识别的建造元件的感兴趣区域。因此,识别模块可以从检测模块接收一个或多个感兴趣的部分图像或(多个)区域。识别模块可以配置为识别检测到的一个或多个建造元件。应当理解,检测模块和识别模块可以集成为单个模块或作为单独的模块提供。在一些实施例中,可以迭代地进行检测和识别子过程。例如,检测模块可以输出一个或多个候选区域或部分图像,然后将其馈入识别模块。然后,识别模块可以对每个候选区域或部分图像进行分类;基于分类模型的输出,然后可以丢弃一个或多个候选区域/部分图像,例如,基于分类模型输出的似然值,或者基于预测的(多个)建造元件是否与关于建造模型的先前认知一致的评估,例如,关于建造模型中的其他建造元件的认知,以及关于建造元件相对于彼此的放置和/或互连的物理限制的认知,如本文所述。根据另一方面,本文公开了包括多个真实世界建造元件、图像捕获装置和被编程为执行本文所述方法的步骤的处理器的建造系统的实施例。例如,该系统可以包括数据处理系统,其包括处理器,例如,适当编程的中央处理单元。
根据另一方面,本文公开了交互式游戏系统的实施例,其包括图像捕获装置、适于显示由图像捕获装置捕获的至少图像数据的显示器、以及处理器,其被编程为与图像捕获装置直接或间接地交互,或者对从图像捕获装置直接或间接地接收的图像数据起作用,并执行上述方法的处理步骤。交互式游戏系统还可以适于创建一个或多个识别的建造元件和/或建造模型的虚拟三维表示。
通过参考附图进行的实施例的以下详细描述,其他特征和优点将变得显而易见。
本文所公开的方法和系统的实施例可结合各种建造玩具使用,所述建造玩具使用具有联接构件的玩具建造元件,所述联接构件可利用各种组装系统,如磁体、螺柱、凹口、套管,其有或没有互锁连接、摩擦连接等。这些系统的示例包括但不限于可以商标名LEGO获得的玩具建造系统。例如,US3005282和USD253711S分别公开了一种这样的互锁玩具建造系统和玩具图。因此,在本发明的各种实施例中,玩具建造元件可以是互锁的玩具建造元件,例如砖块、零件、配件、迷你人物、武器、动物、植物或其他可以彼此物理附接以便形成玩具组件的部件。联接构件可包括配合螺柱和腔、球形接头、轴与孔之间的连接等。
附图说明
本发明的优选实施例将结合附图而详细描述,其中:
图1示意性地示出了使用本文描述的识别过程的实施例的识别系统的实施例。
图2示出了用于识别玩具建造模型的过程的示例的流程图。
图3、4、5A-C、6、7A-B和8A-B示出了用于识别玩具建造模型的过程的示例。
具体实施方式
图1示意性地示出了使用本文描述的识别过程的实施例的识别系统的实施例,其作为游戏系统的一部分。
特别地,游戏系统为真实世界玩具建造元件提供真实的世界建造体验,并将这种体验带入数字世界。当玩具建造元件在物理构建过程中被用户用来创建真实世界玩具建造组件或模型时,游戏系统自动创建玩具建造元件的数字表示,并且系统准确地实时创建正在构建的产生的组件的数字版本。组装的玩具建造模型的数字表示可以基于在现实世界建造过程中使用的真实世界玩具建造元件而在数字环境中具有特定行为。如下所述,实现了物理和数字游戏体验的无缝集成。然而,应当理解,本文描述的识别系统和方法的实施例也可以与其他类型的游戏系统结合使用。例如,在一些实施例中,识别过程可以应用于识别完整的玩具建造模型而不是执行作为增量构建过程的一部分而添加的元件的实时识别。
游戏系统包括以下主要部件:
-可彼此可拆卸地互连以形成玩具建造模型111的真实世界玩具建造元件,
-可选的深度相机127、
-可操作以产生包括玩具建造模型的场景的彩色图像的视频相机112。视频相机和深度相机可以集成为单个单元,或者它们可以是以彼此固定的空间关系布置的分开的单元。作为视频相机和深度相机的替代,可以使用另一种形式的图像捕获装置,例如配置为同时获得深度信息和图像的立体相机,或者甚至是常规的数字相机。一些实施例可以使用“并行跟踪和映射”(PTAM)或类似方法,例如,与移动相机组合。
-计算装置113,其上存储有可由计算装置的处理器114执行的计算机程序。计算装置可以例如是便携式装置,例如平板计算机、智能手机、膝上型计算机等,或固定计算机。该计算机程序包括若干主要模块:信号处理模块116,配置为接收和处理图像数据以及可选的深度数据;3D检测模块120,配置为检测一个或多个图像中的一个或多个玩具建造元件;对象识别模块121,配置为从数字图像数据识别玩具建造元件;以及用户体验模块122。计算装置还包括显示器123和用户界面装置124。
信号处理模块116、识别模块121、检测模块120和用户体验模块122可以由一个或多个处理器114实现。
计算装置113还包括库119(例如,数据库的形式),其包括关于已知的玩具建造元件的信息,例如玩具建造元件的3D模型和属性。信号处理模块116可操作以解译来自视频相机的输入信号,并且可选地,解译来自深度相机的输入信号。输入信号可以作为视频实时处理,并且可选地从相应的相机取回深度信息。信号处理模块对彩色图像输入进行姿态估计,从而确定视频相机相对于场景的位置和取向。这可以通过以下方式来完成:定位(作为2D像素位置)对于(3D)物理位置已知的多个不同图像特征,并从这些2D到3D对应性估计相机相对于场景的位置和取向。存在许多可以使用的特征描述符,例如SURF、SIFT、BRISK、ORB、FREAK、HoG。在IEEE Pattern Analysis and Machine Intelligence 22(6),610-622,2000中,C.-P.Lu,G.D.Hager和E.Mjolsness的“Fast and globally convergent poseestimation from video images”中描述了姿势估计过程的示例。
基于关于颜色和深度传感器之间的相对位置和取向的先前信息,可以根据计算出的视频相机的位置来计算深度相机相对于玩具建造模型的相对位置。可以对深度信号执行时间噪声滤波。基于相机模型,其指示图像中的像素的位置与物理空间中的入射光的方向之间的关系,深度信号可以被转换为3D点云,其中每个深度样本被转换成物理3D位置。
彩色图像中的每个像素可以被分类为玩具建造元件的颜色组中的最可能的颜色。分类可以基于数据驱动模型,例如机器学习算法,或者基于计算机视觉领域内已知的其他合适技术。玩具建造元件中的每一个都具有一组已知的颜色,并且通过查看描绘每个玩具建造元件的像素,可以训练分类器,使得对于给定的颜色样本,经训练的分类器可以估计这种颜色属于不同的颜色类别的概率。这可以使用支持向量机或其他机器学习技术来完成。
3D检测模块120可操作以检测场景中的变化。基于来自信号处理模块的输入,3D检测模块在存储器中保存场景的3D模型,并将来自深度相机的输入信息与3D模型进行比较。如果检测到输入信号与存储器中的3D模型之间的变化,则来自视频相机的视频信息被发送到对象识别模块。在一个实施例中,仅视频相机的视场的一部分被转发到识别模块,例如,包括检测到的变化的区域和检测到的变化的预定邻域的裁剪(crop)。为了防止例如在用户的手在构建过程期间出现在场景中时的不需要的比较,可以在3D检测模块中包括手检测过程。例如,如果发现来自当前传感器输入的3D点云的部分位于构建区域周围和上方的虚拟3D区域内,则过程确定该变化是由于用户将手或手臂伸向玩具模型。如果在场景中检测到手,则不会进行比较。在从场景移除手之后,3D检测模块将如上所述寻找场景中的变化。
识别模块121从3D检测模块接收生成的图像、多个图像或图像裁剪,并使用识别系统,例如,基于分类模型、计算机视觉技术、神经网络等来正确地对显示在图像、多个图像或图像裁剪中的(多个)玩具建造元件进行分类。在图像进行分类之后,将关于玩具识别的玩具建造元件(例如,标识玩具建造元件的类型和颜色的标识符)的信息返回到3D检测模块120。在一个实施例中,识别模块121输出可能识别的玩具建造元件连同相应的似然值的列表。
3D检测模块120从识别模块接收关于识别的玩具建造元件的信息或可能的玩具建造元件的列表。基于该信息,3D检测模块尝试估计最佳地适配先前由3D检测模块创建的深度信号和颜色分类的返回的列表的玩具建造元件的放置。
由于在互连玩具建造元件时由玩具建造系统施加的物理限制,每个新玩具建造元件可以添加到现有的虚拟模型中的位置和取向是有限的。3D检测模块分析可能的3D放置并基于可能的放置与深度图像和分类的彩色图像的相关性来计算对应值。
对应值包括连接性似然值,其指示联接构件是否与模型中的先前识别的玩具建造元件的联接构件兼容,并且是否可以连接到这些联接构件,特别是与当前分析的候选玩具建造元件的可能放置相邻的那些联接构件。下面更详细地描述该过程的示例。
这些分值可随后与来自识别模块的似然值组合,以得到每个候选玩具建造元件的组合似然值。
然后根据它们相应的组合似然值对候选玩具建造元件进行分类,然后将具有最高分值的建造元件与已经检测到新放置的元件的参考位置一起传递给用户体验模块122。在一个实施例中,可以转发元件和位置的候选者列表,以便允许用户体验模块向用户提供选择正确的候选者的选项,例如,通过呈现排序的列表并允许用户使用键盘上的箭头键、操纵杆、触摸屏或其他用户界面来指示用户选择。
因此,用户体验模块122接收关于新放置的玩具建造元件及其在场景中的位置的信息。该模块然后创建玩具建造模型的数字版本126。然后,在真实世界中构建的玩具建造模型可以被转换为由虚拟玩具建造元件建造的虚拟玩具建造模型。虚拟模型可以具有各种属性,其对应于在物理构建过程中使用的特定玩具建造元件。举例来说,如果例如建造汽车,则速度、加速度、转向等可取决于所选择的发动机部件、轮胎、所使用的砖块的数量等。
图2示出了用于识别玩具建造模型的过程的示例的流程图。该过程可以由适当编程的数据处理装置或系统执行,例如,通过便携式处理装置,或者与客户终端通信的主计算机或另一个合适的数据处理系统。例如,该过程可以由图1的系统执行。
在初始步骤S1中,该过程接收表示包括要识别的玩具建造模型的真实世界场景的图像数据。图像数据可以表示场景的一个或多个图像,诸如一个或多个彩色图像、视频流或其他合适的表示。该过程可以从一个或多个相机或其他合适的图像捕获装置接收图像数据。相机或其他图像捕获装置可以在执行该方法的数据处理装置或系统的内部或外部。图像数据可包括颜色信息和可选的深度信息,例如,可从深度传感器、立体相机或其他合适的源获得。在随后的步骤S2中,该过程处理所接收的图像数据,以便检测场景中的玩具建造模型,并检测玩具建造模型内的各个玩具建造元件。例如,该过程可以对图像数据进行姿态估计,从而确定相机相对于场景的位置和取向。该过程可以进一步执行背景检测,以便从表示背景(或其他对象)的图像部分中分离表示要识别的玩具建造模型的图像部分。为此,该过程可以使用计算机视觉领域中已知的任何合适的技术。该过程还可以使用边缘检测、特征检测和/或其他合适的技术来检测图像内的各个玩具建造元件。对各个玩具建造元件的检测可以产生表示在模型内的各个检测到的玩具建造元件的位置、形状和尺寸的边界或边界体积的表示。该过程可以创建包括玩具建造模型的数字表示的数据结构226。例如,最终,数据结构可以表示各个玩具建造元件、它们在模型内的位置和表示,以及它们如何连接到模型中的其他玩具建造元件的信息。例如,数据结构可以表示为图形,其中图形的节点表示玩具建造元件,并且节点之间的链路表示玩具建造元件之间的连接。替代地,可以使用其他形式的数据结构。合适的数据结构的示例在WO 04/034333中描述。在步骤S2期间,创建数据结构的初始版本,例如,检测到的玩具建造元件、它们的边界体积和位置的列表。在随后的步骤期间,将添加附加信息,例如将各个玩具建造元件标识为相应的已知的玩具建造元件的标识符、指示它们如何与模型的其他玩具建造元件连接的连接性信息、指示识别的置信水平的似然值,和/或类似物。将参考图2的方法的后续步骤更详细地描述这一点。
在随后的识别步骤S3中,该过程执行检测到的玩具建造元件的初始识别。识别步骤接收图像和检测到的玩具建造元件的位置,可选地以描绘各个检测到的玩具建造元件的图像裁剪的形式。识别步骤执行识别过程,例如,使用特征分析、分类模型、计算机视觉技术、神经网络和/或类似物来正确地分类图像、多个图像或图像裁剪中所示的玩具建造元件。为此,该过程可以利用已知的玩具建造元件的数字表示的库119;每个已知的玩具建造元件可以具有标识玩具建造元件的相关的标识符。识别步骤将每个检测到的玩具建造元件识别为来自库的已知的玩具建造元件之一,并从库中返回最可能匹配的已知的建造元件的标识符。在一些实施例中,识别步骤输出可能识别的玩具建造元件连同相应的似然值的列表。该过程存储所得到的标识符或标识符列表,以及数据结构226中计算的似然值。
尽管在本示例中,各个玩具建造元件的检测和识别被描述为单独步骤的部分(分别是步骤S2和S3),但是应当理解,各个玩具建造元件的识别可以作为对图像内的玩具建造元件的初始检测的组成部分来执行。
在随后的步骤S4中,对于每个识别的玩具建造元件,该过程标识图像内的每个识别的玩具建造元件的联接构件的位置,并计算每个联接构件的第一连接性似然值,其指示联接构件接合相邻的玩具建造元件的联接构件的可能性。为此,该过程使用来自库119的对应的已知玩具建造元件的信息。特别地,库可以包括玩具建造元件的数字表示,其表示每个联接构件相对于玩具建造元件的位置。用于表示玩具建造元件的联接构件的合适的数据结构在WO 04/034333中有所描述,其全部内容通过引用并入本文。连接似然性的计算可以基于特征检测、合适的分类模型或在计算机视觉领域内已知的任何其他合适的技术。例如,当该过程可以将玩具建造元件的联接构件识别为清楚可见且不被阻碍时,该过程可以为所述联接构件分配低连接似然性。然而,当联接构件未被识别为可见而是被在该联接构件附近检测到的另一个玩具建造元件隐藏时,则该过程将为该联接构件分配高连接似然性。所识别的玩具建造元件的联接构件的连接似然性存储在表示玩具建造模型的虚拟模型的数据结构226中。在实施例中,在识别步骤S3返回每个玩具建造元件的可能候选者列表的情况下,步骤S4可以相应地为每个候选的联接构件计算连接似然性,例如,在假设检测到的玩具建造元件确实是候选之一的情况下以计算的相应的联接构件的连接似然性的形式。在一些实施例中,该过程仅针对一些玩具建造元件或针对一些候选计算连接似然性,例如,仅针对具有高于预定阈值的识别似然性的那些。该过程将得到的连接似然性存储在数据结构226中。初始时,与联接构件相关联的连接似然性可以仅表示联接构件连接到某个其他联接构件的一般似然性,而不参考其可能是哪个其他联接构件。这可能是有利的,因为该过程可能尚未识别出相邻的玩具建造元件,因此可能还不具有关于所述联接构件可以连接到的任何特定相邻联接构件的任何认知。还应当理解,即使步骤S3和S4在图2中被示为单独的步骤,步骤S4也可以作为步骤S3的组成部分而不是作为单独的步骤来执行。
在步骤S5中,该过程确定是否已经识别出或以足够高的置信度识别出所有检测到的玩具建造元件。例如,该过程可以确定是否已经以高于预定阈值的似然值识别出所有检测到的玩具建造元件。如果是,则该过程停止;否则该过程在步骤S6继续。
在步骤S6中,该过程选择已经以高似然值识别的玩具建造元件中的一个,例如,具有识别的最高似然值并且在先前迭代中尚未被选择的玩具建造元件。然后,该过程检测所选择的玩具建造元件的近邻(即相邻的玩具建造元件),例如这样的玩具建造元件,其边界体积在所选择的玩具建造元件的预定的接近范围内(例如,具有共同边界的那些)。
在步骤S7中,该过程确定所选择的玩具建造元件的任何检测到的近邻是否尚未以足够高的似然值被识别,例如以高于预定阈值的似然值。如果是这种情况,则该过程在步骤S8进行;否则过程返回到步骤S5。在步骤S8中,该过程选择所选择的玩具建造元件的检测到的邻居中的一个,例如具有最高的先前似然值(但低于预定阈值)的邻居。然后,该过程分析所选择的邻居的每个联接构件,并确定以下连接似然性:联接构件与所选择的邻居相对于所选择的玩具建造元件的相对放置一致,并且联接构件可以连接到所选择的玩具建造元件的一个联接构件。为此,该过程可以一次考虑所选择的玩具建造元件的每个联接构件:对于所选择的玩具建造元件的每个联接构件,该过程确定所选择的邻居的联接构件中的一个或多个是否在所选择的玩具建造元件的所述联接构件的附近。如果是这种情况,则该过程确定所选择的玩具建造元件的联接构件的类型是否与在附近检测到的联接构件兼容。如果是这种情况,即如果联接构件可以形成配合连接,则所选择的邻居的联接构件的连接似然性增加;否则连接似然性减小。该确定还可以取决于先前确定的上述所选择的玩具建造元件的联接构件的第一(一般)连接似然性。类似地,该过程可以处理所选择的邻居的每个联接构件,并确定所选择的玩具建造元件在其附近是否存在任何兼容的或不兼容的联接构件。
兼容性的确定可以基于连接类型,其中每个联接构件可以具有一组可能的连接类型中的相关的一个连接类型。例如,该过程可以使用连接表或矩阵,其中每个进入矩阵的条目由一对连接类型索引并指示该对连接类型是否彼此兼容,例如,如WO 04/034333中所述。基于各个联接构件的所确定的连接似然性,可以计算所选择的邻居的合并连接似然性并用于重新计算所述邻居的识别似然性。特别地,如果所选择的邻居的联接构件具有与所选择的玩具建造元件一致的高连接似然性,则可以增加所选择的邻居的识别似然值;否则,识别似然值可以减少。应当理解,连接似然性也可以用于重新计算所选择的玩具建造元件的识别似然性。
参考图3、4、5A-C、6、7A-B和8A-B,并继续参考图2,现在将基于玩具建造模型的具体示例进一步描述图2中所示的识别过程的示例。
图3示出了包括玩具建造模型311的场景的捕获图像。例如,该过程可以接收如图3中所示的捕获图像作为输入。如上所述,该过程的一些实施例接收多个图像、视频流和/或深度信息和/或促进识别过程的另外的信息。然而,出于本示例和易于描述的目的,考虑接收简单数字彩色图像的过程的实施例。本示例的玩具建造模型311由以名为LEGO的砖块的形式的玩具建造元件331-336构成。特别地,砖块331和334是箱形砖块,每个砖块在其顶表面处具有联接螺柱的2×4矩阵,并且在其底侧具有用于接收这种螺柱的对应的腔。砖块332和336是箱形砖块,每个砖块在其顶表面处具有联接螺柱的1×4矩阵,并且在其底侧具有用于接收这种螺柱的对应的腔。最后,砖块333和335是箱形砖块,每个砖块在其顶表面处具有联接螺柱的2×2矩阵,并且在其底侧具有用于接收这种螺柱的对应的腔。应当理解,本文描述的过程的实施例还可以与其他类型的玩具建造元件和/或具有不同数量和/或布置的玩具建造元件一起执行。
图4示出了检测步骤S2和识别步骤S3的结果。特别地,图4示出了玩具建造模型的捕获图像,其中三个检测到的边界体积341、342和343已被覆盖。边界体积341与砖块331相关联,而边界体积343与砖块333相关联。在该示例中,假设检测步骤不能将砖块333和336识别为单独的砖块,而是将它们识别为一个单个砖块,如边界体积342所示。为了便于呈现,未示出检测到的砖块334和335的边界体积。
因此,识别步骤S3接收原始图像数据和边界体积作为输入,并基于已知的玩具建造元件的库返回初始识别结果。在本示例中,为每个砖块分配包括两个部分的标识符:唯一地标识砖块的形状和尺寸(即,砖块的几何特征)的标识号,和标识砖块的颜色的标识符。
在本示例中,识别步骤S3已将对应于边界框341的砖块标识为砖块“3001红棕色”,其中“3001”是标识砖块的几何形状的标识符,而“红棕色”标识其颜色。该过程进一步计算出0和100之间的识别似然值,其中100表示绝对确定性。在砖块331的示例中,计算出的识别似然值是95.0,表示高置信水平。在图4的示例中,初始识别结果表示为圆圈,例如,圆圈351,其表示用于识别砖块331的识别结果。在本示例中,识别步骤不能以足够高的置信度(例如,以高于预定阈值的识别似然值,例如80.0)识别对应于边界体积343的砖块,因为存在一些替代的已知的砖块,它们由于缺乏特征(不能看到螺柱,小角度......)将与图像数据和检测到的边界体积一致。然而,颜色被识别为淡紫色。在图5中,这由标有问号的圆圈353示出。
此外,关于边界框342,该过程已经确定几何形状与砖块类型“3001”一致,即在其顶侧具有联接螺柱的2×4矩阵的箱形砖块。此外,该过程已将边界体积342内的颜色识别为“中度奶糖色”。但是,由于已知的砖块的库不包含任何砖块“3001中度奶糖色”,因此这不是库中的任何有效候选。该过程还确定了边界体积将与并排放置的两个长形箱形砖块一致,并且每个砖块的顶侧都具有螺柱的1×4矩阵。该砖块类型具有相关联的标识符“3010”,并且由于库119中存在颜色“中度奶糖色”的砖块“3010”,所以该过程已将边界框342与两个识别的砖块相关联,如圆圈352A-B所示,其每一个都具有与其相关联的自身的识别似然值,在该示例中分别为82.0和60.0。
应当理解,该过程可以为每个边界框返回附加的候选识别结果。例如,该过程可以返回对应于并排布置的两个1×4砖块的边界框341的识别结果。在图4的示例中,出于简化说明的原因,仅再现具有与砖块相关联的至少80.0的识别似然值的识别结果。
图5A-C示出了识别过程的步骤S4的结果。特别地,图5A示出了如参考图4所描述的具有检测到的边界框的捕获图像。此外,该过程已经基于相应的已知砖块的存储在库119中的几何信息标识出这些砖块的联接构件的位置,在这种情况下是螺柱和配合腔。当识别的元件351的螺柱的位置与图像数据匹配并且特别是与砖块331的图像数据匹配时,识别的元件351的螺柱的位置由图5A中的十字361A指示,三个对应的腔的位置由圆圈361指示。即使在图像中实际上看不到腔,也可以根据库中的几何信息确定它们的位置。类似地,当与砖块332的图像数据匹配时,元件352A的螺柱的位置也由十字362A-B表示。从图5A中可以看出,螺柱362A在图像中是可见的,而螺柱362B被相邻的砖块333隐藏。
图5B示出了识别的砖块元件351的各种联接构件的连接似然性,其对应于图5A的图像中的砖块331。砖块351在其顶侧具有2×4=8个螺柱,在其底侧具有对应的2×4=8个腔,即总共16个联接构件。在图5B中,对应的计算的第一连接似然性被示为与元件351相关联的菱形。连接似然性以0到100的标度表示,其中100对应于绝对确定性。特别地,螺柱361A的连接似然性示出为菱形371A(为简单起见,仅明确示出了2个菱形)。它们的连接似然性较低(在所示的示例中分别为2.0和3.0),因为所有螺柱361A在图像中清晰可见。腔361B的连接似然性,如图5A中的圆圈所示,示出为菱形371B。它们的值相对较高(分别为90.0、92.0和85.0),因为这些腔被确定为紧邻(已经检测到但尚未识别)砖块333。其余五个腔的连接性371C(其中仅三个在图5B中明确示出)较低,在该示例中为60.0、10.0和50.0,因为没有检测到相邻的砖块。然而,由于从当前的相机视角(也取决于任何这种砖块的尺寸和形状),连接到这些腔中的一个或多个腔的相邻砖块可能是不可见的,因此一些连接似然性约为50。
图5C示出了砖块元件352A的各种联接构件的连接似然性,其对应于图5A的图像中的砖块332。砖块352A在其顶侧具有1×4=4个螺柱,在其底侧具有对应的1×4=4个腔,即总共8个联接构件。螺柱362A的连接似然性示出为菱形372A。它们的连接似然性较低(在所示的示例中分别为2.0和3.0),因为所有螺柱361A在图像中清晰可见。螺柱362B的连接似然性372B相对较高(分别为90.0和92.0),因为这些螺柱被确定为紧邻(已经检测到但尚未识别)砖块333。四个腔(未在图5B中明确指示)的连接性372C分别为90.0、92.0、3.0和91.0,再次基于例如它们的可见性和与其他砖块的接近度。
图6、7A-B和8A-B示出了该过程的步骤S8的结果。特别地,如上所述,该过程将迭代已经以高置信度(例如,高于预定阈值的分值,例如高于80.0)识别的玩具建造元件。对于每个识别的玩具建造元件,该过程确定相邻的玩具建造元件,以及所识别的玩具建造元件的哪个玩具联接构件可以连接到该邻居。在本示例中,该过程将导致检测到尚未被识别的元件353(对应于捕获图像中的砖块333),其作为两个识别的砖块351(对应于捕获图像中的砖块331)和识别的砖块352(对应于捕获图像中的砖块332,参见图5A)的邻居。此外,该过程确定砖块351的联接构件371B具有基于砖块333与联接构件371B的接近度的连接到元件353的高连接似然性,特别地,元件353连接到联接构件371B的相应的似然性由菱形381B示出。在本示例中,连接似然性381B的数值分别为90.0、92.0和85.0。类似地,该过程基于砖块333与联接构件372B的接近度确定砖块352的联接构件372B具有连接到元件353的高连接似然性382B。在本示例中,连接似然性382B的数值分别为90.0和92.0。
使用连接似然性381B和382B以及边界体积434内的检测到的颜色,该过程可以执行砖块333的更新的识别并计算更新的识别似然性值。特别地,该过程可以确定已经在元件333附近识别的元件的联接构件361B和362B的位置和类型。当从库119确定不同的已知的玩具建造元件的识别分值时,该过程确定这些玩具建造元件中的哪些建造元件:
1)具有可以根据边界体积343放置的形状,以及
2)当玩具建造元件根据边界体积343放置时,在联接构件361B和362B的位置附近具有一致类型的联接构件。
基于关于边界体积的信息和关于邻居的联接构件的附加信息,该过程确定玩具建造元件333的更新的候选。在本示例中,该过程确定,在识别似然值为45.0的情况下,玩具建造元件333可以是具有几何标识符“2357”和颜色“淡紫色”的已知的玩具建造元件(如图6中如圆圈353A所示),或者,在识别似然值为45.0的情况下,玩具建造元件333可以是具有几何标识符“3003”和颜色“淡紫色”的已知的玩具建造元件(如图6中由圆圈353B所示)。
这两个示例分别在图7A-B和图8A-B中更详细地示出。
图7A-B示出了元件353A的解决方案。图7A示出了元件353A的解决方案的数字表示,即2x2砖块。基于砖块353A的特定联接构件的所有连接似然性的计算在图7B中示出。特别地,对于这对候选砖块,元件353A通过四个联接构件连接到元件351。应注意,这些连接似然性(也称为第二连接似然性)是相应的元件的特定联接构件之间的连接的似然性,而在步骤S4中计算的先前连接似然性是一个砖块的联接构件连接到任何其他砖块的非特定似然性(这种似然性也称为第一连接似然性)。
图8A-B示出了元件353B的解决方案。图8A示出了元件353B的解决方案的数字表示,即在其顶表面上具有三个联接螺柱的L形砖块。基于砖块353B的特定联接构件的所有第二连接似然性的计算在图8B中示出。特别地,对于这对候选砖块,元件353B仅通过三个联接构件连接到元件351。然而,根据仅从捕获图像获得的信息,该过程无法确定两种替代方案中哪一种更有可能,因为需要进行区分的砖块333的相关部分在捕获图像中被隐藏。
在任何情况下,然后可以针对模型的其他砖块重复上面针对元件331、332和333所示的过程,直到考虑到每个可见的玩具建造元件。最后,该过程可能已经基于与其他砖块的附加连接性信息解决了一些模糊性,或者该过程可能实现多个同样可能的解决方案,在这种情况下必须决定提交哪一个。在这种情况下,该过程可以请求用户输入和/或使用其他信息来选择替代方案中的一个,例如,使用不同砖块类型的先前的似然性(例如,根据生产数量、它们在预定建造组中的出现,等等),有利于具有更少元件、更多连接和/或使用其他选择标准的模型。
尽管已经参考某些特定实施例描述了本发明,但是在不脱离所附权利要求中概述的本发明的精神和范围的情况下,本领域技术人员将清楚其各种修改。

Claims (23)

1.一种计算机实现的方法,其用于识别组装以形成真实世界建造模型的建造系统的多个真实世界建造元件,特别是组装以形成真实世界玩具建造模型的玩具建造系统的玩具建造元件,每个真实世界建造元件包括联接构件,用于将所述真实世界建造元件与所述建造系统的一个或多个其他真实世界建造元件可拆卸地连接,从而形成所述真实世界建造模型;其中所述方法包括:
-接收所述真实世界建造模型的至少一个捕获图像;
-处理所述至少一个捕获图像,以便从所述建造系统的多个已知的真实世界建造元件的存储的数字表示至少初步地将所述至少一个捕获图像中的至少第一真实世界建造元件识别为第一已知的真实世界建造元件,每个数字表示包括连接性信息,所述连接性信息指示对应的真实世界建造元件如何可拆卸地连接到所述建造系统的其他真实世界建造元件;
-检测所识别的第一真实世界建造元件附近的图像中的至少第二真实世界建造元件的图像数据;
-从所述建造系统的所述多个已知的真实世界建造元件的所述存储的数字表示将所述第二真实世界建造元件识别为第二已知的真实世界建造元件;其中识别所述第二真实世界建造元件至少部分地基于与所述第一和第二已知的建造元件相关联的连接性信息。
2.如权利要求1所述的方法,其中处理所述至少一个捕获图像包括标识所述至少一个捕获图像的对象部分和背景部分,所述对象部分表示所述建造模型。
3.如前述权利要求中任一项所述的方法,包括:确定第一似然值,所述第一似然值指示所述识别的第一真实世界建造元件是所述第一已知的真实世界建造元件的似然性。
4.如权利要求3所述的方法,还包括基于对所述第二真实世界建造元件的识别来更新所述第一似然值。
5.如前述权利要求中任一项所述的方法,其中识别所述第二真实世界建造元件包括:
-从所述建造系统的所述多个已知的真实世界建造元件的所述存储的数字表示确定一个或多个候选建造元件,每个候选建造元件具有相关联的第二似然值,其指示所述相应的候选建造元件是所述至少一个捕获图像中描绘的所检测到的第二真实世界建造元件的似然性。
6.如权利要求5所述的方法,其中识别所述第二真实世界建造元件包括:
-对于候选建造元件中的每一个且基于所述捕获图像,估计对应的虚拟建造元件在对应于所述真实世界建造模型的虚拟建造模型中的放置;
-基于所估计的放置与至少所述捕获图像的相关性,计算每个候选建造元件的各自的对应值;
-至少基于所计算的对应值选择候选建造元件和对应的放置。
7.如权利要求6所述的方法,其中估计虚拟建造模型中的所述放置至少基于接收到的深度信息和/或接收到的颜色信息。
8.如权利要求5至7中任一项所述的方法,其中识别所述第二真实世界建造元件包括:
-确定所识别的第一真实世界建造元件的联接构件连接到所述真实世界建造模型的另一真实世界建造元件的第一连接似然性。
9.如权利要求5至8中任一项所述的方法,其中识别所述第二真实世界建造元件包括:
-对于每个候选建造元件,确定所述候选建造元件的联接构件在所述真实世界建造模型内处于所检测到的第二真实世界建造元件的位置时可与所识别的第一真实世界建造元件的联接构件连接的第二连接似然性;
-至少基于所确定的第二连接似然性来确定所述第二似然值。
10.如权利要求9从属于权利要求8时所述的方法,其中至少基于所确定的第一连接似然性和所述第二连接似然性来确定所述第二似然值。
11.如前述权利要求中任一项所述的方法,其中所述连接性信息指示与每个联接构件相关联的连接类型。
12.如权利要求11所述的方法,其中所述连接类型指示所述相关联的联接构件能连接到哪种其他类型的连接类型。
13.如前述权利要求中任一项所述的方法,其中每个已知的真实世界建造元件的所述数字表示指示相对于对应的已知的真实世界建造元件的多个网格,每个网格具有多个网格点;且所述已知的真实世界建造元件的联接构件中的每一个与所述网格点中的一个相关联并具有对应的连接类型。
14.如前述权利要求中任一项所述的方法,其中每个已知的真实世界建造元件的所述数字表示指示所述已知的真实世界建造元件的一个或多个属性,每个属性选自以下属性:所述已知的真实世界建造元件的形状,所述已知的真实世界建造元件的大小、所述已知的真实世界建造元件的边界体积、所述已知的真实世界建造元件的一个或多个颜色。
15.如前述权利要求中任一项所述的方法,包括:
-确定所识别的第一真实世界建造元件的第一联接构件,该第一联接构件在所检测到的第二真实世界建造元件附近;
-确定能可拆卸地连接到所述第一联接构件的联接构件的一个或多个兼容的连接类型;并且
其中识别所检测到的第二真实世界建造元件至少部分地基于所述已知的真实世界建造元件的连接类型和所确定的兼容的连接类型。
16.如权利要求15所述的方法,其中识别所检测到的第二真实世界建造元件包括增加所检测到的第二真实世界建造元件是所述已知的真实世界建造元件中带有具有所确定的兼容连接类型中的一个的联接构件的一个的似然性。
17.如权利要求15或16所述的方法,包括:
确定所检测到的第二真实世界建造元件在所述真实世界建造模型内的位置;并且
其中识别所检测到的第二真实世界建造元件包括:
-当所述第二已知的真实世界建造元件放置在所检测到的第二真实世界建造元件的所述确定的位置时,确定所述第一联接构件附近的所述第二已知的真实世界建造元件的候选联接构件;以及
-确定所述第二联接构件是否与所述第一联接构件兼容。
18.如前述权利要求中任一项所述的方法,其中识别所述第一真实世界建造元件包括确定所述第一已知的真实世界建造元件的数字表示在对应于所述真实世界建造模型的虚拟建造模型中的第一放置;并且其中识别所述第二建造元件包括:
-确定所述已知的真实世界建造元件的至少一个候选真实世界建造元件;
-确定所确定的候选真实世界建造元件的数字表示在所述虚拟建造模型中的候选放置;
-确定所述候选放置与放置在所述确定的第一放置处的所识别的第一建造元件的数字表示的兼容度;
-至少部分地基于所确定的兼容度来确定所检测到的第二真实世界建造元件是所述候选真实世界建造元件的识别似然性。
19.如权利要求18所述的方法,其中确定所述候选真实世界建造元件和所述候选放置包括确定位于候选放置处的所述候选建造元件的数字表示与所述至少一个捕获图像的一致性程度。
20.一种计算机程序产品,包括程序代码,所述程序代码配置为,当由数据处理系统执行时,使得所述数据处理系统执行前述权利要求中任一项所述的方法的步骤。
21.如权利要求20所述的计算机程序产品,其实现为其上存储有所述程序代码的计算机可读介质。
22.一种游戏系统,包括:多个真实世界玩具建造元件;已知的真实世界玩具建造元件的数字表示的数据库;以及如权利要求20或21所述的计算机程序产品。
23.一种数据处理系统,其配置为执行如权利要求1至19中任一项所述的方法。
CN201780027648.XA 2016-05-09 2017-05-08 用于玩具识别的系统和方法 Active CN109069929B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
DKPA201670304 2016-05-09
DKPA201670304 2016-05-09
PCT/EP2017/060865 WO2017194439A1 (en) 2016-05-09 2017-05-08 System and method for toy recognition

Publications (2)

Publication Number Publication Date
CN109069929A true CN109069929A (zh) 2018-12-21
CN109069929B CN109069929B (zh) 2022-07-12

Family

ID=58671693

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780027648.XA Active CN109069929B (zh) 2016-05-09 2017-05-08 用于玩具识别的系统和方法

Country Status (5)

Country Link
US (1) US10650222B2 (zh)
EP (1) EP3454956B1 (zh)
CN (1) CN109069929B (zh)
DK (1) DK3454956T3 (zh)
WO (1) WO2017194439A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210142573A1 (en) * 2019-11-07 2021-05-13 Square Enix Co., Ltd. Viewing system, model creation apparatus, and control method
US11636306B2 (en) * 2018-05-21 2023-04-25 Imagination Technologies Limited Implementing traditional computer vision algorithms as neural networks

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10894342B2 (en) 2018-03-29 2021-01-19 Kraft Foods Group Brands Llc System and method for molding comestible building blocks
USD844394S1 (en) 2018-03-29 2019-04-02 Kraft Foods Group Brands Llc Mold
CN110047152B (zh) * 2019-04-12 2022-05-17 腾讯科技(深圳)有限公司 基于虚拟环境的物体构建方法、装置及可读存储介质
US11574353B2 (en) * 2019-10-09 2023-02-07 Target Brands, Inc. Compatibility based furniture recommendations
EP4162388A1 (en) * 2020-06-03 2023-04-12 Slab Dream Lab, Llc Systems and methods for optical recognition and identification of objects, and inventorying of the same
DE102021106803A1 (de) 2021-03-19 2022-09-22 Geobra Brandstätter Stiftung & Co. Kg Portaleinheit für Spielzeug, System sowie Verfahren zur Verwendung einer Portaleinheit
WO2024016052A1 (en) * 2022-07-18 2024-01-25 EMAGINEER Pty Ltd Improved construction system
US20240050854A1 (en) * 2022-08-09 2024-02-15 Reuven Bakalash Integrated Reality Gaming

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3532899B2 (ja) * 2002-01-24 2004-05-31 株式会社タカラ ビデオゲーム玩具
CN101675458A (zh) * 2007-03-16 2010-03-17 乐高公司 积木构件模型的组装说明的自动生成
CN102713931A (zh) * 2009-08-04 2012-10-03 艾修视力科技有限公司 用于对象提取的系统和方法
CN102754093A (zh) * 2009-12-09 2012-10-24 索尼电脑娱乐公司 服务器方渲染
WO2013080206A1 (en) * 2011-11-29 2013-06-06 Wainztein Amitay Building unit toy
CN103702726A (zh) * 2011-05-23 2014-04-02 乐高公司 用于搭建元件模型的构建指令的产生
CN103717280A (zh) * 2011-06-07 2014-04-09 耐克国际有限公司 虚拟表现系统

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3005282A (en) 1958-01-28 1961-10-24 Interlego Ag Toy building brick
USD253711S (en) 1977-08-29 1979-12-18 Interlego Ag Toy figure
US7092899B2 (en) * 2000-10-31 2006-08-15 Interlego Ag Method and system for generating a brick model
US8224078B2 (en) * 2000-11-06 2012-07-17 Nant Holdings Ip, Llc Image capture and identification system and process
US20020196250A1 (en) * 2001-06-20 2002-12-26 Gateway, Inc. Parts assembly for virtual representation and content creation
DK1550085T3 (da) 2002-10-11 2007-04-10 Lego As Fremgangsmåde til generering af en computerlæsbar model
RU2007101498A (ru) * 2004-06-17 2008-07-27 Лего А/С (Dk) Автоматическое генерирование инструкций для построения моделей из стандартных блоков
US8690631B2 (en) * 2008-09-12 2014-04-08 Texas Instruments Incorporated Toy building block with embedded integrated circuit
PL2483868T3 (pl) * 2009-10-02 2015-04-30 Lego As Uzależniona od możliwości łączenia optymalizacja geometrii w renderingu przeprowadzanym w czasie rzeczywistym
WO2011121117A1 (en) * 2010-04-02 2011-10-06 Imec Virtual camera system
US10315119B2 (en) 2011-05-17 2019-06-11 Activision Publishing, Inc. Video game with concurrent processing of game-related physical objects
WO2013082538A1 (en) 2011-11-30 2013-06-06 Waba Fun, Llc Systems and methods for authenticating objects using ir
US9336456B2 (en) 2012-01-25 2016-05-10 Bruno Delean Systems, methods and computer program products for identifying objects in video data
WO2013158750A2 (en) 2012-04-17 2013-10-24 Wittich David System and method for providing recursive feedback during an assembly operation
EP2749327A1 (en) 2012-12-26 2014-07-02 Disney Enterprises, Inc. Managing objectives, an environment, and/or a theme associated with a virtual space based on characters made accessible responsive to corresponding tokens being detected
JP6134163B2 (ja) 2013-03-08 2017-05-24 任天堂株式会社 情報処理装置、情報処理システム、情報処理方法及びコンピュータプログラム
US9355123B2 (en) 2013-07-19 2016-05-31 Nant Holdings Ip, Llc Fast recognition algorithm processing, systems and methods
WO2015185629A2 (en) 2014-06-06 2015-12-10 Lego A/S Interactive game apparatus and toy construction system
US20160085518A1 (en) * 2014-09-21 2016-03-24 Jang Hee I Systems and methods for imaging and generation of executable processor instructions based on ordered objects

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3532899B2 (ja) * 2002-01-24 2004-05-31 株式会社タカラ ビデオゲーム玩具
CN101675458A (zh) * 2007-03-16 2010-03-17 乐高公司 积木构件模型的组装说明的自动生成
CN102713931A (zh) * 2009-08-04 2012-10-03 艾修视力科技有限公司 用于对象提取的系统和方法
CN102754093A (zh) * 2009-12-09 2012-10-24 索尼电脑娱乐公司 服务器方渲染
CN103702726A (zh) * 2011-05-23 2014-04-02 乐高公司 用于搭建元件模型的构建指令的产生
CN103717280A (zh) * 2011-06-07 2014-04-09 耐克国际有限公司 虚拟表现系统
WO2013080206A1 (en) * 2011-11-29 2013-06-06 Wainztein Amitay Building unit toy

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11636306B2 (en) * 2018-05-21 2023-04-25 Imagination Technologies Limited Implementing traditional computer vision algorithms as neural networks
US20210142573A1 (en) * 2019-11-07 2021-05-13 Square Enix Co., Ltd. Viewing system, model creation apparatus, and control method
US11941763B2 (en) * 2019-11-07 2024-03-26 Square Enix Co., Ltd. Viewing system, model creation apparatus, and control method

Also Published As

Publication number Publication date
EP3454956B1 (en) 2021-08-04
WO2017194439A1 (en) 2017-11-16
DK3454956T3 (da) 2021-10-25
CN109069929B (zh) 2022-07-12
EP3454956A1 (en) 2019-03-20
US10650222B2 (en) 2020-05-12
US20190138785A1 (en) 2019-05-09

Similar Documents

Publication Publication Date Title
CN109069929A (zh) 用于玩具识别的系统和方法
US9972137B2 (en) Systems and methods for augmented reality preparation, processing, and application
US10089772B2 (en) Context-aware digital play
US11779846B2 (en) Method for creating a virtual object
CN105981076B (zh) 合成增强现实环境的构造
EP2202608B1 (en) Systems and methods for transporting physical objects from real physical life into virtual worlds
EP3545497B1 (en) System for acquiring a 3d digital representation of a physical object
CN107683165B (zh) 用于生成计算机模型的技术以及利用它们的设备、系统和方法
JP6027554B2 (ja) 情報処理装置、情報処理システム、ブロックシステム、および情報処理方法
CN105190703A (zh) 使用光度立体来进行3d环境建模
CN102681661A (zh) 在玩游戏中使用三维环境模型
CN102194105A (zh) 用于人体跟踪的代表训练数据
CN102609942A (zh) 使用深度图进行移动相机定位
CN110389703A (zh) 虚拟物品的获取方法、装置、终端和存储介质
CN106125903A (zh) 多人交互系统及方法
US10471343B2 (en) Information processing apparatus, information processing system, assembled device, and information processing method
US10130883B2 (en) Information processing device and information processing method
JP2015136450A (ja) 情報処理装置および情報処理方法
JP6177146B2 (ja) 情報処理装置および情報処理方法
JP2021192230A (ja) 拡張現実表示装置及びプログラム
JP6177147B2 (ja) 情報処理装置および情報処理方法
JP7369669B2 (ja) 拡張現実表示装置及びプログラム
Mukhopadhyay et al. A Virtual Reality-Based Digital Twin of workspaces with Social Distance Measurement Feature

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant