CN106575354A - 有形界面对象的虚拟化 - Google Patents
有形界面对象的虚拟化 Download PDFInfo
- Publication number
- CN106575354A CN106575354A CN201580036884.9A CN201580036884A CN106575354A CN 106575354 A CN106575354 A CN 106575354A CN 201580036884 A CN201580036884 A CN 201580036884A CN 106575354 A CN106575354 A CN 106575354A
- Authority
- CN
- China
- Prior art keywords
- objects
- activity
- virtual
- scene
- interface objects
- 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
Links
- 230000000694 effects Effects 0.000 claims abstract description 192
- 238000000034 method Methods 0.000 claims abstract description 92
- 230000037081 physical activity Effects 0.000 claims abstract description 40
- 230000008569 process Effects 0.000 claims abstract description 32
- 238000012545 processing Methods 0.000 claims abstract description 13
- 230000009471 action Effects 0.000 claims description 23
- 238000001514 detection method Methods 0.000 claims description 22
- 230000000007 visual effect Effects 0.000 claims description 21
- 230000008859 change Effects 0.000 claims description 15
- 230000006870 function Effects 0.000 claims description 14
- 238000012800 visualization Methods 0.000 claims description 9
- 230000035807 sensation Effects 0.000 claims description 6
- 230000008447 perception Effects 0.000 claims description 3
- 230000004044 response Effects 0.000 claims description 3
- 238000004891 communication Methods 0.000 abstract description 15
- 230000033001 locomotion Effects 0.000 abstract description 8
- 238000003860 storage Methods 0.000 description 39
- 230000003993 interaction Effects 0.000 description 18
- 241000406668 Loxodonta cyclotis Species 0.000 description 13
- 210000004247 hand Anatomy 0.000 description 13
- 230000003287 optical effect Effects 0.000 description 8
- 230000008901 benefit Effects 0.000 description 7
- 238000013500 data storage Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 238000000465 moulding Methods 0.000 description 5
- 238000007493 shaping process Methods 0.000 description 5
- 241000086550 Dinosauria Species 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 4
- 238000004590 computer program Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000003068 static effect Effects 0.000 description 4
- 239000011800 void material Substances 0.000 description 4
- 238000013461 design Methods 0.000 description 3
- 230000001965 increasing effect Effects 0.000 description 3
- 230000002452 interceptive effect Effects 0.000 description 3
- 241001465754 Metazoa Species 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 230000002708 enhancing effect Effects 0.000 description 2
- 230000003203 everyday effect Effects 0.000 description 2
- 238000007689 inspection Methods 0.000 description 2
- 230000000670 limiting effect Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 241000251468 Actinopterygii Species 0.000 description 1
- 241001269238 Data Species 0.000 description 1
- 241000196324 Embryophyta Species 0.000 description 1
- 241001251068 Formica fusca Species 0.000 description 1
- 240000002853 Nelumbo nucifera Species 0.000 description 1
- 235000006508 Nelumbo nucifera Nutrition 0.000 description 1
- 235000006510 Nelumbo pentapetala Nutrition 0.000 description 1
- 244000046052 Phaseolus vulgaris Species 0.000 description 1
- 235000010627 Phaseolus vulgaris Nutrition 0.000 description 1
- 229920000034 Plastomer Polymers 0.000 description 1
- 238000005299 abrasion Methods 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 239000003990 capacitor Substances 0.000 description 1
- 239000004927 clay Substances 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 210000003414 extremity Anatomy 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000036961 partial effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000004064 recycling Methods 0.000 description 1
- 230000002829 reductive effect Effects 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/20—Input arrangements for video game devices
- A63F13/21—Input arrangements for video game devices characterised by their sensors, purposes or types
- A63F13/213—Input arrangements for video game devices characterised by their sensors, purposes or types comprising photodetecting means, e.g. cameras, photodiodes or infrared cells
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/40—Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
- A63F13/42—Processing 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
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/40—Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
- A63F13/42—Processing 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
- A63F13/428—Processing 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 involving motion or position input signals, e.g. signals representing the rotation of an input controller or a player's arm motions sensed by accelerometers or gyroscopes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/16—Constructional details or arrangements
- G06F1/1613—Constructional details or arrangements for portable computers
- G06F1/1633—Constructional details or arrangements of portable computers not specific to the type of enclosures covered by groups G06F1/1615 - G06F1/1626
- G06F1/1684—Constructional details or arrangements related to integrated I/O peripherals not covered by groups G06F1/1635 - G06F1/1675
- G06F1/1686—Constructional details or arrangements related to integrated I/O peripherals not covered by groups G06F1/1635 - G06F1/1675 the I/O peripheral being an integrated camera
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/0304—Detection arrangements using opto-electronic means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/041—Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
- G06F3/042—Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means by opto-electronic means
- G06F3/0425—Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means by opto-electronic means using a single imaging device like a video camera for tracking the absolute position of a single or a plurality of objects with respect to an imaged reference surface, e.g. video camera imaging a display or a projection screen, a table or a wall surface, on which a computer generated image is displayed or projected
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04845—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/149—Segmentation; Edge detection involving deformable models, e.g. active contour models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/215—Motion-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/254—Analysis of motion involving subtraction of images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/20—Scenes; Scene-specific elements in augmented reality scenes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
- G06V20/46—Extracting features or characteristics from the video content, e.g. video fingerprints, representative shots or key frames
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/42—Global feature extraction by analysis of the whole pattern, e.g. using frequency domain transformations or autocorrelation
- G06V10/435—Computation of moments
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/74—Image or video pattern matching; Proximity measures in feature spaces
- G06V10/75—Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
- G06V10/754—Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries involving a deformation of the sample pattern or of the reference pattern; Elastic matching
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Software Systems (AREA)
- User Interface Of Digital Computer (AREA)
- Image Analysis (AREA)
Abstract
示例性***包括立架,其被配置为将计算装置定位成靠近物理活动表面。所述***进一步包括视频捕捉装置、检测器和活动应用。所述视频捕捉装置被联接用于与所述计算装置通信,并适于捕捉视频流,该视频流包括物理活动表面的活动场景以及用户物理地与之交互的一个或多个界面对象。检测器可执行以基于该处理来检测活动场景中的动作,并响应于对动作的检测,处理视频流以检测包括在物理活动表面的活动场景中的一个或多个界面对象。所述活动应用可执行以基于一个或多个检测到的界面对象而将虚拟信息显示在所述计算装置的显示器上。
Description
相关申请的交叉引用
本申请要求提交于2014年5月21的标题为“活动表面检测、显示和增强”、序号为62/001,057的美国临时专利申请的利益,通过引用其整体而合并于此。
背景技术
本公开涉及对有形界面对象的虚拟化。
有形用户界面是用户能够物理地与之交互以操纵数字信息的一种物理环境。在有形用户界面开启了与数字信息交互的可能性的新范畴的同时,在实施这样的界面时仍存在显著的挑战。例如,现有的有形用户界面一般要求昂贵的高质量的传感器来将用户与该环境的交互进行数字化,其结果是整合了这些有形用户接口的***对于大多数消费者来说过于昂贵。在其他情况中,方案较为复杂且/或用起来较为麻烦,且要求时常重新配置和/或维修。
发明内容
根据本公开的主题的一个创新方案,一种物理活动表面可视化***包括立架、视频捕捉装置、检测器和活动应用。立架被配置为将计算装置定位成靠近物理活动表面,计算装置具有一个或多个处理器。视频捕捉装置联接为与计算装置通信。视频捕捉装置适于捕捉视频流,该视频流包括物理活动表面的活动场景以及用户物理地与之交互的一个或多个界面对象。检测器可由一个或多个处理器执行以基于处理来检测活动场景中的动作,并响应于对动作的检测,处理视频流以检测包括在物理活动表面的活动场景中的一个或多个界面对象。活动应用可由一个或多个处理器执行,以基于一个或多个检测到的界面对象而将虚拟信息显示在计算装置的显示器上。
此外,多种实施方式可进一步可选地包括一个或多个以下特征:检测器进一步可由一个或多个处理器执行以确定一个或多个界面对象中每一个的属性,且活动应用进一步可由一个或多个处理器执行以基于一个或多个界面对象中每一个的属性而执行一个或多个例程,从而生成对一个或多个界面对象进行可视化的对象相关信息;将虚拟信息显示在计算装置上包括显示对象相关信息以使得一个或多个界面对象对于用户可见;检测器进一步可执行以处理视频流从而通过接收活动场景的图像、处理该图像以确定包括在活动场景中的一个或多个界面对象中的每一个的一个或多个轮廓、基于一个或多个轮廓为一个或多个界面对象中的每一个构建对象描述,来检测包括在物理活动表面的活动场景中的一个或多个界面对象;活动应用进一步可执行以基于一个或多个检测到的界面对象,通过生成一个或多个界面对象中的每个的虚拟表示,并将一个或多个界面对象中的每个的虚拟表示叠加到显示在计算机显示器上的虚拟场景中的相应的虚拟对象上,来将虚拟信息显示在计算装置的显示器上;打分模块,其可由一个或处理器执行,其中活动应用进一步可执行以通过与打分模块协作而基于一个或多个检测到的界面对象来将虚拟信息显示在一个或多个计算装置上,从而计算一个或多个界面对象中每一个的虚拟表示与相应的虚拟对象之间的差,基于所计算的差生成得分,并基于所计算的差,将得分的表示包括在显示于计算机显示器上的虚拟场景中;计算一个或多个界面对象中每一个的虚拟表示与相应的虚拟对象之间的差包括计算一个或多个界面对象中每一个的虚拟表示的轮廓与相应的虚拟对象的轮廓之间的差;计算一个或多个界面对象中每一个的虚拟表示与相应的虚拟对象之间的差进一步包括确定相应的虚拟对象的形状、确定未填充在该形状中的像素的数量、确定该形状外部的像素的数量、确定该形状的像素的总数量、并使用如下公式计算变化微量:max(0,1-(sum(未填充像素)+sum(形状外部像素))/sum(形状总像素))*100;基于所计算的差生成得分进一步包括执行单调函数以在对活动场景中的一个或多个有形界面对象的操纵中改变用户对进展的感知。
本公开描述的主题的另一个总的创新方案可具体化为如下方法,该方法包括:使用视频捕捉装置捕捉包括物理活动表面的活动场景以及用户物理地与之交互的一个或多个界面对象的视频流;使用一个或多个计算装置处理视频流中的物理活动表面的活动场景以确定预定时间段内的动作;基于该处理,使用一个或多个计算装置来检测活动场景中的动作;响应于对动作的检测,使用一个或多个计算装置处理视频流,以检测包括在物理活动表面的活动场景中的一个或多个界面对象;以及基于一个或多个检测到的界面对象,将虚拟信息显示在计算机显示器上。
这些方案的一个或多个的其他实施方式包括相应的***、设备、和编码在计算机存储装置上的配置为执行该方法的各动作的计算机程序。这些和其他实施方式各可以选择性地包括以下特征中的一个或多个。
例如,操作可以进一步包括:使用一个或多个计算装置确定一个或多个界面对象中每一个的属性;使用一个或多个计算装置,基于一个或多个界面对象中每一个的属性而执行一个或多个例程,从而生成对一个或多个界面对象进行可视化的对象相关信息;计算机显示器上的虚拟信息包括将对象相关信息显示在计算机显示器上以使得一个或多个界面对象对于用户可见;处理视频流以检测包括在物理活动表面的活动场景中的一个或多个界面对象进一步包括:接收活动场景的图像,处理该图像以确定包括在活动场景中的一个或多个界面对象中的每一个的一个或多个轮廓,并基于一个或多个轮廓为一个或多个界面对象中的每一个构建对象描述;基于一个或多个检测到的界面对象将虚拟信息显示在计算机显示器上进一步包括:生成一个或多个界面对象中的每个的虚拟表示,并将一个或多个界面对象中的每个的虚拟表示叠加到显示在计算机显示器上的虚拟场景中的相应的虚拟对象上;基于一个或多个检测到的界面对象来将虚拟信息显示在计算机显示器上进一步包括:计算一个或多个界面对象中每个的虚拟表示与相应的虚拟对象之间的差,基于所计算的差生成得分,并基于所计算的差,将得分的表示包括在显示于计算机显示器上的虚拟场景中;计算一个或多个界面对象中每个的虚拟表示与相应的虚拟对象之间的差包括计算一个或多个界面对象中每一个的虚拟表示的轮廓与相应的虚拟对象的轮廓之间的差;计算一个或多个界面对象中每个的虚拟表示与相应的虚拟对象之间的差进一步包括确定相应的虚拟对象的形状、确定未填充在该形状中的像素的数量、确定该形状外部的像素的数量、确定该形状的像素的总数量、并使用如下公式计算变化微量:max(0,1-(sum(未填充像素)+sum(形状外部像素))/sum(形状总像素))*100;以及基于所计算的差生成得分进一步包括执行单调函数以在对活动场景中的一个或多个有形界面对象的操纵中改变用户对进展的感知。
本公开描述的主题的另一个总的创新方案可具体化为如下方法,该方法包括:使用视频捕捉装置捕捉包括物理活动表面的活动场景以及用户物理地与之交互的一个或多个界面对象的视频流;使用一个或多个计算装置处理视频流来检测包括在物理活动表面的活动场景中的一个或多个界面对象;基于在活动场景中的一个或多个界面对象的状态,确定与在计算机装置上可执行的活动应用的预定目标相关的用户进展;以及使用该用户进展的视觉指示来更新被渲染以显示在计算装置的显示装置上的虚拟场景。在进一步的示例中,确定与活动应用的预定目标相关的用户进展包括确定一个或多个界面对象对虚拟场景中的视觉目标的影响,以及更新被渲染以显示在显示装置上的虚拟场景包括基于所确定的影响来更新视觉目标的状态。
通过本公开描述这里表示的技术的多个特征和优点。然而,应当理解的是,这里描述的特征和优点不是总括的,许多附加的特征和优点是能够想到的并且落入本公开的范围。此外,应理解的是本公开使用的语言的选用主要是为了易读和指导性的目的,并非限制此处所公开的主题的范围。
附图说明
本公开通过示例的方式图示,而不是限制于附图中的图片,其中类似的附图标记用来指代类似的元件。
图1A-1B为图示了有形界面对象的虚拟化的示例性配置的图。
图2为图示了用于有形界面对象的虚拟化的示例性计算机***的框图。
图3为图示了示例性计算装置的框图。
图4为用于有形界面对象的虚拟化的示例性方法的流程图。
图5A和5B为用于有形界面对象的虚拟化的进一步示例性方法的流程图。
图6是用于有形界面对象检测的示例性方法的流程图。
图7是用于有形界面对象检测的进一步示例性方法的流程图。
图8是用于有形界面对象检测的进一步示例性方法的流程图。
图9是检测活动表面的状态变化的示例性方法的流程图。
图10是基于识别的界面对象来处理和显示虚拟对象相关信息的示例性方法的流程图。
图11为用于将背景与有形界面对象分开的示例性方法的流程图。
图12为用于生成反映了用户与有形界面对象进行的与活动应用的目标相关的交互的得分的示例性方法的流程图。
图13A-14D是基于由用户在物理活动表面创建的物理场景而生成在计算装置上的虚拟场景的示例。
具体实施方式
本文所述的技术提供了一种用于虚拟化可被用户操作的有形界面(TI)对象的物理环境的平台。虽然在本文中设想并描述了该平台的许多其他的实施方式和配置,在一些实施方式中,该平台可以对手持计算装置(如电话或平板电脑)扩展新的硬件配件,以使用所述计算装置上的内置视频摄像机,并利用新的计算机视觉算法来感测用户与TI对象的交互。
这种技术产生了许多优点,包括但不限于,通过再利用现有的硬件(例如,相机),并借助新的轻量级检测和识别算法来融合物理和数字介质的用于开发几乎无限范围的应用的低成本的替代方案,具有低的实施成本,与现有的计算装置硬件兼容,实时运行以提供丰富的实时的虚拟体验,处理大量的(例如,>15、>25、>35等)TI对象和/或TI对象交互,同时不会使计算装置难以处理,以基本完美的召回率和准确率来识别TI对象(例如,分别为99%和99.5%,),适应于光线的变化和TI对象的磨损和破裂,为不同地点的用户之间提供协作的触知体验,在设置和使用上甚至针对年轻用户(例如,3+岁)来说也是直观的,使用起来是自然和直观的,评定用户与TI对象间进行的与活动目标相关的交互的表现,并且在可处理的TI对象的类型上没有任何限制或限制很少。例如,在一些实施方式中,不需要在TI对象中包括特定的标记或符号以使平台能够识别TI对象。
平台所使用的TI对象可以是用户使用并可用的日常对象,为特定目的而创建的特定对象,前述的组合等。TI对象的非限制性的例子包括各种消费品,游戏零件,衣物,玩具,小雕像,照片,预先配置的卡片,用户绘图,图片,人像等,用户可塑形对象(可塑形的橡皮泥或黏土)等。TI对象可以具有基本上二维或三维的形状。
图1A-1B为图示了用于对TI对象进行虚拟化的示例性配置100和150的图。如图所示,配置100和150至少部分地包括,在其表面上可以对TI对象114进行放置、创建等的活动表面102,以及计算装置104,其配备有或者联接到配置为捕捉活动表面102的视频的视频捕捉装置110,该计算装置104还包括新的软件和/或硬件,其能够处理所述视频以检测并识别TI对象114及一个或多个用户对它们的操纵,并提供所述TI对象和/或其操纵的虚拟化和可视化(例如,见虚拟化的TI对象118)。例如,图1A中的TI对象114是一块可塑形的橡皮泥正在由用户的手118进行塑形,并且图1B中的TI对象是正在由用户的手118使用画图工具120(例如铅笔、画刷、蜡笔、钢笔等)绘制的线条。
尽管在图1A和1B中,活动表面102被描绘为在大致水平方向,但应当理解的是,该活动表面102可以是垂直的或位于适合于用户的交互的任何其他角度。活动表面102可具有任何颜色,图案,纹理和形貌。例如,活动表面102在性质上可以是基本上平坦的,或者是不连接的/不连续的。活动表面102的非限制性的实例包括台子,桌子,柜台,地面,墙壁,白板,黑板,定制的表面等。
活动表面102可以包括平面/自然表面或用于某些活动的预先配置的表面。例如,在后面的实施例中活动表面102可构成或包括棋盘游戏的棋盘。活动表面102可与立架106集成,或者可以与立架106分开但放置为与立架106相邻。活动表面102可在一些情况下向用户指示位于视频捕捉装置110的视野内的该活动表面102的边界。活动表面102在一些情况下可以包括与在计算装置104上的可操作的应用程序相一致的图案(例如,被配置为用于特定的活动)或者可以是通用的。例如,活动表面102可以包括为用户表明目标以完成UI对象的情境(context)(例如,文本和/或图形指示符)。在一些情况下,活动表面102可以是三维性质的,并包括各种用于用户与其他TI对象交互和/或被配置用于与其他TI对象交互的预配置对象。在一些情况下,活动表面102上的交互区域的尺寸可以限于视频捕捉装置110的视野,并可以由适配器108进行适配和/或通过调整视频捕捉装置110的位置而适配。在另外的实例中,活动表面102可以是投射到活动表面102上的光投射(例如,图案,情境,形状等)。多种进一步的实施例也是可行的且可想到的。
在示例性配置100、150和180中包含的计算装置104可以位于表面102上或以其他方式接近于表面102。计算装置104可以向用户提供用于使被用户操纵的TI对象可视化的虚拟门户。例如,计算装置104可被放置在用户前面的桌子上,使得用户可以在与放置在活动表面102上的不同TI对象交互的同时容易地看到计算设备104。示例性的计算装置104可包括但不限于,移动电话(例如,功能电话,智能电话等),平板电脑,笔记本电脑,台式机,上网本,电视,机顶盒,流媒体装置,便携式媒体播放器,导航装置,个人数字助理等。
计算装置104包括或者联接到(例如,通过无线或有线连接)用于捕捉活动表面102的视频数据流的视频捕捉装置110(在此也称为相机)。如图1A-1C所描绘的,视频捕捉装置110可以是配备有对相机110的视野进行适配以至少部分地包括活动表面102的适配器108的前置相机。为了清楚起见,由视频捕捉装置110捕捉的活动表面102的部分116在此也被可替换地称为活动表面、物理活动表面、活动场景或物理活动场景。
如图1A和1B中所描绘的,计算装置104和/或视频捕捉装置110可由立架106定位和/或支承。例如,立架106可以将视频捕捉装置110的显示器112定位于对于同时与物理环境(活动场景116)交互的用户而言最佳的观看和交互的位置。立架106可以被配置为搁置在活动表面102上并接收和稳固地保持计算装置104,从而计算装置104在使用期间保持静止。
在一些实施方式中,适配器108将计算装置104的视频捕捉装置110(例如,前置、后置相机)适配为基本上仅在活动场景116内进行捕捉,不过许多其它实施方式也是可能的和可以想到的。例如,相机适配器108可以将前置相机的视野分成两个或以上的场景。作为实例,视频捕捉装置110对包括位于视频捕捉装置110前面的活动表面102的活动场景116进行捕捉,并对包括基本上位于计算装置104前面的用户在内的用户场景126进行捕捉。这些场景可以由可由计算装置104执行的活动应用虚拟地渲染在显示器112的分开的区域或同样的区域中。在另一示例中,相机适配器108可以将计算装置(未示出)的后置相机重定向至计算装置104的前侧以捕捉位于计算装置104的前面的活动表面102的活动场景116。在一些实施方式中,适配器108可以被捕捉的场景的一个或多个侧(例如,顶侧,左侧,右侧,且底侧开口)。
图15-18示出了用于计算装置104的适配器108和立架106的多个示例。如这些图中所示的,适配器108可包括槽134用于保持(例如,容纳,固定,握紧等)计算装置104的边缘,以便覆盖相机110的至少一部分。适配器108可以包括至少一个光学元件132(例如,镜子)以将相机110的视野定向为朝向活动表面102。计算装置104可放置于并容纳在形成于立架106的顶侧的尺寸兼容的槽136中。槽136可至少部分地朝向立架106的主体以一角度向下延伸,从而当计算装置104固定在槽中时,它向后成角度以便其用户(们)观看和使用。立架106可包括形成为正交于并相交于槽136的通道130。通道130可构造为在不使用适配器108时对其进行收纳和固定。例如,适配器108可具有相容于并构造为易于放置在立架106的通道130中的锥形形状。在一些例子中,通道130可磁性地将适配器108固定到位,以防止适配器108易于因冲击而震出通道130。例如,适配器108和立架106可包括相容的磁铁,当适配器108在通道130中对齐时接合,如图19所示。立架106可以是沿着水平轴而细长的,以防止计算装置104在搁置于基本水平的活动表面(例如,桌子)时翻倒。立架106可以包括用于电缆的沟道,电缆***计算装置104。电缆可配置成为计算装置104提供电力和/或用作与其他计算装置的通信链路,例如笔记本电脑或其他个人计算机。
在一些实施方式中,适配器108可包括一个或多个光学元件,例如镜子和/或透镜,以对视频捕捉装置110的标准视野进行适配。例如,适配器108可包括一个或多个镜子和透镜,以将从活动表面102反射的光重定向和/或修改为进入视频捕捉装置110。作为例子,适配器108可包括成角度的镜子以将从计算装置104前面的活动表面102反射的光重定向进入计算装置104的前置相机。作为进一步的例子,多种无线手持装置包括具有相对于显示屏112而言具有固定视线的前置相机。适配器108可以可拆卸地连接至装置的相机110上,以对相机110的视线进行扩充,从而它能够对活动表面102(例如桌子表面)进行捕捉。
在另一个例子中,适配器108可包括一系列光学元件(例如镜子),其将从位于计算装置104前面的活动表面102反射的光卷进计算装置104的后置相机中以便其能够被捕捉。适配器108还可对视频捕捉装置110(例如前置相机)的视野的一部分进行适配,并对该视野的其余部分不作改变,以便多种场景能够由视频捕捉装置110捕捉。适配器108还可包括配置为提供不同效果的光学元件,例如使视频捕捉装置110能够捕捉活动表面102的更大部分。例如,适配器108可包括凸面镜,其提供鱼眼效果,以比标准配置的视频捕捉装置110能捕捉活动表面102的更大部分。
在一些实施方式中,视频捕捉装置配置为在其视野内包括立架106。立架106可用作参考点,用于执行相机110的几何图形校准和/或图像校准。例如,在校准过程中,包括在检测引擎212中的校准器可对使用立架106的相机110中的相机110(例如,调整白平衡,焦点,曝光等)进行校准。
视频捕捉装置110在一些实施方式中可以是与计算装置104分开的独立的单元,并可以定位为步骤活动表面102或可以由适配器108适配为如上所述地捕捉活动表面102。在这些实施方式中,视频捕捉装置110可以通过有线或无线连接而通信地联接至计算装置104以向其提供正在捕捉的视频流。
图2为示出了用于有形界面对象的虚拟化的示例性计算机***200的框图。图示的***200包括计算装置104a...104n(也单个地和共同地称为104)和服务器202a...202n(也单个地和共同地称为202),其通过网络206通信联接以相互交互。例如,计算装置104a...104n可以通过信号线208a...208n分别联接至网络206,并可由用户222a...222n(也单个地和共同地称为222)访问。服务器202a...202n可通过信号线204a...204n分别联接至网络206。附图标记中的命名“a”和“n”的使用表示具有该命名的任何数量的那些元件可以包括在***200中。
网络206可包括任何数量的网络和/或网络类型。例如,网络206可包括但不限于,局域网(LAN)、广域网(WAN)(例如因特网)、虚拟专用网络(VPN)、移动(蜂窝)网络、无线广域网(WWAN)、(全球微波互联接入)网络、(蓝牙)通信网络、对等网络、多种装置能够通过其而通信的其他互连数据通路中的一种或多种及其各种组合等等。
计算装置104a...104n(也单个地且共同地称为104)是具有数据处理和通信能力的计算装置。例如,计算装置104可包括处理器(例如虚拟的,物理的等)、存储器、电源、网络接口和/或其他软件和/或硬件部件,例如前置和/或后置相机、显示器、图形处理器、无线收发器、键盘、相机、传感器、固件、操作***、驱动器、多种物理连接接口(例如USB、HDMI等)。计算装置104a...104n可互相联接并通信,以及使用无线和/或有线连接通过网络206连接至***200的其他实体并与之通信。虽然图2中示出了了两个或多个计算装置104,但***200可包括任何数量的计算装置104。另外,计算装置104a...104n可以是可以相同或不同类型的计算装置。
如图2中所示,一个或多个计算装置104a...104n可包括相机110、检测引擎212、打分模块216以及一个或多个活动应用214a...214n(也单个地和共同地称为214)。一个或多个计算装置104和/或相机110也可配备有本文别处讨论的适配器108。检测引擎212能够检测并识别位于活动场景116(在相机110的视野内的活动表面102上)中的TI对象。检测引擎212可检测物理空间中的对象的位置和定向,检测该对象是如何被用户操纵的,并且与活动应用214协同地向用户提供结合这些对象和他们的操纵在内的丰富的虚拟体验。在一些实施方式中,检测引擎212处理由相机110捕捉的视频,以检测并识别TI对象及其属性,基于TI对象及其属性生成事件,并将为识别的对象生成的事件提供给一个或多个活动应用214。
打分模块216可以生成反映了用户与有形界面对象进行的与活动应用214的预定目标相关的交互的得分。得分可以在用户的计算装置104上的屏幕上向用户显示,以反映用户的进展和/或表现。活动应用214能够处理从检测引擎212接收的事件和/或由打分模块216生成的得分,以提供将由用户操纵的有形的物理环境和与TI对象相关和/或与之互补的信息相混合的丰富的环境。计算装置104的其他结构和功能性在下面至少参照图3进行进一步详细的描述。
服务器202可以各自包括一个或多个具有数据处理、存储和通信能力的计算装置。例如,服务器202可包括一个或多个硬件服务器、服务器阵列、存储装置和/或***等,和/或可以是集中式的或分布式的/基于云的。在一些实施方式中,服务器202可包括一个或多个虚拟服务器,其运行于主机服务器环境中,并可以通过抽象层(例如,虚拟机器管理器)访问主机服务器的物理硬件,该主机服务器包括例如处理器、存储器、存储装置、网络接口等。
服务器202可包括软件应用,其可由服务器202的一个或多个计算机处理器操作以提供多种计算功能、服务和/或资源,并发送数据至计算装置104和从计算装置104接收数据。例如,软件应用可提供用于以下各项的功能:互联网搜索;社交联网;基于web的电子邮件;博客;微博;照片管理;视频、音乐和多媒体集合、发布和分享;商业服务;新闻和媒体发布;用户账户管理;或任何上述服务的组合。应理解的是服务器202不限于提供以上提及的服务,而是可包括其他网络可访问的服务。
在一些实施方式中,服务器202可包括搜索引擎,用于从数据存储中取回匹配于一个或多个搜索条件的结果。在一些例子中,搜索条件可包括图像,搜索引擎可将该图像与存储在其数据存储(未示出)中的产品的图像相比较以识别与该图像匹配的产品。在进一步的示例中,检测引擎212和/或存储装置310(例如见图3)可向搜索引擎发送信号以提供与其已从视频流中提取的对象和/或图像匹配的信息。
在一些实施方式中,服务器200可以是消息服务器,其配置为接收包括了虚拟场景的视频截屏在内的消息数据并将该消息数据发送给其他用户的计算装置104用于消费。例如,活动应用214可从相机110接收记录了用户在执行活动应用214(例如,在物理活动场景102中用橡皮泥塑造大象)所指明的动作时的动作的视频数据。用户可使用由活动应用214提供的协助来执行动作(例如,塑造大象),活动应用214将用户在物理活动场景中的活动(例如,对橡皮泥进行塑造的努力)的虚拟表示叠加在由计算装置104的显示器114上的活动应用214(例如,预定义的大象形状)所显示的虚拟目标/要求上。一旦用户完成了满足目标/要求的尝试(例如,将橡皮泥塑造成大象的形状),用户可以选择界面选项(例如,发送视频按钮),其显示了表格,用户可将想要与之分享视频的人的电子地址输入其中。在指示了活动应用214发送视频后,活动应用214可生成包括描述了用户的创造的视频数据在内的消息数据,并可使用由用户输入(例如,选择,键入等)的电子地址将视频数据传送至消息服务器。可传送的消息的类型的非限制性实例可以包括电子邮件、SMS、聊天消息、社交网络帖子、微博博客、博客帖子等。
应理解的是图2中所示的***200是以示例的方式给出的,多种不同的***环境和配置是能够想到的并且在本公开的范围内。例如,多种功能可从服务器移到客户端,反之亦然,并且一些实施方式可包括另外的或更少的计算装置、和/或网络,并且可实施多种功能性客户端或服务器侧。进一步地,***200的多种实体可集成入单个计算装置或***或另外的计算装置或***等。
图3是示例性计算装置104的框图。如图所示,计算装置104可包括处理器312、存储器314、通信单元316、显示器112、相机110和输入装置318,其通过通信总线308通信地联接。然而,应理解的是计算装置104不限于此,而是还可以包括其他的元件,例如可以包括参照图1和2中的计算装置104而讨论的那些元件。
处理器312可通过执行多种输入/输入的、逻辑的和/或数学的操作来执行软件指令。处理器312具有多种计算体系结构以处理数据信号,例如包括复杂指令集计算机(CISC)体系结构、精简指令集计算机(RISC)体系结构和/或实施指令集的组合的体系结构。处理器312可以是物理的和/或虚拟的,并可以包括单核或多个处理单元和/或多核。
存储器314是非暂态计算机可读介质,其配置为存储并向计算装置104的其他部件提供对数据的存取。在一些实施方式中,存储器314可存储可由处理器312执行的指令和/或数据。例如,存储器314可存储检测引擎212、活动应用214a...214n以及相机驱动器306。存储器314也能够存储其他指令和数据,例如包括操作***、硬件驱动器、其他软件应用、数据等。存储器314可联接至总线308以与计算装置104的处理器312和其他部件通信。
通信单元316可包括一个或多个接口装置(I/F)以与网络206和/或其他装置有线地或无线地连接。在一些实施方式中,通信单元316可包括收发器用于发送和接收无线信号。例如,通信单元316可包括无线收发器以与网络206通信并利用极近距离(例如,(蓝牙)、NFC等)连接与附近的装置通信。在一些实施方式中,通信单元316可包括用于与其他装置进行有线连接的端口。例如,通信单元316可包括CAT型(例如5、6等)接口、ThunderboltTM(雷电)接口、FireWireTM(火线)接口、USB接口等。
显示器112可显示由计算装置104输出的电子图像和数据以呈现给用户222。显示器112可包括任何常规的显示装置、监视器或屏幕,例如包括有机发光二极管(OLEC)显示器、液晶显示器(LCD)等。在一些实施方式中,显示器112可以是触屏显示器,其能够接收来自用户222的一个或多个手指的输入。例如,显示器112可以是电容型触屏显示器,其能够检测并解译显示表面的多个触点。在一些实施方式中,计算装置104可以包括图形适配器(未示出)用于渲染和输出图像和数据以呈现在显示器112上。图形适配器(未示出)可以是分离的处理装置,其包括分离的处理器和存储器(未示出)或可以与处理器312和存储器314集成。
输入装置318可以包括用于输入信息至计算装置104的任何装置。在一些实施方式中,输入装置318可以包括一个或多个***设备。例如,输入装置318可以包括键盘(例如,全键盘)、点击装置(例如鼠标或触摸板)、麦克风、相机等。在一些实施方式中,输入装置318可以包括触屏显示器,其能够接收来自用户222的一个或多个手指的输入。例如,输入装置318的功能和显示器112的功能可以集成,计算装置104的用户222可以通过使用一个或多个手指接触显示屏112的表面来与计算装置104互动。在这个示例中,用户222可以通过使用手指接触显示器112的键盘区域来与显示在触屏显示器112上的仿真键盘(即,虚拟键盘或软键盘)交互。
检测引擎212可以包括检测器302。部件212和302以及打分模块216和/或活动应用214可以通过总线308和/或处理器312而通信地互相联接和/或联接至计算装置104的其他部件306、310、314、316、318、112和/或110。在一些实施方式中,部件212、214、216和302中的一个或多个是可由处理器312执行的指令集以提供其功能。在一些实施方式中,部件212、214、216和302中的一个或多个存储在计算装置104的存储器314中,并且能够由处理器312访问和执行以提供其功能。在任一前述的实施方式中,这些部件212、214、216和302可以适于与计算装置104的处理器312和其他部件协作和通信。
检测器302包括可由处理器312执行的软件和/或逻辑,用于处理相机110捕捉的视频流以检测和识别包括在活动场景116中的TI对象。在一些实施方式中,检测器302可联接至相机110并接收来自相机110、相机驱动器306和/或存储器314的视频流。在一些实施方式中,检测器302可处理视频流的图像以确定TI对象在活动场景116中的位置信息(例如,TI对象在2D或3D空间中的定位和/或方向),并然后分析包括在视频流中的TI对象的特征以确定TI对象的特性和/或额外属性,如下文至少参照图4-10所详细讨论的。
在一些实施方式中,检测器302可确定与TI对象关联的手势,其表示TI对象是如何由用户随着时间操纵的。例如但不限于,检测器302可确定TI对象的以下手势:
放入:表示TI对象已出现在活动场景116中;
遮挡:表示TI对象仍在活动场景116中但被局部地或全部地遮挡(例如,被用户的手遮挡);
拿走:表示TI对象已从活动场景116中消失;
换掉:表示一个TI对象已经换掉另一个TI对象(在大致同一位置);
转动:表示TI对象已经转动(例如,顺时针转动45、90、135、180、225、270、315度,以表示角度的任一浮点值转动,等等);
移动:表示对象已经在活动场景116中从一个位置移动到另一个位置;
对齐:表示两个对象以某种方式对齐(例如水平地、垂直地、对角地等等);以及
图案:表示TI对象居中形成图案(例如,直线、三角形、圆形、正方形、长方形、星形等等)。
检测器302可使得活动应用214能够获知TI对象及其属性。例如,检测器302可基于检测器302为TI对象确定的对象相关信息而生成TI对象的事件,并将事件传送给一个或多个活动应用214使用从而与TI对象协同生成丰富的虚拟环境和/或传送给打分模块216以生成得分。由检测器302检测并识别的给定的TI对象的事件可包括下列一个或多个:对象ID、对象置信度、对象尺寸、对象形状、对象位置(例如,X、Y、Z)、对象方向、对象是否被遮挡、对象被遮挡了多少、置信对象被遮挡、与对象关联的手势等,而且也可以使用更少或额外的TI对象属性。检测器302可联接至应用214(例如,通过处理器312和/或总线308)以向应用214提供事件。
在视频流包括多个场景(例如图1C所示的场景116和126)的实施方式中,检测器302可独立地和同时地处理这些场景中的每一个,这将在下文参照至少图5A和5B进行详细讨论。
检测器302可联接至校准器(未示出)、包括在检测引擎212中的可执行模块,以向其发送信号通知其来执行几何图像校准和/或图像校准。在一些实施方式中,检测器302可至少部分地基于对象和/或图像是否被成功检测到而确定是否向校准器发送信号以校准相机110,如下文至少参照图6所进一步详细讨论的。
检测器302可通过总线308联接至存储装置310来存储、检索或以其他方式处理存储在其中的数据。例如,检测器302可向存储装置310查询与其所确定的存在于活动场景116中的任何TI对象相匹配的数据。在一些实施方式中,检测器302可为其所检测到的对象计算唯一索引。检测器302可基于TI对象的可见的和/或可听的特征来计算索引,例如包括在TI对象中的图像、TI对象的形状、TI对象的颜色、TI对象的纹理等。在一些实施方式中,每个TI对象可包括唯一图像,且检测器302可对图像执行图像识别以确定它们的特性。在这些实施方式中,TI对象的对应的数字记录可被编索引并存储在存储装置310中,并且检测器302可向存储装置310查询与检测器302所确定为存在于活动场景116中的TI对象相匹配的记录。
打分模块216包括可由处理器312执行的软件和/或逻辑,以生成反映了用户与虚拟活动场景关联的虚拟活动(由可应用的活动应用214生成)的目标/要求(也简单地称为目标)相关的物理场景中的物理有形界面对象交互的表现的得分。例如,为了确定得分,在一些实施例中,打分模块216可将由检测器302确定的物理对象(例如橡皮泥)的虚拟表示叠加于预定的形状(例如大象图片),并计算橡皮泥的轮廓与预定的形状的轮廓对应的准确度。
在一些实施方式中,打分模块216可执行由图12的流程图表示的方法1200来基于物理活动场景中的(一个或多个)TI对象的状态和显示在装置屏幕上的(一个或多个)虚拟场景(例如玩游戏)的目标来生成得分。在方框1202中,方法1200将TI对象的虚拟表示叠加于对应的虚拟对象。例如,打分模块216将反映TI对象的轮廓的轮廓数据叠加于从计算机存储器(例如,存储器314和/或存储装置310)检索得到的预定的虚拟对象的轮廓。
在方框1204中,方法1200计算TI对象的虚拟表示的轮廓和对应的虚拟对象的轮廓之间的差,并在方框1206中基于所计算的差而生成得分。在一些实施方式中,打分模块216通过考虑由用户创建的形状与预定的形状之间的变化微量来计算得分。打分模块216可以使用像素来逼近变化微量,例如使用如下公式:
max(0,1-(sum(未填充像素)+sum(形状外部像素))/sum(形状总像素))*100,
其中打分模块216配置为确定相应的虚拟对象的形状,确定未填充在形状中的像素的数目,确定形状外的像素的数目,并基于由打分模块216提供给或从数据存储装置检索得到的(一个或多个)对象描述和虚拟物件数据来确定形状的像素的总数目。例如,存储在存储装置310中的反映虚拟物件的对象包括上述的像素信息,其可由打分模块216和/或活动应用214检索得到以用于计算得分。类似地,检测器302可确定并将与(一个或多个)TI对象有关的必要的像素相关信息(那些对象的属性)包括在(一个或多个)TI对象的(一个或多个)对象描述中。
在一些实施例中,打分模块216计算的实际得分(例如数目)可以通过(例如100*sqrt(值/100))单调递增函数来变化以改变进展的百分比,但其他的变化方式也是可行并可想到的。
虽然打分模块216在图2中示为单个实体,但应当理解的是,检测引擎212、一个或多个活动应用214或其他部件可以包括和/或合并这个模块。例如,每个活动应用可以基于游戏情节设计用不同的方式计算得分,并可包括适用于其目标的打分模块216的实例。在进一步的例子中,打分模块216可以是包括在检测引擎212中的功能/模块,或作为可由(一个或多个)活动应用214调用的单独部件,并传递特定信息,例如TI对象和/或虚拟对象标识和/或数据(例如轮廓数据等)。进一步的变化方式也是可行的且可想到的。
打分模块216可以联接到存储装置310和/或存储器314以存储信息(例如,得分,处理的数据等),检索信息(例如,之前的得分,当前的得分,用户简档数据,轮廓数据,像素数据等),以及删除信息(例如,之前的得分,存储的变量等)等。
活动应用214a...214n包括用于接收对象相关事件的软件和/或逻辑,并基于它们来运行例程,以生成向用户呈现的虚拟环境,该虚拟环境实时结合TI对象及对它们的操纵、以及它们的相互关系及它们在活动场景116中与活动表面102的关系。活动应用214a...214n可以经由处理器312和/或总线308联接到检测器302以接收事件,并可联接到打分模块216以接收反映得分的得分数据。在一些实施方式中,活动应用214a...214可处理接收自检测器302的事件以确定对象的属性,并可以基于属性来呈现用于显示的相应信息。
在一些实施例中,活动应用214可从检测器302接收轮廓数据,并可提供轮廓数据给打分模块216以便其用来计算得分,如本文别处所讨论的。在一些例子中,活动应用214可确定(一个或多个)目标,(一个或多个)TI对象的(一个或多个)状态,并可基于(一个或多个)TI对象的状态来更新虚拟场景。例如,活动应用214可更新虚拟场景以虚拟地反映用户在实现(一个或多个)目标时的进展。具体而言,活动应用214可在确定与预定目标相关的用户进展中确定TI对象对虚拟场景中的视觉目标的影响(例如,通过将检测到的(一个或多个)TI对象的位置和/或情境信息与虚拟目标的参数进行比较)。活动应用214然后可通过基于所确定的影响来更新视觉目标的状态,以更新被渲染以显示在显示装置上的虚拟场景。
在进一步的例子中,活动应用214可以协同打分模块216确定(一个或多个)TI对象的(一个或多个)状态满足(一个或多个)目标所到等级(例如,由得分反映)。如在此所讨论的,目标可以是由用户在物理空间中应该操纵TI对象的形状所要模仿的预定的形状。在另一例子中,目标可以是用户使用物理场景中的TI对象所应当达成的目标。
在一些进一步的实施例中,活动应用214可使用对象ID来从存储装置310检索得到TI对象的数字表示,可使用对象置信度来确定是否将对象的显示信息进行平均(例如,通过将对象置信度与预定阈值进行比较),可基于对象的位置和/或对象(或附近的TI对象)是否***纵(例如,被移动、被遮挡、被换掉、被拿走,被新增等)来以TI对象的数字表示执行动作,可执行动作以使得其他的对象基于此动作与给定对象对齐和/或接近等。
活动应用214可使用基于存在于活动场景116中的TI对象而确定的补充信息来增强其生成的虚拟信息/环境。例如,活动应用214可以用与对象有关的附加信息(例如,事实、统计、新闻、视频、照片、社交网络帖子、微博等)、对象的配件、对于对象的视觉增强或改进、对象的声音等来开发TI对象的数字表示。
活动应用214的非限制性示例可包括艺术游戏、绘图游戏、视频游戏、学习应用、辅助应用、故事画板应用、协作应用、生产性应用等。可由活动应用214呈现的虚拟环境的多种非限制性示例将在下文至少参照图13A-14D进行讨论。
相机驱动器306包括软件,其可存储在存储器314中并可由处理器312操作以控制/操作相机110。例如,相机驱动器306为可由处理器312执行的软件驱动器,用于向相机110发送信号来通知捕捉和提供视频流和/或静态图像等。相机驱动器306能够控制相机110的多种特征(例如,闪光、孔径、曝光、焦距等)。相机驱动器306可以经由总线308而通信地联接至相机110和计算装置104的其他部件,这些部件可经由总线308与相机驱动器306接口连接以使用相机110捕捉视频和/或静态图像。
如本文别处所讨论的,相机110是被配置为捕捉至少活动表面102的视频的视频捕捉装置。相机110可联接至总线308以与计算装置104的其他部件通信和交互。相机110可包括:透镜,用以聚集和聚焦光;光传感器,其包括像素区以捕捉聚焦光;以及处理器,其用于基于由像素区提供的信号来生成图像数据。光传感器可以是任意类型的光传感器,包括:电荷耦合器件(CCD)、互补金属氧化物半导体(CMOS)传感器、混合CCD/CMOS器件等。相机110还可包括任何常规特征,例如闪光、变焦透镜等。相机110可包括麦克风(未示出)以捕捉声音,或可以联接至包括在计算装置104的另一部件中的麦克风和/或直接联接至总线308。在一些实施方式中,相机110的处理器可经由总线308联接以在存储器314中存储视频和/或静态图像数据,和/或将视频和/或静态图像数据提供给计算装置104的其他部件,例如检测引擎212和/或活动应用214。
存储装置310是用于存储和提供对于存储的数据的存取的信息源。在一些实施方式中,存储装置310可包括对应于虚拟对象(例如,图形设计等)的可被检索和显示的经索引的记录集。存储装置310还可以存储由用户使用给定的活动应用214的功能性而在物理场景中制成的用户创建TI对象(例如,艺术品,创造等)。在一些实施方式中,可使用从TI对象得到的唯一形状、(一个或多个)矩、(一个或多个)直方图等来对用于多种TI对象的记录(例如图像轮廓)进行索引。可使用与下面参照至少图7-8B讨论的相同的或基本类似的操作来计算这些索引。
在一些实施方式中,存储装置310可包括在存储器314中或包括在联接至总线308的另一存储装置中。在一些实施方式中,存储装置310可以是或包括在分布式数据存储中,例如云计算和/或数据存储***。在一些实施方式中,存储装置310可包括数据管理***(DBMS)、文件***或其他合适的存储***。例如,DBMS可以是结构化查询语言(SQL)或NoSQL(非关系型SQL)DBMS。在一些情况下,存储装置310可在基于对象的数据存储中或在由多行和多列组成的多维表中存储数据,并可以使用程序操作(例如,查询和语句或类似的数据库操作库)来操纵(即,***、查询、更新和/或删除)存储在认证数据存储106中的数据实体。存储装置310的另外的特征、结构、动作和功能性在本文别处讨论。
图4是用于有形界面对象的虚拟化的示例性方法400的流程图。在方框402中,校准器校准相机110。在一些实施方式中,校准器执行几何图像校准和/或图像校准以使得相机110准备好进行TI对象检测和识别。在方框404中,相机110和/或计算装置104然后被定位在或接近活动表面并且视频捕捉装置(例如,相机110)捕捉(406)包括活动表面的活动场景的视频流以及用户物理地与之交互的一个或多个界面对象。在一些实施方式中,检测器302可向相机110发送信号以捕捉视频流(例如,通过相机驱动器306)并且相机110将视频流提供给检测器302(例如,直接地、经由存储器314等)。如图1A和1B所示,包括相机110的计算装置104可以被放置于预先配置的立架106上,该预先配置的立架106定位相机110以捕捉活动场景116并定位计算装置104以用于由用户观看和/或交互,不过除此之外的本文中其他地方描述的多种进一步的配置也是可行的。在一些例子中,相机110可由适配器108进行适配以最佳地适配相机110的视野,以捕捉位于计算装置104前面的活动表面102(例如桌子,墙壁等)的区域。
接下来,检测器302处理视频流以检测(408)包括在活动场景116中的一个或多个TI对象,并确定(410)检测到的一个或多个TI对象。图5A-9描述了可由检测器302执行的多种示例性操作以检测TI对象并确定对象属性,不过附加的和/或替换的操作也是可行的并且是可想到的。方法400然后可以基于由检测302识别的一个或多个TI对象而将虚拟信息呈现(412)在一个或多个计算装置104上。例如,检测器302可以将其检测并识别的对于TI对象的事件传送给一个或多个活动应用214,用于在由其基于事件生成的虚拟场景中向用户可视化。
图5A和5B为用于有形界面对象的虚拟化的进一步示例性方法500的流程图。在方框502中,校准器可以最先执行对视频捕捉装置(例如相机110)的几何图形校准并且然后视频捕捉装置可以在方框504中捕捉一个或多个场景的视频。例如,如图1C所示,相机110可以捕捉活动场景116和用户场景126。在一些例子中,相机110的视野可以由适配器108分割为多个场景,例如活动场景116和用户场景126。例如,对于前置相机110,适配器108可以保留相机110的部分视野不被改动以捕捉用户脸部和/或肢体(例如手)的视频,并且使用反射元件(例如镜子)将相机110的视野的一部分重定向为向下以捕捉活动表面102,不过除此之外本文别处讨论的配置也是可行的。
检测器302然后可以确定(506)从相机110接收的视频是否包含包括用户在内的场景(例如用户场景),并且如果是这样,其可以处理(508)该用户场景126以确定用户输入,例如讲话、脸部表情、手部动作、身体语言等。例如,检测器302可以处理从相机110接收的视频图像序列的脸部区域和手部区域以确定用户是否在做出手势,并且如果是这样,其可以确定正在执行的是哪个手势,并将那些手势连同其生成的任何TI对象事件一起传送给一个或多个活动应用214,如本文别处所讨论的。
此外,检测器302可确定(510)从相机110接收的视频是否包含包括活动表面102的场景(即,活动场景116),并且如果是这样,则可进行检测(512)包括在活动场景116中的一个或多个TI对象。如果从相机110接收的视频不包括活动场景116,方法400可返回方框502以校准相机110,进行处理在方框508中确定的用户输入,可向用户返回错误提示以指示平台的配置存在问题,可终止或等待,等。
在方框514中,检测器302可以确定所检测的(一个或多个)TI对象的属性,并在方框516中,可以基于(一个或多个)TI对象的属性为(一个或多个)TI对象生成对应的(一个或多个)事件。如本文其他地方所描述的,检测器302可确定的属性可包括但不限于,每个TI对象的基于轮廓的对象描述、每个TI对象的推断的形状的置信度、对象是否被遮挡以及遮挡了多少、用于遮挡判定的置信度、与(一个或多个)TI对象关联的手势等等。一个或多个活动应用214可接收检测器302确定的(一个或多个)对象事件和/或任何用户输入,并基于此执行(518)例程。基于由例程产生的结果,一个或多个活动应用214可在方框520中向(一个或多个)用户呈现虚拟对象相关信息,例如呈现反映活动目标的数字信息的丰富的虚拟环境,(一个或多个)TI对象的数字表示,如本文别处所讨论的。
图6是用于有形界面对象检测的示例性方法600的流程图。在方法600中,检测器302可以接收(602)活动场景116的图像,处理(604)该图像以确定包括在活动场景116中的每个TI对象的(一个或多个)轮廓,基于(一个或多个)轮廓为每个TI对象构建(606)对象描述,并且在一些情况下确定(608)(一个或多个)对象的其他属性,例如TI对象的(一个或多个)颜色,根据轮廓/对象描述推断的形状,TI对象的美学特性(例如,对象的纹理,装饰对象的图形和/或文本元素等),TI对象的检测的置信度等。图5A-9描述了可由检测器302执行的多种进一步示例性操作以检测TI对象,不过附加的和/可替换的操作也是可行的并且是可想到的。
一个或多个活动应用214可使用(一个或多个)TI对象的对象描述、其他属性等(例如,基于从检测器302接收的事件)以将结合了(一个或多个)TI对象的数字表示、与(一个或多个)TI对象相关的内容和/或(一个或多个)TI对象的环境和/或位置属性的交互虚拟环境呈现(610)给用户,如本文别处所述。
在一些实施方式中,活动应用214可指定检测器302在执行对象检测和识别时应当搜寻的(一个或多个)TI对象的(一个或多个)形状(直接指定或在存储装置310中指定),并且检测器302可将指定的(一个或多个)形状与其从视频数据中推断出的哪些形状进行比较以确定(一个或多个)TI对象是什么。在进一步实施方式中,检测器302可推断(一个或多个)TI对象的(一个或多个)形状并查询能够由服务器202操作的搜索引擎或另一信息源(例如存储装置310)以确定(一个或多个)TI对象是什么。其他的变型也是可行的且可想到的。
图7为用于TI对象检测的示例性方法700的流程图。在方框702中,检测器302可处理活动场景116的视频图像以确定包括在活动场景116中的每个TI对象的(一个或多个)轮廓,并通过使用坐标系对与每个TI对象关联的(一个或多个)轮廓进行映射来构建(704)每个TI对象的描述。检测器302然后可基于与每个TI对象关联的(一个或多个)轮廓的坐标来推断(706)每个TI对象的对象形状,并基于那些(一个或多个)TI对象的坐标来确定(708)(一个或多个)TI对象的位置和/或定向。例如,检测器302可使用对象的轮廓的坐标来确定对象的位置和/或定向。在一些情况下,检测器302可将坐标与已知的参考点(例如,立架106,存储在存储装置310中的与TI对象关联的位置信息等)进行比较以确定对象的位置和/或定向。
图8是用于TI对象检测的进一步示例性方法800的流程图。在方框802中,检测器302可处理活动场景116的视频图像以确定包括在(一个或多个)TI对象中的(一个或多个)图像的(一个或多个)轮廓,并在方框804中通过使用坐标系对与(一个或多个)图像关联的(一个或多个)轮廓进行映射来构建对象图像的(一个或多个)描述。坐标系可以是二维或三维性质的,并可以被配置为反映活动场景116的尺寸(经缩放的或实际的),且由此反映当由检测器302映射时(一个或多个)TI对象的位置。然后,检测器302可基于与图像关联的映射坐标来计算(806)(一个或多个)对象图像的(一个或多个)矩。示例性的可由检测器302计算的矩可包括面积矩、周长矩、质心矩等。这些矩可基于(一个或多个)TI对象的对象图像描绘的物件的面积、周长等来计算。作为进一步的示例,检测器302可使用其从对象图像中处理出的物件的轮廓的坐标来确定那些物件的周长或面积,并且可然后使用周长和面积计算多种矩作为图像的唯一标识。在一些例子中,检测器302可操纵相机的多个参数(例如,对比度、曝光、白平衡、等级)以调节捕捉的视频图像以增强由对象图像描绘的物件的轮廓。
作为对于方框806的替换或附加,检测器302可计算(808)(一个或多个)对象图像的(一个或多个)颜色直方图作为图像的唯一标识。颜色直方图可基于整个图像计算或基于其一个或多个部分而计算。例如,检测器302可使用网格将给定TI对象中包含的图像进行划分,并可以使用来自网格的一个或多个区块的图像数据计算(一个或多个)色彩直方图。作为进一步的示例,网格可以是覆盖图像的4x4网格,其包含16个区块,检测器302可使用来自第一、第五和第六区块(例如,从左向右、从上到下)的图像数据分别计算三个色彩直方图。优势在于每个图像可使用提取自对象图像不同区域的不同的属性来编索引,因此使得平台对多于一个的属性编索引。
检测器302可确定(810)(一个或多个)TI对象的位置信息,例如基于对象和/或图像坐标确定(一个或多个)TI对象在活动场景116内的位置和/或定向。检测器302还可以确定(812)是否对方框606和/或808中计算的矩和/或直方图进行转换。在一些例子中,可基于TI对象在活动场景116中的位置(例如,相对于参考点,诸如立架106)对矩和/或直方图进行转换。
图9是检测活动表面的状态变化的示例性方法900的流程图。
在方框902中,检测器302可接收活动场景116的视频图像帧。接下来,检测器301可将该活动场景图像与之前接收的活动场景116的图像帧进行比较(904),确定(906)在该活动场景116的图像帧和之前接收的活动场景116的图像帧之间是否存在实质差别,并且如果确定存在本质差别时在方框908中进行以处理视频流来检测包括在活动场景116中的一个或多个界面对象。如果在方框906中,在活动场景116的当前状态和之前状态之间未检测到实质差别,方法900可等待(910)下一个图像帧,然后重复至少方框902、904和906的操作。
通过使用方法900,检测引擎212可等待实际包含足够显著的变化的下一视频图像以证实对(一个或多个)TI对象的图像的处理。作为进一步的示例,在每个循环期间,检测器302可比较之前的和接下来的视频图像以确定是否有显著的变化,并可以不对最近的图像进行处理直到变化满足预定阈值。方法900的优点在于其可以消除对于平台来说不必要的检测和识别处理,从而避免拖慢/不利地影响计算装置104的性能。
图10是基于识别的(一个或多个)TI对象来处理和显示虚拟对象相关信息的示例性方法1000的流程图。在方框1002中,活动应用214可接收检测器302确定的(一个或多个)TI对象存在于活动场景116中的(一个或多个)事件。基于包括在一个或多个事件中的信息,活动应用214可以确定(1004)与事件关联的(一个或多个)TI对象的属性。属性可以包括(一个或多个)对象轮廓,(一个或多个)颜色,(一个或多个)形状,(一个或多个)装饰性特征(例如,标签,图标,文本等),(一个或多个)唯一对象标识(ID)等。
在方框1006中,方法1000接收与活动场景116和/或(一个或多个)TI对象关联的一个或多个输入,例如从由检测器302提供的(一个或多个)事件确定的手势,从随着时间接收的(一个或多个)事件中包括的信息得到的手势、由检测器302在用户场景中检测到的(一个或多个)用户输入等,通过计算装置104的输入装置318从用户接收的(一个或多个)用户输入等。
基于(一个或多个)TI对象的标识和属性,活动应用214然后可执行(1008)一个或多个例程以生成使一个或多个界面对象可视化的对象相关信息,并将对象相关信息呈现(1010)给用户,如本文别处所讨论的。
例如,给定的活动应用214可以生成将物理活动场景中的TI对象的虚拟表示(例如视频图像)与特定对象的参考图像相结合的界面,并将该界面显示在显示器上以示出TI对象与参考图像的叠加(例如,将反映了用户对目标形状的诠释的橡皮泥创作物的视频与描绘了动物形状的目标图像相叠加)。
在另一例子中,给定的活动应用214可以生成将所生成的物理活动场景116中的TI对象的(一个或多个)虚拟表示(例如,(一个或多个)线图)结合到虚拟场景(例如活动/游戏)中。例如,活动应用214可以确定在界面中(一个或多个)虚拟TI对象的表示与其他虚拟对象之间的交互,并生成可视地图示出该交互的图形用户界面。一个这样的环境的示例性环境图示在图14A-14D中,其中活动应用214是球类视频游戏,且其中活动应用214包括指示了装置屏幕112上的视频游戏界面中的一个或多个虚拟球的移动的算法。在游戏中,用户可使用任何有形的物理对象(TI对象)(例如,绘图,玩具,身体部分等)来重定向/偏转/阻碍虚拟球向界面中示出的(一个或多个)特定目标(例如(一个或多个)红色目标)的移动。在这种情况下,物理活动场景116中的(一个或多个)TI对象可以有利地用于/作为球类视频游戏中的虚拟控制器,该TI对象可以是不与计算装置104电连接(不电通信地性有线或无线连接)的普通日常对象。
在其他例子中,为了对用户的表现进行量化,活动应用214可以向打分模块216发送信号以对用户在物理活动场景中执行与活动应用214呈现的虚拟活动场景中所示出的(一个或多个)目标相关的各种任务时的表现进行评定的得分进行计算。活动应用214可以从打分模块215和/或计算机存储接收得分并将得分合并到虚拟活动场景中,如本文别处所讨论的。
图11为用于将背景与有形界面对象分开的示例性方法1100的流程图。在方框1102和1104中,检测器302接收活动场景的视频并进行处理以确定预定时段X的动作。X可以是任何时间量,例如1秒或更多秒,几分之一秒等。在一些实施例中,为了处理场景以获知动作,检测器302可以将视频的后续帧相互比较以识别它们之间的差。在一些实施例中,为了减少计算资源,检测器302可使用预定时间周期的帧进行比较,而不是对视频中的每一帧进行比较。在一些实施例中,检测器302可以忽略视频捕捉到的活动场景中的不重要的变化,例如阴影,灯光效果等。
在方框1106中,如果在时段X中未检测到动作,方法1100可使用(静态)活动场景来确定背景。在一些实施例中,检测器302可存储背景(静态视频场景)的图像,并在检测物理界面对象时使用它以提高精度。
如果在方框1106中检测到了动作,方法1100可使用方框1120中确定的背景(如果可用)进行检测(1108)场景中的(一个或多个)物理界面对象。在一些实施例中,方法1100可忽略背景中的对象,改为考虑未出现在背景中的对象。这是有利的,因为它能够提高对象检测操作的速度和准确度,其另外的细节将在本文别处进一步详细地进行讨论。
在一些实施例中,如果在方框1120中尚未确定背景,方法1100可提示用户不要干扰活动场景,并回到方框1104再次开始背景确定步骤,可放弃背景确定步骤改为检测活动场景中的显著的TI对象,并允许用户从那些对象中进行选择或可以估测哪个(哪些)对象是(一个或多个)感兴趣的对象,等等
在方框1112、1114和1116中,方法1100可确定(一个或多个)对象的属性,基于(一个或多个)对象(和/或相关事件和/或输入)执行例程,并基于例程的结果呈现虚拟对象相关信息,如本文别处进一步详细讨论的。自然,方法1100或其部分可以在需要时重复进行(例如,用以更新背景,连续处理活动场景以识别(一个或多个)对象等)。
应当理解的是,方法400-1200中的每个方法在许多方面是相互兼容的,并且在一些情况下可相互扩展,而且基于这些方法的不同方面的组合的进一步的方法是能够想到的并且落入本公开的范围。
此外,方法400-1200的优点在于,在许多方面,包括并不限于提供快速和准确的TI对象检测和识别;为用户提供实时、虚拟化的体验,其将用户与TI对象和活动表面102的物理交互与原本对于用户而言不可达到的丰富的、可视的和计算上的增强相混合,并对原本是不可触知的、相当乏味的数字体验增加有意义的有形方面体验。
图13A-14D是基于由用户在物理活动表面所交互的物理场景而生成在计算装置104上的虚拟场景的示例。这些图示出了物理活动表面上物理活动场景116的一系列增加的变化,其复制于计算装置104上的相应活动应用214所产生的两个示例性游戏环境的情境中。
图13A-13C特别示出了示例性的塑形游戏。在该游戏中,用户将物理活动场景116中的(一个或多个)有形界面对象114(在该例中为可塑形的橡皮泥,如图13B所示)塑形为活动应用214所示出的(一个或过个)形状1308。检测器302监测用户的进展并连续地将形状(一个TI对象)的描述及其属性(其不断变动)提供给活动应用214。活动应用214将大象形状的橡皮泥的虚拟表示叠加于用户所选择的大象图形上以示出他/她在再现它时的进展。除了将(一个或多个)虚拟的TI对象(例如,大象橡皮泥的图像)叠加于(一个或多个)目标虚拟物件(例如大象)上以外,活动应用214可以生成并显示反映用户进展的得分(例如,与打分模块216协作),如本文别处所讨论的。
通过进一步的例子,图13A示出了在塑形开始前游戏的起始。在最初,活动应用214可以从存储装置310取回具体化物件1306的文件,生成包括物件1306的表示和用于选择给定项目(例如1308)的项目选择元素1304的图形用户界面1302,并将图形用户界面1302显示在装置屏幕112上以与用户交互。通过使用输入装置318和图形用户界面1302的交互元素(例如1304),用户可以选择给定项目1308(例如对象的形状),则活动应用214可以从输入装置接收反映该选择的输入数据,并对其作出响应,将相应的项1308呈现在装置屏幕112的显示器上。特别地,图13A-13C示出了装置屏幕112上选择的项目1308(大象的形状的虚拟表示),不过在这个例子中用户可以通过与选择元素1304的左右箭头交互来选择不同的动物或项目,或者返回到主屏幕以选择其他项目,浏览其他项目类别等。此外,得分0意味着用户还没有用TI对象来填充项目1308。
图13B示出了在物理场景中TI对象(例如橡皮泥)114放置在活动表面116上,并且用户用他/她的手118在与TI对象交互。界面1302包括TI对象114的虚拟表示1310,其相应地显示在装置屏幕上的虚拟场景中与虚拟项目1308相结合。在这个例子中,检测器302检测到的TI对象114(例如橡皮泥)的物理位置确定了橡皮泥位于虚拟场景中的位置。该物理位置可反映在TI对象的对象描述中,活动应用214可使用该对象描述来放置它。如图所示的,绿色橡皮泥1310的轮廓被虚拟化地落入正显示在屏幕上的虚拟大象形状1308的轮廓内。
图13B包括得分67。这反映了物理场景中的橡皮泥的形状和/或定位对应于虚拟场景中的形状的准确度。更特别地,例如,该值表示该形状中已经被橡皮泥填充的总面积的百分比和/或形状外部的橡皮泥的量。
图13C示出了第三次重复,其中TI对象114(例如,物理的橡皮泥)已经塑形为使得其轮廓粗略地对应于虚拟形状1308的轮廓。在这个例子中,检测器302使用本文别处所进一步描述的方法检测橡皮泥的形状。活动应用214在装置屏幕上呈现橡皮泥的虚拟表示1310并将其叠加于目标形状1308。此外,活动应用214可计算其轮廓对应于虚拟形状的轮廓的准确度。例如,活动应用214计算(例如,与打分模块216协作)并更新得分为94于界面中,其向用户传达的是用户已经几近正确地在物理场景中重现了大象的形状,如在虚拟场景中所反映的那样。
虽然在图13A-13C中使用了大象,但应当理解的是任何其他形状或形状集是可行的并且可使用的。此外,应当理解的是可塑形橡皮泥是可使用的对象类型的非限制性例子,还可以使用其他合适的物理对象(例如,绘图,绘画等)。例如,代替或除了塑形橡皮泥或捏塑体(例如培乐多(Play-dohTM)),用户可以绘制(检测器302可以检测)图片,切割纸片,堆放面团、豆子、五彩纸屑、蚂蚁等。任何对象都可以虚拟地利用,只要检测器能够检测出来,如本文别处所讨论的(例如,将对象从活动场景的背景分离)。
图14A-14D示出了由活动应用214提供在装置屏幕上的另一示例性游戏。在这个游戏的图形用户界面1402中,一个或多个虚拟球落下经过虚拟场景并可以被偏转以使得球击中一个或多个靶子1406。一旦一个或多个球1404如活动应用214所要求的那样已经击中了靶子1406,就可以呈现新的和/或更新的虚拟场景,其中可以呈现活动应用214计算的使用同样的或不同的靶子1406的新挑战(例如,在不同的位置,利用不同的物理学,新的/不同的障碍等等)。
更具体地,如图14A所示,活动应用214可以在虚拟场景中的某个位置渲染靶子1406,并从虚拟场景的顶部落下球1404(如轨迹线1408所反映的那样,在这个例子中其并未实际上在屏幕上向用户示出,而是为了清楚起见而包括在该图中)。应用引擎可以控制球的虚拟物理调节运动及其与虚拟场景中其他物件(例如靶子和TI对象)的交互。为了对球1404重定向,用户可将TI对象放置在物理场景中,并且活动应用214可协同检测引擎212来进行检测并渲染虚拟场景内TI对象的虚拟表示。
图14B和14C示出了由用户在活动场景中引入的(一个或多个)TI对象(例如,由用户使用绘图工具120所画出的),基于此,物理对象1410的虚拟表示可以偏转(一个或多个)虚拟球1404的轨迹。如图14B所示,用户的手118可以在活动表面(例如,在一张纸上)上绘制线条122作为TI对象114,基于此,检测器302识别线条122的物理轮廓并生成相应的表示1410(例如,使用轮廓)以由活动应用214呈现在图形用户界面1402上。应当理解的是,不论检测器302是否知道(例如用户绘制线),任何对象都可由用户使用或创造,并由检测器302检测到。
更特别地,如本文别处所描述的,检测器302可以通过识别其轮廓来检测线条。检测器302还可以识别线条的各种属性,例如颜色,对比颜色,深度,纹理等。检测器302可以向活动应用214提供线条的描述(及其属性),活动应用214可以使用其来在活动场景中呈现TI对象(例如线条)的虚拟表示并使用该表示来对(一个或多个)球重定向。在一些例子中,线条的描述可以包括或伴有线条的视频图像。
活动应用214接收到TI对象122的虚拟表示1410的位置后,可以使用其来确定对(一个或多个)虚拟球1404的影响。由于活动应用214计算(一个或多个)球1404的轨迹时,其知道了(一个或多个)球1404的位置和方向(例如坐标),并随着(一个或多个)球1404的运动而将球的坐标与TI对象坐标进行比较以确定(一个或多个)TI对象对球1404的影响。例如,在击打到线条时,活动应用214可以基于活动应用214的可应用物理学对球1404的轨迹进行重定向。用户可以作出反应并绘制另一线条或延长已有线条(如图14C所示),以进一步操纵(一个或多个)球1404的轨迹朝向并进入靶子1406。
活动应用214可以基于适用的游戏情节设计包括或忽略用户的额手进/出虚拟场景。活动应用214可以通过将用户的手的轮廓与预定的所存储的手的形状进行比较来照此识别该手。在图14C的虚拟场景中,例如,活动应用214包括用户的手的虚拟图示1412,不过在其他变型中,活动应用214可以将手排除而不进行图示。
图14D示出了玩具恐龙1414被沿着各种绘制线条(如以上参照图14A-14C所讨论的)而放置在活动表面上。如别处所讨论的,检测器302可以检测物理对象(例如恐龙)并基于其轮廓构建相应的对象描述以及物理对象其他的属性,例如颜色,纹理,尺寸等。
如图所示,一旦检测器302检测到对象,活动应用214可以使用从检测器302接收到的对象描述以及属性(例如轮廓,颜色,外形等)在虚拟场景中渲染对象的虚拟表示,并使用该表示来与偏转球1404的轨迹交互和/或偏转球1404的轨迹。例如,如图14D所示,线条1418之一的虚拟表示可以使球1404偏转朝向靶子1406并且恐龙1416的虚拟表示可以用来使球1404中的一个的轨迹偏转朝向1406。应当理解的是恐龙1404仅仅是示例性实施例,其他TI对象的变型也是可行的。
在以上描述中,为了解释的目的,给出了多种具体细节以提供对本发明的完全理解。然而,应当理解的是,这里描述的技术可以不需要这些具体细节而实施。进一步地,多种***、装置和结构以框图的形式示出以避免使描述含混。例如,多种实施方式被描述为具有特定的硬件、软件和用户接口。然而,本公开应用于能够接收数据和指令的任何类型的计算装置以及应用于提供服务的任何***装置。
在一些例子中,多种实施方式在此表示为对计算机存储器中的数据位的操作的算法和符号表示。算法在这里总体上被认为是导向期望的结果的自洽的操作集。操作是那些对物理量的所需的物理操纵。通常,虽然不是必要,但这些量采取能够存储、传送、组合、比较或其他操纵的电或磁信号的形式。原则上为了共同使用的原因,将这些信号认为是位、值、元件、符号、字符、术语、数字等已经证明是方便的。
然而,应当记住的是,所有这些和类似的术语关联于适当的物理量,并且仅仅是应用于这些量的便利的标签。除非特别申明,否则从下面的讨论中显而易见地,应领会到在本公开的全文的讨论中,“处理”、“计算”、“运算”、“确定”、“显示”等,指的是计算机***或类似的电子计算装置的动作和处理,其操纵并转换计算机***的寄存器和存储器内的表示为物理(电子)量的数据为计算机***存储器或寄存器或其他这样的信息存储装置、传送或显示装置的类似地表示为物理量的其他数据。
这里描述的多种实施方式可涉及用于执行这里的操作的装置。该装置可为要求的目的而特定地构建,或其可包括由存储在计算机中的计算机程序选择性地启用或重配置的通用计算机。这样的计算机程序可存储在计算机可读存储介质中,其包括但不限于:任何类型的圆盘,包括软盘、光盘、CD-ROM以及磁盘;只读存储器(ROM)、随机存取存储器(RAM)、EPROM、EEPROM、磁卡或光学卡、包括带有非易失性存储器或任何类型的适于存储电子指令的媒介的USB钥匙,其各联接至计算机***总线。
这里描述的技术可采用硬件或软件实施方式的形式或包含硬件和软件元件的实施方式的形式。例如,该技术可在软件中实施,其包括但不限于固件、驻留软件、微代码等。此外,该技术可采用计算机程序产品的形式,其可从计算机可用或计算机可读媒介存取,其提供程序代码以由或结合于计算机或任何指令执行***使用。为了所描述的目的,计算机可用或计算机可读媒介可以是任何非暂态存储装置,其能够包含、存储、传达、传播或输送程序以由或结合于指令执行***、设备或装置使用。
适于存储和/或执行程序代码的数据处理***可包括至少一个处理器,其通过***总线直接或间接联接至存储器元件。存储元件可包括在程序代码实际执行期间使用的本地存储器、大容量记忆体、快取记忆体,其提供至少一些程序代码暂时存储以减少代码在执行期间必须从大容量记忆体取回的次数。输入/输出或I/O装置(包括但不限于键盘、显示器、点击装置等)可直接联接至***或通过中间I/O控制器联接至***。
网络适配器也可以联接至***以使得数据处理***能够通过中间个人网络或公共网络联接至其他数据处理***、存储装置、远程打印机等。无线(例如Wi-FiTM)收发器、以太网适配器和调制解调器仅为网络适配器的少量示例。个人网络和公共网络可以具有任何数量的架构和/或拓扑。数据可通过网络使用多种不同的通信协议在这些装置之间传送,协议包括例如多种互联网层、传输层、或应用层协议。例如,数据库使用如下协议经由网络传送:传输控制协议/网际协议(TCP/IP)、用户数据报协议(UDP)、传输控制协议(TCP)、超文件传输协议(HTTP)、安全超文件传输协议(HTTPS)、HTTP动态自适应流媒体(DASH)、实时流媒体协议(RTSP)、实时传输协议(RTP)和实时传输控制协议(RTCP)、互联网语音协议(VOIP)、文件传递协议(FTP)、WebSocket握手协议(WS)、无线接入协议(WAP)、多种管理协议(SMS,MMS,XMS,IMAP,SMTP,POP,WebDAV等)或其他已知协议。
最后,这里表示的结构、算法和/或接口并不固有地涉及任何特定的计算机或其他设备。可根据这里的教导以程序使用多种通用***,或构建更专用的设备来执行所要求的方法方框证明是方便的。用于多种这些***所要求的结构从以上描述中是显而易见的。此外,说明书并不参照任何特定的编程语言而描述。应领会到多种编程语言可用来实施此处描述的说明书的教导。
前文的描述是为了例示和说明的目的而表示的。其并不旨在穷举或限制说明书为所公开的明确形式。在上述教导下可能有许多修改和变化。其旨在不用这里的详细描述限制本公开的范围,而是由本申请的权利要求书来限定。如本领域技术人员所将理解的,说明书可以其他特定形式实施而不偏离其精神或必要特征。同样的,模块、例程、特征、属性、方法论和其他方面的命名和区分并非强制的或重要的,并且实施说明书或其特征的机制可具有不同的名称、区分和/或格式。
此外,本公开的模块、例程、特征、属性、方法论和其他方面可以实施为软件、硬件、固件或前述的任意组合。而且,不论说明书的哪个部件(其示例为模块)实施为软件,该部件可以实施为独立的程序、更大程序的一部分、多个分开的程序、静态或动态链接库、内核可加载模块、装置驱动器和/或现在或将来知道的每种方式或任何其他方式。此外,本公开并不限制以任何特定的编程语言来实施,或实施用于任何特定的操作***或环境。因此,本公开旨在为说明但不限制在所附权利要求书中阐述的主题的范围。
Claims (18)
1.一种方法,其包括:
使用视频捕捉装置捕捉视频流,该视频流包括物理活动表面的活动场景以及用户物理地与之交互的一个或多个界面对象;
使用一个或多个计算装置处理视频流中的物理活动表面的活动场景以确定预定时段的动作;
使用所述一个或多个计算装置基于所述处理而检测活动场景中的动作;
响应于对所述动作的检测,使用所述一个或多个计算装置处理视频流以检测包括在物理活动表面的活动场景中的一个或多个界面对象;以及
基于一个或多个检测到的界面对象而将虚拟信息显示在计算机显示器上。
2.如权利要求1所述的方法,其进一步包括:
使用所述一个或多个计算装置确定所述一个或多个界面对象中每一个的属性;以及
使用所述一个或多个计算装置基于所述一个或多个界面对象中每一个的属性而执行一个或多个例程,以生成对一个或多个界面对象进行可视化的对象相关信息,其中将虚拟信息显示在计算机显示器上包括在计算机显示器上显示对象相关信息以使得一个或多个界面对象对于用户可见。
3.如权利要求1所述的方法,其中处理视频流以检测物理活动表面的活动场景中包括的一个或多个界面对象进一步包括:接收活动场景的图像,处理所述图像以获得包括在活动场景中的所述一个或多个界面对象中的每一个的一个或多个轮廓,以及基于所述一个或多个轮廓为所述一个或多个界面对象中的每一个构建对象描述。
4.如权利要求1所述的方法,其中基于一个或多个检测到的界面对象而将虚拟信息显示在计算机显示器上进一步包括:
生成所述一个或多个界面对象中的每个的虚拟表示,并
将一个或多个界面对象中的每一个的虚拟表示叠加到显示在计算机显示器上的虚拟场景中的相应的虚拟对象上。
5.如权利要求4所述的方法,其中基于一个或多个检测到的界面对象而将虚拟信息显示在计算机显示器上进一步包括:
计算一个或多个界面对象中每一个的虚拟表示与相应的虚拟对象之间的差,
基于所计算的差生成得分,并
基于所计算的差,将得分的表示包括在显示于计算机显示器上的虚拟场景中。
6.如权利要求5所述的方法,其中计算所述一个或多个界面对象中每一个的虚拟表示与相应的虚拟对象之间的差包括计算所述一个或多个界面对象中每一个的虚拟表示的轮廓与相应的虚拟对象的轮廓之间的差。
7.如权利要求5所述的方法,计算所述一个或多个界面对象中每一个的虚拟表示与相应的虚拟对象之间的差进一步包括:
确定相应的虚拟对象的形状,
确定未填充在该形状中的像素的数量,
确定该形状外部的像素的数量,
确定该形状的像素的总数量,并
使用如下公式计算变化微量:max(0,1-(sum(未填充像素)+sum(形状外部像素))/sum(形状总像素))*100。
8.如权利要求5所述的方法,其中基于所计算的差生成得分进一步包括执行单调函数以在对所述活动场景中的所述一个或多个有形界面对象的操纵中改变用户对进展的感知。
9.一种方法,其包括:
使用视频捕捉装置捕捉视频流,该视频流包括物理活动表面的活动场景以及用户物理地与之交互的一个或多个界面对象;
使用一个或多个计算装置处理视频流以检测包括在物理活动表面的活动场景中的所述一个或多个界面对象;
基于活动场景中的所述一个或多个界面对象的状态,确定与在计算机装置上可执行的活动应用的预定目标相关的用户进展;以及
使用所述用户进展的视觉指示来更新被渲染以显示在计算装置的显示装置上的虚拟场景。
10.如权利要求9所述的方法,其中确定与活动应用的预定目标相关的用户进展包括确定所述一个或多个界面对象对虚拟场景中的视觉目标的影响,以及更新被渲染以显示在显示装置上的虚拟场景包括基于所确定的影响来更新视觉目标的状态。
11.一种物理活动表面可视化***,其包括:
立架,其被配置为将计算装置定位成靠近物理活动表面,所述计算装置具有一个或多个处理器;
视频捕捉装置,其被联接用于与计算装置通信,所述视频捕捉装置适于捕捉视频流,该视频流包括物理活动表面的活动场景以及用户物理地与之交互的一个或多个界面对象;
检测器,其能够由所述一个或多个处理器执行以基于所述处理来检测活动场景中的动作,并响应于对所述动作的检测,处理视频流以检测包括在物理活动表面的活动场景中的一个或多个界面对象;以及
活动应用,其能够由一个或多个处理器执行以基于一个或多个检测到的界面对象而将虚拟信息显示在计算装置的显示器上。
12.如权利要求11所述的物理活动表面可视化***,其中所述检测器进一步能够由所述一个或多个处理器执行以确定一个或多个界面对象中每一个的属性,且所述活动应用进一步能够由一个或多个处理器执行以基于一个或多个界面对象中每一个的属性而执行一个或多个例程,从而生成对一个或多个界面对象进行可视化的对象相关信息,其中将所述虚拟信息显示在计算装置上包括显示所述对象相关信息以使得一个或多个界面对象对于用户可见。
13.如权利要求12所述的物理活动表面可视化***,其中所述检测器进一步能够执行以处理所述视频流,以通过接收活动场景的图像来检测所述物理活动表面的活动场景中包括的所述一个或多个界面对象,处理所述图像以确定包括在活动场景中的一个或多个界面对象中的每一个的一个或多个轮廓,以及基于所述一个或多个轮廓为所述一个或多个界面对象中的每一个构建对象描述。
14.如权利要求12所述的物理活动表面可视化***,其中所述活动应用进一步能够执行以通过如下步骤来基于一个或多个检测到的界面对象而将虚拟信息显示在计算装置的显示器上:
生成一个或多个界面对象中的每个的虚拟表示,并
将所述一个或多个界面对象中的每一个的虚拟表示叠加到显示在计算机显示器上的虚拟场景中的相应的虚拟对象上。
15.如权利要求14所述的物理活动表面可视化***,进一步包括:
打分模块,其能够由所述一个或多个处理器执行,其中活动应用进一步能够执行以通过如下步骤来基于一个或多个检测到的界面对象而将虚拟信息显示在所述一个或多个计算装置上:
与打分模块协作计算所述一个或多个界面对象中每一个的虚拟表示与相应的虚拟对象之间的差,并基于所计算的差生成得分,并
基于所计算的差,将得分的表示包括在显示于计算机显示器上的虚拟场景中。
16.如权利要求15所述的物理活动表面可视化***,其中计算所述一个或多个界面对象中每一个的虚拟表示与相应的虚拟对象之间的差包括计算所述一个或多个界面对象中每一个的虚拟表示的轮廓与相应的虚拟对象的轮廓之间的差。
17.如权利要求15所述的物理活动表面可视化***,其中计算一个或多个界面对象中每个的虚拟表示与相应的虚拟对象之间的差进一步包括:
确定相应的虚拟对象的形状,
确定未填充在该形状中的像素的数量,
确定该形状外部的像素的数量,
确定该形状的像素的总数量,以及
使用如下公式计算变化微量:max(0,1-(sum(未填充像素)+sum(形状外部像素))/sum(形状总像素))*100。
18.如权利要求15所述的物理活动表面可视化***,其中基于所计算的差生成得分进一步包括执行单调函数以在对所述活动场景中的所述一个或多个有形界面对象的操纵中改变用户对进展的感知。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111216571.5A CN114185424A (zh) | 2014-05-21 | 2015-05-21 | 有形界面对象的虚拟化 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201462001057P | 2014-05-21 | 2014-05-21 | |
US62/001,057 | 2014-05-21 | ||
PCT/US2015/032041 WO2015179689A1 (en) | 2014-05-21 | 2015-05-21 | Virtualization of tangible interface objects |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111216571.5A Division CN114185424A (zh) | 2014-05-21 | 2015-05-21 | 有形界面对象的虚拟化 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106575354A true CN106575354A (zh) | 2017-04-19 |
CN106575354B CN106575354B (zh) | 2021-11-05 |
Family
ID=54554790
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111216571.5A Pending CN114185424A (zh) | 2014-05-21 | 2015-05-21 | 有形界面对象的虚拟化 |
CN201580036884.9A Expired - Fee Related CN106575354B (zh) | 2014-05-21 | 2015-05-21 | 有形界面对象的虚拟化 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111216571.5A Pending CN114185424A (zh) | 2014-05-21 | 2015-05-21 | 有形界面对象的虚拟化 |
Country Status (5)
Country | Link |
---|---|
US (5) | US10083356B2 (zh) |
EP (2) | EP3146466B1 (zh) |
CN (2) | CN114185424A (zh) |
GB (3) | GB2542518B (zh) |
WO (1) | WO2015179689A1 (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107392783A (zh) * | 2017-07-05 | 2017-11-24 | 龚少卓 | 基于虚拟现实的社交方法及装置 |
CN112352209A (zh) * | 2018-07-02 | 2021-02-09 | 谷歌有限责任公司 | 用于与人工智能***互动和界面交互的***和方法 |
CN113348494A (zh) * | 2019-01-23 | 2021-09-03 | 汤杰宝游戏公司 | 有形对象组件的虚拟化 |
CN114375435A (zh) * | 2019-07-07 | 2022-04-19 | 汤杰宝游戏公司 | 增强物理活动表面上的有形内容 |
Families Citing this family (36)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9213781B1 (en) | 2012-09-19 | 2015-12-15 | Placemeter LLC | System and method for processing image data |
US9158389B1 (en) | 2012-10-15 | 2015-10-13 | Tangible Play, Inc. | Virtualization of tangible interface objects |
US10657694B2 (en) | 2012-10-15 | 2020-05-19 | Tangible Play, Inc. | Activity surface detection, display and enhancement of a virtual scene |
US10033943B1 (en) | 2012-10-15 | 2018-07-24 | Tangible Play, Inc. | Activity surface detection, display and enhancement |
GB2542518B (en) * | 2014-05-21 | 2020-07-22 | Tangible Play Inc | Virtualization of tangible interface objects |
WO2015184440A2 (en) | 2014-05-30 | 2015-12-03 | Placemeter Inc. | System and method for activity monitoring using video data |
US9501096B2 (en) * | 2015-03-26 | 2016-11-22 | Tangible Play, Inc. | Display positioning system |
US10043078B2 (en) * | 2015-04-21 | 2018-08-07 | Placemeter LLC | Virtual turnstile system and method |
US11334751B2 (en) | 2015-04-21 | 2022-05-17 | Placemeter Inc. | Systems and methods for processing video data for activity monitoring |
US10997428B2 (en) | 2015-06-01 | 2021-05-04 | Placemeter Inc. | Automated detection of building entrances |
US9919217B2 (en) | 2016-03-08 | 2018-03-20 | Electronic Arts Inc. | Dynamic difficulty adjustment |
GB2564784B (en) * | 2016-03-25 | 2019-07-10 | Tangible Play Inc | Activity surface detection, display and enhancement of a virtual scene |
US10720082B1 (en) * | 2016-09-08 | 2020-07-21 | Ctskh, Llc | Device and system to teach stem lessons using hands-on learning method |
US10384133B1 (en) | 2016-12-30 | 2019-08-20 | Electronic Arts Inc. | Systems and methods for automatically measuring a video game difficulty |
WO2018141956A1 (en) | 2017-02-06 | 2018-08-09 | Lego A/S | Electronic ordering system and method |
US10357718B2 (en) | 2017-02-28 | 2019-07-23 | Electronic Arts Inc. | Realtime dynamic modification and optimization of gameplay parameters within a video game application |
US10976906B2 (en) * | 2017-12-21 | 2021-04-13 | Tangible Play, Inc. | Detection and visualization of a formation of a tangible interface object |
US11369027B2 (en) | 2018-04-05 | 2022-06-21 | Tangible Play, Inc. | Display positioning system |
USD902937S1 (en) | 2018-04-05 | 2020-11-24 | Tangible Play, Inc. | Display positioning system |
WO2019213760A1 (en) | 2018-05-10 | 2019-11-14 | Daniel Licht | System, method, and kit for using triggering objects to create concatenated audio/video |
US10839215B2 (en) | 2018-05-21 | 2020-11-17 | Electronic Arts Inc. | Artificial intelligence for emulating human playstyles |
US10713543B1 (en) | 2018-06-13 | 2020-07-14 | Electronic Arts Inc. | Enhanced training of machine learning systems based on automatically generated realistic gameplay information |
USD885495S1 (en) * | 2018-08-01 | 2020-05-26 | Matatalab Co., Ltd. | Image recognition module |
GB2608250A (en) * | 2018-09-17 | 2022-12-28 | Tangible Play Inc | Display positioning system |
GB201815725D0 (en) * | 2018-09-26 | 2018-11-07 | Square Enix Ltd | Sketching routine for video games |
US20200301553A1 (en) * | 2019-03-22 | 2020-09-24 | Sony Interactive Entertainment Inc. | Establishing and using virtual assets on tangible objects in augmented reality (ar) and virtual reality (vr) |
US10953334B2 (en) | 2019-03-27 | 2021-03-23 | Electronic Arts Inc. | Virtual character generation from image or video data |
US11276216B2 (en) | 2019-03-27 | 2022-03-15 | Electronic Arts Inc. | Virtual animal character generation from image or video data |
US20200387276A1 (en) * | 2019-06-04 | 2020-12-10 | Tangible Play, Inc. | Virtualization of physical activity surface |
US10940393B2 (en) | 2019-07-02 | 2021-03-09 | Electronic Arts Inc. | Customized models for imitating player gameplay in a video game |
USD907032S1 (en) * | 2019-07-07 | 2021-01-05 | Tangible Play, Inc. | Virtualization device |
US11110353B2 (en) | 2019-07-10 | 2021-09-07 | Electronic Arts Inc. | Distributed training for machine learning of AI controlled virtual entities on video game clients |
CN111093301B (zh) * | 2019-12-14 | 2022-02-25 | 安琦道尔(上海)环境规划建筑设计咨询有限公司 | 一种灯光控制方法及其*** |
USD937868S1 (en) | 2020-05-21 | 2021-12-07 | Tangible Play, Inc. | Display screen or portion thereof with a transitional graphical user interface |
US20220232004A1 (en) * | 2021-01-18 | 2022-07-21 | Vmware, Inc. | Virtual session access management |
IT202100014240A1 (it) | 2021-05-31 | 2022-12-01 | Love For Inclusion Srl | Sistema modulare di acquisizione immagini |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2006027627A1 (en) * | 2004-09-11 | 2006-03-16 | Univeristy Of Abertay | Object tracking system |
CN102549527A (zh) * | 2010-06-28 | 2012-07-04 | 英特尔公司 | 用于便携式有形交互的*** |
CN102662430A (zh) * | 2012-03-09 | 2012-09-12 | 苏州佳世达电通有限公司 | 平板电脑式显示装置 |
US20130321447A1 (en) * | 2009-08-04 | 2013-12-05 | Eyecue Vision Technologies Ltd. | System and method for object extraction |
CN103678859A (zh) * | 2012-09-12 | 2014-03-26 | 财团法人工业技术研究院 | 动作比对方法与动作比对*** |
Family Cites Families (39)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3679512B2 (ja) * | 1996-07-05 | 2005-08-03 | キヤノン株式会社 | 画像抽出装置および方法 |
AU8682498A (en) * | 1997-07-31 | 1999-02-22 | Reality Fusion, Inc. | Systems and methods for software control through analysis and interpretation of video information |
US6720949B1 (en) * | 1997-08-22 | 2004-04-13 | Timothy R. Pryor | Man machine interfaces and applications |
US6175954B1 (en) * | 1997-10-30 | 2001-01-16 | Fuji Xerox Co., Ltd. | Computer programming using tangible user interface where physical icons (phicons) indicate: beginning and end of statements and program constructs; statements generated with re-programmable phicons and stored |
GB2367660B (en) * | 2000-04-13 | 2004-01-14 | Ibm | Methods and apparatus for automatic page break detection |
US6690156B1 (en) * | 2000-07-28 | 2004-02-10 | N-Trig Ltd. | Physical object location apparatus and method and a graphic display device using the same |
EP1689172B1 (en) * | 2001-06-05 | 2016-03-09 | Microsoft Technology Licensing, LLC | Interactive video display system |
US8019121B2 (en) * | 2002-07-27 | 2011-09-13 | Sony Computer Entertainment Inc. | Method and system for processing intensity from input devices for interfacing with a computer program |
DE10258794A1 (de) * | 2002-12-16 | 2004-06-24 | Ibeo Automobile Sensor Gmbh | Verfahren zur Erkennung und Verfolgung von Objekten |
US8064684B2 (en) * | 2003-04-16 | 2011-11-22 | Massachusetts Institute Of Technology | Methods and apparatus for visualizing volumetric data using deformable physical object |
US7295220B2 (en) * | 2004-05-28 | 2007-11-13 | National University Of Singapore | Interactive system and method |
US8611587B2 (en) | 2006-03-27 | 2013-12-17 | Eyecue Vision Technologies Ltd. | Device, system and method for determining compliance with an instruction by a figure in an image |
EP1913871B1 (en) * | 2006-10-19 | 2017-01-11 | Esaote S.p.A. | Apparatus for determining indications helping the diagnosis of orthopedical diseases |
WO2008129540A2 (en) | 2007-04-19 | 2008-10-30 | Eyecue Vision Technologies Ltd. | Device and method for identification of objects using color coding |
US9138636B2 (en) | 2007-05-16 | 2015-09-22 | Eyecue Vision Technologies Ltd. | System and method for calculating values in tile games |
US20090089739A1 (en) * | 2007-09-28 | 2009-04-02 | Microsoft Corporation | Intelligent editing of relational models |
US20090273560A1 (en) * | 2008-02-04 | 2009-11-05 | Massachusetts Institute Of Technology | Sensor-based distributed tangible user interface |
US7953255B2 (en) * | 2008-05-01 | 2011-05-31 | At&T Intellectual Property I, L.P. | Avatars in social interactive television |
US8614744B2 (en) * | 2008-07-21 | 2013-12-24 | International Business Machines Corporation | Area monitoring using prototypical tracks |
US8280153B2 (en) * | 2009-08-18 | 2012-10-02 | Behavioral Recognition Systems | Visualizing and updating learned trajectories in video surveillance systems |
JP5495930B2 (ja) * | 2010-05-10 | 2014-05-21 | キヤノン株式会社 | 画像処理装置、方法、およびプログラム |
JP2012027154A (ja) * | 2010-07-21 | 2012-02-09 | Canon Inc | 画像表示システム |
WO2012061549A2 (en) * | 2010-11-03 | 2012-05-10 | 3Dmedia Corporation | Methods, systems, and computer program products for creating three-dimensional video sequences |
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 |
EP3654146A1 (en) * | 2011-03-29 | 2020-05-20 | QUALCOMM Incorporated | Anchoring virtual images to real world surfaces in augmented reality systems |
US8675067B2 (en) * | 2011-05-04 | 2014-03-18 | Microsoft Corporation | Immersive remote conferencing |
GB201107385D0 (en) * | 2011-05-04 | 2011-06-15 | Materialise Nv | Medical imaging calibration device |
US8467606B2 (en) * | 2011-08-25 | 2013-06-18 | Eastman Kodak Company | Method for segmenting a composite image |
US20130063560A1 (en) * | 2011-09-12 | 2013-03-14 | Palo Alto Research Center Incorporated | Combined stereo camera and stereo display interaction |
US9350951B1 (en) * | 2011-11-22 | 2016-05-24 | Scott Dallas Rowe | Method for interactive training and analysis |
ITVI20120104A1 (it) * | 2012-05-03 | 2013-11-04 | St Microelectronics Srl | Metodo e apparato per generare in tempo reale uno storyboard visuale |
US9741145B2 (en) * | 2012-06-29 | 2017-08-22 | Disney Enterprises, Inc. | Augmented reality simulation continuum |
US9508146B2 (en) * | 2012-10-31 | 2016-11-29 | The Boeing Company | Automated frame of reference calibration for augmented reality |
KR102001218B1 (ko) * | 2012-11-02 | 2019-07-17 | 삼성전자주식회사 | 객체와 관련된 정보 제공 방법 및 이를 위한 디바이스 |
US9058693B2 (en) * | 2012-12-21 | 2015-06-16 | Dassault Systemes Americas Corp. | Location correction of virtual objects |
SE536902C2 (sv) * | 2013-01-22 | 2014-10-21 | Crunchfish Ab | Skalbar inmatning från spårat objekt i beröringsfritt användargränssnitt |
US9721183B2 (en) * | 2014-01-31 | 2017-08-01 | Hulu, LLC | Intelligent determination of aesthetic preferences based on user history and properties |
GB2542518B (en) | 2014-05-21 | 2020-07-22 | Tangible Play Inc | Virtualization of tangible interface objects |
JP6415412B2 (ja) * | 2015-09-28 | 2018-10-31 | キヤノン株式会社 | 計測装置および計測方法 |
-
2015
- 2015-05-21 GB GB1621482.7A patent/GB2542518B/en not_active Expired - Fee Related
- 2015-05-21 CN CN202111216571.5A patent/CN114185424A/zh active Pending
- 2015-05-21 CN CN201580036884.9A patent/CN106575354B/zh not_active Expired - Fee Related
- 2015-05-21 US US14/718,199 patent/US10083356B2/en active Active
- 2015-05-21 EP EP15796779.5A patent/EP3146466B1/en active Active
- 2015-05-21 GB GB2008640.1A patent/GB2583848B/en not_active Expired - Fee Related
- 2015-05-21 GB GB2014322.8A patent/GB2585310B/en not_active Expired - Fee Related
- 2015-05-21 WO PCT/US2015/032041 patent/WO2015179689A1/en active Application Filing
- 2015-05-21 EP EP21182378.6A patent/EP3916632A1/en not_active Withdrawn
-
2018
- 2018-09-07 US US16/125,544 patent/US10515274B2/en not_active Expired - Fee Related
-
2019
- 2019-11-05 US US16/675,059 patent/US10977496B2/en active Active
-
2021
- 2021-04-12 US US17/228,685 patent/US20210232821A1/en not_active Abandoned
-
2022
- 2022-12-23 US US18/146,225 patent/US20230415030A1/en not_active Abandoned
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2006027627A1 (en) * | 2004-09-11 | 2006-03-16 | Univeristy Of Abertay | Object tracking system |
US20130321447A1 (en) * | 2009-08-04 | 2013-12-05 | Eyecue Vision Technologies Ltd. | System and method for object extraction |
CN102549527A (zh) * | 2010-06-28 | 2012-07-04 | 英特尔公司 | 用于便携式有形交互的*** |
CN102662430A (zh) * | 2012-03-09 | 2012-09-12 | 苏州佳世达电通有限公司 | 平板电脑式显示装置 |
CN103678859A (zh) * | 2012-09-12 | 2014-03-26 | 财团法人工业技术研究院 | 动作比对方法与动作比对*** |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107392783A (zh) * | 2017-07-05 | 2017-11-24 | 龚少卓 | 基于虚拟现实的社交方法及装置 |
CN112352209A (zh) * | 2018-07-02 | 2021-02-09 | 谷歌有限责任公司 | 用于与人工智能***互动和界面交互的***和方法 |
CN112352209B (zh) * | 2018-07-02 | 2024-06-11 | 谷歌有限责任公司 | 用于与人工智能***互动和界面交互的***和方法 |
CN113348494A (zh) * | 2019-01-23 | 2021-09-03 | 汤杰宝游戏公司 | 有形对象组件的虚拟化 |
CN114375435A (zh) * | 2019-07-07 | 2022-04-19 | 汤杰宝游戏公司 | 增强物理活动表面上的有形内容 |
Also Published As
Publication number | Publication date |
---|---|
GB202008640D0 (en) | 2020-07-22 |
US20230415030A1 (en) | 2023-12-28 |
GB202014322D0 (en) | 2020-10-28 |
GB2585310A (en) | 2021-01-06 |
US10515274B2 (en) | 2019-12-24 |
EP3146466A1 (en) | 2017-03-29 |
US20200218895A1 (en) | 2020-07-09 |
GB2583848A (en) | 2020-11-11 |
US10977496B2 (en) | 2021-04-13 |
GB2585310B (en) | 2021-03-31 |
EP3146466B1 (en) | 2021-06-30 |
GB201621482D0 (en) | 2017-02-01 |
GB2542518B (en) | 2020-07-22 |
US20150339532A1 (en) | 2015-11-26 |
WO2015179689A1 (en) | 2015-11-26 |
CN114185424A (zh) | 2022-03-15 |
EP3146466A4 (en) | 2018-01-10 |
US10083356B2 (en) | 2018-09-25 |
EP3916632A1 (en) | 2021-12-01 |
US20190080173A1 (en) | 2019-03-14 |
US20210232821A1 (en) | 2021-07-29 |
GB2542518A (en) | 2017-03-22 |
CN106575354B (zh) | 2021-11-05 |
GB2583848B (en) | 2021-03-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106575354A (zh) | 有形界面对象的虚拟化 | |
US10755485B2 (en) | Augmented reality product preview | |
US20230343092A1 (en) | Virtualization of Tangible Interface Objects | |
KR102417645B1 (ko) | Ar 장면 이미지 처리 방법, 장치, 전자 기기 및 저장 매체 | |
US9665960B1 (en) | Image-based item location identification | |
CN104461318B (zh) | 基于增强现实技术的点读方法及*** | |
CN106575043B (zh) | 用于手势识别和交互的***,装置和方法 | |
WO2022022036A1 (zh) | 一种展示方法、装置、设备、存储介质及计算机程序 | |
CN105637564B (zh) | 产生未知对象的扩增现实内容 | |
TW202119362A (zh) | 一種擴增實境資料呈現方法、電子設備及儲存介質 | |
WO2016122973A1 (en) | Real time texture mapping | |
JP2016521882A5 (zh) | ||
CN109074680A (zh) | 基于通信的增强现实中实时图像和信号处理方法和*** | |
JP6975312B2 (ja) | 不正推定システム、不正推定方法、及びプログラム | |
Li et al. | 3D sketching for 3D object retrieval | |
US11409788B2 (en) | Method for clustering at least two timestamped photographs | |
US20200097749A1 (en) | Information processing system, information processing method, and program | |
US20240005594A1 (en) | Virtualization of tangible object components | |
CN113348494A (zh) | 有形对象组件的虚拟化 | |
JP2022010108A (ja) | 不正推定システム、不正推定方法、及びプログラム | |
KR20230026864A (ko) | 어로 활동을 인증하는 서버, 방법 및 사용자 단말 |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20211105 |
|
CF01 | Termination of patent right due to non-payment of annual fee |