CN105993034B - 用于增强表面重构的轮廓求全 - Google Patents
用于增强表面重构的轮廓求全 Download PDFInfo
- Publication number
- CN105993034B CN105993034B CN201580008585.4A CN201580008585A CN105993034B CN 105993034 B CN105993034 B CN 105993034B CN 201580008585 A CN201580008585 A CN 201580008585A CN 105993034 B CN105993034 B CN 105993034B
- Authority
- CN
- China
- Prior art keywords
- scene
- reconstruction
- contour
- dense partial
- parabola
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/005—General purpose rendering architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/04—Texture mapping
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/08—Volume rendering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/10—Geometric effects
- G06T15/40—Hidden part removal
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/50—Lighting effects
- G06T15/60—Shadow generation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/10—Constructive solid geometry [CSG] using solid primitives, e.g. cylinders, cubes
-
- 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/20—Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
-
- 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/12—Edge-based 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/42—Global feature extraction by analysis of the whole pattern, e.g. using frequency domain transformations or autocorrelation
- G06V10/422—Global feature extraction by analysis of the whole pattern, e.g. using frequency domain transformations or autocorrelation for representing the structure of the pattern or shape of an object therefor
- G06V10/426—Graphical representations
-
- 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/457—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 analysing connectivity, e.g. edge linking, connected component analysis or slices
-
- 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
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/08—Indexing scheme for image data processing or generation, in general involving all processing steps from image acquisition to 3D model generation
-
- 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/20076—Probabilistic image processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2215/00—Indexing scheme for image rendering
- G06T2215/06—Curved planar reformation of 3D line structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2219/00—Indexing scheme for manipulating 3D models or images for computer graphics
- G06T2219/20—Indexing scheme for editing of 3D models
- G06T2219/2021—Shape modification
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Architecture (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
- Image Generation (AREA)
Abstract
描述了表面重构轮廓求全的实施例,其从一个或多个视点所捕捉的图像来提供场景的密集重构。使用轮廓求全随机场模型可以推断出房间布局以及房间中被部分遮挡的物体的完整范围以增强重构体。经增强的重构体随后能够被任意表面重构管道用来示出之前被遮挡的物体和表面。
Description
背景技术
诸如微软公司的的商品深度相机和传感器的可用性已经支持研发出多种可以从所捕捉的深度图像来密集地重构任意场景的方法。从深度图像生成场景的密集3D重构的任务在过去数年间已经有了长足的进展。虽然该进展的一部分是由于算法改进,但是廉价深度相机的采用以及色彩和深度信号的融合方面也已经取得了大幅的发展。
深度和彩色图像的组合使用已经被成功论证可用于经由离线和在线算法两者来产生室内场景的大规模模型。大多数红、绿、蓝和深度(RGB+D)重构方法需要从多个视点展示场景以提供基本上准确并且完整的表面重构。
准确且完整的表面重构在增强现实(AR)应用中特别重要,增强现实(AR)应用越来越多地被用于娱乐和商业用途。例如,近来所引入的游戏平台要求用户从多个角度扫描内部场景以构建该场景的模型。使用深度重构的模型,平台覆盖以图形方式所生成的角色和游戏要素。在另一个示例中,家具零售商支持消费者在并不必离开他们的家的情况下对他们的家具在被安装后看上去如何进行视觉化。这些AR应用经常要求高保真的密集重构从而能够以貌似真实的方式产生所仿真的诸如照明、阴影和物体交互之类的物理现象。
发明内容
提供该发明内容而以简化形式对随后将在下文的具体实施方式中进一步进行描述的概念的选择进行介绍。该发明内容并非意在标识所请求保护主题的关键特征或必要特征,其也并非意在被用来以任何方式对所请求保护主题的范围进行限制。
总体上,本文所描述的表面重构轮廓求全(contour completion)技术的实施例推断出完整重构的场景的布局以及该重构场景中被部分遮挡的物体的完整范围。
在该表面重构轮廓求全技术的一个实施例中,部分地重构的三维(3D)场景被完成或者说求全。接收(例如,从表面重构管线)三维场景的部分重构体(volume),并且在该部分重构体中检测表面。该表面随后被分类为不同的类型。经分类的表面被用来推断场景边界以及物体在该部分重构体中被部分遮挡的表面的边界。该部分重构体随后被更新以示出所推断的物体在该场景中被部分遮挡的表面的边界以及场景边界。
附图说明
本公开的具体特征、方面和优势将关于以下描述、所附权利要求以及附图而更好地被理解,其中:
图1描绘了用于实践本文所描述的表面重构轮廓求全技术的一个实施例的示例性过程的流程图。
图2描绘了用于实践本文所描述的表面重构轮廓求全技术的另一个实施例的另一种示例性过程的流程图。
图3描绘了用于实施本文所描述的表面重构轮廓求全技术的一个示例性实施例的系统。
图4描绘了在表面重构管线中使用表面重构轮廓求全技术的一个实施例以增强重构体的示图。
图5是可以被用来实践表面重构轮廓求全技术的各个实施例的示例性计算环境的示意图。
具体实施方式
在以下对表面重构轮廓求全技术的实施例的描述中对附图进行参考,该附图形成描述的一部分的并且利用图示示例的方式而示出,通过该示例本文所描述的表面重构轮廓求全技术的实施例可以被实践。所要理解的是,在不背离所请求保护主题的范围的情况下,可以利用其它实施例并且可以进行结构变化。
1.0表面重构轮廓求全
以下部分提供对本文所描述的表面重构轮廓求全技术的介绍,以及用于实践这些实施例的过程和架构的示例性实施方式。还提供了各个实施例和部件的细节。
作为引文,随后的一些示图以一种或多种结构部件为背景的概念进行了描述,上述结构部件以各种方式被称为功能、模块、特征、要素等。图中所示的各个部件能够以任意方式来实施。在一种情况下,图中所图示的将各个部件划分为不同单元可以反映出相对应不同组件在实际实施方式中的使用。可替换地或除此之外,图中所示的任意单个组件都可以由多个实际组件所实施。可替换地或除此之外,图中所描绘的任意两个或更多单独部件可以反映由单个实际部件所执行的不同功能。
其它示图以流程图的形式对概念进行描述。以这种形式,某些操作被描述为以某种顺序执行的作为组成部分的不同的框。这样的实施方式是说明性而非限制性的。本文所描述的某些框能被分组在一起并且在单个操作中被执行,某些框能够被细分为多个分量框,并且某些框能够以不同于这里所图示的顺序来执行(包括并行地执行框的方式)。流程图中所示出的框能够以任意方式被实施。
1.1介绍
总体上,本文所描述的表面重构轮廓求全技术从一个或多个有限视点执行表面重构,并且对场景中被遮挡或者对于捕捉场景的一个或多个相机不可见的部分进行“填充”。基本的场景理解要求对物体在3D空间中如何交互和延伸具有高水平的知识。虽然大多数场景理解研究涉及到语义和像素标记(labelling),但是已经深入到推断物体或表面的程度的工作却相对很少,尽管这是人类能力的普遍且基本的属性所在。诸如例如微软公司的Fusion的在线表面重构管线高度适用于增强现实(AR)应用,但是能够从被整合到管线之中的场景增强阶段获益。表面重构轮廓求全技术的实施例提供这样的场景增强。
表面重构轮廓求全技术的实施例提供许多优势。场景重构中的空洞和间隙通过对场景中被遮挡表面的轮廓进行求全而被填充。这使得不必从多个视点捕捉场景以便显示出被遮挡物体和场景表面的真实范围和形状。此外,对场景重构进行增强几乎不要求用户方面的工作并且实时地进行。所创建的增强表面重构还能够与许多类型的表面重构管线一起使用。
一些表面重构轮廓求全技术实施例采用了轮廓求全随机场(CCRF)模型。该模型在2D场景中完成或延伸轮廓。其还对场景及其物体的范围进行推断。此外,其将经推断的场景要素的有效重新整合提供到3D场景表示形式中以允许它们被诸如AR应用的下游应用所使用。
在一个实施例中,场景的部分密集重构被接收,其被表示为立体像素(voxel)网格中的点云,其中每个立体像素的状态可以是被表面占据、自由(于表面)或者其状态为未知。应当注意的是,该表示是表面的非常一般的表示并且能够通过从许多其它类型的场景表示(例如网格)以及捕捉该场景的相机的位置进行采样而生成。在一个实施例中,该技术使用实时的密集表面映射和追踪过程来计算该重构体,该重构体还可以针对立体像素而指定表面法线和截取符号距离函数(TSDF)。例如,微软公司的Fusion就是可以被使用的这种实时的密集表面映射和追踪处理。其将活动体保存在图形处理单元(GPU)存储器中,其利用来自深度相机或传感器的新的深度观察进行更新,上述深度相机或传感器诸如例如是微软公司的传感器。每个深度帧使用迭代最接近点技术进行追踪,并且每个深度帧对被表示为截取符号距离函数(TSDF)网格的重构体进行更新。在任意点,TSDF体都可以被渲染(例如,通过使用射线投影)或变换为明确的表面(例如,通过使用行进立方体方法或类似方法)。应当注意的是,虽然表面轮廓求全的一个实施例采用了微软公司的Fusion和相机/传感器所创建的部分场景重构体,但是能够随该技术而采用任意其它类型的场景重构方法和深度相机。
给定重构体,在一个实施例中,首先对表面进行检测。例如,场景中的平面表面被检测并且每一个平面表面被分类为场景布局的一部分(地板、墙面、天花板)或者场景中的内部物体的一部分。平面的标识随后被用来通过使用这里所描述的CCRF模型求解分类问题而对它们进行扩展。不同于基本上支持短边界的成对出现的马尔科夫随机场,CCRF模型支持标签中的不连续性以跟随所检测的诸如线条或曲线的轮廓基元。本文所描述的表面重构轮廓求全技术的实施例使用该模型来完成用于场景的地板映射并且对房间中的平面物体的范围进行估计。最后,原始输入的体被增强从而绘制出经扩展和填充的场景。应当注意的是,虽然该描述主要讨论了平面表面,但是这里所描述的表面重构轮廓求全技术也能够应用于许多其它类型的物体。例如,能够对圆柱状物体进行检测并且该圆柱状表面将被映射至平面,其中以与本文所描述的相类似的方式进行完成。这同样应用于许多其它类型的表面,诸如例如圆锥体和球体。
1.2示例性过程
如上文所讨论的,Fusion是实时的密集表面映射和追踪管线。其将活动体保持在GPU存储器中,定期利用来自相机/传感器的新的深度观察进行更新。每个深度帧被追踪并且对被表示为截取符号距离函数(TSDF)体/网格的重构体进行更新。在任意点,该TSDF体都可以被渲染(例如,通过使用射线投影)或者使用行进立方体算法(或类似算法)被变换为明确的表面。本文所描述的表面重构轮廓求全技术的实施例通过在某些关键帧(例如,其中增加了实质性的新数据的事件)访问TSDF体而对该管线进行延伸,并且利用所推断的被遮挡表面的边界对其进行增强。随着新的深度观察揭示出之前被遮挡的立体像素,所推断的增强被逐步淘汰。本文所描述的表面重构轮廓求全技术的实施例可以被用来以很少的改变而增强其它表面重构方法。
图1描绘了用于对场景的密集部分3D重构进行求全的示例性过程100。在该实施例中,对场景的密集部分3D重构体中的表面(例如平面表面)进行检测,如框102中所示。所检测的表面随后被分类为不同类型的表面,如框104中所示。例如,所检测的表面能够被分类为墙壁、天花板、地板和内部表面。
该场景的密集部分3D重构体随后使用经分类的表面以及轮廓求全过程被增强,从而示出场景边界以及物体在该场景中被部分遮挡表面的更大部分,该轮廓求全过程对该场景中的被遮挡表面的轮廓进行求全或补全,如框106中所示。
图2描绘了另一个示例性过程200。在该实施例200中,部分重构的三维(3D)场景被求全。
如框202中所示,接收(例如,从表面重构管线)三维场景的密集3D部分重构体。该部分3D重构体能够从保存该场景的部分重构体的表面重构管线接收,其利用场景的新的深度观察而被更新。该密集重构体可以被表达为立体像素的体(3D点云上的覆盖)。每个立体像素能够被标记为具有在该立体像素所观察到的表面(例如,被占据)、其中在该立体像素没有观察到的表面的自由状态,或者被标记为未知(不知在该立体像素处是否存在表面)。
对部分重构体中的表面进行检测,如框204中所示。能够使用Hough变换对表面进行检测并且点可以被关联至这些表面中的每一个表面。这些表面可以是任意类型的表面,只要它们能够被映射至平面。在该技术的一些实施例中所采用的检测表面的细节将在下文进行更为详细地讨论。
如框206中所示,所检测的表面被分类为不同类型的表面。这例如能够通过该使用语义标记以及分类器来进行,该分类器将表面分类为诸如墙壁、地板、天花板和内部表面之类的场景边界。可以使用经训练的分类器将表面分类为语义类,该分类器使用地面真实标签和3D特征来预测每个表面。该分类器捕捉每个表面的属性,包括其高度、大小和表面法线分布。可以使用随机森林分类器对表面进行分类,但是也可以使用许多其它类型的分类器,作为示例,如支持矢量机(SVM)、增强型线性分类器等。在该技术的一些实施例中所采用的对表面进行分类的细节将在下文进行更为详细地讨论。
如框208中所示,经分类的表面被用来定义处于场景的部分重构体中的场景边界。这例如可以通过使用之前所讨论的轮廓求全随机场(CCRF)模型来进行。该CCRF模型通过使得能量函数最小化来对场景中被遮挡表面的轮廓进行求全,该能量函数确定轮廓线条上的点是否位于表面上并且将该点标记为处于或不处于表面轮廓上。被指定以是否属于表面轮廓的不同标签的两个相邻的点在确定该点是否属于表面轮廓时被指定以惩罚。场景中的被遮挡表面的轮廓可以使用被拟合到该表面的轮廓的可见部分的线条和抛物线来求全。随后将更为详细地描述用于使用CCRF模型来求全轮廓的示例性过程。
如框210所示,还对物体在部分重构体中被部分遮挡的表面的边界进行推断。同样,这例如可以通过使用之前所讨论的CCRF模型来进行。物体在场景中被遮挡的轮廓可以使用被拟合到物体被遮挡表面的轮廓的可见部分的线条和抛物线来求全。
如框212所示,该部分3D重构体随后被增强以示出所确定的场景中的物体被部分遮挡的表面的边界以及场景边界。用于增强部分3D重构体的示例性过程在随后更为详细地进行描述。
已经提供了用于实践该技术的示例性过程,后续的部分讨论了用于实践该技术的示例性系统。
1.3示例性系统
图3提供了用于实践本文所描述的实施例的示例性系统300。表面重构轮廓求全模块302处于诸如关于图5更为详细描述的计算设备500上。
如图3所示,表面重构轮廓求全模块304的表面检测模块302检测所输入的部分3D重构体306中的表面。该部分重构体306能够从表面重构管线308接收,表面重构管线308保存场景的部分重构体并且利用场景的新的深度观察对该场景进行更新。
应当注意的是,部分3D重构体306可以通过网络310从表面重构管线308接收(例如,如果该表面重构管线处于服务器或计算云上)。可替换地,该表面重构管线可以与表面重构轮廓求全模块302处于相同的计算设备500上。(应当注意的是,整个管线可以处于计算云上。可以包括来自一个或多个客户端的深度视频形式的输入,将它们进行融合并且可以生成最终的求全。最终的模型(或当前深度视图)随后可以被发送回客户端。)
部分3D重构体306可以被表达为立体像素的体(3D点云上的覆盖)。每个立体像素能够被标记为具有该立体像素处所观察到的表面(被标记为被占据),在该立体像素处没有观察到表面的自由状态,或者被标记为未知(不知该立体像素处是否存在表面)。
表面分类模块312对部分3D重构体306中所检测到的表面进行分类。表面能够使用Hough变换进行检测并且点能够被关联至这些表面中的每一个表面。表面分类模块312例如通过使用语义标记和分类器将所检测的表面分类成不同类型的表面,该分类器将表面分类为诸如墙壁、地板、天花板和内部表面之类的场景边界。经分类的表面被用来定义该场景的部分重构体中的场景边界。这例如可以通过使用轮廓求全模块314以及之前所讨论的CCRF模块316来进行。场景中被遮挡表面的轮廓可以使用被拟合到表面轮廓的可见部分的线条和抛物线而被求全。
物体在部分重构体306中被部分遮挡的表面的边界也使用轮廓求全模块314而被确定。同样,这例如可以通过使用之前所讨论的CCRF模型314来进行。物体在场景中被遮挡的轮廓还可以使用被拟合到被遮挡物体的表面轮廓的可见部分的线条和抛物线而被求全。
所求全的部分3D重构体306中的经检测和分类的表面的轮廓被增强模块318用来创建增强3D重构体320,增强3D重构体320描绘了物体在该场景中的被部分遮挡的表面的更大部分以及场景边界。增强3D重构体320随后被反馈到表面重构管线308。增强3D重构体320可以被实时更新。
1.4细节和示例性计算
已经提供了用于实践表面重构轮廓求全实施例的示例性过程和示例性系统的描述,以下部分将提供对示例性表面重构管线的描述,该表面重构管线可以与各种表面重构轮廓求全技术实施例的细节和示例性计算一起被使用。
1.4.1示例性表面重构管线
如之前所描述的,表面重构轮廓求全技术的实施例可以与各种表面重构管线一起被使用。随该技术的一个示例性实施例一起使用的一种这样的表面重构管线是微软公司的Fusion管线。在以下段落中对该管线进行简要描述以便提供有关可以随该技术使用的示例性表面重构管线的一些背景信息。
Fusion系统通过随时间从多个视点整合来自深度相机或传感器的深度数据而对具有平滑表面的单个密集表面模型进行重构,作为示例,上述深度相机或传感器是微软公司的在相机/传感器移动时对相机姿态进行追踪(其位置和方位),并且由于每一帧的姿态以及其如何与其它帧的姿态相关是已知的,所以物体或环境的这些多个视点能够被融合(平均)在一起形成单个重构立体像素体。该立体像素体在空间中可以被认为是大的虚拟立方体(重构体),位于真实世界中的该场景周围,并且深度数据(即,表面所在之处的测量)随着传感器在周围移动而被整合到其之中。
Fusion处理管线从原始深度数据到3D重构涉及到多个阶段。第一阶段是深度图转换,其从相机/传感器取得原始深度数据并且将其转换为以米为单位的浮点深度数据,随后是针对有向点云的可选转换,其由相机坐标系统中的3D点/顶点以及这些点处的表面法线(表面的方向)所组成。
第二阶段计算全球/世界相机姿态(其位置和方向)并且使用迭代对齐算法在每一帧中追踪传感器移动时的该姿态,从而Fusion系统始终知道相对于最初的起始帧的当前传感器/相机姿态。在Fusion中有两种算法。第一种可以被用来将从重构所计算的点云与来自相机深度的新到来的点云进行对齐,或者是独立的(例如,用于将观看相同场景的两个单独相机进行对齐)。第二种算法在随重构体一起工作时提供了更为准确的相机追踪结果,然而,这对于在场景中移动的物体而言可能较不鲁棒。
第三阶段是将来自已知传感器姿态的深度数据融合(或“整合”)为相机周围的空间的单个体表示。这种深度数据的整合对每个帧连续执行,利用运行平均(runningaverage)以减少噪声,而且对场景中的一些动态变化进行处理。
1.4.2输入
该表面重构轮廓求全技术可以与各种输入表示一起被使用。
在一个示例性实施例中,该3D重构体被表示为诸如以上关于Fusion管线所描述的3D感应点的云。这些点处于环境中的表面上。注意到,输入可以具有不同的表示形式,诸如环境的不完整网格,或者表面的隐含表示形式(诸如存储在空间中的规则点处的3D函数,并且其在该表面的一侧为正而在另一侧则为负)。将以下描述扩展到不同的表示是可能的,但是所有那些表示都可以被近似为3D点的云。
在一个实施例中,接收(3D点云上的)立体像素网格以及表面法线的集合。该网格中的每个立体像素表示(被占据的)表面观察、自由空间或未知,并且每个被占据立体像素已经被指定以表面法线。虽然该技术的一个实施例使用截取符号距离函数(TSDF)以及Fusion所产生的表面法线,但是对这三种状态进行编码的任意立体像素网格和相对应的表面法线都将是满足要求的。
如将要在以下段落中更为详细描述的,给定该输入,该技术实施例首先检测表面—例如平面表面—并且将每个表面分类为作为场景布局的一部分(地板、墙壁、天花板)或者该场景中的内部物体的一部分。使用每个平面的标识,执行两个阶段的场景扩展。首先,完成提供房间的封闭3D模型的地板映射。第二,确定该房间中的物体的表面范围,例如该房间中管线物体的平面表面。最后,对原始输入体进行增强以对所扩展和填充的场景加以表示。示例性过程的多个阶段在图4中进行了展示。如图4所示,框402,对所接收的3D部分密集重构体进行分析以找出主要平面。如框404所示,该主要平面被分类为天花板、墙壁、地板以及内部平面。如框406所示,对场景边界以及任何被部分遮挡的内部物体的形状进行推断。如框408所示,所推断的场景边界和内部对象被用来产生完整的重构场景。框402至408的每个动作的示例性计算的细节在以下段落中进行详细描述。
1.4.3平面检测和分类
如图4框402所示,对所接收的3D部分密集重构体进行分析以找出主要平面。以下段落描述了该技术如何从基于部分立体像素的重构来检测主体平面。所有可能的3D平面的空间都由所表示,并且出现在该场景中的平面的集合由H来表示。使得在该场景中可见的所有3D点的集合由P={pl,...pN}来表示。该技术通过最小化以下能量函数而针对H来估计最为可能的标记:
其中λ是平面数量的惩罚,并且fi是对并未由任何平面所解释的点的数量进行惩罚的函数:fi(H)=min{minh∈H[δ(pi,h),λb]},其中函数δ在pi落在平面h上时返回数值0,否则为无穷。单独最小化第一项具有简单的(trivial)退化解决方案,其中平面针对集合H中的每个点pi而被包括。然而,该情况被充当正则项的能量的第二项所避免并且增加了随H的基数(cardinality)而线性增大的惩罚。
1.4.3.1检测表面集合
在表面重构轮廓求全技术的一个示例性实施例中采用贪婪策略,其从空集开始并且反复增加导致最大能量减小的元素。该方法已经被观察到实现了良好的近似。其通过使用Hough变换选择有限表面(例如平面)集合而开始。在一个实施例中,每个3D点及其表面法线对以其方位角θ、高度ψ以及距原点p的距离作为参数的平面等式进行投票。这些投票中的每一个投票在大小为A x E x D的累加器矩阵中进行累加,其中A是方位角容器的数量,E是高度容器的数量而D则是距离容器的数量(在一个实施例中,使用A=128,E=64,并且D通过利用最大和最小点将大小为5cm的容器边缘间隔开来而动态选取)。在每个点都被投票之后,运行非最大值抑制过程来避免接受过于相似的多个平面。
一旦已经确定了候选表面(例如,平面)的集合,该技术就按照它们已经接收到的投票的数量将它们降序排列并且将点迭代地关联至每个平面。点可以在其之前并不与任何其它表面相关联的情况下或者在其平面差距和局部表面法线差异足够小(在一个实施例中,使用平面差距阈值0.1以及角度差距阈值0.1)的情况下被关联至一个平面。作为另外的启发式方法,每个新的平面及其相关联的点被分割为连接的分量的集合,这确保了平面在局部是连接的。
1.4.3.2利用语义标记进行的表面/平面分类
如图4的框404所示,一旦已经确定平面集合,每一个平面就独立低被分类为四种语义类别之一:地板、墙壁、天花板、以及内部。为了这么做,在一个实施例中,使用捕捉每个平面的包括其在房间中的高度、大小以及表面法线分布的属性的过程,使用地面真实标签和3D特征对随机森林分类器进行训练以预测每个平面的类别。被分类为地板、墙壁和天花板之一的平面被用于推断地板平面和场景边界,而内部平面则在后续步骤中被扩展并且被填充。
一个实施例使用快速抛物线拟合过程,其在后续更为详细地被描述。以输入图像开始,找到接触点和轮廓边缘。接下来,接触点被对齐并且使用若干半径对抛物线进行拟合以找到最佳拟合。
1.4.4场景求全
给定所检测和分类的平面的集合,这里所描述的表面重构轮廓求全技术的实施例推断场景的真实范围(即,其获得封闭的房间结构),并且基于来自场景自身的证据对内部平面进行扩展,如图4的框406中所示。
1.4.4.1作为像素标记问题的表面边界求全
以下段落对用来估计如在一个示例性实施例中从俯视图中所看到的表面(例如平面)边界的数学计算进行描述。边界求全被表征为像素标记问题。考虑表示场景的俯视图中的网格位置的节点集合S。假设网格中的节点i∈S的部分标记可以被观察并且利用变量yi;i∈S进行编码,其中yi=1、yi=0和yi=-1分别表示i属于该平面、不属于该平面以及其从属关系并不确定。在给定y的情况下,期望对x所表示的平面的真实范围进行估计。特别地,二进制变量xi被用来对平面是否覆盖该俯视图中的节点i的位置进行编码。xi=1表示节点i属于该平面,而xi=0则表示其不属于该平面。
针对像素标记问题的传统方法是使用成对的马尔科夫随机场(MRF)模型。在成对MRF模型下任意标记y的能量被定义为:
E(x)=∑i∈Sφi(xi)+∑ij∈Nφij(xi,xj)+K (2)
其中φi对指定标签xi的成本进行编码,并且φij则是支持相邻的(N个)节点采用相同标签的成对势(potential),并且K是常数。该一元势函数迫使所估计的标签x与观察y相符,即如果yi≠-1并且且xi≠yi则φi(xi)=inf,并且针对所有其它情形φi(yi)=0,同时成对势采取Ising模型的形式。该模型下的最大后验(MAP)标记可以使用图形切割而在多项式时间中进行计算。然而,其结果由于该成对模型并未对有关应当如何计算边界的任何信息进行编码而是平庸的。其简单地支持具有少量不连续性的标签。
1.4.4.2轮廓求全随机场
该技术的一个实施例采用如之前所讨论的CCRF模型。现在描述用于应用CCRF模型来对遮挡表面的轮廓进行求全的数学计算。
已经观察到,虽然大量相邻像素配对采用不同的标签,但是这些像素中的大多数像素具有一致的外观。因此,定义了对具有大量图形-背景变换类型的分段进行惩罚的势。这与对绝对数量的变换进行惩罚的标准MRF形成对比。该CCRF模型并不受到短的边界偏差的影响,因为能量在变换为相同类型—即,具有相同的外观—的情况下并不随着变换的数量而增长。
不同于其中在基于外观进行聚类的非连续边缘群组上定义较高阶的势的方法,在CCRF中,在重叠边缘集合上定义较高阶的势,其中每个集合遵循一些简单(低维度)的原语曲线形状,诸如直线或圆。用于CCRF的能量函数可以被写为:
E(x)=∑i∈Sφi(xi)+∑g∈GΨg(x) (3)
其中Ψg是曲线求全势(completion potentials),并且G是一个集合,其中的每个曲线g表示遵循该曲线的一组节点(边缘)。该曲线求全势具有递减的返回属性。更为正式地:
其中Eg是定义曲线或边缘群组g的边缘的集合。F是非递减的凹函数。在实验中,F被定义为具有上限的线性函数,即F(t)=min{λ*t,θ},其中λ是该函数的斜率并且θ是上限。能够看到的是,一旦几条边缘截取则该群组中的其余边缘就可以在没有任何惩罚的情况下被截取。该模型的这种表现并不妨碍标记中的边界包括大量的边缘,只要它们属于相同的群组(曲线)即可。
1.4.4.2.1将曲线求全势变换为成对模型
已经展示了等式(4)形式的势可以被变换为增加了辅助变量的成对的势的总和。具体而言,曲线求全势上的最小化能够被写为其中每条边缘增加一个变量并且每个边缘群组增加一个变量的次模成对伪布尔函数的最小化形式。较高阶曲线求全势(4)上的最小化问题能够被变换为:
1.4.4.2.2约束边缘群组
除了上文中较高阶的项之外,对边缘群组的集合引入了一系列约束。特别地,边缘群组能够以层级方式进行组织从而可能边缘的集合具有双亲并且每个双亲仅有单一的孩子可以是活动的。这些约束使用二进制辅助变量进行规格化:
E(x)=∑i∈Sφi(xi)+∑g∈GΨg(x)
s.t.∑k∈c(g)hk≤1 (6)
其中c(g)表示针对每个双亲g的孩子边缘群组的集合。增加这些约束并不改变干扰机制,因为该技术遵循所描述的贪婪干扰方法,贪婪干扰方法用来通过使用图形剪切求解一系列次模伪布尔函数最小化问题而使得CCRF能量(3)最小化。由于该策略是贪婪的,所以该技术简单地并不允许孩子边缘群组在其双亲还没有活动的情况下被选择。这些群组的确切属性在下文进行描述。
1.4.5定义边缘群组
如框406所示,本文所描述的表面重构轮廓求全技术的实施例对场景边界和内部表面进行推断。在一个实施例中,这是通过沿每个已知像素的轮廓而检测线条和抛物线并且推断(或推演(halluncinating))边缘群组来进行的。CCRF模型随后被用来推断编码的范围。
在一个实施例中,考虑两种类型的边缘群组来定义表面的边缘,也就是直线和抛物线。虽然之前的工作已经论证了Hough变换检测诸如圆形和椭圆形的其它形状的能力,但是这样的高参数形状要求大体上更多的存储器和计算。已经发现线条和抛物线对于捕捉所遇到的大多数情形而言足够灵活,并且这些被该表面重构轮廓求全技术用来对表面的轮廓求全。
1.4.5.1检测线条
为了检测线条,在一个实施例中,使用经修改的Hough变换来不仅检测线条而且还检测变换的方向(平面至自由空间或反之亦然)。在一个实施例中,使用具有3个参数的累加器:ρ、从原点到线条的距离、从原点到线条的矢量与X轴之间的角度θ、以及指示变换方向(上下方向和左右方向)的四元变量d(在一个实施例中,该技术对于θ使用400个角度容器并且以1个单位将容器ρ均匀间隔开来。所允许的最小投票数量被设置为10)。在投票累加之后,运行非最大值抑制并且针对每条所形成的线条创建边缘群组。
1.4.5.2检测抛物线
针对抛物线的标准Hough变换需要四个参数。为了避免这样的涉及的计算和存储器要求,引入了新颖且简单的启发式方法。首先,该技术识别输入图像中落在自由空间、所占据像素和未知像素的交点处的每个点。这些交点被称作接触点。此外,被平面所占据并且界定自由空间的所有像素被称作轮廓点。
为了闭合被遮挡的轮廓,抛物线对接触点的集合进行连接或者在接触点处继续直至其到达图像结尾。注意到,仅界定相同遮挡区域的接触点才可能被桥接。因此,创建了接触点配对集合ξ,将根据接触点配对集合ξ对抛物线进行估计。如果接触点全部都界定相同的遮挡区域,则每个接触点与其最近的邻居形成配对。针对每个接触点配对,抛物线针对紧邻地界定每个接触点的所有轮廓点进行拟合。由于抛物线可以被旋转,首先这些界定轮廓点被旋转从而使得将接触点相连的线条的法线与Y轴对齐。为了避免对轮廓的过度或不足拟合,使用若干半径对轮廓点进行采样并且该抛物线最大程度地与所观察到的轮廓保持相符。如果轮廓点不能成对,或者如果配对仅提供了不良拟合,则抛物线针对每一侧单独地使用其紧邻的轮廓点邻居进行拟合。该快速抛物线拟合过程在表1中进行概括。
表1:快速抛物线拟合过程
1.4.5.3推演边缘
虽然使用所检测的线条或曲线在许多情况下可以支持推断出正确的表面边界,但是在其它情况下,在图像中并不存在应当如何对形状进行求全的依据。增加在求全中使用的边缘群组将有助于提供表现出简单闭合和对称性的形状。更具体地,针对每个所检测到的观察线条,在形状的遮挡侧上增加另外的并行边缘群组。
1.4.6推断场景边界
如图4的框406所示,确定所分类表面的边缘并且推断场景边界和内部表面边界。概言之,通过将线条和抛物线针对输入图像进行拟合而获得边缘群组,因此支持进行与这些边缘相符的变换。如等式6所示,并非所有边缘群组都能够同时且并行地活动,并且被用来推演一系列边缘的任何线条都被认为是其孩子推演线条的双亲。因此,每次(最多)仅有单个推演线条是活动的。
为了扩展并填充场景边界,输入TSDF的自由空间以及(分类器所预测的)墙壁平面被投影到地板平面上。给定由这些投影所引入的2D点云,点被离散化以形成投影图像,在投影图像中每个像素yi取自由空间、墙壁或未知的数值。为了推断出整个场景布局,CCRF(等式3)得以被应用以推断未知像素的数值。在这种情况下,自由空间被认为是所要扩展的区域(yi=1),并且墙壁要作为周边区域以避免被填充(yi=0)。墙壁的线条和曲线首先被检测以创建一系列边缘群组。接下来,如果yi=0则φi(xi=1)=∞并且如果yi=1则φi(xi=0)=∞。最后,在一个实施例中,增加轻微偏差以对准自由空间φi(xi=0)=ε,其中ε=1e-6。
1.4.7扩展平面表面
如图4的框406所示,一旦已经对场景边缘求全,也就推断出了内部平面表面的完整范围。针对每个内部平面而言,TSDF如下被投影到所检测的2D平面上。首先,使用主成分分析(PCA)找出针对平面的坐标基础并且分别估计该平面的主要和次要轴线M和N。接下来,创建大小为2N+1x 2M+1的图像,其中该图像的中心像素对应于该平面的几何中心。沿大小为2N+1x 2M+1的平面基础对网格进行采样,其中在每个网格位置被采样的TSDF数值被用来指定图像的每个像素。如果所采样的TSDF数值被占用则yi被设置为1,如果其是自由空间则yi被设置为0,并且如果其未知则yi被设置为-1。实际上,远离该平面的若干立体像素也被采样(沿表面法线方向)。该启发式方法具有减少传感器噪声的影响以及来自平面拟合的误差的效果。
一旦已经创建了Y,则该图像中的所有线条和抛物线都被检测并且必要线条被推演从而创建边缘群组。接下来,局部的势以之前所描述的相同方式而被指定。
1.5增强原始体
如图4的框408所示,随推断的场景边界和内部对象被用来增强该3D重构体。该场景求全的结果是封闭的场景边界,以及经拓展的内部物体表面平面。作为管线中的最终步骤,对所输入的原始TSDF进行增强。在一个实施例中,针对场景边缘,所产生的表示边界的多段线条被简化并且对从地板到天花板高度沿着该边界的点进行采样。对于内部平面而言,该技术对平面的扩展部分中的点进行采样。针对每个采样点(按照所要求的被密集采样,在这种情况下为Υ),从最接近于该点的立体像素并且以两个方向—其法线和与其法线相反的方向—遍历该体中的bresenham线。针对每个所约到的立体像素,利用到表面的距离更新TSDF数值。如果原始体的大小不足以保存新的场景边界,则在对其进行增强之前创建新的更大的体并且将原始TSDF复制到那里。
在起始的表面重构管线中,经增强的TSDF利用新的证据将持续更新(例如,随着用户移动)。经增强的区域随着它们所填充的立体像素变为已知而被逐步淘汰。
2.0示例性使用情形和可替换实施例:
以下段落提供了一些示例性使用情形和可替换实施例。许多其它的使用情形和实施例是可能的。
2.1游戏应用
本文所描述的表面重构轮廓求全技术的实施例能够被用来在各种游戏应用中增强场景。例如,能够利用深度传感器来扫描房间并且可以创建该房间的3D部分重构体。这随后能够被用来增强该3D部分重构体从而示出被部分遮挡的物体和物品。图形生成的角色和游戏要素也可以进行叠加。
2.2室内设计/构造
本文所描述的表面重构轮廓求全技术的实施例可以被用来在各种室内设计和构造应用中增强场景。所捕捉房间的增强模型可以被用来示出该房间的所有方面从而允许消费者对他们的家具在房间中安装时看上去如何进行视觉化。
2.3 3D打印
在3D打印中,3D模型被发送到3D打印机,以便该3D打印机创建物理物体。本文所描述的表面重构轮廓求全技术的实施例可以被用来创建这样的模型。
2.4机器人应用
在一些情况下,室内机器人被用来遍历房间以例如找人或寻找爆炸性设备。这里所描述的表面重构轮廓求全技术的实施例可以被用来创建这样的房间模型以便引导机器人通过之前未绘制地图的空间。
2.5物体裁切
在一些情况下,用户可能想要从建模的场景或重构体的现有几何中裁切掉物体。这里所描述的表面重构轮廓求全技术的实施例可以被用来替换物体裁切以对重构体求全。
3.0示例性操作环境
本文所描述的表面重构轮廓求全技术的实施例在多种类型的通用或专用计算系统环境或配置内可操作。图5图示了如本文所描述的表面重构轮廓求全技术的各种实施例和要素可以在其上进行实施的通用计算机系统的简化示例。注意到,在图5所示的简化计算设备500中以中断线或虚线所表示任何框都表示该简化计算设备的可替换实施例。如下文所描述的,任何或全部的这些可替换实施例都可以结合贯穿本文所描述的其它可替换实施例一起使用。简化计算设备500通常在具有至少一些最小计算能力的设备中被发现,诸如个人计算机(PC)、服务器计算机、手持计算设备、膝上计算机或移动计算机,诸如蜂窝电话和个人数字助理(PDA)的通信设备,多处理器系统、基于微处理器的系统、机顶盒、可编程消费者电器、网络PC、小型计算机、主机计算机,以及音频或视频媒体播放器。
为了允许设备实施本文所描述的表面重构轮廓求全技术的实施例,该设备应当具有充分的计算能力和系统存储器以支持基本计算操作。特别地,图5所示的简化计算设备500的计算能力总体上由一个或多个处理单元(510)所图示,并且还可以包括一个或多个图形处理单元(GPU)515,它们中的任一者或其二者与系统存储器520进行通信。注意到,简化计算设备500的(多个)处理单元510可以是专用微处理器(诸如数字信号处理器(DSP)、超长指令字(VLIW)处理器、现场可编程门阵列(FPGA)或其它微控制器),或者可以是具有一个或多个处理核心的常规中央处理器(CPU)。
此外,图5所示的简化计算设备500还可以包括诸如通信接口530的其它部件。简化计算设备500还可以包括一个或多个常规计算机输入设备540(例如,指示设备、键盘、音频(例如语音)输入设备、视频输入设备、触觉输入设备、手势识别设备、用于接收有线或无线数据传输的设备等)。简化计算设备500还可以包括其它可选部件,诸如一个或多个常规计算机输出设备550(例如,(多个)显示设备555、音频输出设备、视频输出设备、用于传送有线或无线数据传输的设备等)。注意到,用于通用计算机的典型通信接口530、输入设备540、输出设备550和存储设备560对于本领域技术人员而言是公知的并且将不在这里进行详细描述。
图5所示的简化计算设备500还可以包括各种计算机可读媒体。计算机可读媒体可以是可以被计算机500经由存储设备560所访问的任意可用媒体,并且可以包括可以是可移除570和/或不可移除580的易失性和非易失性媒体,用于存储诸如计算机可读或计算机可执行指令、数据结构、程序模块或其它数据。计算机可读媒体包括计算机存储媒体和通信媒体。计算机存储媒体是指有形的计算机可读或机器可读媒体或存储设备,诸如数字多功能盘(DVD)、紧致盘(CD)、软盘、带式驱动器、硬盘驱动器、光驱动器、固态存储器设备、随机访问存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、闪存或者其它存储器技术、磁性卡带、磁带、磁盘存储或者其它磁性存储设备。
诸如计算机可读或计算机可执行指令、数据结构、程序模块等的信息的保存还可以通过使用任意的各种以上所提到的通信媒体(与计算机存储媒体相对)对一个或多个调制数据信号或载波进行编码来实现,或者通过其它传输机制或通信协议来实现,并且可以包括任意的有线或无线信息传递机制。注意到,术语“调制数据信号”和“载波”一般是指使得其一个或多个特征以在信号中编码信息的方式进行设置或改变的信号。例如,通信媒体可以包括有线媒体,诸如承载一个或多个调制数据信号的有线网络或直接线路连接,以及无线媒体,诸如声(acoustic)、射频(RF)、红外、激光以及用于传送和/或接收一个或多个调制数据信号或载波的其它无线媒体。
此外,体现本文所描述的各种表面重构轮廓求全技术实施例中的一些或全部或者其一部分的软件、程序、和/或计算机程序产品可以以计算机可读指令或其它数据结构形式而从计算机可读或机器可读媒体或存储设备和通信媒体的任何期望组合进行存储、接收、传送、或读取。
最后,本文所描述的表面重构轮廓求全技术的实施例可以进一步在由计算设备所执行的诸如程序模块的计算机可执行指令的总体背景下进行描述。一般而言,程序模块包括执行特定任务或实施特定抽象数据类型的例程、程序、对象、部件、数据结构等。该表面重构轮廓求全技术的实施例还可以在分布式计算环境中进行实践,在该分布式计算环境中进行实践中任务由一个或多个远程处理设备所执行,或者在通过一个或多个通信网络进行链接的一个或多个设备的云内进行实践。在分布式计算环境中,程序模块可以位于本地以及包括媒体存储设备的远程计算机存储媒体中。此外,以上所提到的指令可以部分或整体被实施为硬件逻辑电路,该硬件逻辑电路可以包括或不包括处理器。
4.0其它实施例
还应当注意的是,以上所提到的本文所描述的任意或所有可替换实施例都可以以任何所期望的组合被用来形成另外的混合实施例。虽然已经以特定于结构特征和/或方法动作的语言对主题进行了描述,但是所要理解的是,所附权利要求中所限定的主题并不必局限于以上所描述的具体特征或操作。上文所描述的具体特征和动作作为实施权利要求的示例形式而被公开。
Claims (16)
1.一种用于对被部分重构的三维3D场景进行求全的计算机实现方法,包括:
接收三维场景的密集部分重构体;
检测所述密集部分重构体中的表面;
将所述表面分类到不同类型的表面;
使用经分类的所述表面确定所述场景的所述密集部分重构体的场景边界;
使用经分类的所述表面确定物体在所述密集部分重构体中被部分遮挡的表面的边界;
更新所述密集部分重构体以示出所确定的物体在所述场景中被部分遮挡的表面的边界以及所述场景边界;以及
使用轮廓求全过程来更新所述场景边界的以及物体在所述密集部分重构体中被部分遮挡的所述表面的所述边界的轮廓,
其中所述轮廓通过使用被拟合到所述轮廓的可见部分的直线和抛物线而被求全;并且
其中通过以下操作来将抛物线拟合到所述场景边界的以及物体被部分遮挡的所述表面的所述边界的所述轮廓的可见部分:
将所述轮廓的所述可见部分投影到二维图像上;
标识所述二维图像中落在自由空间像素、被占据像素和未知像素的交叉处的接触点,所述被占据像素包括由表面占据的像素,并且所述未知像素包括不知其处是否存在表面的像素;
在所述二维图像中找出处于平面表面的轮廓上并且界定自由空间的轮廓点;以及
通过拟合抛物线以使得所述抛物线连接至接触点集合或者所述抛物线从接触点继续直至所述抛物线到达所述二维图像的结尾,来封闭被遮挡的轮廓。
2.根据权利要求1所述的计算机实现方法,其中所述密集部分重构体从表面重构管线被接收,所述表面重构管线保存利用所述场景的新的深度观察而被更新的所述场景的所述密集部分重构体。
3.根据权利要求1所述的计算机实现方法,其中所述轮廓求全过程使得能量函数最小化,所述能量函数确定点是否处于表面的轮廓上并且将所述点标记为是处于还是不处于所述表面的所述轮廓上。
4.根据权利要求1所述的计算机实现方法,其中每个表面被分类为多个语义类别中的语义类别。
5.根据权利要求4所述的计算机实现方法,其中每个表面被分类到地板、墙壁、天花板和内部的语义类别中,并且其中被分类为地板、墙壁和天花板之一的表面被用来推断场景边界,并且其中内部表面被扩展并且被填充。
6.根据权利要求4所述的计算机实现方法,其中所述密集部分重构体中的所述表面使用经训练的分类器而被分类到所述多个语义类别中,所述经训练的分类器使用地面真实标签和3D特征来预测每个表面的类别,并且所述经训练的分类器捕捉每个表面的属性,所述属性包括所述表面的高度、大小和表面法线分布。
7.根据权利要求6所述的计算机实现方法,其中所述经训练的分类器是随机森林分类器。
8.根据权利要求1所述的计算机实现方法,其中所述场景的所述密集部分重构体被表示为立体像素的体。
9.根据权利要求8所述的计算机实现方法,其中每个立体像素在所述立体像素处具有被观察到的表面时被标记为被占据,在所述立体像素处不存在被观察到的表面时被标记为自由状态,或者被标记为未知。
10.根据权利要求1所述的计算机实现方法,其中所述场景的所述密集部分重构体被表示为具有表面法线的立体像素的截取符号距离函数网格。
11.一种用于对场景的密集部分3D重构体进行求全的计算机实现方法,包括:
检测所述场景的所述密集部分3D重构体中的表面;
将所检测的表面分类到不同类型的表面;
使用经分类的所述表面和轮廓求全过程对所述场景的所述密集部分3D重构体进行增强,以示出物体在所述场景中被部分遮挡的表面的更大部分以及所述场景的所述密集部分3D重构体的场景边界,
其中对所述场景的所述密集部分3D重构体进行增强包括:
使用经分类的所述表面确定所述场景的所述密集部分3D重构体的所述场景边界;
使用经分类的所述表面确定物体在所述密集部分3D重构体中被部分遮挡的表面的边界;
更新所述密集部分3D重构体以示出所确定的物体在所述场景中被部分遮挡的表面的边界以及所述场景边界;以及
使用轮廓求全过程来更新所述场景边界的和物体在所述密集部分3D重构体中被部分遮挡的所述表面的所述边界的轮廓,
其中所述轮廓通过使用被拟合到所述轮廓的可见部分的直线和抛物线而被求全;并且
其中通过以下操作来将抛物线拟合到所述场景边界的以及物体被部分遮挡的所述表面的所述边界的所述轮廓的可见部分:
将所述轮廓的所述可见部分投影到二维图像上;
标识所述二维图像中落在自由空间像素、被占据像素和未知像素的交叉处的接触点,所述被占据像素包括由表面占据的像素,并且所述未知像素包括不知其处是否存在表面的像素;
在所述二维图像中找出处于平面表面的轮廓上并且界定自由空间的轮廓点;以及
通过拟合抛物线以使得所述抛物线连接至接触点集合或者所述抛物线从接触点继续直至所述抛物线到达所述二维图像的结尾,来封闭被遮挡的轮廓。
12.根据权利要求11所述的计算机实现方法,进一步包括:随着所述场景的改变,用新数据持续更新经求全的所述密集部分3D重构体。
13.根据权利要求12所述的计算机实现方法,进一步包括:随着经增强的所述密集部分3D重构体的经增强部分变得已知,逐步淘汰经增强的所述密集部分3D重构体的经增强部分。
14.一种用于对场景的密集部分3D重构进行求全的系统,包括:
一个或多个计算设备;以及
计算机程序,所述计算机程序具有由所述一个或多个计算设备可执行的程序模块,所述一个或多个计算设备由所述计算机程序的所述程序模块引导为:
将在所述场景的所述密集部分3D重构中检测到的平面表面进行分类;以及
通过使用经分类的所述平面表面求全经分类的所述平面表面的可视轮廓,来更新所述密集部分3D重构以示出物体在所述场景中被部分遮挡的表面的更大部分以及所述场景的所述密集部分3D重构的场景边界,
其中更新所述密集部分3D重构包括:
使用经分类的所述平面表面确定所述场景的所述密集部分3D重构的所述场景边界;
使用经分类的所述平面表面确定物体在所述场景中被部分遮挡的表面的边界;
更新所述密集部分3D重构以示出所确定的物体在所述场景中被部分遮挡的表面的边界以及所述场景边界;以及
使用轮廓求全过程来更新所述场景边界的以及物体在所述场景中被部分遮挡的所述表面的所述边界的轮廓,
其中所述轮廓通过使用被拟合到所述轮廓的可见部分的直线和抛物线而被求全;并且
其中通过以下操作来将抛物线拟合到所述场景边界的以及物体被部分遮挡的所述表面的所述边界的所述轮廓的可见部分:
将所述轮廓的所述可见部分投影到二维图像上;
标识所述二维图像中落在自由空间像素、被占据像素和未知像素的交叉处的接触点,所述被占据像素包括由表面占据的像素,并且所述未知像素包括不知其处是否存在表面的像素;
在所述二维图像中找出处于平面表面的轮廓上并且界定自由空间的轮廓点;以及
通过拟合抛物线以使得所述抛物线连接至接触点集合或者所述抛物线从接触点继续直至所述抛物线到达所述二维图像的结尾,来封闭被遮挡的轮廓。
15.根据权利要求14所述的系统,其中检测到的所述平面表面被实时更新。
16.根据权利要求15所述的系统,其中所述场景的所述密集部分3D重构经由网络从在线表面重构管线接收到。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/179,642 | 2014-02-13 | ||
US14/179,642 US9171403B2 (en) | 2014-02-13 | 2014-02-13 | Contour completion for augmenting surface reconstructions |
PCT/US2015/014947 WO2015123122A1 (en) | 2014-02-13 | 2015-02-09 | Contour completion for augmenting surface reconstructions |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105993034A CN105993034A (zh) | 2016-10-05 |
CN105993034B true CN105993034B (zh) | 2020-03-13 |
Family
ID=52574442
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201580008585.4A Active CN105993034B (zh) | 2014-02-13 | 2015-02-09 | 用于增强表面重构的轮廓求全 |
Country Status (4)
Country | Link |
---|---|
US (2) | US9171403B2 (zh) |
EP (1) | EP3105740B1 (zh) |
CN (1) | CN105993034B (zh) |
WO (1) | WO2015123122A1 (zh) |
Families Citing this family (70)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9071740B1 (en) | 2011-10-28 | 2015-06-30 | Google Inc. | Modular camera system |
US9197686B1 (en) | 2012-01-06 | 2015-11-24 | Google Inc. | Backfill of video stream |
US9537968B1 (en) | 2012-01-06 | 2017-01-03 | Google Inc. | Communication of socket protocol based data over a storage protocol based interface |
WO2014134425A1 (en) * | 2013-02-28 | 2014-09-04 | Kevin Williams | Apparatus and method for extrapolating observed surfaces through occluded regions |
EP2886043A1 (de) * | 2013-12-23 | 2015-06-24 | a.tron3d GmbH | Verfahren zum Fortsetzen von Aufnahmen zum Erfassen von dreidimensionalen Geometrien von Objekten |
US9830681B2 (en) * | 2014-01-31 | 2017-11-28 | Hover Inc. | Multi-dimensional model dimensioning and scale error correction |
US10055892B2 (en) * | 2014-11-16 | 2018-08-21 | Eonite Perception Inc. | Active region determination for head mounted displays |
US9544485B2 (en) | 2015-05-27 | 2017-01-10 | Google Inc. | Multi-mode LED illumination system |
US9454820B1 (en) | 2015-06-12 | 2016-09-27 | Google Inc. | Using a scene illuminating infrared emitter array in a video monitoring camera for depth determination |
US9554063B2 (en) | 2015-06-12 | 2017-01-24 | Google Inc. | Using infrared images of a monitored scene to identify windows |
US9626849B2 (en) * | 2015-06-12 | 2017-04-18 | Google Inc. | Using scene information from a security camera to reduce false security alerts |
US9235899B1 (en) | 2015-06-12 | 2016-01-12 | Google Inc. | Simulating an infrared emitter array in a video monitoring camera to construct a lookup table for depth determination |
US9489745B1 (en) | 2015-06-12 | 2016-11-08 | Google Inc. | Using depth maps of a scene to identify movement of a video camera |
US9613423B2 (en) | 2015-06-12 | 2017-04-04 | Google Inc. | Using a depth map of a monitored scene to identify floors, walls, and ceilings |
US9886620B2 (en) | 2015-06-12 | 2018-02-06 | Google Llc | Using a scene illuminating infrared emitter array in a video monitoring camera to estimate the position of the camera |
US9386230B1 (en) | 2015-06-12 | 2016-07-05 | Google Inc. | Day and night detection based on one or more of illuminant detection, lux level detection, and tiling |
US20180286130A1 (en) * | 2016-01-06 | 2018-10-04 | Hewlett-Packard Development Company, L.P. | Graphical image augmentation of physical objects |
US10482681B2 (en) | 2016-02-09 | 2019-11-19 | Intel Corporation | Recognition-based object segmentation of a 3-dimensional image |
US10373380B2 (en) | 2016-02-18 | 2019-08-06 | Intel Corporation | 3-dimensional scene analysis for augmented reality operations |
CN105913485B (zh) * | 2016-04-06 | 2019-02-12 | 北京小小牛创意科技有限公司 | 一种三维虚拟场景的生成方法及装置 |
CN106228539B (zh) * | 2016-07-12 | 2019-07-12 | 北京工业大学 | 一种三维点云中多种几何基元自动识别方法 |
US10573018B2 (en) * | 2016-07-13 | 2020-02-25 | Intel Corporation | Three dimensional scene reconstruction based on contextual analysis |
US11017712B2 (en) | 2016-08-12 | 2021-05-25 | Intel Corporation | Optimized display image rendering |
US9928660B1 (en) | 2016-09-12 | 2018-03-27 | Intel Corporation | Hybrid rendering for a wearable display attached to a tethered computer |
US10180615B2 (en) | 2016-10-31 | 2019-01-15 | Google Llc | Electrochromic filtering in a camera |
US10271033B2 (en) * | 2016-10-31 | 2019-04-23 | Verizon Patent And Licensing Inc. | Methods and systems for generating depth data by converging independently-captured depth maps |
US10529088B2 (en) | 2016-12-02 | 2020-01-07 | Gabriel Fine | Automatically determining orientation and position of medically invasive devices via image processing |
WO2018108832A1 (en) * | 2016-12-14 | 2018-06-21 | Starship Technologies Oü | Robot, system and method detecting and/or responding to transitions in height |
US10593122B1 (en) | 2017-01-24 | 2020-03-17 | Amazon Technologies, Inc. | Mirroring edge pixels |
US10580167B1 (en) * | 2017-01-24 | 2020-03-03 | Amazon Technologies, Inc. | Excluding masked regions of virtual reality (VR) frames from encoder processing |
US10535156B2 (en) | 2017-02-03 | 2020-01-14 | Microsoft Technology Licensing, Llc | Scene reconstruction from bursts of image data |
US10369472B1 (en) | 2017-03-30 | 2019-08-06 | Electronic Arts Inc. | Virtual environment mapping system |
US10489651B2 (en) | 2017-04-14 | 2019-11-26 | Microsoft Technology Licensing, Llc | Identifying a position of a marker in an environment |
US10692287B2 (en) | 2017-04-17 | 2020-06-23 | Microsoft Technology Licensing, Llc | Multi-step placement of virtual objects |
US10572970B2 (en) * | 2017-04-28 | 2020-02-25 | Google Llc | Extracting 2D floor plan from 3D GRID representation of interior space |
US10643368B2 (en) * | 2017-06-27 | 2020-05-05 | The Boeing Company | Generative image synthesis for training deep learning machines |
US20190012835A1 (en) | 2017-07-07 | 2019-01-10 | Microsoft Technology Licensing, Llc | Driving an Image Capture System to Serve Plural Image-Consuming Processes |
US10403030B2 (en) * | 2017-08-28 | 2019-09-03 | Microsoft Technology Licensing, Llc | Computing volumes of interest for photogrammetric 3D reconstruction |
EP3467782A1 (en) * | 2017-10-06 | 2019-04-10 | Thomson Licensing | Method and device for generating points of a 3d scene |
CN108090436B (zh) * | 2017-12-13 | 2021-11-19 | 深圳市航盛电子股份有限公司 | 一种运动物体的检测方法、系统及介质 |
WO2019116942A1 (ja) * | 2017-12-14 | 2019-06-20 | キヤノン株式会社 | 3次元モデルの生成装置、生成方法、及びプログラム |
CA3061699C (en) | 2017-12-14 | 2023-03-07 | Canon Kabushiki Kaisha | Generation device, generation method and non-transitory computer-readable meadium storing a program for generating a three-dimensional model from an image |
US10558260B2 (en) | 2017-12-15 | 2020-02-11 | Microsoft Technology Licensing, Llc | Detecting the pose of an out-of-range controller |
EP3729381B1 (en) | 2017-12-22 | 2023-01-18 | Magic Leap, Inc. | Viewpoint dependent brick selection for fast volumetric reconstruction |
US10957072B2 (en) * | 2018-02-21 | 2021-03-23 | Cognex Corporation | System and method for simultaneous consideration of edges and normals in image features by a vision system |
EP3762901A4 (en) * | 2018-03-08 | 2021-11-17 | Simile Inc. | METHODS AND SYSTEMS FOR THE PRODUCTION OF CONTENT IN ENVIRONMENTS WITH MULTIPLE REALITIES |
CN108416044B (zh) * | 2018-03-15 | 2021-11-09 | 斑马网络技术有限公司 | 场景缩略图的生成方法、装置、电子设备及存储介质 |
CN109101864A (zh) * | 2018-04-18 | 2018-12-28 | 长春理工大学 | 基于关键帧和随机森林回归的人体上半身动作识别方法 |
US11189078B2 (en) * | 2018-06-20 | 2021-11-30 | Google Llc | Automated understanding of three dimensional (3D) scenes for augmented reality applications |
WO2020072472A1 (en) * | 2018-10-01 | 2020-04-09 | Google Llc | Method and device for detecting a vertical planar surface |
US11809613B2 (en) | 2018-11-12 | 2023-11-07 | Magic Leap, Inc. | Event-based camera with high-resolution frame output |
US11985440B2 (en) | 2018-11-12 | 2024-05-14 | Magic Leap, Inc. | Depth based dynamic vision sensor |
US11902677B2 (en) | 2018-11-12 | 2024-02-13 | Magic Leap, Inc. | Patch tracking image sensor |
WO2020102110A1 (en) | 2018-11-13 | 2020-05-22 | Magic Leap, Inc. | Event-based ir camera |
JP7538806B2 (ja) | 2019-02-07 | 2024-08-22 | マジック リープ, インコーポレイテッド | 高一時的分解能を伴う軽量かつ低電力のクロスリアリティデバイス |
EP3922010A4 (en) | 2019-02-07 | 2022-10-26 | Magic Leap, Inc. | PASSIVE DEPTH EXTRACTION LIGHTWEIGHT EXTENDED REALITY DEVICE |
US10818070B2 (en) | 2019-03-27 | 2020-10-27 | Electronic Arts Inc. | Artificial intelligence based virtual object aging |
US11620800B2 (en) * | 2019-03-27 | 2023-04-04 | Electronic Arts Inc. | Three dimensional reconstruction of objects based on geolocation and image data |
US11176374B2 (en) * | 2019-05-01 | 2021-11-16 | Microsoft Technology Licensing, Llc | Deriving information from images |
WO2020237089A1 (en) * | 2019-05-21 | 2020-11-26 | Magic Leap, Inc. | Caching and updating of dense 3d reconstruction data |
US11238659B2 (en) | 2019-06-26 | 2022-02-01 | Magic Leap, Inc. | Caching and updating of dense 3D reconstruction data |
US11887253B2 (en) | 2019-07-24 | 2024-01-30 | Electronic Arts Inc. | Terrain generation and population system |
US11407117B1 (en) * | 2019-08-20 | 2022-08-09 | X Development Llc | Robot centered augmented reality system |
CN111027601B (zh) * | 2019-11-25 | 2023-10-17 | 歌尔股份有限公司 | 一种基于激光传感器的平面检测方法、装置 |
CN115191005B (zh) * | 2020-03-05 | 2024-09-13 | 奇跃公司 | 用于从多视图图像进行端到端场景重建的系统和方法 |
US11335058B2 (en) | 2020-10-13 | 2022-05-17 | Electronic Arts Inc. | Spatial partitioning for graphics rendering |
US11961184B2 (en) * | 2021-09-17 | 2024-04-16 | Samsung Electronics Co., Ltd. | System and method for scene reconstruction with plane and surface reconstruction |
CN113570629B (zh) * | 2021-09-28 | 2022-01-18 | 山东大学 | 去除动态物体的语义分割方法及系统 |
CN114049466A (zh) * | 2021-11-29 | 2022-02-15 | 浙江商汤科技开发有限公司 | 重建物体表面的方法、装置及计算机存储介质 |
US11908080B2 (en) * | 2022-04-04 | 2024-02-20 | Tencent America LLC | Generating surfaces with arbitrary topologies using signed distance fields |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101510311A (zh) * | 2009-03-05 | 2009-08-19 | 浙江大学 | 基于gps信息对大量建筑物侧立面图像快速分类的方法 |
CN101937579A (zh) * | 2010-09-20 | 2011-01-05 | 南京大学 | 一种利用透视草图创建三维曲面模型的方法 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6674877B1 (en) * | 2000-02-03 | 2004-01-06 | Microsoft Corporation | System and method for visually tracking occluded objects in real time |
US7444013B2 (en) * | 2001-08-10 | 2008-10-28 | Stmicroelectronics, Inc. | Method and apparatus for recovering depth using multi-plane stereo and spatial propagation |
US7103212B2 (en) * | 2002-11-22 | 2006-09-05 | Strider Labs, Inc. | Acquisition of three-dimensional images by an active stereo technique using locally unique patterns |
WO2005060629A2 (en) | 2003-12-11 | 2005-07-07 | Strider Labs, Inc. | Probable reconstruction of surfaces in occluded regions by computed symmetry |
US8933925B2 (en) | 2009-06-15 | 2015-01-13 | Microsoft Corporation | Piecewise planar reconstruction of three-dimensional scenes |
US9183631B2 (en) * | 2012-06-29 | 2015-11-10 | Mitsubishi Electric Research Laboratories, Inc. | Method for registering points and planes of 3D data in multiple coordinate systems |
US9083960B2 (en) * | 2013-01-30 | 2015-07-14 | Qualcomm Incorporated | Real-time 3D reconstruction with power efficient depth sensor usage |
US9888215B2 (en) * | 2013-04-26 | 2018-02-06 | University Of Washington | Indoor scene capture system |
-
2014
- 2014-02-13 US US14/179,642 patent/US9171403B2/en active Active
-
2015
- 2015-02-09 WO PCT/US2015/014947 patent/WO2015123122A1/en active Application Filing
- 2015-02-09 CN CN201580008585.4A patent/CN105993034B/zh active Active
- 2015-02-09 EP EP15706106.0A patent/EP3105740B1/en active Active
- 2015-09-28 US US14/867,915 patent/US20160019711A1/en not_active Abandoned
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101510311A (zh) * | 2009-03-05 | 2009-08-19 | 浙江大学 | 基于gps信息对大量建筑物侧立面图像快速分类的方法 |
CN101937579A (zh) * | 2010-09-20 | 2011-01-05 | 南京大学 | 一种利用透视草图创建三维曲面模型的方法 |
Non-Patent Citations (2)
Title |
---|
Edge Closing of Synthetic and Real Images using Polynomial Fitting;M. Benjelloun et al;《ResearchGate》;20070131;摘要、第3页第2.1节、图2、4、10 * |
Support Surface Prediction in Indoor Scenes;Ruiqi Guo et al;《2013 IEEE International Conference on Computer Vision(ICCV)》;20131201;摘要、第1页右栏最后一段、第3页第2节、第4页第2.2节、第4页第3.1节、第7页左栏第2段、图1、图2 * |
Also Published As
Publication number | Publication date |
---|---|
EP3105740B1 (en) | 2019-01-16 |
US20150228114A1 (en) | 2015-08-13 |
US9171403B2 (en) | 2015-10-27 |
WO2015123122A1 (en) | 2015-08-20 |
CN105993034A (zh) | 2016-10-05 |
US20160019711A1 (en) | 2016-01-21 |
EP3105740A1 (en) | 2016-12-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105993034B (zh) | 用于增强表面重构的轮廓求全 | |
US11816907B2 (en) | Systems and methods for extracting information about objects from scene information | |
Pintore et al. | State‐of‐the‐art in automatic 3D reconstruction of structured indoor environments | |
US20210312710A1 (en) | Systems and methods for processing 2d/3d data for structures of interest in a scene and wireframes generated therefrom | |
Li et al. | Feature-preserving 3D mesh simplification for urban buildings | |
Zhang et al. | Online structure analysis for real-time indoor scene reconstruction | |
CN105701857B (zh) | 3d建模的对象的纹理化 | |
Chauve et al. | Robust piecewise-planar 3D reconstruction and completion from large-scale unstructured point data | |
Xu et al. | Reconstruction of scaffolds from a photogrammetric point cloud of construction sites using a novel 3D local feature descriptor | |
Chen et al. | Reconstructing compact building models from point clouds using deep implicit fields | |
Silberman et al. | A contour completion model for augmenting surface reconstructions | |
Lafarge et al. | A hybrid multiview stereo algorithm for modeling urban scenes | |
CN107798725B (zh) | 基于Android的二维住房户型识别和三维呈现方法 | |
EP4044116A1 (en) | Segmenting a 3d modeled object representing a mechanical part | |
Bauchet et al. | City reconstruction from airborne LiDAR: A computational geometry approach | |
Lin et al. | Immesh: An immediate lidar localization and meshing framework | |
US20240331114A1 (en) | Improving digital image inpainting utilizing plane panoptic segmentation and plane grouping | |
Lin et al. | Visual saliency and quality evaluation for 3D point clouds and meshes: An overview | |
Loesch et al. | Localization of 3D objects using model-constrained SLAM | |
Zhang et al. | Building façade element extraction based on multidimensional virtual semantic feature map ensemble learning and hierarchical clustering | |
Shui et al. | Automatic planar shape segmentation from indoor point clouds | |
Syryamkin et al. | A method to create real-like point clouds for 3D object classification | |
Poux | How to represent 3D Data? | |
Digne et al. | Neighborhood Filters and the Recovery of 3D Information. | |
Kaiser et al. | Geometric Proxies for Live RGB-D Stream Enhancement and Consolidation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |