CN109345556B - 用于混合现实的神经网络前景分离 - Google Patents
用于混合现实的神经网络前景分离 Download PDFInfo
- Publication number
- CN109345556B CN109345556B CN201810821708.1A CN201810821708A CN109345556B CN 109345556 B CN109345556 B CN 109345556B CN 201810821708 A CN201810821708 A CN 201810821708A CN 109345556 B CN109345556 B CN 109345556B
- Authority
- CN
- China
- Prior art keywords
- processor
- scene image
- cnn
- data
- head
- 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.)
- Active
Links
- 238000000926 separation method Methods 0.000 title description 30
- 238000013528 artificial neural network Methods 0.000 title description 10
- 238000013527 convolutional neural network Methods 0.000 claims abstract description 172
- 238000000034 method Methods 0.000 claims abstract description 54
- 239000000945 filler Substances 0.000 claims abstract description 18
- 238000003709 image segmentation Methods 0.000 claims abstract description 12
- 238000012549 training Methods 0.000 claims description 37
- 238000002156 mixing Methods 0.000 claims description 16
- 230000008569 process Effects 0.000 claims description 11
- 230000009471 action Effects 0.000 claims description 2
- 230000033001 locomotion Effects 0.000 claims description 2
- 238000005096 rolling process Methods 0.000 claims description 2
- 210000003128 head Anatomy 0.000 description 29
- 230000000875 corresponding effect Effects 0.000 description 22
- 238000003860 storage Methods 0.000 description 18
- 238000012545 processing Methods 0.000 description 16
- 230000006870 function Effects 0.000 description 14
- 238000010586 diagram Methods 0.000 description 13
- 238000003708 edge detection Methods 0.000 description 9
- 230000004927 fusion Effects 0.000 description 8
- 238000002372 labelling Methods 0.000 description 6
- 230000008901 benefit Effects 0.000 description 5
- 239000000203 mixture Substances 0.000 description 4
- 238000012937 correction Methods 0.000 description 3
- 238000013135 deep learning Methods 0.000 description 3
- 239000003550 marker Substances 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000009434 installation Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000003909 pattern recognition Methods 0.000 description 2
- 230000008447 perception Effects 0.000 description 2
- 238000003825 pressing Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 241000282412 Homo Species 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 230000002860 competitive effect Effects 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 230000007123 defense Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000004424 eye movement Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 210000003205 muscle Anatomy 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000005067 remediation Methods 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000035807 sensation Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- 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/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G02—OPTICS
- G02B—OPTICAL ELEMENTS, SYSTEMS OR APPARATUS
- G02B27/00—Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
-
- G—PHYSICS
- G02—OPTICS
- G02B—OPTICAL ELEMENTS, SYSTEMS OR APPARATUS
- G02B27/00—Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
- G02B27/01—Head-up displays
-
- G—PHYSICS
- G02—OPTICS
- G02B—OPTICAL ELEMENTS, SYSTEMS OR APPARATUS
- G02B27/00—Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
- G02B27/01—Head-up displays
- G02B27/017—Head mounted
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2413—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
- G06F18/24133—Distances to prototypes
- G06F18/24143—Distances to neighbourhood prototypes, e.g. restricted Coulomb energy networks [RCEN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/243—Classification techniques relating to the number of classes
- G06F18/2433—Single-class perspective, e.g. one-against-all classification; Novelty detection; Outlier detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/40—Software arrangements specially adapted for pattern recognition, e.g. user interfaces or toolboxes therefor
- G06F18/41—Interactive pattern learning with a human teacher
-
- 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/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/60—Editing figures and text; Combining figures or text
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/006—Mixed reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4038—Image mosaicing, e.g. composing plane images from plane sub-images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/50—Image enhancement or restoration using two or more images, e.g. averaging or subtraction
-
- 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/13—Edge detection
-
- 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/194—Segmentation; Edge detection involving foreground-background segmentation
-
- 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/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
- G06V10/443—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
- G06V10/449—Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
-
- 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/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/10—Terrestrial scenes
-
- 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
- G02—OPTICS
- G02B—OPTICAL ELEMENTS, SYSTEMS OR APPARATUS
- G02B27/00—Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
- G02B27/01—Head-up displays
- G02B27/0101—Head-up displays characterised by optical features
- G02B2027/0132—Head-up displays characterised by optical features comprising binocular systems
- G02B2027/0134—Head-up displays characterised by optical features comprising binocular systems of stereoscopic type
-
- G—PHYSICS
- G02—OPTICS
- G02B—OPTICAL ELEMENTS, SYSTEMS OR APPARATUS
- G02B27/00—Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
- G02B27/01—Head-up displays
- G02B27/0101—Head-up displays characterised by optical features
- G02B2027/0138—Head-up displays characterised by optical features comprising image capture systems, e.g. camera
-
- G—PHYSICS
- G02—OPTICS
- G02B—OPTICAL ELEMENTS, SYSTEMS OR APPARATUS
- G02B27/00—Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
- G02B27/01—Head-up displays
- G02B27/0101—Head-up displays characterised by optical features
- G02B2027/014—Head-up displays characterised by optical features comprising information/image processing systems
-
- G—PHYSICS
- G02—OPTICS
- G02B—OPTICAL ELEMENTS, SYSTEMS OR APPARATUS
- G02B27/00—Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
- G02B27/01—Head-up displays
- G02B27/0179—Display position adjusting means not related to the information to be displayed
- G02B2027/0187—Display position adjusting means not related to the information to be displayed slaved to motion of at least a part of the body of the user, e.g. head, eye
-
- 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/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
- G06F3/012—Head tracking input arrangements
-
- 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/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
- G06F3/013—Eye tracking input arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
- G06T2207/10021—Stereoscopic video; Stereoscopic image sequence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20212—Image combination
- G06T2207/20221—Image fusion; Image merging
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2210/00—Indexing scheme for image generation or computer graphics
- G06T2210/12—Bounding box
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Multimedia (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- General Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Optics & Photonics (AREA)
- Databases & Information Systems (AREA)
- Computing Systems (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Medical Informatics (AREA)
- Human Computer Interaction (AREA)
- Computer Graphics (AREA)
- Computer Hardware Design (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Biodiversity & Conservation Biology (AREA)
- Image Analysis (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本发明涉及一种头部可佩戴装置、方法及系统。公开了头部可佩戴装置,包括:一显示器、一摄像机、一卷积神经网络处理器和一处理器,卷积神经网络处理器可以被配置为:接收来自摄像机的真实场景图像数据;识别和分类真实场景图像中的对象和生成对象分类和位置数据。处理器可以被配置为:接收真实场景图像数据;接收来自卷积神经网络处理器的对象分类和位置数据;在真实场景图像上执行一个图像分割来填充对象;生成填充对象数据表示已填充对象;生成一个像素掩膜;接收虚拟场景图像数据;创建混合现实场景图像数据;和输出混合现实场景图像数据到用户的用于演示的显示器上。
Description
技术领域
本发明涉及混合现实技术领域,尤其涉及用于混合现实的神经网络前景分离。
背景技术
虚拟现实(VR)允许模拟和训练提供者实现丰富和拟真的虚拟内容。混合现实将虚拟场景和真实场景融入到单一三维拟真场景中,混合现实通常使用实时视频处理方法,从背景中提取前景图像,并将混合场景生成到用户显示器中,它将期望的真实前景对象与虚拟背景结合在一起。混合现实用户训练通过参加用户的肌肉记忆和提供触觉反馈来增强虚拟现实技术,这是学习的关键组成部分。混合现实允许用户操作真实的设备,用户将在现场使用真实的设备,并允许多用户训练场景,在这个场景中,队友可以在相同三维虚拟环境中看到彼此。
混合现实系统需要前景分离。前景分离涉及到识别用户的视场中的哪些真实对象将被包含在混合现实场景中,并识别哪些真实的对象将被虚拟环境隐藏。理想情况下,前景分离应该以实时、逐帧方式进行,并且具有绝对最小的延迟,以保持混合环境的实时、身临其境的感觉。然而,目前实现的前景分离方法存在严重的缺陷,这限制了混合现实体验的质量。例如,色度键控(通常被称为“绿屏”代替物),通常用于气象新闻和计算机生成的图像(CGI)电影中,是一种快速高效的算法,它使用指定的颜色来识别所有的背景。然而,色度键控操作起来很麻烦,因为色度键控需要一个固定的现场,例如,需要大量的设置时间、精确的照明来确保统一的背景颜色,以及定期的清洗。此外,色度键控无法支持国防部(DoD)“随时随地训练”计划的简单部署目标。其他目前采用的前景分离方法利用深度传感技术;然而,深度传感技术缺乏支持实时混合现实处理的分辨率和低延迟需求。目前实施的前景分离方法,利用深度传感技术,不能与混合现实系统一起使用,以达到理想的现实水平,例如4K视频分辨率为每秒90帧(每秒帧数)。此外,基于红外的深度传感技术高度依赖于现场照明和材料,因为基于红外的深度传感是基于红外线反射回传感器的基础上的。因此,一些前景对象,可能不很好地反射红外线,容易从场景中除去。
此外,立体视觉前景分离方法利用左眼和右眼图像的二维卷积来寻找共同特征,是密集型计算,因此,立体视觉前景分离方法就不能与指定的帧速率保持同步。
发明内容
在一个方面,本文公开的发明构思的实施例针对的是一种头部可佩戴装置。头部可佩戴装置包括一显示器、一摄像机、一卷积神经网络(CNN)处理器和一处理器。所述摄像机被配置用以捕捉真实场景图像。所述卷积神经网络CNN处理器可通信地耦合到所述摄像机。所述CNN处理器被配置用以:接收与来自所述摄像机的真实场景图像对应的真实场景图像数据;识别所述真实场景图像中的对象;分类所述识别的对象的每个对象作为前景对象或背景对象;生成对象分类和位置数据以表示所述识别的对象的分类和位置;和输出所述对象分类和位置数据。可通信地耦合到所述摄像机、所述卷积神经网络CNN处理器和所述显示器的处理器,所述处理器被配置用以:接收与来自所述摄像机捕捉的真实场景图像对应的真实场景图像数据;接收来自所述卷积神经网络处理器的对象分类和位置数据;基于所述对象分类和位置数据,在真实场景图像上执行至少一个图像分割来填充对象;生成填充对象数据以表示所述填充对象;基于所述对象分类和位置数据和所述填充对象数据,生成一与前景对象对应的像素掩膜;接收与一虚拟场景图对应的虚拟场景图像数据;至少基于所述像素掩膜,混合虚拟场景图像和真实场景图像来创建一混合现实场景图像作为混合现实场景图像数据;和输出所述混合现实场景图像数据到所述所述显示器以展示给用户。
在另一方面,本文公开的发明构思的实施例针对的是一种方法,该方法包括:通过一卷积神经网络(CNN)处理器接收一与来自摄像机的真实场景图像对应的真实场景图像数据;该方法进一步包括通过一卷积神经网络(CNN)处理器识别所述真实场景图像中的对象;该方法进一步包括通过一卷积神经网络(CNN)处理器分类所述识别的对象的每个对象作为前景对象或背景对象;该方法进一步包括通过一卷积神经网络(CNN)处理器生成对象分类和位置数据以表示所述被识别的对象的分类和位置;该方法进一步包括通过一卷积神经网络(CNN)处理器输出所述对象分类和位置数据;该方法进一步包括通过至少一个处理器接收与来自所述摄像机的真实场景图像对应的真实场景图像数据;该方法进一步包括通过所述处理器接收来自至少一个卷积神经网络处理器的所述对象分类和位置数据;该方法进一步包括通过所述处理器,基于所述对象分类和位置数据,在真实场景图像上执行一图像分割来填充对象;该方法进一步包括通过所述处理器生成填充对象数据以表示所述填充对象;该方法进一步包括至少基于所述对象分类和位置数据和所述填充对象数据,通过所述处理器生成一与前景对象对应的像素掩膜;该方法进一步包括通过所述处理器接收一与虚拟场景图对应的虚拟场景图像数据;该方法进一步包括基于所述像素掩膜,通过所述处理器混合所述虚拟场景图像和真实场景图像来创建一混合现实场景图像作为混合现实场景图像数据;该方法进一步包括通过所述处理器输出所述混合现实场景图像数据到显示器以展示给用户。
在另一方面,本文公开的发明构思的实施例针对的是一种系统,该系统包括一显示器、一摄像机、一卷积神经网络(CNN)处理器和一处理器。所述摄像机被配置以捕捉真实场景图像。卷积神经网络处理器通信耦合到所述摄像机。所述卷积神经网络处理器被配置用以:接收与来自所述摄像机的真实场景图像对应的真实场景图像数据;识别所述真实场景图像中的对象;分类所述识别的对象的每个对象作为一前景对象或一背景对象;生成表示所述识别的对象的分类和位置的对象分类和位置数据;和输出所述对象分类和位置数据。所述处理器通信耦合到所述摄像机、所述卷积神经网络处理器和所述显示器。所述处理器被配置用以:接收与来自所述摄像机捕捉的真实场景图像对应的真实场景图像数据;接收来自卷积神经网络处理器的对象分类和位置数据;基于所述对象分类和位置数据,在真实场景图像上执行一图像分割来填充对象;生成填充对象数据表示所述填充对象;基于所述对象分类和位置数据和所述填充对象数据,生成一与前景对象对应的像素掩膜;接收一虚拟场景图对应的虚拟场景图像数据;基于所述像素掩膜,混合虚拟场景图像和真实场景图像来创建一混合现实场景图像作为混合现实场景图像数据;和输出所述混合现实场景图像数据到所述显示器以展示给用户。
附图说明
当考虑下面的实施方式的详细描述时,可以更好地理解此处公开的发明构思的技术方案。所述的详细描述可以参考附图,但为了清晰起见,附图不一定按比例绘制,其中一些特征可能被夸大,一些特征可能被省略,一些特征可能按照图式来表示。附图中相同的附图标记可以表示和指代相同或相似的元件、特征或功能。其中:
图1是本发明实施例所述的包括头部可佩戴装置和计算设备的系统的示意图;
图2是本发明实施例所述的图1所示头部可佩戴装置的眼睛跟踪系统的示意图;
图3是本发明实施例所述的图1所示头部可佩戴装置的头部跟踪系统的示意图;
图4A是本发明实施例所述的图像处理流水线示意图;
图4B是本发明实施例所述的真实场景图像;
图4C是本发明实施例所述的已通过与分类对象对应的位置和边界框处理的真实场景图像的示意图;
图4D是本发明实施例所述的已通过检测到的对象边缘处理的真实场景图像的示意图;
图4E是本发明实施例所述的已通过填充对象处理的真实场景图像的示意图;
图4F是本发明实施例所述的已处理的真实场景图像作为一个混合值像素掩膜的示意图;
图4G是本发明实施例所述的虚拟场景图像示意图;
图4H是本发明实施例所述的混合现实场景图像示意图;
图5是本发明实施例所述的包括图1中头部可佩戴装置、计算设备和网络的系统的示意图;
图6是本发明实施例所述的图1中头部可佩戴装置在卷积神经网络手动训练模式下显示一对象分类屏幕的示意图;
图7是本发明实施例所述的一种方法的示意图。
具体实施方式
在详细解释此处公开的发明构思的至少一个实施例之前,应当理解,本发明构思不限于在下面的描述中或附图说明中所提到的应用、实施细节、所提出的部件或步骤或方法的安排。在以下对此处发明构思实施例的详细描述中,阐述了许多具体细节以便更透彻的理解此发明构思。然而,显而易见地,对受益于此处公开的发明构思的本领域的普通技术人员,可以在没有这些具体细节的情况下实践此处所公开的发明构思。在其它情况下,不再详细描述已知特征以避免使本公开复杂化。此处公开的发明概念还可以有其它实施例或者用其它方式去实践或执行。此外,应当理解,此处使用的措辞和术语是为了描述实施例,而不应该被认为是对实施例的限制。
本文所使用的位于附图标记之后的字母是为了指代实施例中相似的特征或元件,所述相似的特征或元件可以类似但不一定与先前描述的具有相同附图标记(例如, 1a,1b)的元件或特征完全相同。使用这样的简化符号仅仅是为了方便,并不应被理解为以任何方式限制此处公开的发明构思,除非另有明文规定。
此外,除非另有明文规定,“或”是指包括性或而不是排它性或。例如,条件A 或B由以下任一项满足:A为真(或存在)和B为假(或不存在),A为假(或不存在)和B为真(或存在),以及A和B都是真(或存在)。
此外,使用“一”来描述本发明构思实施例中的元件和组件。仅仅是因为这样既方便,又能给出本发明构思的一般意义;“一”意味着包括一个或至少一个,而且单个也包括复数,除非明显意味着其它方面。
最后,如此处所使用的对“一个实施例”或“一些实施例”的任何引用意味着结合该实施例描述的特定元件、特征、结构或特性包括在此处公开的发明构思的至少一个实施例中。在说明书中多个地方出现的短语“在一些实施例中”不一定都指同一个实施例,并且此处公开的发明构思的实施例可以包括本发明清晰描述的或固有的一个或多个特征,还包括两个或多个上述特征组成的子组合的组合,以及本发明没有进行清晰描述的或非固有的任何其它特征。
概括地说,本文公开的发明构思的实施例针对的是一种方法,系统和至少一装置被配置为通过利用至少一个神经网络来执行前景分离,例如卷积神经网络(CNN)。卷积神经网络是一种人工智能和深度学习,一些实施例被配置为执行神经网络的定制训练识别特定训练环境的独特特性,以提高执行前景分离的准确性。此外,一些实施例被配置为执行实时矫正和/或实时再训练,以便这些实施例能够从中学习基于用户实时反馈的前景分离错误;这样的修正和/或重复训练可以提高前景分离的质量。在一些实施例中,神经网络不会创建前景分离所需的完整像素掩膜,相反,神经网络识别对象,分类对象,为对象提供边界框,和提供对象的位置。神经网络信息可以与视频流(如,检测到的边缘)中的光学信号相融合,来生成完整的像素掩膜,可以用于完整的前景分离。例如,神经网络(如,卷积神经网络)可是在任何合适的处理器中有效地实现,如现场可编程门阵列(FPGA)或图形处理单元(GPU),可在小型单板、便携式系统上实现,以支持无连接和移动混合现实训练。
一些实施例利用深度学习卷积神经网络对混合现实系统进行实时前景分离。利用卷积神经网络进行实时前景分离的混合现实系统是对基于具有同等性能的绿屏的系统的改进,因为这种混合现实系统消除了繁琐的设置、照明和维护绿屏实验室的需要。利用卷积神经网络进行实时前景分离的混合现实系统,由于这种系统易于在新的训练环境中部署,并且由于可以使用这种系统的人员训练应用程序范围广泛,因此具有显著的竞争优势。利用卷积神经网络进行实时前景分离的实施例,可能在总视频带宽上具有数量级优势,如通过分辨率乘以帧率计算,与目前实施的混合现实系统相比,它利用了深度传感系统。由于卷积神经网络基于简单的小内核的二维卷积,简单的小内核的二维卷积可以安排在一个简单流水线中进行吞吐量,因此卷积神经网络可以以行速率处理高分辨率的视频。
卷积神经网络是以人脑为模型的一种计算结构。卷积神经网络常被用于模式识别和人工智能应用。模式识别是基于小型特性模板的二维卷积,其输出随后被传递到多个连续的层进行进一步的卷积来识别检测到特征之间的关键结构和关系。由于卷积的高层次性,这种方法通常被称为“深度学习”。卷积神经网络的节点(也称为神经元)相互关联非常高,以便帮助建模和识别输入数据的结构特征,如形状、颜色和纹理。每个连接可能有一个可编程权值,可以用来描述相关特征之间的关系。卷积步骤与“池”穿插在一起,其中包含空间不变性的子采样来减少数据集。卷积步骤可以通过一个完全连接的网络分类器来完成,该网络分类器将结果累加,并根据特征匹配对对象进行统计预测。
卷积神经网络能够识别新环境中各种各样的对象,这是由于对“相似”对象的进行了重复训练。大多数卷积神经网络系统都需要训练。适当的训练通常需要使用大量的“已知答案”数据集进行多次迭代。卷积神经网络训练涉及到“反向传播”,在训练中的预测误差用“损失函数”来度量,这有助于在卷积神经网络中识别预测误差的来源。然后使用这个损失函数修改在卷积神经网络中的权值,以改进下一个迭代的预测结果。因此,卷积神经网络中的节点自适应在输入空间中的关键模式。卷积神经网络训练是一个相对计算密集的过程,但是卷积神经网络训练通常只需要对给定的应用程序执行一次。一旦卷积神经网络训练完成,系统就可以对计算出的权值进行优化,从而使资源最小化,性能最大化。
参照图1,根据本文公开的发明构思,一个系统的实施例包括至少一个头部可佩戴装置102和至少一个计算设备122,其中一些或全部可以在任何给定时间进行通信耦合。例如,头部可佩戴装置102可以被配置为接收来自计算设备122的虚拟图像(如,虚拟场景图像)和被配置为头部可佩戴装置102的佩戴者提供混合现实体验,通过将虚拟图像与现实图像(如,真实场景图像)相结合,来创建三维身临其境的场景图像,呈现给头部可佩戴装置102的佩戴者。
头部可佩戴装置102可以被配置为将混合现实场景图像呈现给头部可佩戴装置102的佩戴者。头部可佩戴装置102可包括至少一个摄像机104、至少一个卷积神经网络CNN处理器106、至少一个处理器108、至少一个内存110、至少一个存储设备112、一头部跟踪系统114、一眼睛跟踪系统116、至少一个显示器118、至少一个扬声器120,部分或所有这些可以可通信地耦合。
摄像机104可以被配置为捕捉佩戴者视场的现实图像(如,真实场景图像)。摄像机104的视场可以与佩戴者的视场一致。摄像机104可能被配置为将现实图像作为现实图像数据(例,真实场景图像数据)输出到卷积神经网络处理器106和处理器108。摄像机104可被配置为将现实图像流作为现实图像数据流输出到卷积神经网络处理器106和处理器108。在一些实施例中,摄像机104可实现为多个摄像机。
卷积神经网络可以实现为卷积神经网络处理器106或在卷积神经网络处理器 106中实现。卷积神经网络处理器106可以实现为任何合适的处理器,如FPGA或 GPU。作为系统安装的一部分,卷积神经网络可能会被训练来识别它作为背景安装的环境,而人类参与者和在混合现实环境中使用的任何道具可被标记为前景。训练完卷积神经网络处理器106之后,卷积神经网络处理器106可以被配置为接收来自摄像机104的真实图像作为现实图像数据。卷积神经网络处理器106可以被配置为对每个真实图像执行前景分离过程的一部分。对于每一个真实图像,通过利用卷积神经网络,卷积神经网络处理器106可能被配置为识别真实图像对象,分类真实图像对象,提供对象的边界框,并提供对象位置(例如,所定义的对象的中心),和卷积神经网络处理器106可能被配置为生成和输出对象分类和位置数据表明被识别的对象的分类和位置。例如,对于每个真实图像,卷积神经网络处理器106可以被配置为将现实图像的特定对象分类作为前景对象或背景对象。对于每个真实图像,卷积神经网络处理器106可以被配置为将对象分类和位置数据输出给处理器(如,处理器 108),用于创建像素掩膜。卷积神经网络处理器106可以被配置为运行各种软件应用程序或计算机代码,这些应用程序或计算机代码存储在非瞬态计算机可读介质中,和被配置为执行各种指令或操作。卷积神经网络处理器106可以为一种特殊用途的处理器,该处理器被配置为执行整个公开的任何或所有操作的指令。
处理器108可以实现为任何合适的处理器,例如通用处理器、图像处理器和/或FPGA。处理器108可以被配置为接收来自摄像机104的现实图像作为现实图像数据。处理器108可以被配置为对每个真实图像执行前景分离过程的一部分。对于每个真实图像,处理器108可以被配置为执行至少一个图像分割操作,例如边缘检测操作和/或连接组件标记操作。此外,为每个真实图像,处理器108可以被配置为接收来自卷积神经网络处理器106的对象分类和位置数据。进一步地,对于每个真实图像,处理器108可以被配置为通过创建像素掩膜来执行对象融合操作。同样,对于每个真实图像,处理器108可以被配置为接收来自计算设备122的虚拟图像。对于每个真实图像和每个相应的虚拟图像,至少基于像素掩膜,处理器108可以被配置为混合现实图像和虚拟图像,以创建混合现实图像。处理器108可以被配置为将混合现实图像流作为混合现实图像数据输出到显示器118,以便向头部可佩戴装置102的佩戴用户展示。
在一些实施例中,至少一个处理器108可以实现为多个处理器,例如至少一个通用处理器和至少一个图像处理器。处理器108可以被配置为运行各种软件应用程序或计算机代码,这些应用程序或计算机代码存储在非瞬态计算机可读介质中,和被配置为执行各种指令或操作。处理器108可以为一种特殊用途的处理器,该处理器被配置为执行整个公开的任何或所有操作的指令。
头部跟踪系统114可以被配置为确定和跟踪用户头部相对于环境的位置和方向,如训练环境。头跟踪系统114可以被配置为实时执行全自动头部跟踪操作。头部跟踪系统114可以包括传感器302、处理器304、内存306和存储设备308,如图3所示,以及头部跟踪系统中通常包含的其他组件、装置和/或设备。传感器302、处理器304、内存306、存储设备308以及头部跟踪系统中通常包括的其他组件、装置和 /或设备可能是通信耦合的。
头部跟踪系统114的处理器304可以被配置为处理从传感器302接收到的数据,并将处理后的数据输出到计算设备122和/或处理器108。例如,处理器304可以配置为确定和跟踪用户头部相对于训练环境的位置和方向。此外,例如,处理器304 可以被配置为生成与这些确定的信息相关的位置和方向数据,和将生成的位置和方向数据输出到计算设备122和/或处理器108。头部跟踪系统114的处理器304可以被配置为运行各种软件应用程序或计算机代码,这些程序或计算机代码存储在非瞬态计算机可读介质中,和被配置为执行各种指令或操作。处理器304可以为一种特殊用途的处理器,该处理器被配置为执行整个公开的任何或所有操作的指令。
眼睛跟踪系统116可以被配置为跟踪眼睛的姿态,跟踪用户的眼球运动,追踪用户的目光,确定用户凝视的收敛点的位置(有时称为注视点),确定眼睛的位置,确定用户眼睛之间的瞳孔内部距离(IPD),确定用户眼睛的确定位置和每个用户眼睛的收敛点的确定位置之间的方向,和/或从用户的眼睛接收输入。眼睛跟踪系统116 可以被配置为实时执行全自动的用户眼睛跟踪操作。眼睛跟踪系统116可以包括至少一个传感器202,至少一个处理器204,内存206和存储设备208,如图2所示,以及通常包含在眼睛跟踪系统中的其他组件、装置和/或设备。传感器202、处理器 204、内存206和存储设备208、以及通常包含在眼睛跟踪系统中的其他组件、装置和/或设备可以是通信耦合的。
眼睛跟踪系统116的处理器204可以被配置为处理从传感器202接收到的数据,和将处理后的数据输出到处理器108和/或计算设备122。例如,处理器204可以配置为确定用户凝视的收敛点的位置、确定眼睛的位置、确定用户眼睛之间的瞳孔内距离(IPD),和/或确定用户眼睛的确定位置和每个用户眼睛的收敛点的确定位置之间的方向。此外,例如,处理器204可以配置为生成与这些确定的信息相关的数据,和将生成的数据输出到处理器108和/或计算设备122。眼睛跟踪系统116的处理器 204可以被配置为运行各种软件应用程序或计算机代码,这些程序或计算机代码存储在非瞬态计算机可读介质中,和被配置为执行各种指令或操作。处理器204可以为特殊用途的处理器,该处理器被配置为执行整个公开的任何或所有操作的指令。
显示器118可以被配置为接收混合现实图像流作为混合现实图像数据流,和将混合现实图像流呈现给头部可佩戴装置102的佩戴用户。显示器118可以实现为任何合适的显示器,如透明显示器(如,Microsoft Hololens)或遮挡显示器(如,Oculus Rift)。此外,虽然显示器118被描述为单个显示器,但是显示器118可以实现为多个显示器,例如每个用户的每只眼睛都有一个显示器。
扬声器120可被配置为接收与混合现实环境相关的音频内容,和将音频内容作为音频呈现给头部可佩戴装置102的佩戴用户。此外,虽然扬声器120被描述为单个扬声器,但扬声器120可以实现为多个扬声器,例如每个用户的每只耳朵都有一个扬声器。
尽管摄像机104、卷积神经网络处理器106、处理器108、内存110、存储设备 112、头部跟踪系统114、眼睛跟踪系统116、显示器118和头部可佩戴装置102的扬声器120已被实施例描述为作为单独的设备或子系统实现的,但是在一些实施例中,部分或全部摄像机104、卷积神经网络处理器106、处理器108、内存110、存储设备112、头部跟踪系统114、眼睛跟踪系统116、显示器118和/或扬声器120可能是单个集成系统或设备,或任何数量的集成和/或部分集成子系统和/或设备。
头部可佩戴装置102示例包括如下所示的组件,在一些实施例中,可以省略头部可佩戴装置102的一个或多个组件,或者头部可佩戴装置102可能包含其他组件。
计算设备122可以包括至少一个处理器124、至少一个内存126和至少一个存储设备128,以及计算设备中通常包含的其他组件、装置和/或设备,其中一些或全部可能是通信耦合的。处理器124可以是任何合适的处理器,例如通用处理器、FPGA 和/或图像处理器。例如,计算设备122可以被配置为接收来自头部可佩戴装置102 的位置和方向数据(如,位置和方向数据流),其中位置和方向数据表示用户头部的位置和方向。例如,计算设备122可以被配置为接收来自头部可佩戴装置102的头部跟踪系统114的位置和方向数据,至少基于位置和方向数据,处理器124可能被配置为生成与头部可佩戴装置102的佩戴者的视场相对应的虚拟图像(如,虚拟场景图像)。处理器124可以被配置为将虚拟图像作为虚拟图像数据输出到头部可佩戴装置102。处理器124可以被配置为生成虚拟图像流和将虚拟图像流作为虚拟图像流数据输出到头部可佩戴装置102。处理器124可以被配置为运行各种软件应用程序或计算机代码,这些程序或计算机代码存储(如,维护)在非瞬态计算机可读介质中,和被配置为执行各种指令或操作。此外,例如,计算设备122或处理器124可能为一种特殊用途的计算机或特殊用途的处理器,该计算机或处理器被配置(如,程序编入)为执行整个公开的任何或所有操作的指令。在一些实施例中,图1中的系统可包括任意数量的计算设备122,如多个。
计算设备122示例包括如下所示的组件,在一些实施例中,可以省略计算设备 122的一个或多个组件,或者计算设备122可能包含其他组件。
头部可佩戴装置102和计算设备122被实施例描述为作为单独的设备或系统实现的,在一些实施例中,部分或全部头部可佩戴装置102和计算设备122可能是单个集成系统或设备,或任何数量的集成和/或部分集成子系统和/或设备。
虽然图1示例包括了如下的组件,在一些实施例中,可以省略系统一个或多个组件,或者系统可能包含其他组件。此外,虽然一个实施例被描述为包括一头部可佩戴装置102和一个计算设备122,但其他实施例可包括定位或移动在系统中的任何位置的任何数量的各种类型的头部可佩戴装置102和各种类型的计算设备122。
参考图2是根据本文公开的发明构思的图1中所示的头部可佩戴装置102的眼睛跟踪系统116。
参考图3是根据本文公开的发明构思的图1中所示的头部可佩戴装置102的头部跟踪系统114。
参考图4A-H描述了本发明所述实施例的图像处理流水线和相关图片。
参考图4A,描述了根据本文公开的发明构思的图像处理流水线的实施例,图像处理流水线可以是或在卷积神经网络处理器106和处理器108。图像处理流水线可以被配置为对来自摄像机104的实时真实场景图像数据进行预处理,和准备实时真实场景图像数据与虚拟场景图像数据进行融合。图像处理流水线可包括以下步骤:接收现场视频图像402、卷积神经网络404、边缘检测406、连接组件标记408、对象融合410、混合414。前景分离过程可以包括以下步骤:卷积神经网络404、边缘检测406、连接组件标记408和对象融合410。通过使用卷积神经网络,前景分离过程可以被配置为将现实场景中的每个对象实时识别和分类为前景(即该对象应该出现在混合场景图像数据中)或背景(即该对象应该隐藏在虚拟场景图像数据的后面)。前景分离过程结合了卷积神经网络操作(如,步骤卷积神经网络404)和图像分割操作 (如,步骤边缘检测406和/或步骤连接组件标记408)。
接收现场视频图像402的步骤可包括每个卷积神经网络处理器106和处理器108,它们接收与来自摄像机104的真实场景图像数据相同的真实场景图像。图4B展示了根据本文公开的发明构思的实施例的真实场景图像。图像处理流水线可以包括两个可以同时执行的并行分支。例如,卷积神经网络处理器106可以同时执行卷积神经网络404步骤,以实现边缘检测406和连接组件标记408的步骤。
步骤卷积神经网络404可以由卷积神经网络处理器106执行。卷积神经网络处理器106可以被配置为每个真实场景图像执行前景分离过程的一部分。对于每个真实场景图像,卷积神经网络处理器106可能配置为识别真实图像对象,分类真实图像对象,为对象提供边界框,和提供对象位置(如,所定义的对象的中心)。卷积神经网络处理器106可以被配置为生成和输出对象分类和位置数据表示被识别的对象的分类和位置。例如,如图4C所示,是根据本文公开的发明构思的实施例的已通过与分类对象相对应位置和边界框处理的真实场景图像。例如,如图4所示,卷积神经网络处理器106可以被配置为识别对象(如,416、418和420)。例如,卷积神经网络处理器106可以被配置为将人员分类作为前景对象416,将道具(如,枪)分类作为前景对象418,和将矮墙和门口分类作为背景对象420。前景对象416,前景对象 418和背景对象420都可有一边界框和一位置(如,对象的中心)。在一些实施例中,卷积神经网络处理器106只使用两种分类:前景对象和背景对象。对于每个真实图像,卷积神经网络处理器106可以被配置为将对象分类和位置数据输出到处理器(如,处理器108),用于创建步骤对象融合410的像素掩膜。
步骤边缘检测406可以由处理器108执行。步骤边缘检测406可以包含对每个真实场景图像的对象边缘的检测。例如,检测对象的边缘可以包括识别对象的轮廓。例如,图4D是根据本文公开的发明构思的实施例的经过处理的真实场景图像,其中包含了被检测到的对象边缘。步骤边缘检测406可包括处理器108,它生成检测边缘数据表示被检测对象边缘。
步骤连接组件标记408可由处理器108执行。步骤连接组件标记408可包括利用在步骤边缘检测406中产生的检测边缘数据。至少是基于检测边缘数据,处理器 108可填充对象。例如,图4E是根据本文公开的发明构思的实施例的经过处理的真实场景图像,其中包括填充对象,步骤连接组件标记408可包含处理器108,它生成的填充对象数据表示已填充对象。
步骤对象融合410可以由处理器108执行。步骤对象融合410可包括利用填充对象数据和对象分类和位置数据。对于每个像素,处理器108可生成一混合值,至少基于填充对象数据和对象分类和位置数据。每个混合值可以控制虚拟场景像素与真实场景像素的比率,以便在步骤混合414中使用。通过为每个像素生成一混合值,处理器108可以生成一像素掩膜(如,一混合值像素掩膜)。例如,处理器108可以融合填充对象数据和对象分类和位置数据来创建一混合值像素掩膜。例如,通过卷积神经网络与前景分类对象相关的填充对象可以包含在掩码中,与背景分类对象相关的填充对象可以从像素掩膜中删除。例如,图4F所示的根据本文公开的发明构思的实施例的经过处理的真实场景图像为混合值像素掩膜。混合值像素掩膜可以包括前景像素区域422和背景像素区域424。步骤对象融合410可包括处理器108,它生成表示混合值像素掩膜的像素掩膜数据。
步骤虚拟场景生成412可以由处理器124执行。例如,至少基于来自头部可佩戴装置102的头部跟踪系统114的位置和方向数据,可以被配置为生成一个与头部可佩戴装置102的佩戴者的视场相对应的虚拟场景图像。例如,图4G是根据本文公开的发明构思的实施例的一个虚拟场景图像。处理器124执行可以被配置为将虚拟场景图像作为虚拟场景图像数据输出到处理器108和/或头部可佩戴装置102。
步骤混合414可以由处理器108执行。步骤混合414可以包括混合现实场景图像和虚拟场景图像,至少基于混合值像素掩膜。例如,处理器108可以利用混合值像素掩膜和混合函数来生成混合现实场景图像。步骤混合414可能与透明显示器(如, MicrosoftHololens)兼容,也可能与遮挡显示器(如,Oculus Rift)兼容。例如,用透明显示器,处理器108可以利用混合值像素掩膜从虚拟场景图像中提取背景像素,和将背景像素叠加到透明显示器上,同时“围绕”已经通过透明显示器可见的现实前景对象。例如,用遮挡显示器,处理器108可以使用混合值像素掩膜从真实场景图像中提取前景像素,和将提取的前景像素叠加在虚拟场景图像的顶部。例如,图4F 显示了根据本文公开的发明构思的实施例的混合现实场景图像。处理器108可以被配置为将混合现实场景图像流输出到显示器104。
实施例可被配置为具有高准确率分类和高准确率形状检测,以促进身临其境的混合现实体验。
在一些实施例中,可以利用环境因素来提高准确度。例如,基于来自头部跟踪系统114的位置和方向数据和/或来自于眼睛跟踪系统116的眼睛跟踪数据,处理器 108可以调整系统行为。例如,多个卷积神经网络权值集可存储在非瞬态计算机可读介质(如,内存110和/或存储设备112)中,和佩戴用户被确定面对环境的特定部分(如,区域)时,处理器可以被配置为从第一组卷积神经网络权值动态切换到第二组卷积神经网络权值。例如,当佩戴用户查看黑暗角落或环境的其他部分时,这些部分通常会导致卷积神经网络处理器106在使用默认的卷积神经网络权值时输出不准确的结果,动态切换卷积神经网络权值可以用来调整精度。此外,卷积神经网络可在一个或多个在前帧中整合视觉线索来识别运动。例如,卷积神经网络处理器106 可以将移动对象分类为前景对象。仅仅一个或两个前帧可以用来识别动作的发生。
实施例可能具有较低的视频处理延迟,例如小于20毫秒(ms),这通常被认为是人类无法察觉的。实施例可以配置为至少在一定程度上实现低视频处理延迟,因为头部可佩戴装置102的图像处理流水线可以并行地执行对象分类(如,步骤卷积神经网络404)和形状提取(如,步骤406和408)。例如,图像处理流水线可能有一帧的延迟,用于头部可佩戴装置102,以每秒90帧的速度显示混合现实图像,和当图像处理流水线的延迟与其他延迟源(如,相机曝光时间、显示延迟和/或传输延迟)结合时,系统总延迟可能小于或等于20毫秒。
一些实施例包括一个或多个附加操作,以进一步减少延迟。例如,系统可以在摄像机中使用滚动快门,以消除传输延迟造成的总延迟。此外,可以增加摄像机和图像处理流水线时钟的输出I/O速率,以减少每帧的处理时间。在一些实施例中,系统可以调整为使用子帧,其中每个图像被分为水平条纹,每个水平条纹都被视为独立的图像。基于受控用户环境下的视觉线索,卷积神经网络处理器106可能虽然有子帧,但可以对背景对象和前景对象进行精确分类。由于每个子帧都类似于存储设备和计算设备的单元,因此图像处理流水线的延迟可按照子帧大小的比例减少。
此外,因为卷积神经网络函数和对象标记函数使用二维数组运算,如卷积,适合硬件流水线,卷积神经网络函数和对象标记函数可以在系统的全像素率运行,而不考虑输入分辨率,这样,与前景分离的深度感知方法相比,实施例在图像分辨率方面具有明显的优势,前景分离的深度感知方法目前只能支持明显较低的分辨率。
参考图5,显示了根据本发明的一个实例的系统包括头部可佩戴装置102、计算设备502、网络504和计算设备506。头部可佩戴装置102、计算设备502、网络504 和计算设备506中的一些或所有的可以是可通信地耦合的。每个计算设备505和计算设备506可以包括至少一个处理器、内存和存储设备,它们可以被实现并可以类似于图1中显示和描述的计算设备的处理器、内存和存储设备起作用。
卷积神经网络训练对系统的准确性很重要。因为卷积神经网络的训练一般是计算密集型和时间密集型的和因为完整的卷积神经网络训练很少发生(如,对于给定的应用程序环境,只有一次),一些卷积神经网络训练过程可能会转移到通信耦合的计算设备(如,502和/或506)上。例如,在卷积神经网络训练期间,头部可佩戴装置102可以通信耦合到计算设备502(如,移动计算设备,如笔记本计算设备)和计算设备506(如,服务器计算设备)。计算设备502、计算设备506的一个多多个可以被配置为计算卷积神经网络训练中错误的损失函数和反向传播,生成更新后的卷积神经网络权值。卸下这些功能后,头部可佩戴装置102就可以拥有最小的尺寸、重量和功率要求。例如,技术人员可以通过扫描(例如,使用头部可佩戴装置102的摄像头104)应用程序环境来启动卷积神经网络的训练程序,在该环境中,将使用头部可佩戴装置102作为背景对象,然后逐渐引入前景对象,如道具和人物。技术人员可以监视卷积神经网络处理器106的分类结果和分类错误,并将它们输出到计算设备506。计算设备506可以迭代计算卷积神经网络权值,并向计算设备502和头部可佩戴装置102提供更新的卷积神经网络权值。一旦卷积神经网络训练达到了预期的精度水平,计算出的卷积神经网络权值可以存储在头部可佩戴装置102的非瞬态计算机可读介质(如,内存110和/或存储设备112)中。
参照图6,是本发明所述实施例的头部可佩戴装置102在卷积神经网络手动训练模式下显示一个对象分类屏幕的示意图。在卷积神经网络手动训练模式下运行时,显示器104显示一个对象分类屏幕602,而不是一个正常的混合现实图像。在卷积神经网络手动训练模式下,头部可佩戴装置102的用户可以手动将对象分为前景对象或背景对象。例如,显示器104可以配置为显示对象分类屏幕602,对象分类屏幕602允许用户手动将对象分类为前景对象或背景对象。有些实施例可以利用来自头部跟踪系统114的位置和方向数据和/或来自眼睛跟踪系统116的眼睛跟踪数据,以便用户在卷积神经网络手动训练模式下与对象分类屏幕602进行交互。
对象分类屏幕602包含应用程序环境的分割的真实场景视图(如,对应于步骤连接组件标记408的填入对象)。对象分类屏幕602包括一光标,可以通过头部跟踪系统114的位置和方向数据和/或眼睛跟踪系统的眼睛跟踪数据进行控制。例如,用户可以通过查看填充对象和按下一个在头部可佩戴装置102上的按钮来选择特定的填充对象。一旦选中了一已填充对象,显示器104可显示一对话框,该对话框提示用户将所选的填充对象分类为背景或前景。例如,用户可以通过查看“前景”框或“背景”框和按下一个在头部可佩戴装置102上的按钮来将对象分类为前景或背景。此手动对象分类信息可提供给反向传播网络并用于改进卷积神经网络权值。安装后,这种手动训练能力也可以用来提供实时校正卷积神经网络权值。例如,如果在混合现实过程中,用户注意到对象分类错误正在发生,用户可以按下按钮进入卷积神经网络手动训练模式,手势表示错误发生的位置,重新正确地分类对象,然后恢复混合现实过程。与分类错误相关的源图像快照(如现实场景、对象分类视图和错误的混合现实场景)可以存储在非瞬态计算机可读介质(如,内存110和/或存储设备112)中,作为分类错误报告以备分析。当系统空闲时,技术人员可以检查任何为解决的分类错误报告,处理报告,和可能更新卷积神经网络权值。在一些实施例中,分类误差报告可输出到计算设备502和/或通过网络504输出到计算设备506,并可从头部可佩戴装置102远程解析。在一些实施例中,卷积神经网络手动训练模式可以用来记录修正。此外,卷积神经网络的手动训练模式可以用于卷积神经网络的初始训练和正在进行的卷积神经网络改进。
参照图7,根据本发明实施例的一种方法可以包括以下一个或多个步骤。此外,例如,一些实施例可包括以迭代、并发和/或顺序执行方法的多个实例。此外,例如,至少该方法的某些步骤可以并行执行和/或同时执行。此外,在一些实施例中,至少该方法的某些步骤可以按顺序执行。
步骤702可包括通过至少一个卷积神经网络(CNN)处理器接收一个与来自一摄像机的真实场景图像对应的真实场景图像数据。
步骤704可包括通过所述至少一个卷积神经网络(CNN)处理器识别所述真实场景图像中的对象(如,独特的对象)。
步骤706可包括分类识别对象的每个对象作为一前景对象或一背景对象,通过所述至少一个CNN处理器。
步骤708可包括生成对象分类和位置数据表示被标识的对象的分类和位置,通过所述至少一个CNN处理器。
步骤710可包括输出所述对象分类和位置数据,通过所述至少一个CNN处理器。
步骤712可包括通过至少一个处理器接收与来自所述摄像机的真实场景图像对应的真实场景图像数据。
在一些实施例中,该方法可包括在真实场景图像上执行至少一个图像分割操作。例如,在一些实施例中,该方法可包括至少基于对象分类和位置数据,在真实场景图像上执行至少一个图像分割来填充对象。例如,执行至少一个图像分割操作可以包括步骤714、步骤716、步骤718和/或步骤720中的任何或全部。
步骤714可包括检测真实场景图像的对象边缘,通过至少一个处理器。在一些实施例中,步骤714可包括至少基于对象分类和位置数据,检测真实场景图像的对象边缘,通过所述的至少一个处理器。
步骤716可包括生成被检测边缘数据表示检测到的对象的边缘,通过所述的至少一个处理器。
步骤718可包括,至少基于被检测边缘数据填充对象,通过至少一个处理器。在一些实施例中,步骤718可包括,至少基于被检测边缘数据和对象分类和位置数据填充对象,通过所述的至少一个处理器。
步骤720可包括生成填充对象数据表示已填充对象,通过所述至少一个处理器。
步骤722可包括接收来自所述至少一个CNN处理器的所述对象分类和位置数据,通过所述至少一个处理器。
步骤724可包括至少基于所述对象分类和位置数据和所述填充对象数据,生成一个与前景对象对应的像素掩膜,通过所述至少一个处理器。
步骤726可包括接收一个与虚拟场景图对应的虚拟场景图像数据,通过所述至少一个处理器。
步骤728可包括至少基于所述像素掩膜,混合所述虚拟场景图像和真实场景图像来创建一个混合现实场景图像作为混合现实场景图像数据,通过所述至少一个处理器。
步骤730可包括输出所述混合现实场景图像数据到用户的用于演示的显示器上,通过所述至少一个处理器。
此外,该方法可以包括全文通篇公开的所述操纵中的任何操作。
从以上可以理解,根据本文公开的发明构思实施例中的系统、方法和至少一个头部可佩戴装置可以被配置为通过使用至少一个神经网络执行前景分离。
通篇使用的,本领域技术人员应当理解,“至少一种非瞬态的计算机可读介质”可能指至少一种非瞬态的计算机可读介质(如,内存110、内存126、内存206、内存306、存储设备112、存储设备128、存储设备208、存储设备308、或其组合;如,至少有一种计算机可读的介质实现为硬件;如,至少一种非瞬态处理器可读的介质,至少一个内存(如,至少一个非易失存储器,至少一个易失存储器,或其组合;如,至少一个随机存取存储器,至少一个闪存,至少一个只读内存存储器(ROM)(如,至少一个带电可擦可编程只读存储器((EEPROM)),至少一个处理器内存(如,至少一个处理器缓存,至少一个处理器缓冲,至少一个处理器闪存,至少一个处理器带电可擦可编程只读存储器,或其组合),或其组合,至少一个固态驱动器,至少一个闪存驱动器,至少一个光驱的可读和/或可写磁盘配置为读取和/或写入至少一个可读和/或可写的磁盘,或其结合),或其结合)。
通篇使用的,“至少一个”表示一个或多个;例如,“至少一个”可包括一、二、三……一百或更多。类似地,通篇使用的“一个或更多”表示一个或多个;例如,“一个或更多”可包括一、二、三……一百或更多。进一步地,通篇使用的“零或多个”表示零、一或更多;例如,“零或多个”可包括零、一、二、三……一百或更多。
在本披露中,公开的方法、操作和/或功能可以作为一组指令或一个设备可读的软件来实现。进一步地,可以理解公开的方法、操作和/或功能中的步骤的特定顺序或层次结构是示例性方法的示例。根据设计偏好,可以理解方法、操作和/或功能中的步骤的特定顺序或层次结构可以重新安排,同时保留在本发明中。随附的权利要求可以按实施例顺序表示各个步骤的元素,并不一定要局限于所提出的特定顺序或层次结构。
要理解的是,根据本发明构思公开的方法实施例可能包含本发明中描述的一个或多个步骤。进一步地,这些步骤可以按照任何期望的顺序执行,并且可以同时执行两个或两个以上的步骤。此处公开的两个或多个步骤可以组合在一个步骤中,在某些实施例中,一个或多个步骤可以作为两个或多个子步骤进行。进一步地,还可以采取其他步骤或分步骤,或作为在本发明中披露的一个或多个步骤的替代。
从上述描述中,很清楚,此处公开的发明构思可以很好地实现此处所述的目的,并获得此处所述的优点以及此处公开的发明构思中所固有的优点。虽然为了此处公开的目的描述了此处公开的发明构思的当前优选实施例,但是应当理解,还可以进行许多改变;这些改变对于本领域技术人员来说将是显而易见的,并落在此处公开的发明构思和权利要求的范围内。
Claims (16)
1.一种头部可佩戴装置,包括:
一显示器;
一摄像机,被配置用以捕捉真实场景图像;
至少一个卷积神经网络CNN处理器,其通信地耦合到所述摄像机,所述至少一个CNN处理器是至少一个GPU或至少一个FPGA中的至少一个,所述至少一个CNN处理器被配置用以:
接收与来自所述摄像机的所述的真实场景图像对应的真实场景图像数据;
识别所述真实场景图像中的对象;
分类所述识别的对象的每个对象为前景对象或背景对象;
生成表示所述识别的对象的分类和位置的对象分类和位置数据;和
输出所述对象分类和位置数据;和
至少一个处理器,其通信耦合到所述摄像机、所述至少一个CNN处理器和所述显示器,所述至少一个处理器被配置用以:
接收与来自所述摄像机捕捉的所述真实场景图像对应的所述的真实场景图像数据;
接收来自所述至少一个CNN处理器的所述对象分类和位置数据;
至少基于所述对象分类和位置数据的位置数据,在所述真实场景图像上执行至少一个图像分割操作以填充所述的对象;
生成表示所述填充对象的填充对象数据;
至少基于所述对象分类和位置数据和所述填充对象数据,生成与前景对象对应的像素掩膜;
接收与一虚拟场景图像对应的虚拟场景图像数据;
至少基于所述像素掩膜,混合所述虚拟场景图像和所述真实场景图像以创建一混合现实场景图像作为混合现实场景图像数据;和
输出所述混合现实场景图像数据到所述显示器以展示给用户;和
一与所述至少一个处理器通信地耦合的头部跟踪系统,所述头部跟踪系统被配置用以:
确定用户头部相对于环境的位置和方向;和
输出与所述确定的用户头部相对于环境的位置和方向相关的位置和方向数据,
其中所述至少一个处理器被进一步配置用以至少基于来自所述头部跟踪系统的所述位置和方向数据,从第一组CNN权值动态切换到第二组CNN权值。
2.根据权利要求1所述的头部可佩戴装置,其中,所述至少一个所述CNN网络处理器和所述至少一个处理器被配置用以同时处理所述真实场景图像数据。
3.根据权利要求1所述的头部可佩戴装置,其中,所述至少一个CNN网络处理器进一步被配置用以为所述对象提供边界框,其中,所述对象分类和位置数据进一步表示所述对象的所述提供的边界框。
4.根据权利要求1所述的头部可佩戴装置,其中,所述像素掩膜是一混合值像素掩膜。
5.根据权利要求1所述的头部可佩戴装置,进一步包括一与所述至少一个处理器通信地耦合的眼睛跟踪系统,所述眼睛跟踪系统被配置用以执行用户眼睛的眼跟踪操作和输出眼睛跟踪数据,其中,所述至少一个处理器被配置用以至少基于来自所述头部跟踪系统的所述位置和方向数据和基于所述眼睛跟踪数据,从所述第一组CNN权值动态切换到所述第二组CNN权值。
6.根据权利要求1所述的头部可佩戴装置,其中,所述的头部可佩戴装置被配置用以在CNN网络手动训练模式下操作,这样用户能够手动选择和分类一特定对象作为一前景对象或一背景对象,其中至少一个处理器被配置用以根据所述特定对象的手动选择和分类生成和输出手动对象分类信息。
7.根据权利要求1所述的头部可佩戴装置,其中,所述摄像机被配置用以使用一滚动快门。
8.一种用于头部可佩戴装置的方法,包括:
通过至少一个卷积神经网络CNN处理器接收与来自摄像机的真实场景图像对应的真实场景图像数据,所述至少一个CNN处理器是至少一个GPU或至少一个FPGA中的至少一个;
通过所述至少一个CNN处理器识别所述真实场景图像中的对象;
通过所述至少一个CNN处理器分类所述识别的对象的每个对象为前景对象或背景对象;
通过所述至少一个CNN处理器生成表示所述识别的对象的分类和位置的对象分类和位置数据;
通过所述至少一个CNN处理器输出所述对象分类和位置数据;
通过至少一个处理器接收与来自所述摄像机的真实场景图像对应的所述真实场景图像数据;
通过所述至少一个处理器接收来自所述至少一个CNN处理器的所述对象分类和位置数据;
至少基于所述对象分类和位置数据的位置数据,通过所述至少一个处理器在所述真实场景图像上执行至少一个图像分割操作以填充所述对象;
通过所述至少一个处理器生成表示所述填充对象的填充对象数据;
至少基于所述对象分类和位置数据和所述填充对象数据,通过所述至少一个处理器生成与前景对象对应的像素掩膜;
通过所述至少一个处理器接收与一虚拟场景图像对应的虚拟场景图像数据;
至少基于所述像素掩膜,通过所述至少一个处理器混合所述虚拟场景图像和所述真实场景图像以创建一混合现实场景图像作为混合现实场景图像数据;和
输出所述混合现实场景图像数据到显示器以展示给用户;和
至少基于来自头部跟踪系统的位置和方向数据,通过所述至少一个处理器从第一组CNN权值动态切换到第二组CNN权值,所述位置和方向数据与用户的头部相对环境的确定位置或确定方向相关联。
9.根据权利要求8所述的方法,其中,所述至少一个CNN处理器和所述至少一个处理器在一头部可佩戴装置中实施。
10.根据权利要求8所述的方法,其中,所述至少一个CNN处理器和所述至少一个处理器同时处理所述真实场景图像数据。
11.根据权利要求8所述的方法,其中,所述对象分类和位置数据进一步表示所述对象的边界框。
12.根据权利要求8所述的方法,其中,所述像素掩膜是一混合值像素掩膜。
13.根据权利要求8所述的方法,进一步包括:
检测所述识别的对象中的一对象的动作;
至少基于检测的所述对象的动作,通过所述至少一个CNN处理器分类所述对象为一前景对象。
14.根据权利要求8所述的方法,进一步包括:
通过一包括所述至少一个CNN处理器和所述至少一个处理器的头部可佩戴装置,在一CNN手动训练模式下操作,这样用户能够手动选择和分类一特定对象作为前景对象或背景对象。
15.根据权利要求8所述的方法,其中,所述真实场景图像是一真实场景图像子帧。
16.一种头部可佩戴系统,包括:
一显示器;
一摄像机,被配置用以捕捉真实场景图像;
通信耦合到所述摄像机的至少一个卷积神经网络CNN处理器,所述至少一个CNN处理器是至少一个GPU或至少一个FPGA中的至少一个所述至少一个CNN处理器被配置用以:
接收与来自所述摄像机的真实场景图像对应的真实场景图像数据;
识别所述真实场景图像中的对象;
分类所述识别的对象的每个对象为前景对象或背景对象;
生成表示所述识别的对象的分类和位置的对象分类和位置数据;和
输出所述对象分类和位置数据;和
通信耦合到所述摄像机、所述至少一个CNN处理器和所述显示器的至少一个处理器,所述至少一个处理器被配置用以:
接收与来自所述摄像机捕捉的真实场景图像对应的真实场景图像数据;
接收来自至少一个CNN处理器的对象分类和位置数据;
至少基于所述对象分类和位置数据的位置数据,在真实场景图像上执行至少一个图像分割操作以填充所述对象;
生成表示所述填充对象的填充对象数据;
至少基于所述对象分类和位置数据和所述填充对象数据,生成一与前景对象对应的像素掩膜;
接收一与虚拟场景图对应的虚拟场景图像数据;
至少基于所述像素掩膜,混合所述虚拟场景图像和所述真实场景图像以创建一混合现实场景图像作为混合现实场景图像数据;和
输出所述混合现实场景图像数据到所述显示器以展示给用户;
一与所述至少一个处理器通信地耦合的头部跟踪系统,所述头部跟踪系统被配置用以:
确定用户头部相对于环境的位置和方向;和
输出与所述确定的用户头部相对于环境的位置和方向相关的位置和方向数据,
其中所述至少一个处理器被进一步配置用以至少基于来自所述头部跟踪系统的所述位置和方向数据,从第一组CNN权值动态切换到第二组CNN权值;和
一计算设备,该计算设备包括一处理器,其中,所述计算设备被配置用以生成所述虚拟场景图像数据和输出所述虚拟场景图像数据到所述至少一个处理器。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/661,964 | 2017-07-27 | ||
US15/661,964 US10269159B2 (en) | 2017-07-27 | 2017-07-27 | Neural network foreground separation for mixed reality |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109345556A CN109345556A (zh) | 2019-02-15 |
CN109345556B true CN109345556B (zh) | 2021-12-24 |
Family
ID=63168250
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810821708.1A Active CN109345556B (zh) | 2017-07-27 | 2018-07-24 | 用于混合现实的神经网络前景分离 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10269159B2 (zh) |
EP (1) | EP3435284B1 (zh) |
CN (1) | CN109345556B (zh) |
Families Citing this family (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6889728B2 (ja) | 2016-03-11 | 2021-06-18 | マジック リープ, インコーポレイテッドMagic Leap,Inc. | 畳み込みニューラルネットワークにおける構造学習 |
US11394898B2 (en) * | 2017-09-08 | 2022-07-19 | Apple Inc. | Augmented reality self-portraits |
US10839577B2 (en) | 2017-09-08 | 2020-11-17 | Apple Inc. | Creating augmented reality self-portraits using machine learning |
CN109819675B (zh) * | 2017-09-12 | 2023-08-25 | 松下知识产权经营株式会社 | 图像生成装置以及图像生成方法 |
US11245887B2 (en) * | 2017-09-14 | 2022-02-08 | Samsung Electronics Co., Ltd. | Electronic device and operation method therefor |
CN109993824B (zh) * | 2017-12-29 | 2023-08-04 | 深圳市优必选科技有限公司 | 图像处理方法、智能终端及具有存储功能的装置 |
US10802489B1 (en) | 2017-12-29 | 2020-10-13 | Apex Artificial Intelligence Industries, Inc. | Apparatus and method for monitoring and controlling of a neural network using another neural network implemented on one or more solid-state chips |
US10298921B1 (en) | 2018-02-27 | 2019-05-21 | Looking Glass Factory, Inc. | Superstereoscopic display with enhanced off-angle separation |
US10467816B2 (en) * | 2018-03-23 | 2019-11-05 | Microsoft Technology Licensing, Llc | Mixed reality objects |
US10902680B2 (en) * | 2018-04-03 | 2021-01-26 | Saeed Eslami | Augmented reality application system and method |
US10825148B2 (en) * | 2018-11-29 | 2020-11-03 | Adobe Inc. | Boundary-aware object removal and content fill |
GB2582164A (en) * | 2019-03-13 | 2020-09-16 | Memento Ltd | Image processing method and system |
JP2022537636A (ja) * | 2019-05-09 | 2022-08-29 | オートモビリア ツー リミテッド ライアビリティ カンパニー | メディア処理および表示のための方法、システム、およびコンピュータ・ プログラム製品 |
EP3973468A4 (en) | 2019-05-21 | 2022-09-14 | Magic Leap, Inc. | HANDPOSITION ESTIMATING |
JP7176478B2 (ja) * | 2019-06-14 | 2022-11-22 | トヨタ自動車株式会社 | 画像認識装置 |
CN111882578A (zh) * | 2019-07-19 | 2020-11-03 | 广州虎牙科技有限公司 | 前景图像获取方法、前景图像获取装置和电子设备 |
US12020357B2 (en) | 2019-10-11 | 2024-06-25 | Swimc Llc | Augmentation of digital images with simulated surface coatings |
US11348246B2 (en) * | 2019-11-11 | 2022-05-31 | Adobe Inc. | Segmenting objects in vector graphics images |
US11367290B2 (en) | 2019-11-26 | 2022-06-21 | Apex Artificial Intelligence Industries, Inc. | Group of neural networks ensuring integrity |
US11366434B2 (en) * | 2019-11-26 | 2022-06-21 | Apex Artificial Intelligence Industries, Inc. | Adaptive and interchangeable neural networks |
US10956807B1 (en) * | 2019-11-26 | 2021-03-23 | Apex Artificial Intelligence Industries, Inc. | Adaptive and interchangeable neural networks utilizing predicting information |
US12081646B2 (en) | 2019-11-26 | 2024-09-03 | Apex Ai Industries, Llc | Adaptively controlling groups of automated machines |
EP4066226A1 (de) * | 2019-11-28 | 2022-10-05 | Krauss-Maffei Wegmann GmbH & Co. KG | Virtuelles training mit einem realen bediengerät |
DE102019132277A1 (de) * | 2019-11-28 | 2021-06-02 | Krauss-Maffei Wegmann Gmbh & Co. Kg | Virtuelles Training mit einem realen Bediengerät |
CN111242835B (zh) * | 2020-01-16 | 2023-10-10 | 湖北三江航天红峰控制有限公司 | 基于zynq和gpu的特征边缘检测系统和方法 |
WO2021160097A1 (en) * | 2020-02-14 | 2021-08-19 | Guangdong Oppo Mobile Telecommunications Corp., Ltd. | System and method for object detection for augmented reality |
WO2021237065A1 (en) | 2020-05-21 | 2021-11-25 | Looking Glass Factory, Inc. | System and method for holographic image display |
CN113744117A (zh) * | 2020-05-29 | 2021-12-03 | Oppo广东移动通信有限公司 | 多媒体处理芯片、电子设备及动态图像处理方法 |
CN111665944B (zh) * | 2020-06-09 | 2023-08-08 | 浙江商汤科技开发有限公司 | 一种太空舱特效的装饰方法、装置、电子设备及存储介质 |
US11415935B2 (en) * | 2020-06-23 | 2022-08-16 | Looking Glass Factory, Inc. | System and method for holographic communication |
TWI755912B (zh) * | 2020-10-28 | 2022-02-21 | 行政院原子能委員會核能研究所 | 一種擴增實境應用於遠端作業裝置與方法 |
US11388388B2 (en) | 2020-12-01 | 2022-07-12 | Looking Glass Factory, Inc. | System and method for processing three dimensional images |
CN114721497A (zh) * | 2020-12-22 | 2022-07-08 | 鸿富成精密电子(成都)有限公司 | 基于混合现实的培训方法、电子设备及存储介质 |
CN113269781A (zh) * | 2021-04-21 | 2021-08-17 | 青岛小鸟看看科技有限公司 | 数据生成方法、装置及电子设备 |
CN115334234B (zh) * | 2022-07-01 | 2024-03-29 | 北京讯通安添通讯科技有限公司 | 一种暗光环境拍摄照片补充图像信息的方法及装置 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11397462B2 (en) * | 2012-09-28 | 2022-07-26 | Sri International | Real-time human-machine collaboration using big data driven augmented reality technologies |
WO2014160342A1 (en) * | 2013-03-13 | 2014-10-02 | The University Of North Carolina At Chapel Hill | Low latency stabilization for head-worn displays |
US10726560B2 (en) * | 2014-10-31 | 2020-07-28 | Fyusion, Inc. | Real-time mobile device capture and generation of art-styled AR/VR content |
US10719939B2 (en) * | 2014-10-31 | 2020-07-21 | Fyusion, Inc. | Real-time mobile device capture and generation of AR/VR content |
US10235806B2 (en) | 2014-11-21 | 2019-03-19 | Rockwell Collins, Inc. | Depth and chroma information based coalescence of real world and virtual world images |
US9965789B2 (en) * | 2014-12-22 | 2018-05-08 | Intel Corporation | Pre-purchase wearable device testing |
US10176642B2 (en) * | 2015-07-17 | 2019-01-08 | Bao Tran | Systems and methods for computer assisted operation |
US9898869B2 (en) * | 2015-09-09 | 2018-02-20 | Microsoft Technology Licensing, Llc | Tactile interaction in virtual environments |
US11295458B2 (en) * | 2016-12-01 | 2022-04-05 | Skydio, Inc. | Object tracking by an unmanned aerial vehicle using visual sensors |
US10528815B2 (en) * | 2016-12-31 | 2020-01-07 | Vasuyantra Corp. | Method and device for visually impaired assistance |
US9792501B1 (en) * | 2016-12-31 | 2017-10-17 | Vasuyantra Corp. | Method and device for visually impaired assistance |
US10713540B2 (en) * | 2017-03-07 | 2020-07-14 | Board Of Trustees Of Michigan State University | Deep learning system for recognizing pills in images |
US11379688B2 (en) * | 2017-03-16 | 2022-07-05 | Packsize Llc | Systems and methods for keypoint detection with convolutional neural networks |
US10303953B2 (en) * | 2017-04-17 | 2019-05-28 | Intel Corporation | Person tracking and privacy and acceleration of data using autonomous machines |
-
2017
- 2017-07-27 US US15/661,964 patent/US10269159B2/en active Active
-
2018
- 2018-07-20 EP EP18184700.5A patent/EP3435284B1/en active Active
- 2018-07-24 CN CN201810821708.1A patent/CN109345556B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
US10269159B2 (en) | 2019-04-23 |
CN109345556A (zh) | 2019-02-15 |
EP3435284B1 (en) | 2021-06-02 |
US20190035125A1 (en) | 2019-01-31 |
EP3435284A1 (en) | 2019-01-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109345556B (zh) | 用于混合现实的神经网络前景分离 | |
US20230377183A1 (en) | Depth-Aware Photo Editing | |
US11238644B2 (en) | Image processing method and apparatus, storage medium, and computer device | |
WO2022156640A1 (zh) | 一种图像的视线矫正方法、装置、电子设备、计算机可读存储介质及计算机程序产品 | |
CN114097248B (zh) | 一种视频流处理方法、装置、设备及介质 | |
US11488348B1 (en) | Computing virtual screen imagery based on a stage environment, camera position, and/or camera settings | |
WO2021213067A1 (zh) | 物品显示方法、装置、设备及存储介质 | |
KR100560464B1 (ko) | 관찰자의 시점에 적응적인 다시점 영상 디스플레이 시스템을 구성하는 방법 | |
CN114025219B (zh) | 增强现实特效的渲染方法、装置、介质及设备 | |
US20200304713A1 (en) | Intelligent Video Presentation System | |
US12069231B1 (en) | Integrated display rendering | |
CN115529835A (zh) | 用于新颖视图合成的神经混合 | |
Li et al. | Enhancing 3d applications using stereoscopic 3d and motion parallax | |
US11615755B1 (en) | Increasing resolution and luminance of a display | |
WO2022026603A1 (en) | Object recognition neural network training using multiple data sources | |
US11169603B2 (en) | Electronic apparatus and method for recognizing view angle of displayed screen thereof | |
WO2023244320A1 (en) | Generating parallax effect based on viewer position | |
EP4150560B1 (en) | Single image 3d photography with soft-layering and depth-aware inpainting | |
CN113552942B (zh) | 一种基于光照强度显示虚拟对象的方法及设备 | |
EP3716217A1 (en) | Techniques for detection of real-time occlusion | |
CN117315154B (zh) | 一种可量化的人脸模型重建方法及系统 | |
CN113141502B (zh) | 头戴式显示设备的摄像控制方法、装置及头戴式显示设备 | |
CN118710796A (zh) | 用于显示弹幕的方法、装置、设备和介质 | |
JP2023039331A (ja) | 画像処理装置および画像処理方法 | |
CN117456134A (zh) | 无人机vr显示方法、装置、电子设备及存储介质 |
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 |