CN117456040A - 用于建筑物测绘信息的增量生成的自动化工具 - Google Patents

用于建筑物测绘信息的增量生成的自动化工具 Download PDF

Info

Publication number
CN117456040A
CN117456040A CN202310218697.9A CN202310218697A CN117456040A CN 117456040 A CN117456040 A CN 117456040A CN 202310218697 A CN202310218697 A CN 202310218697A CN 117456040 A CN117456040 A CN 117456040A
Authority
CN
China
Prior art keywords
room
additional
information
rooms
building
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.)
Pending
Application number
CN202310218697.9A
Other languages
English (en)
Inventor
万志强
威尔·A·哈奇克罗夫特
曼朱纳特·纳拉亚纳
伊瓦伊洛·博亚吉耶夫
李宇光
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mftb Co ltd
Original Assignee
Mftb Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mftb Co ltd filed Critical Mftb Co ltd
Publication of CN117456040A publication Critical patent/CN117456040A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • G06F30/13Architectural design, e.g. computer-aided architectural design [CAAD] related to design of buildings, bridges, landscapes, production plants or roads
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/05Geographic models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • G06T11/203Drawing of straight lines or curves
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/20Instruments for performing navigational calculations
    • G01C21/206Instruments for performing navigational calculations specially adapted for indoor navigation
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/38Electronic maps specially adapted for navigation; Updating thereof
    • G01C21/3804Creation or updating of map data
    • G01C21/3807Creation or updating of map data characterised by the type of data
    • G01C21/383Indoor data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • G06F30/12Geometric CAD characterised by design entry means specially adapted for CAD, e.g. graphical user interfaces [GUI] specially adapted for CAD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/08Construction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/12Edge-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • G06T7/579Depth or shape recovery from multiple images from motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/698Control of cameras or camera modules for achieving an enlarged field of view, e.g. panoramic image capture
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/08Indexing scheme for image data processing or generation, in general involving all processing steps from image acquisition to 3D model generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/24Indexing scheme for image data processing or generation, in general involving graphical user interfaces [GUIs]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20021Dividing image into blocks, subimages or windows
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20212Image combination
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30244Camera pose

Abstract

描述了以下技术:作为建筑物的楼层平面图或其他测绘信息的自动化生成过程的部分,计算装置执行与使用在建筑物中采集的图像相关的自动化操作,在一些情况下不使用来自深度感测设备的关于从图像的采集位置到周围建筑物中物体的距离的深度信息,并且随后以进一步自动化方式使用,诸如控制移动装置的导航和/或在对应的图形用户界面中显示给最终用户。对建筑物图像的自动化分析和评估可以例如包括递增地生成测绘信息的局部版本、确定与附加图像和/或其他类型的数据的进一步采集相关的采集指令(例如,以减少与局部测绘信息的部分相关的不确定性或以其他方式获得缺失的数据),并且以一种或多种方式提供对应的指引。

Description

用于建筑物测绘信息的增量生成的自动化工具
技术领域
以下公开总体上涉及使用自动化工具和相关的技术以至少部分地基于在限定区域中采集的图像来生成限定区域的测绘信息,从而以使用根据用于进一步图像采集的自动地确定的指令在建筑物的采集位置采集的图像来自动地且递增地生成建筑物的楼层平面图,以及随后使用所生成的测绘信息。
背景技术
在各种领域和情况(诸如建筑分析、财产清查、不动产购置和开发、改建和改造服务、总承包和其他情况)下,可能期望查看关于房屋、办公室或其他建筑物的内部的信息而不必亲自前往或进入建筑物,包括确定关于建筑物的实际竣工信息而不是在建造建筑物之前得到的设计信息。然而,可能难以有效地捕获、表示和使用这种建筑物内部信息,包括向位于远程位置处的用户显示在建筑物内部内捕获的视觉信息(例如,使得用户能够充分理解内部的布局和其他细节,包括以用户选择的方式控制显示)。另外,尽管建筑物的楼层平面图可以提供关于布局的信息和建筑物内部的其他信息,但是在某些情形下,这样使用楼层平面图具有一些缺点,包括楼层平面图可能难以建造和维护、难以精确地缩放和填充关于房间内部的信息、难以可视化和以其他方式使用等。
附图说明
图1包括描绘了用于本公开的实施方式中的示例性建筑物环境和计算系统的图示,包括生成并呈现表示建筑物的信息。
图2A至图2N说明了在建筑物的图像的采集、分析和使用中涉及的自动化操作的示例,诸如用于最终根据自动地确定的采集指令来生成建筑物的楼层平面图。
图3是说明了适用于执行一个或多个系统的实施方式的计算系统的框图,该一个或多个系统执行本公开中所描述的技术中的至少一些。
图4说明了根据本公开的实施方式的自动化建筑物信息采集(ABIA)系统例程的流程图的示例实施方式。
图5说明了根据本公开的实施方式的图像捕获和分析(ICA)系统例程的流程图的示例实施方式。
图6A至图6B说明了根据本公开的实施方式的测绘信息生成管理器(MIGM)系统例程的流程图的示例实施方式。
图7说明了根据本公开的实施方式的建筑物信息访问系统例程的示例流程图。
具体实施方式
本公开描述了用于使用一个或多个计算装置来执行自动化操作的技术,作为自动地生成限定区域的测绘信息以便随后以一种或多种进一步自动化方式使用的部分,这些自动化操作涉及执行对在限定区域中采集的图像的视觉数据的自动化分析,以便递增地生成测绘信息并且确定与附加图像和/或其他类型的数据的进一步采集有关的采集指令以用于进一步生成测绘信息。在至少一些实施方式中,限定区域包括多房间建筑物(例如,房屋、办公室等)的内部,图像包括在建筑物处采集的全景图像(例如,在建筑物的房间内的各种采集位置采集的360°全景图像),并且所生成的信息包括建筑物的楼层平面图,诸如使用来自图像的信息生成的示意性楼层地图的2D(二维)俯视图(例如,直角顶视图)。在至少一些这种实施方式中,在不具有或不使用从深度感测设备采集的关于从图像的采集位置到周围建筑物内部中的墙壁或其他物体的距离的深度信息的情况下进一步执行测绘信息的生成。对建筑物图像的自动化分析可以包括确定周围房间的初始形状(例如,对于房间的在图像中可见的至少一些墙壁),可选地初始房间形状的一些或所有部分具有所确定的不确定性水平(例如,对于特定墙壁或其部分)和/或结构墙壁元素(例如,窗、门道、非门道墙壁开口等)具有确定的位置,以及自动地确定在建筑物图像的视觉数据和一个或多个其他先前采集的建筑物图像的附加视觉数据之间是否存在视觉重叠。所确定的信息可以用于自动地确定要对于建筑物采集的附加数据(例如,用于采集图像和/或其他数据的附加采集位置,以便减少或消除房间形状的不确定性或以其他方式供应丢失的数据),并且还可以用于自动地确定修改后的房间形状,诸如通过确定多个房间的房间形状的相对位置(例如,基于在那些房间中采集的建筑物图像之间的视觉重叠)、生成那些定位的房间形状的组合的分割掩码(segmentation mask)、生成表示该分割掩码的廓线或轮廓的多边形结构,以及将该多边形结构分成修改后的房间形状,可选地其中关于所确定的结构墙壁元素的信息和/或所确定的房间形状不确定性信息与修改后的房间形状相关联。所确定的信息中的一些或全部可以进一步在建筑物图像的采集期间显示或以其他方式提供(例如,在具有用于采集图像的一个或多个相机的图像采集移动计算装置上显示的GUI或图形用户界面中),以便引起或以其他方式指示采集附加数据以用于生成建筑物的其他测绘信息。一旦完成,在各种实施方式中,随后可以以一种或多种方式使用最终生成的楼层平面图和/或其他所生成的测绘相关信息,诸如用于控制移动装置(例如,自主车辆)的导航、用于在一个或多个客户端装置上的对应GUI中显示等。下文包括关于测绘信息的生成和使用中所涉及的计算装置的自动化操作的附加细节,并且在至少一些实施方式中,本文描述的技术中的一些或全部可以至少部分地经由自动化建筑物信息采集(“ABIA”)系统的自动化操作来执行,如下文进一步讨论。
在至少一些实施方式和情形中,对于建筑物采集的图像中的一些或全部是各自在建筑物中或周围的多个采集位置中的一个处采集的360°全景图像,诸如其中每个全景图像围绕竖直轴水平地覆盖360度(例如,通过使用具有相机的图像采集装置,该相机具有一个或多个鱼眼镜头以诸如在一个瞬间捕获水平地延伸360度的全景图像,或以其他方式生成360°全景图像,诸如通过在采集位置水平地旋转相机,该相机在旋转期间捕获一系列视频帧或其他组成图像)。另外,在至少一些这种实施方式中,可以以具有等量矩形投影的球形格式提供和使用这种全景图像,其中房间中的平直的竖直数据(例如,典型的矩形门框的侧面)在图像中仍是平直的,并且其中如果在图像的水平中线处示出,房间中的平直的水平数据(例如,典型的矩形门框的顶部)在图像中仍是平直的,但随着在图像中距水平中线的距离增加而在图像中以相对于水平中线的凸出方式越来越弯曲。将理解,在一些情形下,360°全景图像可以用球形格式表示,并且围绕竖直轴覆盖高达360°,使得查看这种全景图像的用户可以在全景图像内将查看方向移动到不同取向,以致使在全景图像内呈现不同子集的图像(或“视图”)(包括如果用球形格式表示全景图像,则将正在呈现的图像转换成平面坐标系,诸如对于在显示之前的立体图像视图)。此外,可以以各种方式获得和使用关于这种全景图像和/或其他图像(例如,具有小于180°的视角且呈直线格式的照片和其他立体图像,其中房间中的水平和竖直直线在立体图像中仍是平直的)的捕获的采集元数据,诸如在移动图像采集装置被用户携带或以其他方式移动时从移动图像采集装置的IMU(惯性测量单元)传感器或其他传感器采集的数据(包括帮助确定图像的采集“姿势”,该采集姿势包括捕获图像的采集位置和与图像相关的取向或方向,诸如非全景照片图像的相机镜头的方向、全景图像的起始和/或结束方向等),和/或来自其他相关的传感器的其他数据(例如,来自在图像采集位置处的用于测量距房间中的墙壁或房间中的围绕采集位置的其他物体的距离的一个或多个深度传感器或其他距离测量装置的深度数据)。下文包括关于在采集图像和可选地采集元数据以及可选地在稍后使用之前执行图像的预处理所涉及的实施图像捕获和分析(ICA)系统的装置的自动化操作的附加细节(例如,以便以等量矩形格式呈现360°全景图像)。
在一些实施方式和情形中,用于提供所描述的技术的计算装置的自动化操作还可以包括实施自动化生成过程的测绘信息生成管理器(MIGM)系统的自动化操作,该自动化生成过程至少部分地基于在建筑物中和可选地周围的多个采集位置处采集的图像(例如,360°全景图像)的视觉数据来产生建筑物的部分或完整楼层平面图和/或其他测绘信息。在至少一些这种实施方式中,MIGM系统的自动化操作可以包括评估图像和/或其相关的采集元数据(例如,由ICA系统部分地或完全地提供的图像和/或元数据),以便生成关于建筑物的房间形状和房间的布局的信息以供在建筑物的楼层平面图的生成期间使用,无论是在图像的采集期间(例如,以在采集图像时递增地生成部分楼层平面图,以便帮助进一步图像采集)和/或是在完成图像采集之后(例如,以在采集所有图像之后生成完整的楼层平面图)。作为这样做的部分,自动化操作还可以包括识别房间的结构和其他视觉特征,包括墙壁/地板/天花板和它们之间的边界、房间间通道(例如,门道、非门道开口、楼梯、大厅等)和其他结构元素(例如,窗、壁炉、岛等),以及作为生成建筑物楼层平面图的部分来使用这种信息作为将房间形状结合在一起的部分。例如,生成建筑物的楼层平面图和可选地其他相关的测绘信息可以包括使用房间间通道信息(例如,如在相邻房间中采集的图像之间的视觉重叠中反映,诸如穿过连接那些房间的门道或其他非门道墙壁开口)和其他信息以在共同坐标系或其他共同参考系中确定相关联房间形状相对于彼此的相对全局位置(例如,而无需知道房间的实际测量值)。另外,如果距离缩放信息可用于图像中的一个或多个,则可以确定对应的距离测量值,以便允许确定房间大小和其他距离并且将其进一步用于所生成的楼层平面图。所生成的楼层平面图可以例如包括2D概览视图或其他格式(例如,3D或三维模型),并且可以包括其他类型的测绘信息,例如,在每个图像中具有方向信息的相互连接的图像(例如,360°全景图像)到一个或多个其他图像(例如,用户可选择的链接到其他附近图像,所述链接在被选择时致使过渡到与所选择的链接相关的相应其他图像)的虚拟巡视。下文包括与基于图像和/或其相关的采集元数据来这样生成和使用楼层平面图和/或其他建筑物测绘信息相关的附加细节。
另外,在一些实施方式和情形中,用于提供所描述的技术的计算装置的自动化操作还可以包括作为自动地确定要对于建筑物采集的附加数据(例如,在其处要采集图像和/或其他数据的附加位置,以便减少或消除房间形状的不确定性或以其他方式供应丢失的数据)的部分来分析建筑物图像的ABIA系统的操作。在至少一些这种实施方式中,ICA和/或MIGM系统可以由ABIA系统用来执行分析和/或其他活动中的一些,诸如通过具有作为ABIA系统的部分的ICA和/或MIGM系统或通过ABIA系统以其他方式指示单独的ICA和/或MIGM系统的一些或全部操作,而在其他实施方式中,ABIA系统可以改为接收和使用来自其他单独源的图像和/或楼层平面图信息,而不使用ICA和/或MIGM系统。例如,如先前所述,在至少一些实施方式中,ABIA系统的自动化操作可以包括在采集建筑物的一些或全部图像中的每一个时,评估图像的视觉数据(和可选地与图像相关的其他信息,诸如图像采集元数据)以确定周围房间的初始形状(例如,对于房间的在图像中可见的至少一些墙壁),无论是直接地确定还是通过使用MIGM系统来执行确定,并且诸如通过使用一个或多个经训练的机器学习模型(例如,深度卷积神经网络机器学习模型)。作为确定的部分,可以确定在图像中可见的墙壁的边界(例如,墙壁间边界、墙壁到地板和/或墙壁到天花板边界等),以便生成最终2D和/或3D房间形状以及确定房间形状内的结构墙壁元素(例如,窗、门道、非门道墙壁开口等)的位置。在一些实施方式中,除了图像的视觉数据外,还可以基于其他数据来执行初始房间形状确定,诸如来自一个或多个IMU传感器(例如,使用SLAM(同时定位和测绘)、或SfM(运动恢复结构)、或MVS(多视角立体观察)分析中的一个或多个)的数据。
另外,可以确定根据图像生成的初始房间形状的一些或所有部分的不确定性水平或其他评估(例如,对于特定墙壁或它们的部分),诸如至少部分地基于墙壁(或墙壁部分)距采集图像的采集位置的距离(例如,其中基于对图像的视觉数据的分析来自动地估计或以其他方式确定距离)和/或基于其他因素(例如,图像的分辨率、照明等),并且在一些实施方式和情形中,作为用于根据图像来确定初始房间形状的一个或多个经训练的机器学习模型的输出。此外,如果在房间中采集多个图像(或以其他方式具有该房间的至少一些墙壁的视觉数据,诸如来自房间外部的采集位置但具有通过门道墙壁开口或非门道墙壁开口进入房间的视图),则作为产生房间的初始房间形状的部分,可以将根据这些多个图像生成的多个房间形状和相关的信息进行组合,诸如通过从多个房间形状中选择关于多个房间形状之中的具有最低量的不确定性的房间形状的部分的信息(例如,房间的给定墙壁的位置)以用作房间的初始房间形状的部分,和/或通过以其他方式将多个房间形状与相关的不确定性信息进行组合(例如,使用加权平均值来组合墙壁或墙壁部分的不同位置,诸如通过向具有较小的关联不确定性的房间位置信息给予较大权重,其中相应地总不确定性是关于给定的墙壁或墙壁部分位置)。
关于自动地确定要对于建筑物采集的附加数据,这种房间形状信息和相关的不确定性信息可以例如用作生成关于要采集的附加图像和/或其他数据的指引采集指令的部分以减少或消除不确定性,以便在房间的附加部分中采集一个或多个其他图像(例如,更靠近一个或多个墙壁或墙壁部分具有高于定义的阈值的不确定性量的区域,以提供在房间的其他视觉数据中不可见的一个或多个墙壁或墙壁部分的视图、围绕挡住一个或多个墙壁的视图的房间中障碍物移动或以其他方式使数据采集适应于障碍物等)。另外,无论是补充还是代替基于所确定的房间形状不确定性信息的指引采集指令,与房间相关的指引采集指令的生成可以以其他方式解决采集附加数据。例如,这种指引采集指令可以指示参与图像采集的用户改变照明(例如,打开遮光帘、打开室内灯、激活由移动图像采集装置提供或设置有移动图像采集装置的照明等)、以某种方式在房间内移动(例如,诸如以指定的距离远离墙;朝向或到房间的中心;诸如以指定的距离在指定的方向上;等)、打开门(以提供与在门打开的情况下采集的后续图像中的相邻房间的视觉重叠)等,并且在执行这种活动之后采集一个或多个进一步的图像和/或其他数据,无论是从采集一个或多个先前图像的相同采集位置和/或还是在一个或多个附加的采集位置。
除了基于各个房间形状信息来自动地确定要对于建筑物采集的附加数据外,这样确定要采集的附加数据并生成对应的指引采集指令还可以基于多个房间形状和/或其他因素,以便通过在一个或多个方向上采集附加房间中的图像来在那些方向上延伸局部楼层平面图,采集其中尚未获得互连数据的两个或更多个房间形状组(每一个具有至少一个房间形状)之间的中间数据,采集预期但尚未表示的一个或多个房间类型或特定房间在的图像(例如,厨房、被列出为具有三个卧室的建筑物中的第三卧室、用来说明预期的缺失建筑面积的附加房间等)。例如,如先前所述,在至少一些实施方式中,ABIA系统的自动化操作可以包括在采集建筑物的一些或全部图像中的每一个时,进一步评估图像的视觉数据以确定该图像的视觉数据与一个或多个其他采集的图像的关系,诸如多个图像的视觉数据之间的视觉重叠(例如,在图像的视觉数据和至少一个其他采集的图像之间是否存在和/或存在多少图像间视线和/或图像间重叠),以便确定在多个图像之间具有共同可见性的建筑物区域,两个或更多个图像之间的这种视觉重叠数据然后可以用于确定采集这两个或更多个图像的采集位置的相对位置,并且类似地确定根据那些图像确定的房间图像的相对位置。在一些实施方式和情形中,无论是补充还是代替这种视觉重叠数据,可以将附加信息用作对采集位置的相对位置和相关的房间形状的这种确定的部分,诸如在两个或更多个房间形状的墙壁中的共同结构墙壁元素(例如,门道墙壁开口、非门道墙壁开口、窗等)和/或与采集位置相关的其他位置信息(例如,GPS坐标)。如先前所述并且本文中其他地方更详细地讨论,对采集位置的相对位置和相关的房间形状的这种确定可以进一步用作生成局部建筑物楼层平面图的部分(例如,在采集每个附加图像和/或每个附加房间具有采集的关联数据时递增地使用)。这样生成相对于彼此定位的多个房间形状的组合可以包括生成多个定位的房间形状的组合的分割掩码、生成表示该分割掩码的廓线的多边形结构,以及将该多边形结构分成修改后的房间形状,可选地其中关于所确定的结构墙壁元素的信息和/或所确定的房间形状不确定性信息与修改后的房间形状相关联。另外,在至少一些实施方式中,对图像的分析可以进一步确定可以用于确定指引采集指令的附加因素(以便校正图像中的一个或多个问题),诸如图像的视觉数据中是否存在和/或存在多少穿过至少一个门道的视线;图像的采集位置与至少一个墙壁之间的距离;采集图像所涉及的用户的至少一部分或者图像的视觉数据中的挡住一个或多个墙壁的可见性的其他阻碍或障碍物(诸如家具、墙壁等)的可见性;缺乏对房间的覆盖,诸如所有的墙壁;等)。下文包括与这样确定要对于建筑物采集的附加数据和生成对应的指引采集指令相关的附加细节,包括关于图2E至图2L的非排他性示例的附加细节。
一旦执行这样确定要对于建筑物采集的附加数据和最终生成对应的指引采集指令(例如,在采集了每个图像之后),可以以各种方式使用这种指引采集指令以致使或以其他方式指示或影响对用于生成建筑物的进一步测绘信息的附加数据的采集。例如,在一些实施方式和情形中,可以将指引采集指令提供到具有自行移动能力的移动图像采集装置(例如,基于空中或地面的无人机)以自动地指示该装置像指示的那样移动和/或以其他方式采取指定的动作来采集一个或多个附加图像或其他数据。在其他实施方式和情形中,可以改为将指引采集指令中的一些或全部提供给图像采集所涉及的一个或多个用户(例如,操作一个或多个移动图像采集装置的一个或多个用户),诸如经由在GUI(例如,在移动图像采集装置和/或相关的装置上显示的GUI)中显示或其他呈现,可选地结合具有一个或多个房间形状的局部建筑物楼层平面图的显示(例如,通过将关于指引采集指令的信息叠加在所显示的局部建筑物楼层平面图上,以便在楼层平面图上示出附加采集位置的位置和/或移动方向和/或参考物体,诸如要打开或移动或穿过的门或障碍物)和/或所采集的图像中的一个或多个的显示(例如,通过将关于指引采集指令的相同或相似类型的信息叠加在一个或多个所显示的图像上)。在一些实施方式和情形中,这种指引采集指令还可以识别要通过改变或其他指示的动作来解决的问题(无论是自动地还是基于一个或多个相关联用户的动作),诸如用于自动地改变图像采集装置设置和/或其他参数(诸如图像采集装置搁置或安装在其上的设备的照明、旋转速度和/或高度等)的自动化指令;对采集图像所涉及的一个或多个用户(诸如摄影师用户)的关于当前图像的一个或多个问题的指令或其他反馈,以致使改进一个或多个后续图像的采集和/或改进从相同采集位置重新采集新的图像以替换当前图像;等。在至少一些这种实施方式中,可以进一步将附加信息连同指引采集指令一起提供给用户,以便在GUI中显示以下各者中的一个或多个:至少部分地基于当前图像的视觉数据对包括当前图像的采集位置的房间的初始房间形状确定(例如,在图像采集装置上确定的初始房间形状);该房间的最终房间形状确定(例如,在向其传输当前图像和任何相关的采集元数据的一个或多个远程计算装置上确定);根据对于建筑物采集的当前图像和任何先前图像生成的楼层平面图和/或其他测绘信息的局部版本;等。另外,一旦完成对建筑物的图像的采集(例如,在建筑物中的用于采集图像的一个或多个图像采集会话结束时),根据一组采集的图像对于建筑物生成的楼层平面图和/或其他测绘信息的最终版本可以类似地在GUI中显示和/或以其他方式提供给图像采集所涉及的用户和/或提供给其他用户。
这种提供的指引采集指令然后可以致使改进建筑物的楼层平面图和/或其他测绘信息的进一步生成过程,以便因当前图像的问题而引起重新采集当前图像(例如,以没有人类交互的自动化方式、基于提示人类用户进行重新采集等),这造成新改进的替换图像没有那些问题中的一些或全部;引起改进建筑物的一个或多个后续图像的采集(例如,以没有人类交互的自动化方式,以便自动地改变图像采集设备的设置和/或以其他方式修改后续图像的周围环境,诸如相对于照明和/或通过确定在其处要采集后续图像的附加采集位置;基于提示人类用户以减少或消除问题的方式执行后续图像的采集;等);引起建筑物的测绘图像的生成过程的改变(例如,使用更多和/或不同的源、改变处理技术的类型等)等。下文包括与这样确定和提供指引采集指令相关的附加细节,包括关于图2E至图2L的非排他性示例的附加细节。
另外,在至少一些实施方式中,ABIA系统可以执行其他类型的自动化操作以至少部分地基于对于建筑物采集的图像的视觉数据来改进建筑物的测绘信息的生成过程,包括确定并提供附加类型的指引采集指令(例如,提供给参与建筑物的图像中的一些或全部的采集过程的一个或多个用户,诸如通过在一个或多个显示的GUI中将附加的指引采集指令显示给用户)。作为非排他性示例,ABIA系统可以在采集用于建筑物的测绘信息的生成过程中的任何图像之前确定并提供初始采集指令,诸如基于不特定于建筑物的因素和/或基于与建筑物相关的其他信息(例如,基于关于建筑物的公开可用的信息,诸如大小、风格/类型、关于房间的信息等;基于参与图像采集过程的一个或多个用户,诸如基于用户的历史结果和/或用户的经验或其他相关属性和/或基于用户的偏好或指令;基于在生成过程中未使用的建筑物的外部和/或其相关的性质的图像(诸如来自卫星)或其他俯视图像(诸如来自无人机和/或飞机,或来自街道或其他外部位置);等)。作为另一个非排他性示例,无论是补充还是代替提供指引采集指令,ABIA系统可以在图像采集过程期间(例如,在其中采集用于生成过程中的图像的一个或多个图像采集会话期间)确定并提供一种或多种类型的状态信息,以便表示图像采集过程的已完成和/或剩余的量(例如,已完成和/或剩余的预测或以其他方式估计的百分比或其他量,诸如所使用和/或直到完成的时间量、完成和/或剩余的百分比、平方英尺量和/或完成和/或剩余的房间量和房间类型等)。
在各种实施方式中,所描述的技术提供各种益处,包括允许经由一个或多个计算系统的自动化操作从在建筑物或其他结构中采集的图像自生成多房间建筑物和其他结构的楼层平面图,包括在一些实施方式中,不具有或不使用来自深度传感器的关于从图像的采集位置到周围建筑物或其他结构中的墙壁或其他物体的距离的所采集的深度信息。此外,这种自动化技术允许比先前存在的技术更快地并且在至少一些实施方式中以更高的准确度至少部分地使用从实际建筑物环境(而不是从关于理论上应如何建造建筑物的平面图)采集的信息来生成这种楼层平面图,包括在一些情况下基于使用呈等量矩形格式的显示整个房间并允许对房间中的感兴趣元素的高效用户识别的360°全景图像,以及使得能够捕获在最初建造建筑物之后发生的对结构元素的改变,并且包括在一些实施方式中执行自动化操作以与一个或多个用户交互以便获得用于进一步自动化分析的一种或多种类型的用户供应的输入。这种所描述的技术进一步提供了允许改进由移动装置(例如,半自主或全自主车辆)对建筑物的自动导航方面的益处,包括显著减少用于尝试以其他方式获悉建筑物布局的其计算能力和时间。另外,在一些实施方式中,所描述的技术可以用于提供改进的GUI,其中最终用户可以更准确地且更快速地获得关于建筑物内部的信息(例如,供在该内部导航时使用,诸如经由虚拟巡视),包括响应于搜索请求,作为向最终用户提供个性化信息的部分,作为向最终用户提供价值估计和/或其他关于建筑物的信息的部分等。所描述的技术还提供了各种其他益处,其中一些在本文的其他地方进一步描述。
出于说明性目的,下面描述一些实施方式,其中对于特定类型的结构以特定方式并通过使用特定类型的装置来采集、使用和/或呈现特定类型的信息。然而,将理解,所描述的技术可以在其他实施方式中以其他方式使用,并且因此本发明不限于所提供的示例性细节。作为一个非排他性示例,尽管可以对于房屋生成不包括特定房间或整个房屋的详细测量的楼层平面图,但将了解,在其他实施方式中,可以类似地生成其他类型的楼层平面图或其他测绘信息,包括生成3D模型楼层平面图并且对于与房屋分开的建筑物(或者其他结构或布局)这样做。作为另一个非排他性示例,尽管可以在某些示例中讨论某些类型的图像(例如,360°全景图像),但将了解,无论是补充还是代替这种图像类型,在一些实施方式中,可以类似地使用其他类型的图像(包括视频帧)和视觉数据。作为又一个非排他性示例,尽管房屋或其他建筑物的楼层平面图可以用于显示以帮助查看者导航建筑物,但在其他实施方式中,可以以其他方式使用所生成的测绘信息。另外,术语“建筑物”在本文中是指任何部分地或完全地封闭的结构,通常但不一定包括在视觉上或以其他方式划分结构的内部空间的一个或多个房间,此类建筑物的非限制性示例包括房屋、公寓大楼或其中的个人公寓、共管公寓、附属住所单元(“ADU”)、办公楼、商业建筑物或其他批发和零售结构(例如,购物中心、百货公司、仓库等)等。如本文所使用,参考建筑物内部、采集位置或其他位置(除非上下文另外明确指出)的术语“采集”或“捕获”可以是指对与建筑物内部的空间和/或视觉特性或其子集有关的媒体、传感器数据和/或其他信息的任何记录、存储或其他录入,诸如通过记录装置和/或通过从记录装置接收信息的另一装置。另外,出于示例性目的,在附图和文本中提供了各种细节,但这些细节并不旨在限制本发明的范围。例如,附图中元件的尺寸和相对位置未必按比例绘制,一些细节被省略和/或更突出地提供(例如,经由尺寸和定位)以增强易读性和/或清晰度。此外,在附图中可以使用相同的附图标记来标识类似的元件或动作。如上所述,所描述的技术可以包括实施自动化生成过程的MIGM系统的自动化操作,以至少部分地基于在建筑物中和可选地在建筑物周围的多个采集位置处采集的图像的视觉数据来产生建筑物的楼层平面图和/或其他测绘信息。在至少一些实施方式和情形中,可以确定房间形状和/或房间的布局信息,其包括房间的形状(例如,房间的矩形形状或其他形状的墙壁的2D俯视图)和/或房间中的房间间墙壁开口的位置,可选地连同附加信息,诸如房间间墙壁开口的类型(例如,门或楼梯或其他房间间墙壁开口)、房间间墙壁开口的大小(例如,宽度和/或高度)、房间的类型(例如,厨房、浴室、卧室等)、房间的尺寸(例如,墙壁中的每一个的宽度和/或高度)等。在各种实施方式中,可以以各种方式从在房间中捕获的一个或多个图像确定房间的一些或全部这种房间布局信息,诸如通过应用机器学习技术来自动地评估图像(例如,将图像作为输入供应到已经使用其他图像和相关的房间布局信息训练的一个或多个神经网络以识别一个或多个这种类型的房间布局信息,并且从经训练的神经网络获得对应的房间布局信息作为输出)和/或通过使用由评估图像的一个或多个用户(例如,MIGM系统操作者用户)供应的信息来确定房间布局信息中的一些或全部。在一些实施方式中,其中在房间中的采集位置处捕获的图像的采集元数据包括来自一个或多个深度传感器的在采集位置到房间的周围墙壁或其他物体的深度数据,可以使用这种深度信息来确定一些或全部的这种房间布局信息,诸如通过使用这种深度信息以及其他所描述的图像评估技术。因此,在各种实施方式和情形中,在房间中采集的一个或多个图像的这种评估技术可以提供各种类型的房间信息,包括识别房间的结构和其他视觉特征,以便识别以下各者中的一个或多个:相邻墙壁之间的边界;墙壁和地板之间的边界;墙壁和天花板之间的边界;窗和/或天窗;进入和/或离开房间的通道,诸如门和楼梯和其他墙壁开口;其他结构(例如,被表示为立方体形状),诸如台面、浴缸、水槽、壁炉和家具;等。
另外,实施自动化生成过程以产生建筑物的楼层平面图和/或其他测绘信息的MIGM系统的自动化操作还可以包括与帮助生成测绘信息的一个或多个MIGM系统操作者用户交互(例如,通过显示示出与图像相关的信息和/或示出正在生成的相关联测绘信息的一个或多个GUI;通过接收由用户经由GUI提交的输入并将其用作测绘信息生成的部分,以便校正或修改初始自动确定的信息;等)。作为一个非排他性示例,在至少一些实施方式中,一个或多个MIGM系统操作者用户可以操纵在GUI中显示的关于两个或更多个房间的信息以便识别和/或确认房间之间的经由进入和/或离开房间的通道的互连,诸如房间的墙壁中的门和其他开口(例如,房间间墙壁开口,诸如房间之间的门、楼梯和其他非门墙壁开口;不在两个房间之间的其他墙壁开口,诸如外窗和户外门;等)。另外,在至少这种实施方式中,经由GUI的这种用户操纵可以进一步修改并以其他方式控制房间如何互连,以便指定房间之间的墙壁的宽度、控制房间形状相对于彼此的对准等,和/或可以以其他方式指定关于房间或关于正在生成的楼层平面图的信息。在一些实施方式中,在GUI中显示的这种信息可以包括在GUI的一个或多个不同区段或“窗格”中显示的房间中的一个或多个的全景图像,其中附加的显示信息叠加在这些显示的全景图像中的一些或全部上以示出关于一个或多个其他房间的信息(例如,第二房间的部分或全部边界的轮廓覆盖在第一房间的全景图像上,如果通过两个房间的指定连接的房间间开口将第二房间连接到第一房间,则该第二房间将位于该图像内的位置上)。另外,在一些实施方式中,这种显示的信息可以包括GUI的所显示的楼层平面图窗格,该楼层平面图窗格在相对于彼此的位置示出两个或更多个房间的房间形状,以反映经由房间的指定房间间开口连接的房间(例如,房间的墙壁和墙壁开口的2D俯视图廓线,其中连接的房间间开口彼此相邻地定位或在彼此的顶部上,并且可选地具有在定义的平行阈值量内被调整为平行的两个房间的墙壁)。在具有各自示出不同信息的多个窗格的这种实施方式中(例如,第一窗格示出具有第一房间间开口的第一房间的第一全景图像;第二窗格示出具有第二房间间开口以经由第一房间间开口和第二房间间开口可能地连接到第一房间的第二房间的第二全景图像,以便示出第一房间间开口和第二房间间开口是在第一房间和第二房间之间的相同墙壁开口的两侧;第三窗格示出具有至少第一房间和第二房间以及可能地其他连接的房间的房间形状的楼层平面图视图;并且可选地一个或多个附加窗格示出可能连接到第一房间和第二房间中的一个或多个的附加房间的附加全景图像),在窗格之间显示的信息可以在GUI中协调,以便在用户操纵窗格中的一个中的信息时同时地更新其他窗格中的对应信息(例如,以在用户调整在窗格中的一个中的房间中的至少一个的位置时改变第一房间和第二房间的相对位置)。下文包括与这种GUI和用于生成楼层平面图的相关的用户交互技术相关的附加细节。
下面包括有关作为执行对关于建筑物的信息和/或从ABIA系统或ABIA系统与其交互或控制的其他系统的系统操作者用户接收信息的附加自动化分析的部分而实施ABIA系统的计算装置的进一步自动化操作以及与系统操作者用户交互的附加细节。在一些实施方式中,可以进一步执行一种或多种类型的附加处理,以便确定所生成的楼层平面图的附加测绘相关信息或以其他方式将附加信息与所生成的楼层平面图进行关联。作为一个示例,可以接收关于建筑物的一种或多种类型的附加信息并将其与楼层平面图(例如,与楼层平面图中的特定位置)进行关联,诸如特定房间或其他位置的附加图像、文本和/或音频注释或其他描述;其他音频信息,诸如周围噪声的记录;整体尺寸信息等。作为另一示例,在至少一些实施方式中,执行对图像的附加处理以确定一种或多种类型的估计距离信息,以便测量已知大小的物体在图像中的大小并且使用该信息来估计房间宽度、长度和/或高度尺寸。一个或多个房间的这种估计大小信息可以与楼层平面图相关联、进行存储并且可选地显示,并且如果在足够的准确度内生成所有房间的大小信息,则可以进一步生成建筑物的更详细楼层平面图,诸如具有足够的细节以允许生成蓝图或其他建筑平面图。另外,如果估计的大小信息包括从地板到天花板的高度信息,则可以创建2D(二维)楼层平面图中的一些或全部的3D(三维)模型(例如,其中表示全高度信息)和/或2.5D(二维半维度)模型(例如,其中示出不一定按比例绘制的高度的部分表示)、将其与楼层平面图进行关联、进行存储并可选地显示。在一些实施方式中,可以生成或检索并且使用其他类型的附加信息,以便确定建筑物的地理对准(例如,相对于真北或磁北)和/或建筑物的地理位置(例如,相对于纬度和经度,或GPS坐标;对于街道地址;等),并且可选地包括关于所生成的楼层平面图的对应信息和/或其他生成的测绘相关信息,和/或可选地进一步将楼层平面图或其他生成的测绘相关信息与其他相关的外部信息对准(例如,建筑物的卫星图像或其他外部图像,包括街道图像以提供建筑物的“街道视图”和/或在院子或建筑物周围的其他区域中的一个或多个位置采集的全景图像;建筑物所在的区域的信息,诸如附近街道地图和/或感兴趣的点;等)。还可以例如从一个或多个外部源(例如,在线数据库、由一个或多个最终用户提供的“众包”信息等)检索关于建筑物的其他信息,并且将其与楼层平面图和/或楼层平面图内的特定位置进行关联和链接,这种附加信息还可以包括例如建筑物的外部尺寸和/或形状、所采集的与建筑物内的特定位置对应的附加图像和/或注释信息(可选地对于与所采集的全景或其他图像的采集位置不同的位置)等。如本文的其他地方所讨论的,这种所生成的楼层平面图和可选地附加相关联信息可以进一步以各种方式使用。
图1包括在一些实施方式中可以参与所描述的技术的各种计算装置和系统的示例框图,诸如在此示例实施方式中,关于示例建筑物198和在移动图像采集和分析计算装置185上执行的示例自动化建筑物信息采集(ABIA)系统150。特别地,一个或多个360°全景图像165(例如,呈等量矩形格式)由ABIA系统的内部捕获和分析(“ICA”)系统生成,诸如关于一个或多个建筑物或其他结构(例如,关于示例房屋198中的多个采集位置210),并且ABIA系统的MIGM(测绘信息生成管理器)系统140进一步基于全景图像165和可选地附加相关联信息的使用,以及通过可选地使用由系统操作者经由计算装置105通过中间计算机网络170供应的支持信息,生成并提供至少局部建筑物楼层平面图145和/或其他测绘相关信息(未示出)。在本文的其他地方包括与ICA和MIGM系统的自动化操作相关的附加细节,包括分别关于图2A至图2N以及关于图5和图6A至图6B的附加细节。
在所说明的实施方式中,ICA系统160和MIGM系统140作为ABIA系统150的部分操作,作为执行建筑物楼层平面图(例如,由MIGM系统生成的局部建筑物楼层平面图145)的自动化增量生成以及对于附加图像和/或其他类型的数据的进一步采集相关的指引采集指令155和相关信息(例如,附加采集位置)的确定的部分,该ABIA系统分析并评估所采集的图像(例如,由ICA系统采集的图像165),以便减少或消除与使用先前采集的图像生成的现有局部建筑物楼层平面图相关的不确定性,和/或以其他方式收集用于完成建筑物楼层平面图的缺失信息,可选地使用由系统操作者用户经由计算装置105通过中间计算机网络170供应的支持信息。在本文的其他地方包括与ABIA系统的自动化操作相关的附加细节,包括关于图2E至图2N和图4的附加细节。另外,至少一些这种指引采集指令可以例如显示给移动计算装置185的一个或多个用户(未示出),移动计算装置185采集图像165中的至少一些(例如,包括一个或多个成像系统135的移动图像采集和分析计算装置185以采集图像165)和/或从一个或多个可选的相关联相机装置184接收图像165中的至少一些。在其他实施方式中,ABIA系统中的一些或全部可以改为在通过一个或多个计算机网络与至少移动装置185交互的一个或多个单独的计算系统180上执行。
尽管在此示例实施方式中,ICA系统160和MIGM系统140被说明为在与ABIA系统相同的移动图像采集和分析计算装置185上执行(例如,其中所有系统都由单个实体操作或以其他方式彼此协调地执行,诸如所有系统的一些或全部功能集成在一起),但在其他实施方式中,ICA系统160和/或MIGM系统140和/或ABIA系统150可以在与装置185分开的一个或多个其他系统上(例如,在一个或多个服务器计算系统180上)操作,无论是代替还是补充在装置185上执行的那些系统的副本(例如,具有在装置185上执行的MIGM系统140的副本以在由ICA系统160和/或由MIGM系统的那个副本采集建筑物图像时递增地生成局部建筑物楼层平面图,而MIGM系统的另一个副本在一个或多个服务器计算系统上执行以在采集所有图像之后生成最终的完整建筑物楼层平面图),并且在另外的其他实施方式中,ABIA和/或MIGM系统可以改为在没有ICA系统的情况下操作并且改为从一个或多个外部源获得全景图像(或其他图像)。
图1中还说明了移动计算装置185的各种部件,包括使用存储和/或加载在装置185的一个或多个存储器/存储装置152部件上的那些系统的可执行指令来执行系统140和/或150和/或160的一个或多个硬件处理器132(例如,CPU、GPU等),以及可选地用于采集一个或多个全景图像165和/或其他图像(未示出,诸如直线立体图像)的视觉数据的一种或多种类型的一个或多个成像系统135。在一些实施方式中,一些或全部的这种图像可以由一个或多个分开的相关联相机装置184供应(例如,经由有线/电缆连接、经由蓝牙或其他装置间无线通信等),无论是补充还是代替由移动装置185捕获的图像。移动装置185的所说明的实施方式还包括:一个或多个传感器模块148,在此示例中,一个或多个传感器模块148包括陀螺仪148a、加速度计148b和指南针148c(例如,作为移动装置上的一个或多个IMU单元(未单独地示出)的部分);一个或多个控制系统147,一个或多个控制系统147管理装置185的I/O(输入/输出)和/或通信和/或联网(例如,以从用户接收指令和将信息呈现给用户);显示系统142(例如,具有触敏屏);以及其他装置I/O和通信部件143(例如,网络接口或其他连接、键盘、鼠标或其他指示装置、麦克风、扬声器、GPS接收器等)、可选地一种或多种类型的一个或多个深度感测传感器或其他距离测量部件136、可选地GPS(或全球定位系统)传感器或其他位置确定传感器(在此示例中未示出)等。其他计算装置/系统105、175和180和/或相机装置184可以以与移动装置185类似的方式包括各种硬件部件和存储的信息,为了简洁起见,在此示例中未示出,并且在下文关于图3更详细地讨论。
在图1的示例中,ICA系统可以执行在多个关联的采集位置处(例如,在建筑物或其他结构内的多个房间或其他位置中以及可选地在建筑物或其他结构的外部的一些或全部的周围)生成多个360°全景图像中所涉及的自动化操作,诸如使用经由移动装置185和/或相关的相机装置184采集的视觉数据,并且用于生成并提供建筑物或其他结构的内部的表示。例如,在至少一些这种实施方式中,这种技术可以包括使用一个或多个移动装置(例如,具有一个或多个鱼眼镜头并安装在可旋转三脚架上或以其他方式具有自动化旋转机构的相机、具有足以在不旋转的情况下水平地捕获360°的鱼眼镜头的相机、由用户握持和移动的智能电话;由用户握持或安装在用户身上或用户衣服上的相机等)来从房屋(或其他建筑物)的多个房间内的一系列多个采集位置捕获数据,并且可选地进一步捕获在采集装置的移动中所涉及的数据(例如,在采集位置处的移动,诸如旋转;在一些或全部的采集位置之间的移动,诸如用于将多个采集位置链接在一起;等),在至少一些情况下,不具有被测量的采集位置之间的距离或不具有到采集位置周围的环境中的物体的其他测量的深度信息(例如,不使用任何深度感测传感器)。在捕获了采集位置的信息之后,技术可以包括从该采集位置以围绕竖直轴的360度水平信息产生360°全景图像(例如,呈等量矩形格式的示出周围房间的360°全景图像),并且然后提供全景图像以供MIGM和/或ABIA系统后续使用。
一个或多个建筑物信息访问客户端计算装置175的一个或多个最终用户(未示出)可以进一步通过计算机网络170与ABIA系统150(和可选地MIGM系统140和/或ICA系统160)交互,以便获得、显示、并且与生成的楼层平面图(和/或其他生成的测绘信息)和/或相关的图像交互,如在本文的其他地方(包括关于图7)更详细地讨论。另外,尽管图1中未说明,楼层平面图(或其部分)可以链接到一种或多种附加类型的信息或以其他方式与其关联,诸如一个或多个关联和链接的图像或其他关联和链接的信息,包括建筑物的二维(“2D”)楼层平面图链接到建筑物的单独2.5D模型楼层平面图渲染和/或建筑物的3D模型楼层平面图渲染等或以其他方式与其相关联,并且包括多层楼或其他多层建筑物的楼层平面图具有相互链接(例如,经由连接的楼梯通道)或作为共同2.5D和/或3D模型的部分的不同楼或层的多个相关联子楼层平面图。因此,最终用户与建筑物的所显示或以其他方式生成的2D楼层平面图的交互的非排他性示例可以包括以下各者中的一个或多个:在楼层平面图视图与楼层平面图内或附近的采集位置处的特定图像的视图之间改变;在2D楼层平面图视图与可选地包括纹理映射到所显示的模型的墙壁的图像的2.5D或3D模型之间改变;改变显示全景图像的对应子集视图(或入口)的水平和/或竖直查看方向,以便确定当前用户查看方向所指向的3D坐标系中的全景图像的部分,并且渲染说明全景图像的那个部分而在原始全景图像中不存在弯曲或其他失真的对应平面图像;等。另外,尽管在图1中未说明,但在一些实施方式中,客户端计算装置175(或其他装置,未示出)可以接收所生成的楼层平面图和/或其他生成的测绘相关信息并且以附加方式使用,以便控制或帮助那些装置(例如,自主车辆或其他装置)的自动化导航活动,无论是代替还是补充所生成的信息的显示。
在图1的所描绘的计算环境中,网络170可以是可能由各种不同的方操作的一个或多个公共可访问的链接网络,诸如互联网。在其他实施方式中,网络170可以具有其他形式,以便反而是非特权用户完全或部分无法访问的专用网络(诸如公司或大学网络)。在另外的其他实施方式中,网络170可以包括专用网络和公共网络两者,其中专用网络中的一个或多个可访问公共网络中的一个或多个和/或从公共网络中的一个或多个访问专用网络中的一个或多个。此外,在各种情形中,网络170可以包括各种类型的有线网络和/或无线网络和连接。
图1进一步描绘了示例性建筑环境,其中采集360°全景图像和/或其他图像,诸如由ICA系统采集并且由MIGM系统(例如,在ABIA系统的控制下)用来生成并提供一个或多个对应的建筑物楼层平面图(例如,多个增量局部建筑物楼层平面图)并且ABIA系统进一步执行对用于进一步采集附加图像和/或其他类型的数据的指引采集指令和相关信息(例如,附加采集位置)的自动化确定。特别地,图1说明了多层房屋(或其他建筑物)198的一层,其中至少部分地经由多个全景图像来捕获内部,诸如由具有图像采集能力的移动图像采集装置185和/或一个或多个相关的相机装置184在穿过建筑物内部移动到一系列多个采集位置210时捕获(例如,以采集位置210A开始、沿着行进路径115移动到采集位置210B等,并且以在建筑物外部的采集位置210-O或210P结束)。ICA系统的实施方式可以自动地执行或帮助捕获表示建筑物内部的数据(以及进一步分析所捕获的数据以生成360°全景图像来提供图像内部的视觉表示),MIGM系统的实施方式可以分析所采集的图像的视觉数据以生成关于房屋198的多个建筑物楼层平面图(例如,多个增量建筑物楼层平面图),并且ABIA系统的实施方式可以确定并提供关于所采集的图像中的一些或多个和/或图像采集过程的指引采集指令(例如,经由ICA系统、直接地经由移动装置185和/或184等)。尽管这种移动图像采集装置可以包括各种硬件部件,诸如相机、一个或多个传感器(例如,陀螺仪、加速度计、指南针等,诸如移动装置的一个或多个IMU或惯性测量单元的部分;测高仪;光检测器;等)、GPS接收器、一个或多个硬件处理器、存储器、显示器、传声器等,但在至少一些实施方式中,移动装置可能无法访问或使用设备来测量建筑物中的物体相对于移动装置的位置的深度,使得在此类实施方式中,可以部分地或完全地基于不同图像中的特征但不使用来自此类深度传感器的任何数据来确定不同全景图像与其采集位置之间的关系,而在其他实施方式中,可以使用这种深度数据。另外,尽管在图1中提供了方向指示符109以供读者参考,但在至少一些实施方式中,移动装置和/或ICA系统可以不使用这种绝对方向信息和/或绝对位置,以便反而在此类实施方式中确定采集位置210之间的相对方向和距离而不考虑实际地理位置或方向,而在其他实施方式中,可以获得并使用这种绝对方向信息和/或绝对位置。
在操作中,移动装置185和/或相机装置184到达建筑物内部的第一房间内的第一采集位置210A(在此示例中,在可经由户外门190-1进入的客厅),并且捕获或采集从该采集位置210A可见的建筑物内部的部分的视图(例如,第一房间中的一些或全部,以及可选地一个或多个其他相邻或附近房间的小部分,诸如穿过来自第一房间的门道墙壁开口、非门道墙壁开口、走廊、楼梯或其他连接通道)。视图捕获可以以如本文所讨论的各种方式执行,并且可以包括在从采集位置捕获的图像中可见的很多物体或其他特征(例如,结构细节)。在图1的示例中,建筑物内的此类物体或其他特征包括门道190(包括190-1至190-6,诸如带有旋转门和/或滑动门)、窗196(包括196-1至196-8)、拐角或边缘195(包括在建筑物198的西北角的拐角195-1、在第一房间的东北角的拐角195-2、在第一房间的西南角的拐角195-3、在第一房间的东南角的拐角195-4、在第一房间与走廊之间的房间间通道的北边缘处的拐角195-5等)、家具191至193(例如,沙发191;椅子192;桌子193;等)、悬挂在墙壁上的图片或绘画或电视或其他悬挂的物体194(诸如194-1和194-2)、照明灯具(图1中未示出)、各种内置家电或灯具或其他结构元素(图1中未示出)等。用户还可以可选地提供与采集位置和/或周围房间相关的文本或听觉标识符,诸如用于采集位置210A或210B中的一个或用于包括采集位置210A和/或210B的房间的“客厅”,而在其他实施方式中,ICA和/或MIGM系统可以自动地生成此类标识符(例如,通过自动地分析建筑物的图像和/或视频和/或其他记录信息来执行对应的自动化确定,诸如通过使用机器学习来执行;至少部分地基于来自ICA和/或MIGM系统操作者用户的输入;等),或者可以不使用标识符。
在已经捕获第一采集位置210A之后,移动装置185和/或相机装置184可以移动或被移动到下一采集位置(诸如采集位置210B),从而可选地在采集位置之间移动期间记录图像和/或视频和/或来自硬件部件(例如,来自一个或多个IMU、来自相机等)的其他数据。在下一采集位置,移动装置185和/或相机装置184可以类似地从该采集位置捕获360°全景图像和/或其他类型的图像。可以对建筑物的一些或所有房间并且在一些情况下在建筑物外部重复这个过程,如在此示例中对于附加的采集位置210C至210P所说明,其中在此示例中,在单个图像采集会话中捕获来自采集位置210A至210-O的图像(例如,以基本上连续的方式,诸如在总共5分钟或15分钟内),并且其中可选地在不同的时间捕获来自采集位置210P的图像(例如,从与建筑物或建筑物的前院相邻的街道捕获)。在此示例中,多个采集位置210K至210P在建筑物198的外部但与建筑物198相关联,包括在相同房产的一个或多个附加结构(例如,ADU或附属住所单元;车库;棚屋;等)上的采集位置210L和210M、在外平台或露台上的采集位置210K以及在多个院子位置的采集位置210N至210P。可以进一步分析对于每个采集位置采集的图像,包括在一些实施方式中无论是在图像采集时还是稍后渲染每个全景图像或以其他方式以等量矩形格式放置每个全景图像,并且由MIGM和/或ABIA系统以本文描述的方式进一步分析。
关于图1提供了各种细节,但是将了解,所提供的细节是出于说明性目的而包括的非排他性示例,并且可以在没有一些或全部此类细节的情况下以其他方式执行其他实施方式。
图2A至图2N说明了至少部分地基于由ABIA系统的实施方式或在其控制下确定和提供的局部楼层平面图和相关的指引采集指令,并且诸如对于房屋198和在图1中讨论的采集位置210处采集的图像,使用建筑物内部的图像和建筑物的房间的附加房间布局信息来生成并呈现建筑物的楼层平面图的示例。
特别地,图2A说明了示例图像250a,诸如在图1的房屋198的客厅中从采集位置210B向东北方向上拍摄的立体图像(或从该采集位置拍摄并以直线方式格式化的360度全景图像的面向东北的子集视图)。在此示例中进一步显示方向指示符109a以说明拍摄图像的向东北方向。在所说明的示例中,所显示的图像包括内置元素(例如,照明灯具130a)、家具(例如,椅子192)、窗196-1和挂在客厅北墙壁上的图片194-1。在此图像中没有进出客厅的房间间通道(例如,门或其他墙壁开口)是可见的,但是在图像250a中可见多个房间边界,包括客厅北墙壁的可见部分和客厅天花板及地板之间的水平边界、客厅东墙壁的可见部分和客厅天花板及地板之间的水平边界、以及北墙壁和东墙壁之间的竖直边界195-2。
图2B继续图2A的示例,并且说明了在图1的房屋198客厅中从采集位置210B向西北方向上捕获的附加立体图像250b(或从该采集位置拍摄并以直线方式格式化的360度全景图像的面向西北的子集视图)。进一步显示方向指示符109b以说明拍摄图像的向西北方向。在此示例图像中,窗196-1的一小部分连同窗196-2的部分以及附加的照明灯具130b继续可见。另外,在图像250b中水平和竖直房间边界以与图2A的方式类似的方式可见。
图2C继续图2A至图2B的示例,并且说明了在图1的房屋198客厅中诸如从采集位置210B或210A向西南方向上拍摄的第三立体图像250c(或从这些采集位置中的一个拍摄并以直线方式格式化的360度全景图像的面向西南的子集视图)。进一步显示方向指示符109c以说明拍摄图像的向西南方向。在此示例图像中,窗196-2的部分继续可见,正如沙发191以及视觉水平和竖直房间边界以与图2A和图2B的方式类似的方式也继续可见。此示例图像进一步说明了客厅的两个墙壁开口通道,在此示例中包括面向西的墙壁中的具有旋转门的门道190-1(其在图1中表示为通向房屋的外部的门道)和在面向南的墙壁中具有滑动门的门道190-6(例如,通向房屋的侧院)。将了解,可以从采集位置210B和/或其他采集位置拍摄并以类似方式显示多种其他立体图像。
图2D继续图2A至图2C的示例,并且说明了以等量矩形格式显示整个客厅的360°全景图像250d(例如,从采集位置210B拍摄)。由于全景图像在与图2A至图2C的立体图像相同的方式上不具有方向,因此图2D中没有显示方向指示符109,但是全景图像的姿势可以包括一个或多个关联的方向(例如,全景图像的起始和/或结束方向,诸如如果通过旋转来采集的话)。全景图像250d的视觉数据的部分与第一立体图像250a对应(大约在图像250d的中心部分示出),而图像250d的左部分和图像250d的最右部分包括与立体图像250b和250c的那些部分对应的视觉数据。此示例全景图像250d包括窗196-1、196-2和196-3、家具191至193、门道190-1至190-6以及通向走廊房间的非门道墙壁开口263a(其中开口示出了在相邻的走廊中可见的门190-3的部分)。图像250d进一步以与立体图像类似的方式说明了多种房间边界,但其中水平边界以离图像的水平中线越远越弯曲的方式显示。可见边界包括竖直墙壁间边界195-1至195-4、在走廊开口的左侧的竖直边界195-5、在走廊开口的右侧的竖直边界,以及在墙壁与地板之间和在墙壁与天花板之间的水平边界。
图2E继续图2A至图2D的示例,并且说明了可以由ABIA系统的实施方式提供的信息260e,以便提供给参与采集建筑物的图像的一个或多个用户(例如,图2A至图2D的图像250a至250d)。特别地,在图2E的示例中,信息260e说明了包括与由用户在建筑物中采集的第一图像250e对应(例如,与图2D的图像250d对应)的信息的示例GUI,包括图像的视觉数据(例如,图像的缩略图副本),以及包括根据图像250e的视觉数据生成的图像的采集位置的粗略初始2D房间形状估计239a1,粗略初始房间形状估计中的信息可以用作关于图像的一种类型的反馈,以便反映粗略初始房间形状估计的不确定或无法确定的部分(例如,在这个示例中的房间形状的顶侧和右侧,如由示出房间的这些部分的不同可能位置的多个线反映),或看起来明显不正确的部分。另外,出于参考目的,在图2E的左上部分中示出了图像250e的较大版本,其中在此示例中,图像250e是使用等量矩形格式的360°全景图像,并且其中示出了来自在ABIA系统的控制下对图像的视觉数据的自动化分析的附加信息,在此示例中,该附加信息包括自动地确定的墙壁到地板边界251。在此示例中,该边界使用表示关于边界的不确定性程度的两条绿色线叠加在图像上,使得示出不太确定边界的区域,其中两条绿色线之间有可见的差异以反映对应墙壁部分的不同可能位置(例如,在图像250e的左侧附近),其中两条或更多条绿色线之间的跨过竖直线的较大差异表示实际墙壁的位置沿着该竖直线的较大量的不确定性,而在更确定边界的其他区域中,两条绿色线部分地或全部地重叠(例如,看起来向单条线)。另外,来自图像250e的视觉数据的自动地确定的信息进一步指示窗211、门道墙壁开口212、非门道墙壁开口213和墙壁间边界214的自动地确定的位置,其中在使用从全黑(表示存在对应类型的结构墙壁元素的0%的可能度)到全白(表示存在对应类型的结构墙壁元素的100%的可能度)的黑白色调频谱的水平带中示出该信息,并且其中全黑和全白之间的灰度程度表示中间可能度。边界251和附加信息211至214可以例如由被训练来识别这种边界和/或结构墙壁元素的一个或多个机器学习模型来确定。将了解,信息211至214和215中的一些或全部可以或不可以显示给用户,诸如其中示例GUI 260e中的信息包括图像250e的缩略图版本和边界251但不包括结构墙壁元素211至214,并且在其他实施方式中,可以以其他方式确定和/或显示其他类型的房间信息。
图2F继续图2A至图2E的示例,并且说明了关于第一房间的初始房间形状的进一步信息260f,以及为了读者的益处而说明但最初可能未作为示例GUI的部分显示给用户的附加信息255f。在此示例中,信息260f的指示符210A表示捕获第一房间(例如,图1的房间198的客厅)的第一图像250e的第一采集位置,并且指示符210B表示在第一房间中的捕获第二图像(未示出)的第二采集位置。在此示例中,示出了根据第二图像的视觉数据生成的第二粗略初始房间形状估计239a2。如图所示,第二粗略初始房间形状估计239a2的顶部分和右部分具有比第一粗略初始房间形状估计239a1的那些部分更大的确定性(例如,因为采集位置210B更靠近房间的那些部分),而第二粗略初始房间形状估计239a2的底部分和左部分具有比第一粗略初始房间形状估计239a1的那些部分更小的确定性,使得在此示例中,第二粗略初始房间形状估计239a2只是局部房间形状,其中不包括粗略初始房间形状估计239a2的底部分和左部分(例如,因为太不确定,诸如具有超过对应的包括阈值的关联不确定性程度;因为不是第二图像的视觉数据的部分,诸如如果是不包括房间的那些部分的视觉数据的具有少于360°的水平视觉覆盖范围的图像的话;因为否则无法获得房间的那些部分的数据,诸如在来自采集位置210B的视图中被一个或多个中间物体遮挡;等)。
在此示例中,将来自两个粗略初始房间形状估计239a1和239a2的信息进行组合以生成第一房间的最终初始房间形状估计239a,其中减少或消除了来自两个粗略初始房间形状估计239a1和239a2中的任一个的墙壁不确定性信息中的一些或全部。作为一个非排他性示例,给定占据相同房间的两个或更多个图像(诸如在采集位置210A和210B处采集的图像)的相对位置及其相应的初始粗略房间形状,这些初始粗略房间形状可以如下合并成一个组合房间形状。假设每个图像和房间形状最初存在于其自身的独立坐标系中,其中每个图像在原点(0,0)处,并且将所有房间形状转换到相同坐标系中以便于将各个房间形状组合成组合房间形状。首先,使用图像的已知相对姿势将每个形状重新投影到相同坐标系中,例如,如果第一图像A(例如,全景图像)具有相对于第二图像B(例如,全景图像、立体图像等)的确定姿势,那么将图像A带到这个新坐标系的原点(0,0),并且指定图像B处于由其相对于图像A的姿势/位置标识的位置。对于第三图像C,如果这个第三图像具有相对于图像B的姿势/位置,那么通过将图像B相对于图像A的姿势/位置与图像C相对于图像B的姿势/位置进行组合来获得图像C在组合坐标系中的姿势/位置,使得指定图像C的姿势/位置处于由其相对于图像B的姿势标识的位置。一旦所有的图像和房间形状占据相同坐标系,则执行图像的合并。在此非排他性示例中,房间形状最初是在自顶向下底平面投影中转换为二元分割掩码(例如,表示为栅格阵列)的房间形状多边形或其他形状,并且可以使用二进制加法将这些分割掩码加到房间的单个完整分割掩码中。为了恢复布局多边形,可以将轮廓提取算法应用于分割掩码以产生密集轮廓,该密集轮廓可以可选地使用多边形简化算法进行简化以获得最终房间形状多边形。在图2I中关于类似地组合两个房间的房间形状说明了类似过程的进一步细节。
图2F中示出的附加信息255f表示局部建筑物楼层平面图,该局部建筑物楼层平面图包括用于客厅的进一步细化房间形状239b(例如,可以在MIGM系统的后续处理期间对于房间来确定,诸如关于图2G至图2I进一步讨论)以及指示诸如窗、门道和非门道墙壁开口的所确定的结构墙壁元素的位置的附加信息(例如,基于根据在采集位置210A处采集的第一图像的视觉数据确定的信息211至214和根据在采集位置210B处采集的第二图像的视觉数据确定的对应附加信息(未示出)的组合),以及采集位置210A和210B的视觉指示。可以类似地识别和指示其他类型的结构元素(诸如楼梯),但在此示例中未对于该房间形状示出。
图2G继续图2A至图2F的示例,并且说明了可以在示例GUI中显示的更新信息260g,在此示例中,该更新信息与对于建筑物采集的下一图像250g对应,下一图像250g在此示例中是在房屋198的第二房间中在采集位置210C处(例如,通向客厅的东边的走廊)捕获的第三图像。在此示例中,图像250g是360°全景图像,如在信息260g的上部分中示出,并且在采集位置210A至210C处采集的三个图像中的每一个的缩略图版本在信息260g的右下部分中示出为图像队列或列表的部分。在此示例中,更新的GUI包括更新的房间形状信息,该更新的房间形状信息包括图2F的用于第一房间的初始房间形状239a和用于走廊的初始估计房间形状238a。将了解,最初未表示用于走廊的房间形状的右(或东)端,诸如因为在走廊的西端处来自采集位置210C的视觉数据不足。另外,在此示例中,在相对于先前房间形状估计239a的位置处示出初始附加房间形状估计238a(例如,其中至少部分地在图像250g与图像250e和/或250f的视觉重叠上确定相对位置),其中定位的房间形状239a和238a的组合反映建筑物的粗略局部楼层平面图,但可以以其他方式说明这种房间形状估计信息和/或相对定位。图2I说明了用于作为生成前两个房间的细化房间形状以便包括在修改后的局部楼层平面图中的部分而组合房间形状239a和238a的过程的进一步细节。
图2H继续图2A至图2G的示例,并且说明了可以显示在示例GUI中的更新信息260h,在此示例中,该更新信息说明了可以由ABIA系统至少部分地基于图像250e至250g的视觉数据和最终初始房间形状239a和238a自动地确定的各种类型的指引采集指令272。特别地,指引采集指令272可以例如指示移动图像采集和分析计算装置(未示出)在位置273h处的当前位置不适合用于采集下一图像,诸如因为太靠近先前采集位置210C(其中对应的指引采集指令指示移动远离该先前采集位置,诸如相距至少指定的距离)和/或因为太靠近墙壁(其中对应的指引采集指令指示朝向房间中心移动或移动到房间中心)。在此示例中,当前位置273h的视觉指示叠加在包括初始房间形状239a和238a的局部建筑物楼层平面图上,并且其他类型的相关信息(例如,方向箭头)可以类似地添加到与要执行的移动类型相关的局部建筑物楼层平面图。作为替代示例,指引采集指令272可以包括确定在其处要采集下一图像和可选地其他数据的特定下一采集位置274h,其中对应的指引采集指令指示移动到该下一采集位置。在此示例中,下一采集位置274h的视觉指示叠加在局部建筑物楼层平面图上,并且可以类似地添加对应的方向箭头和/或其他相关信息。作为又一个示例,指引采集指令可以包括大概确定距离和/或位置,并且提供对应的信息,以便移动到当前房间的东端附近。作为另一个示例,指引采集指令可以包括其他类型的方向,以便打开所指示的门190-3(和/或打开所指示的窗、移动所指示的物体、在所指示的物体周围移动等)并且此后重新采集视觉数据(例如,在门打开的情况下从最后采集位置210C采集、在所指示的物体周围移动之后从另一个采集位置采集等)。
在各种实施方式中,可以以各种方式执行对这种指引采集指令的确定,包括减少当前可用信息的不确定性(例如,与当前走廊房间的东端的结构相关的不确定性)和/或获得其他类型的缺失数据(例如,在门道的另一侧上穿过房间的门道190-3的视觉数据、在走廊的北方或南方或东方的房间的视觉数据等),如在本文的其他地方更详细地讨论。将了解,在其他实施方式中,可以以其他方式确定并显示多种其他类型的指引采集指令。例如,尽管在此示例中将各种类型的指引采集指令说明为以文本形式示出和/或叠加在局部建筑物楼层平面图上,但在其他实施方式中,可以以其他方式显示指引采集指令,包括叠加在图像缩略图250e至250g中的一个或多个的顶部上,无论是补充还是代替叠加在局部建筑物楼层平面图上。另外,作为确定一个或多个下一采集位置的一个非排他性示例,可以使用自动化推荐系统来识别这种下一采集位置(例如,最有前景的接下来一个或多个位置),诸如通过使用将当前局部建筑物楼层平面图作为输入的一种或多种路由算法,可选地连同关于建筑物的其他可用信息(例如,俯视图像视图、建筑楼层平面图、可从公用和/或专用源获得的关于建筑物属性的信息等),并且返回用于以最少数量的图像/采集位置捕获建筑物和/或满足一个或多个其他定义的标准的最佳路线。
图2I继续图2A至图2H的示例,并且说明了与确定客厅和走廊的细化房间形状以及生成对应的细化局部楼层平面图255i相关的更新信息260i。在此示例中,初始房间形状239a和238a被示出在其相对位置,其中二元分割掩码(用黑色示出)应用于那些房间形状的组合。如在本文的其他地方更详细地讨论,可以生成多边形形状(在此示例中,由线239b和238b的组合表示)以与分割掩码的廓线或轮廓对应,并且随后将其分成分别用于客厅和走廊的各个细化房间形状239b和238b。在255i中示出的更新的局部楼层平面图反映那些细化房间形状239b和238b,以及添加了与各种结构墙壁元素对应的视觉指示。在此示例中,尚未采集附加视觉数据以解决与走廊的中间和东转弯部分相关的不确定性,如在信息262中使用与墙壁位置、附加门道190-4和190-5以及非门道墙壁开口263b的降低确定性程度对应的降低权重的虚线来示出。尽管在图2G的信息260g和图2H的信息260h中示出的局部建筑物楼层平面图使用粗略初始房间形状239a和238a,但将了解,在GUI中示出的局部建筑物楼层平面图信息反而可以包括细化房间形状239b和/或238b,以便一旦确定了那些细化房间形状就改为示出255i的局部楼层平面图(例如,一旦相对于对应的图像的采集和采集位置210A至210C以实时或近实时方式确定了所述细化房间形状,诸如在数毫秒、数秒、数分钟等内,并且在一些情况下通过用于采集图像以执行ABIA系统的对应实施方式的相同移动图像采集和分析装置的自动化操作来执行)。
通过将粗略局部楼层平面图(诸如在图2G的信息260g和图2H的信息260h中)和/或细化局部楼层平面图(诸如图2I的信息255i)显示给参与图像采集过程的用户,向用户提供了多种类型的反馈,以便使得用户能够理解当前建筑物的哪些部分迄今已被图像采集会话过程覆盖以及去哪里捕获附加图像和/或其他数据,其中自动地确定的指引采集指令提供进一步细节以指示或便于进一步图像采集。例如,甚至在没有图2G中示出的指引采集指令272的情况下,叠加在图2G中的局部建筑物楼层平面图上的其他信息也可以向用户指示当前位置273h太靠近被采集位置210C覆盖的区域和/或太靠近墙壁,和/或前进到在位置274h处示出的下一确定的采集位置,和/或在所指示的方向上前进(例如,如果示出了对应的移动方向指示符的话),和/或在走廊南方的房间的视觉数据因门道190-3中的门被关闭而缺失。另外,关于墙壁位置(例如,在走廊的东端处)和/或其他元素(例如,结构墙壁元素;诸如门道190-4和190-5;非门道墙壁开口263b;等)的确定的不确定性的所显示的信息可以向用户指示需要的附加视觉信息(例如,以采集那些位置附近的附加视觉数据),并且因此在这种情形下本身充当与在其处采集附加视觉数据的一个或多个下一采集位置相关的指引采集指令。
图2J继续图2A至图2I的示例,并且说明了可以在示例GUI中显示以提供附加类型的指引采集指令的其他信息255j。特别地,在图2J的示例中,示出了又一个局部楼层平面图,该局部楼层平面图不仅包括使用在采集位置210A至210C处采集的图像生成的互连房间形状239b和238b,而且包括已经使用在附加采集位置210I和210J处采集的附加图像生成的附加的互连房间形状237b和236b。在此示例中,房间形状236b的西南部分已经说明了与那些位置的墙壁位置相关的不确定性(例如,因为距采集位置210J的距离并且从采集位置210I通过非门道墙壁开口263c不可见)。另外,尽管在走廊238b的东端处的非门道墙壁开口和在房间形状236b的西南侧处的非门道墙壁开口是相同的墙壁开口,但尚未获得足够的视觉数据来确定墙壁开口是相同的并且相对于第二组/子集的互连房间形状236b和237b来定位第一组/子集的互连房间形状239b和238b。因此,已经确定了关于在其处要采集附加视觉数据的一个或多个附加采集位置274j的附加指引采集指令(在这种情况下,这将允许两组房间形状互连并相对于彼此定位),其中一个或多个附加采集位置274j的视觉指示叠加在信息255j中示出的局部建筑物楼层平面图上。尽管在此示例中未说明,但将了解,可以包括对应的文本指令,无论是补充还是代替一个或多个附加采集位置274j的视觉指示。另外,尽管可能因缺乏足够的采集位置(例如,用户从采集位置210C到采集位置210J直接接收)而发生这种多组分开的互连房间形状,但在其他实施方式中,这种分开的组也可能以其他方式发生,诸如在丢失或缺失其他类型的定位数据(例如,GPS数据、IMU数据等)的情况下。
图2K继续图2A至图2J的示例,并且说明了可以在示例GUI中显示的其他信息260k,在此示例中,该其他信息包括叠加在局部建筑物楼层平面图上的附加类型的信息以帮助参与图像采集过程的用户,以便指示已经在房间中(在此示例中,使用客厅的房间形状239a)在他们的自动地确定的位置处自动地识别的物体的类型。将了解,这种信息可以帮助用户确定物体在房间形状被包括在局部建筑物楼层平面图中的一个或多个房间内的位置,以及以类似于以上讨论的方式指示与自动化确定中的一些相关的不确定性信息以将用于引导到在其处要采集视觉数据的附加位置。在此示例中,已经对于房间中的各种类型的结构墙壁元素和物体添加了视觉指示,诸如指示门道(诸如190-1k和190-6k)、窗(诸如196-1k和196-2k和196-3k)以及家具(诸如椅子192k、桌子193k和沙发191k)的代表图标。将了解,在其他实施方式中,可以以其他方式显示类似类型的信息,以便用房间中的物体的实际描绘(例如,从在图像采集位置210A和210B中的一个或两者处采集的图像剪裁的实际物体的缩略图图像)替换代表图标中的一些或全部。作为一个非排他性示例,可以通过使用计算机视觉和/或机器学习算法以分析所采集的图像来检测共同物体(例如,家具),其中那些物体的图标或其他表示通过使用计算机视觉算法检测它们相对于在其中检测到物体的图像的对应采集位置的位置而放置在局部楼层平面图上的适当位置。
图2L继续图2A至图2K的示例,并且说明了可以在示例GUI中显示以提供附加类型的指引采集指令的附加信息260l。特别地,在图2L的示例中,说明了在进行更新以将两组互连房间形状相对于彼此定位(例如,使用在采集位置274j处采集的附加视觉数据)之后的图2J的局部建筑物楼层平面图,并且在此示例中,该局部建筑物楼层平面图进一步叠加在建筑物(例如,房屋198)的外部的俯视图像250l(例如,卫星图像)上,其中俯视图像和叠加的局部建筑物楼层平面图的组合被示出为250l’。将了解,尽管信息250l’可以在GUI中显示给用户,但为了读者的益处,可以不显示分开的信息250l,但在图2L中进行了说明。这种信息250l’的组合可以进一步帮助用户识别建筑物的在其处要采集附加视觉数据的部分,诸如对于在用房间形状238b示出的走道的北方和南方的房间,并且因此可以用作提供给用户的与在其处要采集附加图像的附加采集位置相关的进一步确定的指引采集指令。另外,这种视觉叠加可以相对于图像中的建筑物的信息来进一步说明关于房间形状位置的不确定性信息,以便反映不紧密地匹配建筑物的外部廓线的墙壁的位置可能具有较大不确定性,其中附加视觉数据可能是有用的。尽管图2L中未说明,但这种局部楼层平面图可以叠加在与建筑物相关的其他类型的信息上,无论是代替还是补充俯视图像,诸如建筑物的局部或完整的侧面图像(例如,以说明多个楼层(如果适用的话),可选地以及屋顶中的一些或全部)、建筑物的建筑楼层平面图、楼层平面图模板(例如,可以与建筑物对应的定义数量的可能楼层平面图模板中的一个或多个,诸如在公寓或共管公寓建筑物中使用的多个公寓和/或共管公寓楼层平面图、在住宅开发中使用的多个房屋楼层平面图等)等。当建筑物的多个楼层导致与不同楼层对应的不同组的互连房间形状时,ABIA系统可以进一步确定指引采集指令以致使不同的楼层房间形状组相对于彼此连接(例如,经由连接通道),诸如以关于图2J和本文其他地方讨论的类似方式。
图2M至图2N继续图2A至图2L的示例,并且进一步说明了可以从本文中讨论的分析类型生成的测绘信息。特别地,在已经确定了房屋的所有房间形状互连和其他布局信息之后(无论是由MIGM系统和/或ABIA系统自动地确定和/或还是通过使用由一个或多个系统操作者用户供应的信息来确定),最终结果都可以用来生成房屋的2D楼层平面图,可选地在已经执行最终优化并且已经添加了最终楼层平面图的视觉方面之后,这种最终优化可以包括例如以下一个或多个:确保一致的视觉方面(例如,线宽度、颜色、文本风格等)、将文本房间标签放置在最终楼层平面图上的优选位置处、添加缺失的空间(诸如未被包括在限定的房间形状布局上的小衣帽间或其他附加区域)(例如,没有从中拍摄任何图像的区域,导致在建筑物的外部内的空的空间在限定的房间形状布局中没有被识别)、将多个重叠和/或相邻的墙壁合并、校正任何几何异常等。在至少一些实施方式中,所描述的技术可以包括以自动化方式执行至少一些这种更新,并且可选地将对应的GUI工具提供给一个或多个用户以做出对生成的房屋的楼层平面图的最终手动调整(例如,类似于绘图或绘画程序的那些工具的GUI工具)。在图2M的示例中,说明了可以基于所描述的技术构建的示例最终2D楼层平面图230m,在此示例中,2D楼层平面图230m包括墙壁以及门道和窗的指示,并且诸如可以在GUI260m中呈现给系统操作者用户和/或最终用户,并且其中各种类型的信息添加到互连房间形状的组合。将了解,在一些实施方式中,可以类似地生成示出墙壁高度信息的3D或2.5D模型楼层平面图,无论是补充还是代替这种2D楼层平面图,诸如图2N的3D楼层平面图265n。在图2M的此示例中,已经向一些或全部房间添加了房间标签(例如,用于客厅的“客厅”),已经添加了一些或全部房间的房间尺寸,已经添加了一些或全部房间的灯具或家电或其他内置特征的视觉指示,已经添加了附加类型的关联和链接信息的位置的视觉指示(例如,最终用户可以选择来进一步显示的全景图像和/或立体图像、最终用户可以选择来进一步呈现的音频注释和/或声音记录等),可以示出门道和窗的视觉指示等。另外,在至少一些实施方式和情形中,一些或全部的这种类型的信息可以由一个或多个系统操作者用户提供(例如,以从那些用户接收文本房间标签)。另外,在此示例中,向GUI添加用户可选择的控件228以指示楼层平面图显示的当前楼层,并且允许用户选择不同的楼层来显示。在一些实施方式中,还可以直接从楼层平面图进行对楼层或其他层的改变(诸如经由选择连接通道,诸如在所说明的楼层平面图中通向2楼的楼梯),并且在一些实施方式中,将同时显示多个楼层(例如,所有楼层)的信息(无论是作为单独楼层的单独子楼层平面图,还是改为将所有房间和楼层的房间连接信息结合在同时一起示出的单个楼层平面图中)。将了解,在一些实施方式中可以添加各种其他类型的信息,在一些实施方式中可以不提供所说明类型的信息中的一些,并且在其他实施方式中可以以其他方式显示并选择链接和相关联信息的视觉指示及对其的用户选择。
图2N说明了可以从本文中公开和显示(例如,在类似于图2M的GUI中)的自动化分析技术生成的附加信息265n,在此示例中,附加信息265n是房屋的一层的2.5D或3D模型楼层平面图。这种模型265n可以是基于楼层平面图230m生成的附加测绘相关信息,其中示出了关于高度的附加信息以便说明诸如窗和门的特征在墙壁中的视觉位置,或者改为组合最终估计房间形状,所述房间形状是3D形状。尽管图2N中未说明,但在一些实施方式中,附加信息可以添加到显示的墙壁,诸如来自采集的图像(例如,在渲染的模型265n上渲染和说明来自房屋的实际绘画、墙纸或其他表面),和/或可以以其他方式使用以向墙壁和/或其他表面添加指定的颜色、纹理或其他视觉信息,和/或图2N中所示的其他类型的附加信息(例如,关于外部区域和/或附属结构的信息)可以使用此类渲染模型来显示。另外,对于具有多层或其他层的建筑物,可以类似地生成并显示所有层(story)或其他层(level)的互连楼层平面图的2.5D或3D模型。
已关于图2A至图2N提供了各种细节,但将了解,所提供的细节是出于说明性目的而包括的非排他性示例,并且可以在没有一些或全部这种细节的情况下以其他方式执行其他实施方式。
另外,在至少一些实施方式中,可以提供和/或使用多种附加自动化功能(以及在至少一些实施方式中,供一个或多个系统操作者用户使用的关联GUI功能)。作为示例,在一些实施方式中,可以提供将在单个房间中拍摄的多个全景图像组合到单个全景图像中的功能,诸如将全景图像中的一个的信息定位到另一全景图像的空间中。例如,两个全景图像可以显示给选择两个图像中的一个或多个共同点的用户(例如,两个图像中的具有无限点的共同平面),其中MIGM系统基于所指示的共同点来确定两个全景图像的视觉信息的对应位置。在创建了这种组合全景图像之后,它可以进一步以其他全景图像类似的方式使用,如在本文的其他地方更详细地讨论。另外,在一些实施方式中,对于每个房间将一个或多个附加补充全景图像与单个主要全景图像结合使用,以便在一个或多个房间间连接中的每一个的位置生成补充全景图像,以便帮助确定这些房间中的连接(例如,房间的房间形状的对准和其他布局),诸如使用补充全景图像中的信息以匹配到连接房间中的每一个的全景图像中的对应特征。此外,在一些实施方式中,可以(例如,由MIGM系统)提供附加功能以执行所生成的楼层平面图的全局优化,以便识别墙壁的最终对准和其他房间形状信息。另外,在一些实施方式中,可以(例如,由MIGM系统)提供附加功能以细化房间形状的转换,诸如提供使用线段的对准的优化和自顶向下视图或使用直接图像重叠(例如,经由渲染)。此外,在一些实施方式中,可以(例如,由MIGM系统)提供附加功能以执行或帮助选择第一房间形状来开始楼层平面图的生成,诸如基于对关于该房间的信息的自动化分析(例如,相对于建筑物的其他房间),和/或基于由系统操作者用户供应的信息(例如,在向用户显示或以其他方式提供关于一些或全部房间形状的信息之后)。作为一个示例,可以基于一个或多个因素来选择房间以用作起始房间,诸如具有最多房间间墙壁开口、最少房间间墙壁开口、与户外门对应的墙壁开口(例如,通向建筑物的入口)、全景图像捕获的次序(例如,使用与第一全景图像捕获或最后捕获的全景图像对应的房间)等。
此外,在一些实施方式中,可以(例如,由MIGM系统)提供附加功能以将建筑物的多个楼层或其他层对准或以其他方式连接,诸如经由连接楼梯或其他连接通道。这种附加功能可以包括例如将房屋的多个楼层对准到单个坐标系中,使得它们可以全部被渲染为3D模型(例如,在渲染系统中),和/或将房屋的多个楼层在2D中对准,使得它们可以在自顶向下正交投影中叠加(例如,在CAD系统或建筑蓝图中)。作为一个非排他性示例,实施两个分开的楼层上的房间之间的连接的一种方式是使用示出连接两个楼层的楼梯的全景图像,诸如在楼梯的底部和顶部中的一个或两者处的全景图像(例如,对于直接连接楼层而没有任何中间楼梯平台的平直楼梯)和/或在中间楼梯平台处的一个或多个全景图像,并且以类似于其他墙壁开口连接类似的方式将在楼梯的顶部和底部处的房间的墙壁开口互连(诸如包括两个墙壁开口之间的与楼梯的测量或估计长度对应的水平距离,并且可选地包括两个墙壁开口之间的竖直信息(如果可用的话)),并且其中两个这种楼层的子楼层平面图以一致的方式且在3D空间中的对应位置处旋转。例如,如果已知楼梯台阶的高度(例如,踢脚板和其上方的踏步板的高度)和/或如果可获得在其中楼梯脚和顶端(head end)两者可见(例如,从平直楼梯的顶部或底部;从非平直楼梯的每个楼梯平台,诸如通过将每个这种平台视作以与连接平直楼梯的两个楼层类似的方式与其他楼层连接的“中间”楼层;等)的全景图像,该全景图像使得能够确定全景图像中的与楼梯脚和/或顶对应的水平线,则可以确定对在楼梯的端部处的两个这种墙壁开口之间的高度差和水平距离的估计。在一些实施方式和情形中,可以在全景图像捕获期间测量台阶的高度和/或深度,无论是手动地还是自动地使用关于台阶中的一个上的已知大小的物体。另外,在一些实施方式中,可以使用图像处理来自动地确定台阶的量,其中该信息与台阶深度信息进行组合以确定楼梯的水平长度(可选地考虑到脚踢板上方的台阶踏步板的突出/悬垂)和/或与台阶高度信息进行组合以确定台阶的竖直高度。以此方式,这种实施方式可以使用最少数量的捕获的全景图像中的具有明确语义含义的相对稀疏几何特征(例如,一个或多个全景图像中的表示楼梯的脚和顶的线)来执行两个楼层上的房间的连接,而不是使用具有很多全景图像的密集数据(例如,以提供密集视觉连接信息)和/或沿着楼梯得到的其他密集测量。
另外,在至少一些实施方式中,在建筑物外部获得的附加信息可以用作生成建筑物的楼层平面图的部分,诸如在建筑物的外部采集的一个或多个全景图像(例如,其中建筑物中的一些或全部可见)、所采集的相同房产上的附属建筑物或其他结构的一个或多个全景图像、来自俯视的卫星图像和/或无人机图像、来自与建筑物相邻的街道的图像、来自房产记录或其他源的关于建筑物的外部的尺寸的信息等。作为一个示例,一个或多个外部全景图像可以用于识别建筑物的一个或多个外墙的形状和/或大小和/或建筑物的屋顶形状和/或大小、外墙中的一个或多个窗的量和/或位置、建筑物的从外部可见的一个或多个楼层的识别等,诸如根据对全景图像的自动化分析和/或基于一个或多个MIGM系统操作者用户对全景图像的手动注释,并且这种信息随后用于根据可能的房间连接如何与从外部全景图像采集的信息拟合来消除/选择可能的房间连接和/或对其进行排列。作为另一个示例,一个或多个外部全景图像可以被视作包围建筑物或以其他方式与建筑物相关的一个或多个外部房间的部分,其中对外部房间进行建模(例如,用房间形状)并连接到楼层平面图中的建筑物的其他内部房间并且与其他内部房间一起使用和/或以其他方式使用。将了解,在至少一些实施方式中,可以类似地提供多种其他类型的功能。
图3是说明了一个或多个移动图像采集和分析计算装置300的实施方式的框图,每个移动图像采集和分析计算装置执行ABIA系统350(包括ICA系统345和MIGM系统340)的实施方式、一个或多个服务器计算系统380、其他计算装置390和可选地一个或多个可导航装置395,计算装置和系统300、380和390(以及ABIA和/或MIGM和/或ICA系统)可以使用多个硬件部件来实施,该多个硬件部件形成适合于且被配置为在联合操作时执行本文描述的技术中的至少一些的电子电路。可以类似地使用一个或多个附加的单独相机装置,以便补充或代替移动装置300来采集建筑物图像,但在此示例中未说明。在所说明的实施方式中,每个移动计算装置300包括一个或多个硬件中央处理单元(“CPU”)或其他硬件处理器305、各种输入/输出(“I/O”)部件310、存储装置320以及存储器330,其中所说明的I/O部件包括显示器311、网络连接件312、计算机可读介质驱动器313以及其他I/O装置315(例如,键盘、鼠标或其他指示装置、麦克风、扬声器、GPS接收器等)。在此示例实施方式中,移动计算装置300中的每一个还包括一个或多个成像系统364和IMU硬件传感器369以及可选地其他部件(例如,照明系统、深度感测系统、位置传感器等),诸如以用于采集图像和装置300的相关联移动数据(例如,由ICA系统345采集)。每个服务器计算系统380和计算装置390可以具有类似的部件,但为了简洁起见,仅说明了一些这种部件(例如,服务器计算系统380的一个或多个硬件处理器381、存储器387、存储装置385和I/O部件382;等)。
在此说明的实施方式中,移动计算装置300和执行的ABIA系统350以及服务器计算系统380和可选的执行MIGM系统389以及诸如计算装置390的其他装置(例如,由ABIA和/或MIGM和/或ICA系统的系统操作者用户用来与那些相应的系统交互;由最终用户用来查看楼层平面图,和可选地相关的图像和/或其他相关信息;等)和/或可选的其他可导航装置395(例如,以供半自主或全自主车辆或其他装置使用)可以彼此通信并且经由一个或多个网络399(例如,互联网、一个或多个蜂窝电话网络等)与其他计算系统和装置(未示出)通信。在其他实施方式中,所描述的实施方式中的一些可以在更少的计算系统/装置中组合和/或分到附加的计算系统/装置中。
在所说明的实施方式中,ABIA系统350的实施方式在移动计算装置300的存储器330中执行以便执行所描述的技术中的至少一些,诸如以将处理器305和移动计算装置300配置为执行自动化操作的方式使用处理器305来执行系统350的软件指令,所述自动化操作实施那些描述的技术。ABIA系统的所说明的实施方式可以包括一个或多个部件,诸如ICA系统345和/或MIGM系统340和/或一个或多个其他部件(未示出),以各自执行ABIA系统的功能的部分,并且存储器可以进一步可选地执行一个或多个其他程序335。ABIA系统350可以在其操作期间进一步存储和/或检索存储装置320上的各种类型的数据(例如,在一个或多个数据库或其他数据结构中),诸如以下各者中的一个或多个:所采集的图像信息324(例如,360°全景图像,诸如由ICA系统采集),以由MIGM系统分析来产生房间布局信息和/或以其他方式帮助生成楼层平面图和/或由ABIA系统分析以确定与附加图像和/或其他类型的数据的进一步采集相关的指引采集指令,以及可选地提供给计算系统/装置380和/或390的用户以供显示;关于一个或多个建筑物的房间的房间形状和布局的所生成或接收的信息325(例如,房间形状以及门和窗以及其他墙壁开口在房间的墙壁中的位置),诸如由MIGM系统生成;一个或多个建筑物的所生成的局部和/或完整楼层平面图和其他关联的测绘信息326(例如,所生成并保存的2.5D和/或3D模型、与关联的楼层平面图一起使用的建筑物和房间尺寸、附加图像和/或注释信息等),诸如由MIGM系统生成;关于提供到参与图像采集过程的用户和/或装置的指引采集指令的信息328,诸如由ABIA系统生成;可选地各种类型的用户信息322(例如,关于参与图像采集过程的用户,诸如历史结果、用户属性、用户偏好和/或关于执行生成过程的供应的指令、用于生成过程中的关联的房产信息等);和/或各种类型的附加可选信息329(例如,与由ICA系统捕获和/或由MIGM系统建模的一个或多个建筑物内部或其他环境的呈现或其他使用相关的各种信息)。
在所说明的实施方式中,ICA系统345的实施方式也作为ABIA系统的部分在图像采集移动计算装置300的存储器330中执行,以便执行所描述的技术中的至少一些,诸如以将处理器305和计算装置300配置为执行实施那些描述的技术的自动化操作的方式,使用处理器305来执行系统345的软件指令。ICA系统的所说明的实施方式可以包括一个或多个部件(未示出)以各自执行ICA系统的功能的部分,并且系统345在其操作期间可以进一步存储和/或检索存储装置320上的各种类型的数据(例如,在一个或多个数据库或其他数据结构中),诸如关于所采集的图像和可选地关联的采集元数据的信息324,以及可选地在此示例中未示出的其他类型的信息(例如,关于ICA系统操作者用户、附加图像和/或注释信息、一个或多个图像的尺寸/大小信息等)。
另外,在所说明的实施方式中,MIGM系统340的实施方式也作为ABIA系统的部分在移动图像采集计算装置300的存储器330中执行,以便执行所描述的技术中的至少一些,诸如以将处理器305和计算装置300配置为执行实施那些描述的技术的自动化操作的方式使用处理器305来执行系统340的软件指令。MIGM系统的所说明的实施方式可以包括一个或多个部件(未示出)以各自执行MIGM系统的功能的部分,并且MIGM系统340在其操作期间可以进一步存储和/或检索存储装置320上的各种类型的数据(例如,在一个或多个数据库或其他数据结构中),诸如关于所生成的楼层平面图和/或其他所生成的建筑物测绘信息的信息325和326,以及可选地在此示例中未示出的其他类型的信息(例如,关于MIGM系统操作者用户等)。MIGM系统389的实施方式可以类似地在一个或多个服务器计算系统380的存储器387中执行,无论是代替还是补充装置300上的MIGM系统340,以便类似地生成建筑物楼层平面图和/或其他测绘信息386(例如,与信息325和326类似或相同),以便使用由ICA系统345采集的图像和/或由MIGM系统340生成的信息来生成最终完成的建筑物楼层平面图(例如,一个或多个增量局部建筑物楼层平面图)。
用户计算装置390(例如,移动装置)、可选的其他可导航装置395和其他计算系统(未示出)中的一些或全部可以类似地包括对于移动计算装置300所说明的相同类型部件中的一些或全部。还将了解,计算系统和装置300和380和390以及图3内所包括的其他系统和装置仅仅是说明性的,并且不旨在限制本发明的范围。系统和/或装置可以改为各自包括多个交互的计算系统或装置,并且可以连接到未具体说明的其他装置,包括经由蓝牙通信或其他直接通信、通过一个或多个网络(诸如,互联网)、经由Web或者经由一个或多个专用网络(例如,移动通信网络等)进行连接。更一般地,装置或其他计算系统可以包括可选地在被编程或以其他方式配置有特定软件指令和/或数据结构时可以交互并执行所描述类型的功能的硬件的任何组合,装置或其他计算系统包括但不限于台式计算机或其他计算机(例如,平板计算机、平板电脑等)、数据库服务器、网络存储装置和其他网络装置、智能手机和其他蜂窝电话、消费者电子装置、可穿戴装置、数字音乐播放器装置、手持式游戏装置、PDA、无线电话、互联网电器、以及包括适当通信能力的各种其他消费者产品。另外,在一些实施方式中,由所说明的ABIA系统350和/或ICA系统345和/或MIGM系统340或389提供的功能可以分布在各种部件中,可以不提供ABIA系统和/或ICA系统和/或MIGM系统的所描述的功能中的一些,并且/或者可以提供其他附加的功能。
还将了解,尽管各种条目被说明为在使用时存储在存储器中或在存储装置上,但是出于存储器管理和数据完整性的目的,这些条目或其部分可以在存储器和其他存储装置之间转移。替代地,在其他实施方式中,软件部件和/或系统中的一些或全部可以在另一个装置上的存储器中执行并且经由计算机间通信与所说明的计算系统通信。因此,在一些实施方式中,当被一个或多个软件程序(例如,被在移动计算装置300上执行的ABIA系统350、被ICA系统345、被MIGM系统340和/或389等)和/或数据结构配置时,所描述的技术中的一些或全部可以由包括一个或多个处理器和/或存储器和/或存储装置的硬件器件执行,诸如通过执行该一个或多个软件程序的软件指令和/或通过存储这种软件指令和/或数据结构,并且以便执行如在流程图和本文的其他公开内容中所描述的算法。此外,在一些实施方式中,可以以其他方式实施或提供系统和/或部件中的一些或全部,诸如由部分地或完全地在固件和/或硬件中实施(例如,而不是作为由配置特定CPU或其他处理器的软件指令全部或部分地实施的装置)的一个或多个装置组成,包括但不限于一个或多个专用集成电路(ASIC)、标准集成电路、控制器(例如,通过执行适当的指令,并且包括微控制器和/或嵌入式控制器)、现场可编程门阵列(FPGA)、复杂可编程逻辑装置(CPLD)等。部件、系统和数据结构中的一些或全部还可以(例如,作为软件指令或结构化数据)存储在非暂时性计算机可读存储介质上,诸如硬盘或闪存驱动器或者其他非易失性存储装置、易失性或非易失性存储器(例如,RAM或闪存RAM)、网络存储装置或者便携式媒体制品(例如,DVD盘、CD盘、光盘、快闪存储器装置等),以便由适当的驱动器或经由适当的连接来读取。在一些实施方式中,系统、部件和数据结构还可以经由所生成的数据信号(例如,作为载波或者其他模拟或数字传播信号的部分)在多种计算机可读传输介质上传输,计算机可读传输介质包括基于无线和基于有线/电缆的介质,并且可以采取多种形式(例如,作为单个或多路模拟信号的部分,或作为多个离散数字包或帧)。在其他实施方式中,这种计算机程序产品还可以采取其他形式。因此,可以利用其他计算机系统配置来实践本公开的实施方式。
图4说明了用于自动化建筑物信息采集(ABIA)系统例程400的流程图的示例实施方式。该例程可以例如通过执行图1的ABIA系统150、图3的ABIA系统350和/或如关于图2A至图2N和在本文的其他地方描述的ABIA系统来执行,以便分析和评估建筑物图像和相关生成的建筑物楼层平面图信息以确定并提供与附加图像和/或其他类型的数据的进一步采集相关的指引采集指令。在图4的示例中,作为建筑物的楼层平面图的自动化生成过程的部分,采集并评估建筑物的图像(例如,360°全景图像),其中该楼层平面图然后被提供用于一个或多个后续用途,但在其他实施方式中,可以采集并评估其他类型的信息(无论是补充和/或还是代替图像),并且/或可以生成其他类型的测绘相关信息(无论是补充和/或还是代替楼层平面图)并以其他方式使用,包括对于其他类型的结构和限定区域,如在本文的其他地方讨论。
例程的所说明的实施方式在框405处开始,其中接收信息或指令。例程继续到框410以确定框405的信息或指令是否指示采集图像和可选地表示建筑物的其他数据并且在采集过程期间执行对指引采集指令的相关联评估和确定,并且如果是的话,继续执行框415至485,否则继续到框490。在框415中,例程获得与建筑物相关的信息,诸如在框405中接收到或从存储装置或其他源检索的信息(例如,关于建筑物的信息,诸如房间的数量和/或类型、建筑面积等;一个或多个外部图像;等),以及可选地与建筑物的数据采集过程相关的其他信息(例如,关于参与采集过程的一个或多个用户、关于可用于生成过程的资源等)。在框420中,例程然后可选地确定并提供与图像采集过程相关的初始指引(例如,关于如何和在哪里采集图像和/或其他数据的最佳实践)。在至少一些实施方式中,经由所显示的GUI将初始指引提供给参与采集过程的一个或多个用户,诸如在移动图像采集计算装置上或在与将采集图像的相机装置相关的另一个移动装置上提供。在框420之后,例程继续到框430,其中开始执行ICA系统例程以在建筑物处采集一个或多个图像(例如,在建筑物的内部内,诸如在建筑物的一个或多个第一房间内)和可选地关联的附加数据(例如,音频、采集元数据等),从而可选地供应关于在其处要采集一个或多个图像的一个或多个附加采集位置的信息或其他指引采集指令(例如,如在返回到框430之前在框445中确定),并且返回所采集的图像和任何其他采集的数据以及可选地由ICA系统执行的任何图像相关评估。关于图5进一步说明了用于ICA系统的例程的一个示例。在框430之后,例程继续到框440,其中执行MIGM系统例程以至少部分地基于一个或多个采集的图像的视觉数据来至少生成建筑物的局部楼层平面图,并且返回局部楼层平面图(如果生成的话)和可选地由MIGM系统执行的任何楼层平面图相关评估(例如,与所确定的房间形状相关的不确定性)。
在框440之后,例程继续到框445,其中基于在框440和可选地在框430中执行的评估来确定要提供的指引采集指令,诸如与一个或多个附加采集位置相关,在该一个或多个附加采集位置处采集一个或多个附加图像和/或其他数据,或者不需要图像和/或其他数据的附加采集(例如,如果已经采集了最后采集位置的图像和/或其他数据,该图像和/或其他数据使得最近生成的建筑物楼层平面图能够覆盖全部的建筑物和可选地周围环境,并且可选地用作最终完整的建筑物楼层平面图),并且将所确定的指引采集指令(如果有的话)提供给与采集过程相关的一个或多个用户(例如,经由所显示的GUI),以便可选地显示具有来自框440的初始估计房间形状和/或来自框430的所采集的图像中的一些或全部的局部建筑物楼层平面图,以及指引采集指令(例如,其中指引采集指令部分地或全部地叠加在所显示的局部建筑物楼层平面图和/或所显示的图像上)。在框445之后,例程继续到框450,其中确定是否存在在其处要采集建筑物的图像的更多采集位置(例如,至少部分地基于所确定的指引采集指令),并且如果是的话,则返回到框430以采集一个或多个附加指令。
如果在框450中改为确定没有在其处要采集建筑物的附加图像和/或其他数据的附加采集位置,则例程继续到框460,其中可选地执行MIGM系统例程以确定建筑物的最终楼层平面图和可选地其他测绘信息(例如,如果在框415至445的最后迭代期间,在框440中未确定最终楼层平面图的话),以及可选地将最终楼层平面图显示给与采集过程相关的一个或多个用户(例如,经由所显示的GUI)。在框460之后,例程继续到框485,其中存储关于框415至460确定、生成和评估的信息,并且可选地将信息(例如,建筑物的所生成的最终楼层平面图和/或其他测绘信息)中的一些或全部提供给一个或多个接收方以供进一步使用。
如果改为在框410中确定在框405中接收到的指令或其他信息不是采集并评估表示建筑物的数据,则例程改为继续到框490,其中视情况执行一个或多个其他所指示的操作。这种其他所指示的操作的非排他性示例包括以下各者中的一个或多个:将参数配置为在系统的各种操作中使用(例如,至少部分地基于由系统的用户指定的信息,诸如ABIA系统的操作者用户、采集一个或多个建筑物内部的图像并且指定用于那些采集和评估过程的偏好和/或设置的移动装置的用户,等)、响应于对所产生和存储的信息(例如,对先前生成的楼层平面图和/或其他建筑物测绘信息、对先前确定的指引采集指令等)的请求、获得和存储关于系统的用户的其他信息、执行任何家政任务等。
在框485或490之后,例程前进到框495以确定是否继续,诸如直到接收到明确的终止指示为止,或者改为只有在接收到明确的继续指示的情况下。如果确定继续,则例程返回到框405以等待附加的指令或信息,并且如果不是的话,则前进到框499并结束。
尽管在一些实施方式中,例程400可以以同步方式操作(例如,在框430和/或440处等待以分别从ICA和/或MIGM系统接收响应),但在其他实施方式中,例程400可以以异步方式操作,诸如当在框430和/或440处等待或者以其他方式执行其他处理时执行其他处理活动(例如,对在框405处接收的其他指令或信息进行响应)。另外,尽管未相对于在图4的示例实施方式中所示的自动化操作说明,但在一些实施方式中,人类用户可以进一步帮助促进ABIA系统的一些操作,诸如供ABIA系统的操作者用户和/或最终用户提供进一步用于后续自动化操作的一种或多种类型的输入,如在本文的其他地方所讨论。
图5说明了ICA(图像捕获和分析)系统例程500的实施方式的示例流程图。该例程可以由例如图1的ICA系统160、图3的ICA系统345和/或如关于图2A至图2N和本文的其他方式描述的ICA系统执行,以便在建筑物或其他结构内的采集位置处采集360°全景图像和/或其他图像,诸如用于后续生成相关楼层平面图和/或其他测绘信息。尽管关于在特定采集位置处采集特定类型的图像讨论了示例例程500的部分,但是将了解,这个或类似的例程可以用于采集视频(具有视频帧图像)或其他数据(例如,音频),无论是代替还是补充这种全景图像或其他静态图像。另外,尽管所说明的实施方式采集并使用来自目标建筑物的内部的信息,但是将了解,其他实施方式可以对于其他类型的数据(包括对于非建筑物结构和/或对于一个或多个感兴趣的目标建筑物外部的信息)执行类似的技术。此外,例程中的一些或全部可以在用户所使用的移动装置上执行以采集图像信息,和/或由远离这种移动装置的系统执行。在至少一些实施方式中,可以从图4的例程400的框430调用例程500,其中作为该框430的实施方式的部分,将来自例程500的对应信息提供到例程400,并且其中在这种情形中,处理控制在框577和/或599之后返回到例程400。在其他实施方式中,例程400可以以异步方式继续附加操作而无需等待返回这种处理控制(例如,在等待将来自例程500的对应信息提供到例程400时继续其他处理活动)。
例程的所说明的实施方式在框505处开始,其中接收指令或信息。在框510处,例程确定接收到的指令或信息是否指示采集表示建筑物内部的视觉数据和/或其他数据(可选地根据关于一个或多个附加采集位置和/或其他指引采集指令的供应信息),并且如果否的话,则继续到框590。否则,例程前进到框512以接收在第一采集位置开始图像采集过程的指示(例如,从将执行采集过程的移动图像采集装置的用户接收)。在框512之后,例程前进到框515以便执行用于采集在感兴趣的目标建筑物的内部中的采集位置的360°全景图像的采集位置图像采集活动,诸如经由移动装置上的一个或多个鱼眼镜头和/或非鱼眼直线镜头并且提供围绕竖直轴的至少360°的水平覆盖范围,但在其他实施方式中,可以采集其他类型的图像和/或其他类型的数据。作为一个非排他性示例,移动图像采集装置可以是配备有鱼眼镜头(例如,具有180°度的水平覆盖范围)和/或其他镜头(例如,具有少于180°度的水平覆盖范围,诸如常规的镜头或广角镜头或超广镜头)的旋转(扫描)全景相机。例程还可以可选地从用户获得关于采集位置和/或周围环境的注释和/或其他信息,诸如供稍后用于呈现关于该采集位置和/或周围环境的信息。
在完成框515之后,例程继续到框520以确定是否存在在其处要采集图像的更多采集位置,诸如基于由移动装置的用户提供和/或在框505中接收到的对应信息。在一些实施方式中,ICA例程将仅采集单个图像并且然后前进到框577以提供该图像和对应的信息(例如,以将图像和对应的信息返回到ABIA系统和/或MIGM系统以在接收到附加指令或信息之前进一步使用,以便在一个或多个下一采集位置采集一个或多个下一图像)。如果在当前时间存在在其处要采集附加图像的更多采集位置,当用户准备继续该过程时,例程继续到框522以可选地发起在移动装置沿着远离当前采集位置而朝向建筑物内部内的下一个采集位置的行进路径移动期间捕获链接信息(例如,加速度数据)。所捕获的链接信息可以包括在这种移动期间记录的附加传感器数据(例如,来自移动装置上或以其他方式由用户携带的一个或多个IMU或惯性测量单元)和/或附加视觉信息(例如,图像、视频等)。可以响应于来自移动装置的用户的明确指示或者基于从移动装置记录的信息的一个或多个自动化分析,执行发起对这种链接信息的捕获。另外,在一些实施方式中,例程还可以可选地在移动到下一采集位置期间监测移动装置的运动,并且向用户提供关于以下各者的一个或多个引导暗示:移动装置的运动、正被捕获的传感器数据和/或视频信息的质量、关联的照明/环境条件、捕获下一采集位置的可取性、以及捕获链接信息的任何其他合适方面。类似地,例程可以可选地从用户获得关于行进路径的注释和/或其他信息,诸如供稍后用于呈现关于该行进路径或得到的全景间图像连接链路的信息。在框524中,例程确定移动装置已到达下一采集位置(例如,基于来自用户的指示、基于用户的向前移动在至少预定义的时间量内停止等)以用作新的当前采集位置,并且返回到框515以便对于该新的当前采集位置执行采集位置图像采集活动。
如果改为在框520中确定在当前时间不存在在其处要采集当前建筑物或其他结构的图像信息的任何其他采集位置,则例程前进到框545以可选地先预处理所采集的360°全景图像,然后随后将其用于生成相关的测绘信息,以便产生特定类型和/或呈特定格式的图像(例如,以对每个这种图像执行等量矩形投影,其中诸如典型的矩形门框或在2个相邻墙壁之间的典型边界的侧面的平直竖直数据保持平直,并且其中诸如典型的矩形门框或墙壁与地板之间的边界的顶部的平直水平数据在图像的水平中线处保持平直,但在等量矩形投影图像中随着在图像中距水平中线的距离增加而以相对于水平中线凸出的方式逐渐地弯曲)。在框577中,存储这些图像和任何关联的所生成或获得的信息以供稍后使用,并且可选地提供给一个或多个接收方(例如,提供到例程400的框430,如果从该框调用的话)。图6A至图6B说明了用于从这种所生成的全景信息生成建筑物内部的楼层平面图表示的例程的一个示例。
如果在框510中改为确定在框505中接收的指令或其他信息不是采集表示建筑物内部的图像和其他数据,但例程改为继续到框590以视情况执行任何其他所指示的操作,以便将参数配置为在系统的各种操作中使用(例如,至少部分地基于由系统的用户指定的信息,诸如捕获一个或多个建筑物内部的移动装置的用户、ICA系统的操作者用户,等)、响应于对所产生和存储的信息的请求(例如,以识别匹配一个或多个指定的搜索标准的各自表示建筑物或建筑物的部分的一组或多组互连的链接全景图像、匹配一个或多个指定的搜索标准的一个或多个全景图像等)、生成并存储建筑物或其他结构的全景图像之间的全景图像间连接(例如,对于每个全景图像,确定该全景图像内的朝向一个或多个其他全景图像的一个或多个其他采集位置的方向,以便使得对于来自全景图像的每个这种确定的方向,该全景图像能够稍后显示箭头或其他视觉表示,以便使得最终用户能够选择所显示的视觉表示中的一个以切换到与所选择的视觉表示相对应的另一采集位置处的另一全景图像的显示)、获得并存储关于系统的用户的其他信息、执行任何家政任务等。
在框577或590之后,例程前进到框595以确定是否继续,诸如直到接收到明确的终止指示为止,或者改为只有在接收到明确的继续指示的情况下。如果确定继续,则例程返回到框505以等待附加的指令或信息,并且如果否的话,则前进到步骤599并结束。
图6A至图6B说明了用于MIGM(测绘信息生成管理器)系统例程600的流程图的示例实施方式。该例程可以通过例如执行图1的MIGM系统140、图3的MIGM系统340和/或如关于图2A至图2N和在本文的其他地方描述的MIGM系统来执行,以便通过分析来自在房间中采集的一个或多个图像(例如,一个或多个360°全景图像)的信息来确定房间(或其他限定的区域)的房间形状、至少部分地基于区域的一个或多个图像和可选地由移动计算装置捕获的附加数据来生成建筑物或其他限定区域的局部或完整的楼层平面图,和/或至少部分地基于区域的一个或多个图像和可选地由移动计算装置捕获的附加数据来生成建筑物或其他限定区域的其他测绘信息。在图6A至图6B的示例中,房间的所确定的房间形状可以是表示房间的墙壁的位置的2D房间形状或表示房间的墙壁和天花板和地板的位置的平面表面的3D全封闭组合,并且为建筑物(例如,房屋)生成的测绘信息可以包括2D楼层平面图和/或3D计算机模型楼层平面图,但在其他实施方式中,可以以其他方式生成和使用其他类型的房间形状和/或测绘信息,包括用于其他类型的结构和定义的区域,如在本文的其他地方讨论。在至少一些实施方式中,可以从图4的例程400的框440调用例程600,其中作为该框440的实施方式的部分,将来自例程600的对应信息提供到例程400,并且其中在这种情形中,处理控制在框688和/或699之后返回到例程400。在其他实施方式中,例程400可以以异步方式继续附加操作而无需等待返回这种处理控制(例如,一旦将来自例程600的对应信息提供到例程400就前进到框445、在等待将来自例程600的对应信息提供到例程400时继续其他处理活动等)。
例程的所说明的实施方式在框605处开始,在框605处接收信息或指令。例程继续到框610以确定图像信息是当前可用于对于一个或多个房间(例如,对于所指示的建筑物的一些或全部,诸如基于在框605中接收的一个或多个这种图像,如先前由ICA例程生成)进行分析,还是改为在当前采集这种图像信息。如果在框610中确定当前采集一些或全部图像信息,则例程继续到框612以采集此类信息,可选地等待一个或多个用户或装置移动穿过建筑物的一个或多个房间并在一个或多个房间中的一个或多个采集位置(例如,在建筑物的每个房间中的多个采集位置)处采集全景图或其他图像,可选地连同关于采集的元数据信息和/或与采集位置之间的移动相关的互连信息,如在本文的其他地方更详细地讨论,框612的实施方式可以例如包括调用ICA系统例程来执行这种活动,其中图5提供了用于执行这种图像采集的ICA系统例程的一个示例实施方式。如果改为在框610中确定当前不采集图像,则例程改为继续到框615以从一个或多个房间中的一个或多个采集位置获得一个或多个现有的全景或其他图像(例如,在包括至少一个图像的多个采集位置和建筑物的每个房间中的采集位置处采集的多个图像),可选地连同关于与采集位置之间的移动相关的采集和/或互连信息的元数据信息,诸如在一些情形中可能已连同对应的指令在框605中被供应。
在框612或615之后,例程继续到框620,其中确定是否生成包括建筑物或其他组房间的一组链接的目标全景图像(或其他图像)的测绘信息(有时被称为“虚拟巡视”,以便使得最终用户能够从链接组的图像中的任一个移动到与起始当前图像链接的一个或多个其他图像,包括在一些实施方式中,经由对于连同当前图像一起显示的每个这种其他链接图像来选择用户可选择控件,可选地通过将这种用户可选择控件和对应的图像间方向的视觉表示叠加在当前图像的视觉数据上,并且类似地从下一图像移动到与下一图像链接的一个或多个附加图像等),并且如果是的话,则继续到框625。在框625中,例程选择图像中的至少一些的对(例如,基于具有重叠的视觉内容的一对的图像),并且对于每一对,基于共享的视觉内容和/或与该对的图像相关的其他捕获的链接互连信息(例如,移动信息)来确定该对的图像之间的相对方向(无论是从该对的一个图像的采集位置直接到该对的另一个图像的采集位置的移动,还是改为经由其他图像的一个或多个其他中间采集位置的那些起始和结束采集位置之间的移动)。在框625中,例程可以进一步可选地至少使用图像对的相对方向信息来确定在共同坐标系中一些或全部的图像相对于彼此的全局相对位置,和/或生成图像间链接和对应的用户可选择控件,如上所述。在本文的其他地方包括关于创建这种一组链接的图像的附加细节。
在框625之后,或如果改为在框620中确定在框605中接收的指令或其他信息不是确定一组链接的图像,则例程继续到框635以确定在框605中接收的指令是否指示生成所指示的建筑物的其他测绘信息(例如,楼层平面图),并且如果是的话,则例程继续执行框637至685以这样做,否则继续到框690。
在框637中,例程可选地获得关于建筑物的附加信息,诸如来自在采集和可选地分析图像期间所执行的活动、和/或来自一个或多个外部来源(例如,在线数据库、由一个或多个最终用户提供的信息等)。这种附加信息可以包括例如建筑物的外部尺寸和/或形状、与建筑物外部的特定位置(例如,建筑物周围和/或对于相同房产上的其他结构、从一个或多个俯视位置等)对应的所采集的附加图像和/或注释信息、与建筑物内的特定位置(可选地对于不同于所采集的全景或其他图像的采集位置的位置)对应的所采集的附加图像和/或注释信息等。
在框637之后,例程继续到框645以选择可获得在房间中采集的一个或多个图像(例如,360°全景图像)的下一房间(以第一房间开始),并且分析房间的图像的视觉数据以确定房间形状(例如,通过至少确定墙壁位置),可选地连同确定关于房间形状的墙壁和/或其他部分的不确定性信息,并且可选地包括识别其他墙壁和地板和天花板元素(例如,墙壁结构元素/特征,诸如窗、门道和楼梯以及其他房间间墙壁开口和连接通道、墙壁与另一个墙壁和/或天花板和/或地板之间的墙壁边界等)以及它们在房间的所确定的房间形状内的位置。在一些实施方式中,房间形状确定可以包括使用墙壁与彼此以及地板或天花板中的至少一个的边界以确定2D房间形状(例如,使用一个或多个经训练的机器学习模型),而在其他实施方式中,可以以其他方式执行房间形状确定(例如,生成房间墙壁和可选地天花板和/或地板中的一些或全部的3D点云,诸如至少分析全景图像的视觉数据和可选地由图像采集装置或关联的移动计算装置捕获的附加数据,可选地使用SfM(运动恢复结构)或SLAM(同时定位和测绘)和MVS(多视角立体观察)分析中的一个或多个)。另外,框645的活动可以可选地进一步确定和使用那些全景图像中的每一个的初始姿势信息(例如,如提供了全景图像的采集元数据),并且/或者获得并使用每个全景图像的附加元数据(例如,用于采集相对于地板和/或天花板的全景图像的相机装置或其他图像采集装置的采集高度信息)。在本文的其他地方包括关于确定房间形状和识别房间的附加信息的附加细节。在框640之后,例程继续到框645,其中确定是否有更多的房间可以基于在这些房间中采集的图像来确定房间形状,并且如果是的话,则返回到框640以选择用于确定房间形状的下一这种房间。
如果在框645中改为确定没有更多房间可以为其生成房间形状,则例程继续到框660以确定是否进一步生成建筑物的至少局部楼层平面图(例如,至少部分地基于从框645确定的房间形状,以及可选地关于如何相对于彼此定位确定的房间形状的另外信息)。如果否的话,诸如当仅确定一个或多个房间形状而不生成建筑物的另外测绘信息时(例如,以基于由ICA系统在房间中采集的一个或多个图像来确定单个房间的房间形状),则例程继续到框688。否则,例程继续到框665以检索一个或多个房间形状(例如,在框645中生成的房间形状)或以其他方式获得建筑物的房间的一个或多个房间形状(例如,基于人类供应的输入),无论是2D还是3D房间形状,然后继续到框670。在框670中,例程使用一个或多个房间形状来创建初始楼层平面图(例如,使用2D房间形状的初始2D楼层平面图和/或使用3D房间形状的初始3D楼层平面图),诸如包括一个或多个房间形状但少于建筑物的所有房间形状的局部楼层平面图,或包括建筑物的所有房间形状的完整楼层平面图。如果存在多个房间形状,则在框670中,例程进一步确定房间形状相对于彼此的定位,诸如使用来自多个采集位置的图像之间的视觉重叠以确定那些采集位置和包围那些采集位置的房间形状的相对位置,和/或使用其他类型的信息(例如,使用房间之间的房间间连接通道、可选地应用一个或多个约束或优化等)。在至少一些实施方式中,在框670中,例程通过生成覆盖相对定位的房间形状的二元分割掩码、提取表示分割掩码的廓线或轮廓的多边形并且将多边形分成细化房间形状来进一步细化房间形状中的一些或全部。这种楼层平面图可以包括例如各种房间的相对位置和形状信息,而没有提供单独房间或作为整体的建筑物的任何实际尺寸信息,并且还可以包括建筑物的多个链接或关联的子地图(例如,以反映不同的楼层、水平、区段等)。例程可选地进一步关联门、墙壁开口和其他所识别的墙壁元素在楼层平面图上的位置。
在框670之后,例程可选地执行一个或多个步骤680至683,以确定附加信息并将其与楼层平面图相关联。在框680中,例程可选地估计房间中的一些或全部的尺寸,诸如根据对图像和/或其采集元数据的分析或者根据对于建筑物的外部获得的整体尺寸信息,并且将所估计的尺寸与楼层平面图相关联。将了解,如果可获得足够详细的尺寸信息,则可以从楼层平面图生成建筑绘图、工程图纸等。在框680之后,例程继续到框683以可选地将进一步信息与楼层平面图(例如,具有在建筑物内的特定房间或其他位置)相关联,所述进一步信息诸如为具有指定的位置和/或注释信息的附加现有的图像。在框685中,如果来自框645的房间形状不是3D房间形状,例程进一步估计一些或全部房间中的墙壁的高度,诸如根据对图像的分析和可选地图像中的已知物体的大小、以及关于在采集图像时的相机的高度信息,并且使用该高度信息来生成房间的3D房间形状。例程可选地进一步使用3D房间形状(无论来自框645还是框685)来生成建筑物的3D计算机模型楼层平面图,其中2D和3D楼层平面图彼此关联。在其他实施方式中,可能只生成并使用3D计算机模型楼层平面图(包括如果需要,通过使用3D计算机模型楼层平面图的水平切片来提供2D楼层平面图的视觉表示)。
在框685之后,或者如果改为在框660中确定不确定楼层平面图,则例程继续到框688以存储确定的房间形状和/或生成的测绘信息和/或其他生成的信息,以可选地将该信息中的一些或全部提供给一个或多个接收方(例如,提供到例程400的框440,如果从该框调用的话),并且可选地进一步使用所确定和生成的信息中的一些或全部,以便提供所生成的2D楼层平面图和/或3D计算机模型楼层平面图来显示在一个或多个客户端装置上和/或提供到一个或多个其他装置以用于那些装置和/或关联车辆或其他实体的自动化导航、以类似地提供和使用关于所确定的房间形状和/或一组链接的全景图像和/或关于根据房间的内容和/或房间之间的通道确定的附加信息的信息等。
如果改为在框635中确定在框605中接收到的信息或指令不是生成所指示的建筑物的测绘信息,则例程改为继续到框690以视情况执行一个或多个其他所指示的操作。这种其他操作可以包括例如接收对于先前生成的楼层平面图和/或先前确定的房间形状和/或其他生成的信息的请求(例如,请求ILDM系统使用这些信息,对于这种信息在一个或多个客户端装置上显示的请求、对于这种信息提供到一个或多个其他装置以用于自动化导航的请求等)并对其作出响应、获得和存储关于建筑物的信息以供在稍后操作中使用(例如,关于房间的尺寸、数量或类型、总建筑面积、相邻或附近的其他建筑物、相邻或附近的植被、外部图像等的信息)等。
在框688或690之后,例程继续到框695以确定是否继续,诸如直到接收到明确的终止指示为止,或者改为只有在接收到明确的继续指示的情况下才继续。如果确定继续,则例程返回框605以等待并接收附加指令或信息,否则继续到框699并结束。
尽管未相对于在图6A至图6B的示例实施方式中所示的自动化操作说明,但在一些实施方式中,人类用户可以进一步帮助促进MIGM系统的一些操作,诸如MIGM系统的操作者用户和/或最终用户提供进一步用于后续自动化操作的一种或多种类型的输入。作为非排他性示例,此类人类用户可以提供如下一种或多种类型的输入:提供输入以帮助链接一组图像,以便在框625中提供被用作该框的自动化操作的部分的输入(例如,以指定或调整一个或多个图像对之间的初始自动地确定的方向、以指定或调整一些或全部图像相对于彼此的初始自动地确定的最终全局位置等);在框637中提供被用作后续自动化操作的部分的输入,诸如关于建筑物的所说明的类型的信息中的一个或多个;相对于框640提供被用作后续自动化操作的部分的输入,以便指定或调整初始自动地确定的元素位置和/或估计的房间形状,和/或手动地组合来自房间的多个估计房间形状的信息(例如,来自在房间中采集的不同图像的单独房间形状估计)以创建房间的最终房间形状,和/或指定或调整关于最终房间形状的初始自动地确定的信息;相对于框670提供被用作后续操作的部分的输入,以便指定或调整正在生成的楼层平面图内的房间形状的初始自动地确定的位置和/或指定或调整这种楼层平面图内的初始自动地确定的房间形状本身;相对于框680和683和685中的一个或多个提供被用作后续操作的部分的输入,以便指定或调整相对于那些框讨论的一种或多种类型的初始自动地确定的信息;和/或指定或调整全景图像中的一个或多个的初始自动地确定的姿势信息(无论是初始姿势信息还是后续更新的姿势信息)等。在本文的其他地方包括关于其中一个或多个人类用户提供被进一步用于ABIA系统的附加自动化操作的输入的实施方式的附加细节。
图7说明了用于建筑物地图访问系统例程700的流程图的示例性实施方式。该例程可以通过例如执行图1的建筑物信息访问客户端计算装置175及其软件系统(未示出)、图3的客户端计算装置390和/或如在本文的其他地方所描述的测绘信息访问查看器或呈现系统来执行,以便接收和显示所生成的楼层平面图和/或限定区域的其他测绘信息(例如,所确定的房间结构布局/形状等),该测绘信息可选地包括一个或多个所确定的图像采集位置的视觉指示;以获得和显示关于与一个或多个指示的目标图像匹配的图像的信息;以显示测绘信息中的与特定采集位置相关的附加图像(例如,图像);以获得和显示由ABIA系统和/或其他源提供的指引采集指令(例如,关于在该采集会话期间采集的其他图像和/或对于相关的建筑物,诸如所显示的GUI的部分)等。在图7的示例中,所呈现的测绘信息是对于建筑物(诸如,房屋的内部),但在其他实施方式中,可以对于其他类型的建筑物或环境来呈现并以其他方式使用其他类型的测绘信息,如在本文的其他地方所讨论。
例程的所说明的实施方式在框705处开始,其中接收指令或信息。在框710处,例程确定在框705中接收的指令或其他信息是否将显示一个或多个目标建筑物的确定信息,并且如果是,则继续至框715,以使用特定标准来确定在框705中接收到的指令或信息是否将选择一个或多个目标建筑物,并且如果不是的话,则继续至框720以从用户获得要使用的目标建筑物的指示(例如,基于当前用户选择,诸如来自显示列表或其他用户选择机制;基于在框705中接收的信息;等)。否则,如果在框715中确定从特定标准选择一个或多个目标建筑物,则例程转而继续到框725,其中获得要使用的一个或多个搜索标准的指示,诸如从当前用户选择或如所指示的那样在框705接收到的信息或指令中,然后搜索关于建筑物的存储信息以确定满足搜索标准的建筑物中的一个或多个。在所说明的实施方式中,例程然后进一步从一个或多个返回的建筑物中选择最佳匹配目标建筑物(例如,对于指定的标准具有最高相似性或其他匹配率的返回的其他建筑物,或使用在框705中接收的指令或其他信息中指示的另一种选择技术),而在其他实施方式中,例程可以改为呈现满足搜索标准的多个候选建筑物(例如,基于匹配程度按照排名次序)并且从多个候选中接收目标建筑物的用户选择。
在框720或725之后,例程继续至框735以检索目标建筑物的楼层平面图和/或建筑物的其他所生成的测绘信息以及可选地建筑物内部和/或建筑物外部的周围位置的相关的链接信息的指示,并且选择检索到的信息的初始视图(例如,楼层平面图的视图、特定房间形状等)。在框740中,例程然后显示或以其他方式呈现检索到的信息的当前视图,并且在框745中等待用户选择。在框745中的用户选择之后,如果在框750中确定用户选择对应于调整当前目标建筑物的当前视图(例如,改变当前视图的一个或多个方面),则例程继续到框755以根据用户选择来更新当前视图,然后返回到框740以相应地更新所显示的或以其他方式呈现的信息。对当前视图的用户选择和对应更新可以包括例如显示或以其他方式呈现用户选择的一条相关的链接信息(例如,与所确定的采集位置的所显示的视觉指示相关的特定图像,以便将相关的链接信息叠加在至少一些先前的显示上)、和/或改变当前视图的显示方式(例如,放大或缩小;在适当时旋转信息;选择要显示或以其他方式呈现的楼层平面图的新部分,诸如其中该新部分中的一些或全部先前不可见,或者改为其中该新部分是先前可见信息的子集;等)。如果改为在框750中确定用户选择不显示当前目标建筑物的另外信息(例如,显示另一个建筑物的信息、结束当前显示操作等),则例程改为继续至框795,并且如果用户选择涉及这样的另外操作,则返回框705以执行用户选择的操作。
如果改为在框710中确定在框705中接收的指令或其他信息不呈现表示建筑物的信息,则例程改为继续到框760以确定在框705中接收的指令或其他信息是否对应于识别与一个或多个指示的目标图像对应的其他图像(如果有的话),并且如果继续到框765至770以执行这样的活动。特别地,框765中的例程接收用于匹配的一个或多个目标图像的指示(诸如来自在框705中接收的信息或基于与用户的一个或多个当前交互)连同一个或多个匹配标准(例如,视觉重叠的量),并且在框770中识别与指示的目标图像匹配的一个或多个其他图像(如果有的话),诸如通过与ICA和/或MIGM系统交互以获得其他图像。该例程然后在框770中显示或以其他方式提供关于所识别的其他图像的信息,以便提供关于它们的信息作为搜索结果的部分,以显示一个或多个识别的其他图像等。如果在框760中改为确定在框705中接收到的指令或其他信息不用于识别与一个或多个指示的目标图像对应的其他图像,则例程改为继续到框775以确定在框705中接收到的指令或其他信息是否对应于在图像采集会话期间获得和提供关于一个或多个指示的目标图像(例如,最近采集的图像)的指引采集指令,并且如果是的话,则继续到框780,否则继续到框790。在框780中,例程获得关于一种或多种类型的指引采集指令的信息,诸如与ABIA系统交互,并且在框780中显示或以其他方式提供关于指引采集指令的信息,诸如以在本文的其他地方更详细地讨论的方式将指引采集指令叠加在局部楼层平面图和/或最近采集的图像上。
在框790中,例程改为继续以视情况执行其他所指示的操作,以便将参数配置为在系统的各种操作中使用(例如,至少部分地基于由系统的用户指定的信息,用户诸如为采集一个或多个建筑物内部的移动装置用户、ABIA和/或MIGM系统的操作者用户等,包括用于对于特定用户根据他/她的偏好将信息显示个人化)、获得和存储关于系统用户的其他信息、响应于对于所生成和存储的信息的请求、执行任何家政任务等。
在框770或780或790之后,或者如果在框750中确定用户选择不对应于当前建筑物,则例程前进到框795以确定是否继续,诸如直到接收到明确的终止指示为止,或者改为只有在接收到明确的继续指示的情况下。如果确定继续(包括如果用户在框745中做出与要呈现的新建筑物有关的选择),则例程返回到框705以等待附加的指令或信息(或者如果用户在框745中做出与要呈现的新建筑物有关的选择,则直接继续到框735),并且如果不是的话,则前进到步骤799并结束。
在以下条款中进一步描述本文所描述的非排他性示例性实施方式。
A01.一种用于一个或多个计算装置以执行自动化操作的计算机实施的方法,所述自动化操作包括:
由作为所述一个或多个计算装置中的一个并且具有一个或多个相机并且在用户的控制下的移动计算装置,在建筑物的多个第一房间中的多个第一采集位置处记录多个第一全景图像,所述多个第一房间是所述建筑物的多个房间的子集,其中,所述第一全景图像中的每一个呈球形格式并且包括围绕竖直轴的360度水平视觉覆盖范围,并且具有所述第一房间中的包括所述第一全景图像的相应第一采集位置的一个的至少一些墙壁的视觉覆盖范围;
通过所述移动计算装置,分析所述第一全景图像的视觉数据以生成所述第一房间的房间形状,包括:
通过所述移动计算装置,对于所述第一全景图像中的每一个,生成所述第一全景图像的视觉数据以生成所述一个房间的其中定位有所述第一图像的所述相应第一采集位置的初始房间形状,并且所述初始房间形状包括所述一个房间的所述至少一些墙壁的表示,包括确定所述一个房间中的门道或非门道墙壁开口中的至少一个的位置,并且还包括确定用于定位所述一个房间的所述至少一些墙壁中的至少一个墙壁的不确定性信息;
通过所述移动计算装置,对于所述第一房间中的包括所述第一采集位置中的至少两个采集位置的至少一个房间中的每一个,组合用于在所述至少两个采集位置处采集的所述第一全景图像的所生成的初始房间形状进行,以产生所述至少一个房间的所述房间形状,包括基于所述组合减少所产生的房间形状的至少一个墙壁的所确定的不确定性信息;以及
通过所述移动计算装置,对于所述第一房间中的包括所述第一采集位置中的仅一个采集位置的至少一个另一个房间中的每一个,选择在所述仅一个采集位置处采集的所述第一全景图像的所生成的初始房间形状,以产生所述至少一个另一个房间的所述房间形状;
通过所述计算装置,生成所述建筑物的局部楼层平面图,所述局部楼层平面图包括相对于彼此定位的所述第一房间的所述房间形状,包括:
通过所述计算装置,至少部分地基于所述第一全景图像的所述视觉重叠,确定所述第一房间的相对定位;
通过所述计算装置,使用所述第一房间的所确定的相对定位和所生成的房间形状,将所述第一房间的所生成的房间形状相对于彼此定位;
通过所述移动计算装置,生成所述第一房间的所定位的生成的房间形状的区域的二元分割掩码,包括确定用于所述第一房间中的每一个的单独的二元分割掩码,并且组合所述单独的二元分割掩码进行;
通过所述移动计算装置,确定表示相对于彼此定位的所述第一房间的所生成的二元分割掩码的多边形形状;以及
通过所述移动计算装置,将信息添加到所确定的多边形形状以识别所述第一房间的墙壁和门道以及非门道墙壁开口的位置,包括将关于一个或多个墙壁的定位的不确定性信息添加到所述局部楼层平面图;
通过所述移动计算装置,至少部分地基于所生成的局部楼层平面图确定与所述建筑物的在其处以采集附加图像的附加采集位置相关的指引,包括使用关于所述一个或多个墙壁的所定位的所述不确定性信息以识别所述附加采集位置中的将提供进一步视觉数据以减少关于所述一个或多个墙壁的所述定位的不确定性的至少一个;
通过所述移动计算装置,在所述移动计算装置上的图形用户界面(GUI)中向所述用户呈现所生成的局部楼层平面图的视觉表示,所述视觉表示包括关于所述一个或多个墙壁的所述定位的所述不确定性信息的视觉指示、以及叠加在与所述附加采集位置相关的所生成的局部楼层平面图上的视觉指示、以及到所述用户的与所述附加采集位置相关的方向;
通过所述移动计算装置并且在所述呈现之后,在所述建筑物的附加第二房间中的多个第二采集位置处记录多个附加第二全景图像,其中,所述第二采集位置包括所述附加采集位置;
通过所述移动计算装置,分析所述第二全景图像的附加视觉数据,以生成所述附加第二房间的附加房间形状;
通过所述移动计算装置,生成所述建筑物的完整楼层平面图,所述完整楼层平面图包括相对于彼此定位的所述附加第二房间的所述附加房间形状和所述第一房间的所生成的局部楼层平面图中的所述房间形状,包括生成分割掩码并且将其用于所述附加房间形状;以及
通过所述移动计算装置,在所述GUI中向所述用户呈现所生成的完整楼层平面图的更新的视觉表示,以能够对所述建筑物进一步导航。
A02.如条款A01所述的计算机实施的方法,还包括:使用所述第一全景图像和所述第二全景图像生成所述建筑物的附加测绘信息,所述附加测绘信息包括所述建筑物的内部的三维模型或具有在所述第一全景图像和所述第二全景图像中的至少一些之间的表示至少图像间方向的用户可选择互连的虚拟巡视中的至少一个;向一个或多个附加用户呈现包括所生成的完整楼层平面图的所述更新的视觉表示和所述建筑物的所述附加测绘信息中的至少一些的信息;以及响应于所述一个或多个附加用户与呈现的信息的交互而进一步更新呈现给所述一个或多个附加用户的信息。
A03.一种用于一个或多个计算装置以执行自动化操作的计算机实施的方法,所述自动化操作包括:
对于具有多个房间的建筑物,获得在所述多个房间中的两个或更多个房间中的两个或更多个第一采集位置处采集的两个或更多个第一图像,其中,所述第一图像中的每一个均具有对所述两个或更多个房间中的包括所述第一图像的相应第一采集位置的一个房间的至少一些墙壁的视觉覆盖范围;
分析所述第一图像的视觉数据,以生成所述两个或更多个房间的初始房间形状,包括对于所述第一图像中的每一个,生成其中定位有所述第一图像的所述相应第一采集位置的所述一个房间的形状,并且所述一个房间的形状包括所述一个房间的所述至
少一些墙壁的表示;
生成所述建筑物的具有相对于彼此定位的所述两个或更多
个房间的限定的房间形状的局部楼层平面图,包括:
至少部分地基于所述第一图像的所述视觉数据,确定所述两个或更多个房间的相对定位,并且基于所确定的相对定位,将所述两个或更多个房间的所生成的初始房间形状相对于彼此定位;以及
生成所述两个或更多个房间的所定位的生成的初始房间形状的区域的分割掩码;
确定表示相对于彼此定位的所述两个或更多个房间的所生成的分割掩码的多边形形状;以及
将所确定的多边形形状分成所述两个或更多个房间的所述限定的房间形状;
至少部分地基于与所生成的局部楼层平面图相关的信息,确定与所述建筑物的在其处以采集一个或多个附加图像的一个或多个附加采集位置相关的指引;以及
提供包括所生成的局部楼层平面图和与所述一个或多个附加采集位置相关的所确定的指引的信息,以致使在所述一个或多个附加采集位置处要采集的附加图像用于生成所述建筑物的完整楼层平面图。
A04.一种用于一个或多个计算装置以执行自动化操作的计算机实施的方法,所述自动化操作包括:
由具有一个或多个相机的所述一个或多个计算装置中的一个计算装置,采集建筑物的多个房间中的两个或更多个房间的两个或更多个第一图像,其中,所述第一图像包括在所述两个或更多个房间中的两个或更多个第一采集位置中的每一个处的图像,并且其中,所述第一图像中的每一个均具有对所述两个或更多个房间中的其中定位有所述第一图像的相应第一采集位置的一个房间的至少一些墙壁的视觉覆盖范围;
通过所述一个计算装置,分析所述第一图像的视觉数据,以生成所述两个或更多个房间的至少局部房间形状,并且确定所述第一图像之间的视觉重叠,包括对于所述第一图像中的每一个,生成其中定位有所述第一图像的所述相应第一采集位置的所述一个房间的至少局部房间形状,并且所述至少局部房间形状包括所述一个房间的所述至少一些墙壁的至少二维(2D)表示;
通过所述一个计算装置,生成所述建筑物的具有相对于彼此定位的所述两个或更多个房间的房间形状的局部楼层平面图,包括:
通过所述一个计算装置,至少部分地基于所述第一图像之间的所述视觉重叠确定所述两个或更多个房间的相对定位;
通过所述一个计算装置,使用来自所述第一图像的所确定的相对定位和所生成的至少局部房间形状,将所述两个或更多个房间的所述至少局部房间形状相对于彼此定位;
通过所述一个计算装置,生成所述两个或更多个房间的所定位的至少局部房间形状的区域的分割掩码,包括组合用于所述两个或更多个房间中的每一个的单独的分割掩码;
通过所述一个计算装置,确定表示相对于彼此定位的所述两个或更多个房间的所生成的分割掩码的多边形形状;以及
通过所述一个计算装置,将所确定的多边形形状分成相对于彼此定位的所述两个或更多个房间的所述房间形状;
通过所述一个计算装置,至少部分地基于所生成的局部楼层平面图,确定与所述建筑物的在其处以采集一个或多个附加图像的一个或多个附加采集位置相关的指引;以及
通过所述一个计算装置,呈现包括所生成的局部楼层平面图的视觉表示和与所述一个或多个附加采集位置相关的所确定的指引的信息,以致使在所述一个或多个附加采集位置处要采集的附加图像用于生成所述建筑物的完整楼层平面图。
A05.一种用于一个或多个计算装置以执行自动化操作的计算机实施的方法,所述自动化操作包括:
由具有一个或多个相机的所述一个或多个计算装置中的一个计算装置,
在具有多个房间的建筑物中的两个或更多个第一采集位置处采集两个或更多个第一图像,其中,所述第一图像中的每一个均具有所述房间的其中定位有所述第一图像的相应第一采集位置的一个房间的至少一些墙壁的视觉覆盖范围;
提供所述一个或多个计算装置分析所述第一图像的视觉数据,以确定所述第一图像之间的视觉重叠,并且生成一个或多个初始房间形状,包括:
对于所述第一图像中的每一个,生成所述一个房间的其中定位有所述第一图像的所述相应第一采集位置的形状,并且所述形状包括所述一个房间的至少一些墙壁的表示;以及
对于包括所述第一采集位置中的至少两个的至少一个房间,组合用于在所述至少两个采集位置处采集的所述第一图像的所述房间的所生成的形状,以产生所述初始房间形状中的用于所述房间的一个;
通过所述一个或多个计算装置,使用包括所述第一采集位置的一个或多个房间的一个或多个限定的房间形状,生成所述建筑物的局部测绘信息,包括:
通过所述一个或多个计算装置,在反映所确定的视觉重叠的一个或多个位置处生成所生成的一个或多个初始房间形状的区域的分割掩码;
通过所述一个或多个计算装置,确定表示所述一个或多个房间的所生成的分割掩码的多边形形状;以及
通过所述一个或多个计算装置,根据所确定的多边形形状产生所述一个或多个限定的房间形状;
通过所述一个或多个计算装置,至少部分地基于与所生成的局部测绘信息相关的信息,确定与所述建筑物的在其处以采集一个或多个附加图像的一个或多个附加采集位置相关的指引;以及
通过所述一个或多个计算装置,提供包括所生成的局部测绘信息和与所述一个或多个附加采集位置相关的所确定的指引的信息,以能够在所述一个或多个附加采集位置处采集附加图像,以用于生成所述建筑物的完整测绘信息。
A06.如条款A01至A05中任一项所述的计算机实施的方法,其中,分析所述第一图像的所述视觉数据还包括:对于所述两个或更多个房间中的每一个,确定用于定位所述房间的一个或多个墙壁的不确定性信息,并且其中,确定与所述建筑物的在其处以采集附加图像的一个或多个附加采集位置相关的所述指引包括:将所述附加采集位置中的至少一个识别为在用于减少所述两个或更多个房间中的至少第一房间的至少一个墙壁的所确定的不确定性信息的位置。
A07.如条款A06所述的计算机实施的方法,
其中,所述第一房间包括在其处采集所述第一图像中的仅一个的所述两个或更多个第一采集位置中的仅一个,其中,所述两个或更多个房间中的第二房间包括在其处采集所述第一图像中的多个的所述两个或更多个第一采集位置中的多个,
其中,生成所述两个或更多个房间的所述至少局部房间形状还包括:
通过所述一个计算装置,为了产生所述第二房间的所述局部房间形状,组合在所述第二房间中所包括的所述多个第一采集位置处采集的所述多个图像的所生成的至少局部房间形状,包括基于所述组合减少所产生的局部房间形状的至少一个墙壁的所确定的不确定性信息;以及
通过所述一个计算装置,为了产生所述第一房间的所述局部房间形状,选择在所述第一房间中所包括的所述仅一个第一采集位置处采集的所述仅一个第一图像的所生成的至少局部房间形状,以用作所述第一房间的所述局部房间形状,包括在所述第一房间的所产生的局部房间形状中,保留所述第一房间的所述一个或多个墙壁的所确定的不确定性信息,
并且其中,呈现所生成的局部楼层平面图的所述视觉表示还包括:呈现关于至少所述第一房间的墙壁的定位的不确定性信息的视觉指示,以及呈现叠加在与所述一个或多个附加采集位置相关的所生成的局部楼层平面图上的视觉指示。
A08.如条款A01至A07中任一项所述的计算机实施的方法,其中,分析所述第一图像的所述视觉数据还包括:对于所述两个或更多个房间中的每一个,确定所述房间中的门道或非门道墙壁开口中的至少一个的位置,其中,生成所述建筑物的所述局部楼层平面图包括:对于所述两个或更多个房间中的每一个,将信息添加到所确定的多边形形状,以识别所述房间的墙壁和所述房间的所述门道或所述非门道墙壁开口中的所述至少一个在所述房间中的位置,其中,呈现包括所生成的局部楼层平面图的所述视觉表示的所述信息还包括:呈现所添加的信息,以识别所述房间的所述墙壁和所述房间的所述门道或所述非门道墙壁开口中的所述至少一个在所述两个或更多个房间中的每一个中的位置。
A09.如条款A01至A08中任一项所述的计算机实施的方法,其中,所述两个或更多个房间包括第一房间,所述第一房间是所述多个房间的子集,以及其中,所述自动化操作还包括在呈现包括所生成的局部楼层平面图的所述视觉表示的所述信息之后:
通过所述计算装置,在所述建筑物的附加第二房间中的多个第二采集位置处采集多个附加第二图像,其中,所述第二采集位置包括所述附加采集位置;
通过所述计算装置,分析所述附加第二图像的附加视觉数据,以生成所述附加第二房间的附加房间形状;
通过所述计算装置,生成所述建筑物的第二局部楼层平面图,所述第二局部楼层平面图包括相对于彼此定位的所述附加第二房间的所述附加房间形状;
通过所述计算装置,确定所述第一图像的所述视觉数据和所述附加第二图像的所述附加视觉数据缺乏所述第一房间和所述附加第二房间之间视觉重叠信息,以禁止将所述局部楼层平面图相对于所述第二局部楼层平面图进行定位;
通过所述计算装置,确定与所述建筑物的在其处以采集进一步图像的一个或多个进一步采集位置相关的附加指引,以提供所述第一房间和所述附加第二房间之间的所述视觉重叠信息;
通过所述计算装置,呈现更新的信息,所述更新的信息包括所生成的局部楼层平面图和所生成的第二局部楼层平面图的视觉表示,并且还包括与所述一个或多个进一步采集位置相关的所确定的附加指引;
通过所述计算装置,在多个附加第三采集位置处采集多个附加第三图像,其中,所述第三采集位置包括所述进一步采集位置;
通过所述计算装置,分析所述附加第三图像的进一步视觉数据,包括确定所述第一房间和所述附加第二房间之间的所述视觉重叠信息,
通过所述计算装置,生成所述建筑物的完整楼层平面图,所述完整楼层平面图包括相对于彼此定位的所生成的局部楼层平面图和所生成的第二局部楼层平面图;以及
通过所述计算装置,呈现所生成的完整楼层平面图的视觉表示,以能够对所述建筑物进一步导航。
A10.如条款A01至A09中任一项所述的计算机实施的方法,其中,所述至少一个计算装置是具有一个或多个相机的移动计算装置,其中,获得所述第一图像包括由所述移动计算装置在用户的控制下采集所述第一图像,并且其中,提供所述信息包括在图形用户界面中并且向所述用户显示所生成的局部楼层平面图的视觉表示和所确定的指引。
A11.如条款A01至A10中任一项所述的计算机实施的方法,其中,生成所述两个或更多个房间的所定位的生成的初始房间形状的所述区域的所述分割掩码包括:确定用于所述两个或更多个房间中的每一个的单独的二元分割掩码,并且将所述单独的二元分割掩码进行组合,以生成所述两个或更多个房间的所定位的生成的初始房间形状的所述区域的整体二元分割掩码。
A12.如条款A01至A11中任一项所述的计算机实施的方法,其中,分析所述第一图像的所述视觉数据还包括:确定所述第一图像之间的视觉重叠,并且其中,至少部分地基于所述第一图像的所述视觉数据确定所述两个或更多个房间的所述相对定位包括:使用所确定的视觉重叠来识别所述相对定位。
A13.如条款A01至A12中任一项所述的计算机实施的方法,其中,分析所述第一图像的所述视觉数据包括:对于所述两个或更多个房间中的每一个,确定用于所述房间的一个或多个墙壁的定位的不确定性信息,并且其中,确定与一个或多个附加采集位置相关的所述指引包括:选择所述附加采集位置中的至少一个,以减少所确定的所述两个或更多个房间中的至少第一房间的至少一个墙壁的不确定性信息。
A14.如条款A13所述的计算机实施的方法,
其中,所述第一图像中的每一个的所生成的形状是其中定位有所述第一图像的所述相应的第一采集位置的所述一个房间的至少局部房间形状,其中,所述第一房间包括在其处采集所述第一图像中的仅一个的所述两个或更多个第一采集位置中的仅一个,其中,所述两个或更多个房间中的第二房间包括在其处采集所述第一图像中的多个的所述两个或更多个第一采集位置中的多个,
其中,生成所述两个或更多个房间的所述初始房间形状还包括:
为了产生所述第二房间的所述初始房间形状,将在所述第二房间中所包括的所述多个第一采集位置处采集的多个图像的所述至少局部房间形状进行组合,包括基于所述组合减少所确定的所产生的初始房间形状的至少一个墙壁的不确定性信息;以及为了产生所述第一房间的所述初始房间形状,选择在所述第一房间中所包括的仅一个第一采集位置处采集的仅一个第一图像的所述至少局部房间形状,以用作所述第一房间的所述初始房间形状,包括在所述第一房间的所产生的初始房间形状中,保留所确定的所述第一房间的所述一个或多个墙壁的不确定性信息,
并且其中,提供包括所生成的局部楼层平面图的所述视觉表示的所述信息还包括:呈现具有关于至少所述第一房间的墙壁的定位的不确定性信息的视觉指示的所生成的局部楼层平面图的视觉表示,以及呈现叠加在与所述一个或多个附加采集位置相关的所生成的局部楼层平面图上的视觉指示。
A15.如条款A01至A14中任一项所述的计算机实施的方法,其中,分析所述第一图像的所述视觉数据还包括:对于所述两个或更多个房间中的每一个,确定所述房间中的门道或非门道墙壁开口中的至少一个的位置,其中,生成所述建筑物的所述局部楼层平面图涉及包括所述两个或更多个房间的所述限定的房间形状中的信息,以对于所述两个或更多个房间中的每一个,识别所述房间的墙壁和所述房间的所述门道或所述非门道墙壁开口中的所述至少一个在所述房间中的位置,并且其中,提供所述信息还包括:呈现具有添加的信息的视觉指示的所生成的局部楼层平面图的视觉表示,以识别所述房间的所述墙壁和所述房间的所述门道或所述非门道墙壁开口中的所述至少一个在所述两个或更多个房间中的每一个中的位置。
A16.如条款A01至A15中任一项所述的计算机实施的方法,
其中,所述两个或更多个房间包括第一房间,所述第一房间是所述多个房间的子集,并且其中,所述自动化操作还包括:在提供包括所生成的局部楼层平面图的所述视觉表示的所述信息之后:
在所述建筑物的附加第二房间中的多个第二采集位置处采集多个附加第二图像,其中,所述第二采集位置包括所述附加采集位置;
分析所述附加第二图像的附加视觉数据,以生成所述附加第二房间的附加房间形状;
生成所述建筑物的第二局部楼层平面图,所述第二局部楼层平面图包括相对于彼此定位的所述附加第二房间的所述附加房间形状;
确定所述第一图像的所述视觉数据和所述附加第二图像的所述附加视觉数据缺乏所述第一房间和所述附加第二房间之间的视觉重叠信息;
确定与所述建筑物的在其处以采集进一步图像的一个或多个进一步采集位置相关的附加指引,以提供所述第一房间和所述附加第二房间之间的所述视觉重叠信息;以及
提供更新的信息,所述更新的信息包括所生成的局部楼层平面图和所生成的第二局部楼层平面图的视觉表示,并且还包括与所述一个或多个进一步采集位置相关的所确定的附加指引。
A17.如条款A16所述的计算机实施的方法,
其中,所述自动化操作还包括在提供所述更新的信息之后:
在多个附加第三采集位置处采集多个附加第三图像,其中,所述第三采集位置包括所述进一步采集位置;
分析所述附加第三图像的进一步视觉数据,包括确定所述第一房间和所述附加第二房间之间的所述视觉重叠信息,
生成所述建筑物的完整楼层平面图,所述完整楼层平面图包括相对于彼此定位的所生成的局部楼层平面图和所生成的第二局部楼层平面图;以及
提供所生成的完整楼层平面图的视觉表示,以能够对所述建筑物进一步导航。
A18.如条款A01至A17中任一项所述的计算机实施的方法,其中,确定与所述建筑物的所述一个或多个附加采集位置相关的所述指引基于在所述第一图像的所述视觉数据中识别的一个或多个问题,并且包括生成用于校正所述一个或多个问题的一个或多个指令。
A19.如条款A18所述的计算机实施的方法,其中,对于所述第一采集位置中的至少一个,识别所述第一图像的所述视觉数据中的所述一个或多个问题基于以下至少一个:从所述至少一个第一采集位置到至少一个墙壁的距离、或挡住与包括所述至少一个第一采集位置的所述房间分开的另一个房间的视图的至少一个门、或包括所述至少一个第一采集位置的所述房间中的挡住所述房间的至少一些的至少一个物体、或未被包括在所述两个或更多个房间中的至少一种类型的房间、或缺乏所述第一图像中的至少两个的视觉数据之间的图像间视线。
A20.如条款A01至A19中任一项所述的计算机实施的方法,其中,提供所述信息包括:向参与采集所述建筑物的图像的用户,呈现所生成的局部楼层平面图和与所述一个或多个附加采集位置相关的所确定的指引,包括呈现以下至少一个:所述附加采集位置中的一个在所呈现的生成的局部楼层平面图上的位置、或在所呈现的生成的局部楼层平面图上的朝向所述附加采集位置中的一个移动的方向、或要打开的门在所呈现的生成的局部楼层平面图上的位置、或要移动的障碍物在所呈现的生成的局部楼层平面图上的位置、或要围绕移动的障碍物在所呈现的生成的局部楼层平面图上的位置、或描述所述附加采集位置中的一个在所呈现的生成的局部楼层平面图上的位置的文本方向(textual direction)、或描述朝向所述附加采集位置中的一个移动的方向的文本方向、或描述要打开的门的文本方向、或描述要移动的障碍物的文本方向、或描述要围绕移动的障碍物的文本方向、或描述未被包括在所述两个或更多个房间中并且在其中采集至少一个附加图像的至少一种类型的房间的文本方向。
A21.如条款A01至A20中任一项所述的计算机实施的方法,其中,所述至少一个计算装置是具有一个或多个相机的移动计算装置,其中,所述第一图像各自是具有围绕竖直轴的360度水平视觉覆盖范围的全景图像,其中,在不使用来自任何深度感测传感器的关于到周围表面的距离的任何深度信息的情况下执行采集所述第一图像,并且包括使用所述至少一个计算装置的一个或多个惯性测量单元(IMU)传感器以采集移动数据,并且其中,所述自动化操作还包括:
对于所述第一图像中的每一个,至少部分地基于在采集所述第一全景图像期间由所述一个或多个IMU传感器采集的移动数据并且基于所述第一图像的视觉数据,确定采集姿势信息,
并且其中,确定用于所述一个或多个第一图像中的每一个的所述初始估计房间形状是部分地基于所述一个或多个第一图像中的每一个的相应确定的采集姿势信息。
A22.如条款A01至A21中任一项所述的计算机实施的方法,其中所述自动化操作还包括以下至少一个:
确定与所述两个或更多个房间的一个或多个墙壁相关的不确定性信息,并且至少部分地基于所确定的不确定性信息,将所述一个或多个墙壁从所生成的初始房间形状中排除;或
确定与所述两个或更多个房间的一个或多个墙壁相关的不确定性信息,并且在所生成的初始房间形状中,表示所述一个或多个墙壁的所确定的不确定性信息;或
对于所述两个或更多个房间中的每一个,通过使用一个或多个经训练的机器学习模型识别所述房间的地板或天花板中的至少一个与所述房间的墙壁之间的边界,执行生成所述两个或更多个房间的所述初始房间形状,并且将所述房间的所述初始房间形状创建为所述房间的所述墙壁的二维表示;或
对于所述两个或更多个房间中的每一个,通过生成具有表示所述房间的墙壁的平面表面的三维模型,执行生成所述两个或更多个房间的所述初始房间形状,并且将所生成的三维模型用作所述房间的所述初始房间形状;或
对于所述两个或更多个房间中的每一个,通过生成具有表示所述房间的墙壁上的点的多个三维数据点的三维模型,执行生成所述两个或更多个房间的所述初始房间形状,并且将所生成的三维模型用作所述房间的所述初始房间形状;或
将所生成的局部楼层平面图拟合到所述建筑物的在所述建筑物的俯视图像上可见的廓线的部分,并且通过向参与采集所述建筑物的图像的用户并且基于所述拟合呈现叠加在所述建筑物的所述俯视图像上的所生成的局部楼层平面图,执行提供所述信息;或
将所生成的局部楼层平面图拟合到所述建筑物的在所述建筑物的俯视图像上可见的廓线的部分,并且通过向参与采集所述建筑物的图像的用户并且基于所述拟合在与所述一个或多个附加采集位置相关的一个或多个位置处呈现叠加在所述建筑物的所述俯视图像上的所确定的指引,执行提供所述信息;或
将所生成的局部楼层平面图拟合到多个限定的平面图模板中的一个的部分,并且通过向参与采集所述建筑物的图像的用户并且基于所述拟合呈现叠加在所述一个限定的平面图模板上的所生成的局部楼层平面图,执行提供所述信息;或
将所生成的局部楼层平面图拟合到多个限定的平面图模板中的一个的部分,并且通过向参与采集所述建筑物的图像的用户并且基于所述拟合在与所述一个或多个附加采集位置相关的一个或多个位置处呈现叠加在所述一个限定的平面图模板上的所确定的指引,执行提供所述信息。
A23.如条款A01至A22中任一项所述的计算机实施的方法,其中,具有所述一个或多个相机的所述一个计算装置是移动计算装置,并且所述一个或多个计算装置仅包括所述移动计算装置,其中,在用户的控制下执行所述第一图像的采集,并且其中,提供所述信息包括:在图形用户界面中向所述用户显示所生成的测绘信息的视觉表示和所确定的指引。
A24.如条款A01至A23中任一项所述的计算机实施的方法,
其中,所述两个或更多个第一采集位置在所述建筑物的两个或更多个房间中,
其中,生成所述一个或多个初始房间形状涉及生成所述两个或更多个房间的初始房间形状,包括使用所述组合产生所述至少一个房间的所述初始房间形状,并且还包括通过将对于在所述单个采集位置处采集的所述第一图像生成的所述形状选择为所述另一个房间的所述附加初始房间形状,产生所述两个或更多个房间中的包括所述第一采集位置中的仅一个的另一个房间的附加初始房间形状,
其中,所生成的局部测绘信息包括所述建筑物的具有相对于彼此定位的所述两个或更多个房间的限定的房间形状的局部楼层平面图,
其中,生成所述局部测绘信息还包括:
通过所述一个或多个计算装置,至少部分地基于所述第一图像之间的所述视觉重叠,确定所述两个或更多个房间的相对定位;以及
通过所述一个或多个计算装置,使用所确定的相对定位,将所述两个或更多个房间的所生成的初始房间形状相对于彼此定位,
其中,生成所述分割掩码是对于所述两个或更多个房间的所定位的生成的初始房间形状的区域,以及
其中,根据所确定的多边形形状产生所述一个或多个限定的房间形状包括:将所确定的多边形形状分成所述两个或更多个房间的所述限定的房间形状。
A25.如条款A24所述的计算机实施的方法,其中,生成所述两个或更多个房间的所述定位的生成的初始房间形状的所述区域的所述分割掩码还包括:确定用于所述两个或更多个房间中的每一个的单独的二元分割掩码,并且将所述单独的二元分割掩码进行组合,以生成所述两个或更多个房间的所定位的生成的初始房间形状的所述区域的整体二元分割掩码。
A26.如条款A01至A25中任一项所述的计算机实施的方法,其中,所述自动化操作还包括:采集所述附加图像,并且使用所述附加图像的附加视觉数据以完成生成所述建筑物的所述测绘信息,并且呈现所述测绘信息,以使得一个或多个用户能够与所呈现的测绘信息进行交互,并且其中,所述建筑物的所述测绘信息包括所述建筑物的内部的三维模型或具有在所述第一图像和所述附加图像中的至少一些之间的表示至少图像间方向的用户可选择互连的虚拟巡视中的至少一个。
A27.一种计算机实施的方法,包括多个步骤以执行自动化操作,所述自动化操作实施基本上如本文所公开的所描述的技术。
B01.一种非暂时性计算机可读介质,存储有可执行软件指令和/或其他存储的内容,所述可执行软件指令和/或其他存储的内容致使一个或多个计算系统执行自动化操作,所述自动化操作实施条款A01至A27中任一项所述的方法。
B02.一种非暂时性计算机可读介质,存储有可执行软件指令和/或其他存储的内容,所述可执行软件指令和/或其他存储的内容致使一个或多个计算系统执行自动化操作,所述自动化操作实施基本上如本文所公开的所描述的技术。
C01.一种或多种计算系统,包括一个或多个硬件处理器和存储有指令的一个或多个存储器,所述指令在由所述一个或多个硬件处理器中的至少一个执行时,致使所述一种或多种计算系统执行自动化操作,所述自动化操作实施条款A01至A27中任一项所述的方法。
C02.一种或多种计算系统,包括一个或多个硬件处理器和存储有指令的一个或多个存储器,所述指令在被所述一个或多个硬件处理器中的至少一个执行时,致使所述一种或多种计算系统执行自动化操作,所述自动化操作实施基本上如本文所公开的所描述的技术。
D01.一种计算机程序,当所述计算机程序在计算机上运行时,所述计算机程序适于执行条款A01至A27中任一项所述的方法。
本文参考根据本公开的实施方式的方法、设备(系统)和计算机程序产品的流程图说明和/或框图来描述本公开的方面。将了解,可以通过计算机可读程序指令来实施流程图说明和/或框图的每个框以及流程图说明和/或框图中的框的组合。将进一步了解,在一些实施方式中,可以以替代性方式提供由上文讨论的例程提供的功能,诸如划分到更多的例程当中或者合并到更少的例程中。类似地,在一些实施方式中,所说明的例程可以提供比所描述的功能更多或更少的功能,诸如在其他所说明的例程相应地改为缺少或包括这种功能时,或者在所提供的功能的量变更时。另外,尽管各种操作可以被说明为按特定方式(例如,串行或并行或者同步或异步)和/或按特定顺序执行,但在其他实施方式中,可以按其他顺序和其他方式执行操作。上文讨论的任何数据结构也可以按不同方式结构化,诸如通过将单个数据结构划分成多个数据结构和/或通过使多个数据结构合并成单个数据结构。类似地,在一些实施方式中,所说明的数据结构可以存储比所描述的信息更多或更少的信息,诸如在其他所说明的数据结构相应地改为缺少或包括这种信息时,或者在所存储的信息的量或类型变更时。
根据上述内容,将了解,尽管出于说明的目的在本文中已描述了具体实施方式,但是在不脱离本发明的精神和范围的情况下,可以做出各种修改。因此,除受对应的权利要求和那些权利要求所叙述的元素的限制外,本发明不受限制。另外,尽管在某些时候可以以某些权利要求形式呈现本发明的某些方面,但是本发明人设想以任何可用权利要求形式的本发明的各种方面。例如,尽管在特定时候仅本发明的一些方面可以被叙述为体现在计算机可读存储介质中,但是同样可以这样体现其他方面。

Claims (20)

1.一种系统,包括:
一个或多个计算装置的一个或多个硬件处理器;以及
一个或多个存储器,其存储有指令,所述指令在由所述一个或多个硬件处理器中的至少一个执行时,致使所述一个或多个计算装置中的至少一个计算装置执行自动化操作,所述自动化操作至少包括:
对于具有多个房间的建筑物,获得在所述多个房间中的两个或更多个房间中的两个或更多个第一采集位置处采集的两个或更多个第一图像,其中,所述第一图像中的每一个均具有对所述两个或更多个房间中的包括所述第一图像的相应第一采集位置的一个房间的至少一些墙壁的视觉覆盖范围;
分析所述第一图像的视觉数据,以生成所述两个或更多个房间的初始房间形状,包括对于所述第一图像中的每一个,生成其中定位有所述第一图像的所述相应第一采集位置的所述一个房间的形状,并且所述一个房间的形状包括所述一个房间的所述至少一些墙壁的表示;
生成所述建筑物的具有相对于彼此定位的所述两个或更多个房间的限定的房间形状的局部楼层平面图,包括:
至少部分地基于所述第一图像的所述视觉数据,确定所述两个或更多个房间的相对定位,并且基于所确定的相对定位,将所述两个或更多个房间的所生成的初始房间形状相对于彼此定位;以及
生成所述两个或更多个房间的所定位的生成的初始房间形状的区域的分割掩码;
确定表示相对于彼此定位的所述两个或更多个房间的所生成的分割掩码的多边形形状;以及
将所确定的多边形形状分成所述两个或更多个房间的所述限定的房间形状;
至少部分地基于与所生成的局部楼层平面图相关的信息,确定与所述建筑物的在其处以采集一个或多个附加图像的一个或多个附加采集位置相关的指引;以及
提供包括所生成的局部楼层平面图和与所述一个或多个附加采集位置相关的所确定的指引的信息,以致使在所述一个或多个附加采集位置处要采集的附加图像用于生成所述建筑物的完整楼层平面图。
2.如权利要求1所述的系统,其中,所述至少一个计算装置是具有一个或多个相机的移动计算装置,其中,获得所述第一图像包括由所述移动计算装置在用户的控制下采集所述第一图像,并且其中,提供所述信息包括在图形用户界面中并且向所述用户显示所生成的局部楼层平面图的视觉表示和所确定的指引。
3.如权利要求1所述的系统,其中,生成所述两个或更多个房间的所定位的生成的初始房间形状的所述区域的所述分割掩码包括:确定用于所述两个或更多个房间中的每一个的单独的二元分割掩码,并且将所述单独的二元分割掩码进行组合,以生成所述两个或更多个房间的所定位的生成的初始房间形状的所述区域的整体二元分割掩码。
4.如权利要求1所述的系统,其中,分析所述第一图像的所述视觉数据还包括:确定所述第一图像之间的视觉重叠,并且其中,至少部分地基于所述第一图像的所述视觉数据确定所述两个或更多个房间的所述相对定位包括:使用所确定的视觉重叠来识别所述相对定位。
5.如权利要求1所述的系统,其中,分析所述第一图像的所述视觉数据包括:对于所述两个或更多个房间中的每一个,确定用于所述房间的一个或多个墙壁的定位的不确定性信息,并且其中,确定与一个或多个附加采集位置相关的所述指引包括:选择所述附加采集位置中的至少一个,以减少所确定的所述两个或更多个房间中的至少第一房间的至少一个墙壁的不确定性信息。
6.如权利要求5所述的系统,其中,所述第一图像中的每一个的所生成的形状是其中定位有所述第一图像的所述相应的第一采集位置的所述一个房间的至少局部房间形状,其中,所述第一房间包括在其处采集所述第一图像中的仅一个的所述两个或更多个第一采集位置中的仅一个,其中,所述两个或更多个房间中的第二房间包括在其处采集所述第一图像中的多个的所述两个或更多个第一采集位置中的多个,
其中,生成所述两个或更多个房间的所述初始房间形状还包括:
为了产生所述第二房间的所述初始房间形状,将在所述第二房间中所包括的所述多个第一采集位置处采集的多个图像的所述至少局部房间形状进行组合,包括基于所述组合减少所确定的所产生的初始房间形状的至少一个墙壁的不确定性信息;以及
为了产生所述第一房间的所述初始房间形状,选择在所述第一房间中所包括的仅一个第一采集位置处采集的仅一个第一图像的所述至少局部房间形状,以用作所述第一房间的所述初始房间形状,包括在所述第一房间的所产生的初始房间形状中,保留所确定的所述第一房间的所述一个或多个墙壁的不确定性信息,并且其中,提供包括所生成的局部楼层平面图的所述视觉表示的所述信息还包括:呈现具有关于至少所述第一房间的墙壁的定位的不确定性信息的视觉指示的所生成的局部楼层平面图的视觉表示,以及呈现叠加在与所述一个或多个附加采集位置相关的所生成的局部楼层平面图上的视觉指示。
7.如权利要求1所述的系统,其中,分析所述第一图像的所述视觉数据还包括:对于所述两个或更多个房间中的每一个,确定所述房间中的门道或非门道墙壁开口中的至少一个的位置,其中,生成所述建筑物的所述局部楼层平面图涉及包括所述两个或更多个房间的所述限定的房间形状中的信息,以对于所述两个或更多个房间中的每一个,识别所述房间的墙壁和所述房间的所述门道或所述非门道墙壁开口中的所述至少一个在所述房间中的位置,并且其中,提供所述信息还包括:呈现具有添加的信息的视觉指示的所生成的局部楼层平面图的视觉表示,以识别所述房间的所述墙壁和所述房间的所述门道或所述非门道墙壁开口中的所述至少一个在所述两个或更多个房间中的每一个中的位置。
8.如权利要求1所述的系统,其中,所述两个或更多个房间包括第一房间,所述第一房间是所述多个房间的子集,并且其中,所述自动化操作还包括:在提供包括所生成的局部楼层平面图的所述视觉表示的所述信息之后:
在所述建筑物的附加第二房间中的多个第二采集位置处采集多个附加第二图像,其中,所述第二采集位置包括所述附加采集位置;
分析所述附加第二图像的附加视觉数据,以生成所述附加第二房间的附加房间形状;
生成所述建筑物的第二局部楼层平面图,所述第二局部楼层平面图包括相对于彼此定位的所述附加第二房间的所述附加房间形状;
确定所述第一图像的所述视觉数据和所述附加第二图像的所述附加视觉数据缺乏所述第一房间和所述附加第二房间之间的视觉重叠信息;
确定与所述建筑物的在其处以采集进一步图像的一个或多个进一步采集位置相关的附加指引,以提供所述第一房间和所述附加第二房间之间的所述视觉重叠信息;以及
提供更新的信息,所述更新的信息包括所生成的局部楼层平面图和所生成的第二局部楼层平面图的视觉表示,并且还包括与所述一个或多个进一步采集位置相关的所确定的附加指引。
9.如权利要求8所述的系统,其中,所述自动化操作还包括在提供所述更新的信息之后:
在多个附加第三采集位置处采集多个附加第三图像,其中,所述第三采集位置包括所述进一步采集位置;
分析所述附加第三图像的进一步视觉数据,包括确定所述第一房间和所述附加第二房间之间的所述视觉重叠信息,
生成所述建筑物的完整楼层平面图,所述完整楼层平面图包括相对于彼此定位的所生成的局部楼层平面图和所生成的第二局部楼层平面图;以及
提供所生成的完整楼层平面图的视觉表示,以能够对所述建筑物进一步导航。
10.如权利要求1所述的系统,其中,确定与所述建筑物的所述一个或多个附加采集位置相关的所述指引基于在所述第一图像的所述视觉数据中识别的一个或多个问题,并且包括生成用于校正所述一个或多个问题的一个或多个指令,并且其中,对于所述第一采集位置中的至少一个,识别所述第一图像的所述视觉数据中的所述一个或多个问题基于以下至少一个:从所述至少一个第一采集位置到至少一个墙壁的距离、或挡住与包括所述至少一个第一采集位置的所述房间分开的另一个房间的视图的至少一个门、或包括所述至少一个第一采集位置的所述房间中的挡住所述房间的至少一些的至少一个物体、或未被包括在所述两个或更多个房间中的至少一种类型的房间、或缺乏所述第一图像中的至少两个的视觉数据之间的图像间视线。
11.如权利要求1所述的系统,其中,提供所述信息包括:向参与采集所述建筑物的图像的用户,呈现所生成的局部楼层平面图和与所述一个或多个附加采集位置相关的所确定的指引,包括呈现以下至少一个:所述附加采集位置中的一个在所呈现的生成的局部楼层平面图上的位置、或在所呈现的生成的局部楼层平面图上的朝向所述附加采集位置中的一个移动的方向、或要打开的门在所呈现的生成的局部楼层平面图上的位置、或要移动的障碍物在所呈现的生成的局部楼层平面图上的位置、或要围绕移动的障碍物在所呈现的生成的局部楼层平面图上的位置、或描述所述附加采集位置中的一个在所呈现的生成的局部楼层平面图上的位置的文本方向、或描述朝向所述附加采集位置中的一个移动的方向的文本方向、或描述要打开的门的文本方向、或描述要移动的障碍物的文本方向、或描述要围绕移动的障碍物的文本方向、或描述未被包括在所述两个或更多个房间中并且在其中采集至少一个附加图像的至少一种类型的房间的文本方向。
12.如权利要求1所述的系统,其中,所述自动化操作还包括以下至少一个:
确定与所述两个或更多个房间的一个或多个墙壁相关的不确定性信息,并且至少部分地基于所确定的不确定性信息,将所述一个或多个墙壁从所生成的初始房间形状中排除;或
确定与所述两个或更多个房间的一个或多个墙壁相关的不确定性信息,并且在所生成的初始房间形状中,表示所述一个或多个墙壁的所确定的不确定性信息;或
对于所述两个或更多个房间中的每一个,通过使用一个或多个经训练的机器学习模型识别所述房间的地板或天花板中的至少一个与所述房间的墙壁之间的边界,执行生成所述两个或更多个房间的所述初始房间形状,并且将所述房间的所述初始房间形状创建为所述房间的所述墙壁的二维表示;或
对于所述两个或更多个房间中的每一个,通过生成具有表示所述房间的墙壁的平面表面的三维模型,执行生成所述两个或更多个房间的所述初始房间形状,并且将所生成的三维模型用作所述房间的所述初始房间形状;或
对于所述两个或更多个房间中的每一个,通过生成具有表示所述房间的墙壁上的点的多个三维数据点的三维模型,执行生成所述两个或更多个房间的所述初始房间形状,并且将所生成的三维模型用作所述房间的所述初始房间形状;或
将所生成的局部楼层平面图拟合到所述建筑物的在所述建筑物的俯视图像上可见的廓线的部分,并且通过向参与采集所述建筑物的图像的用户并且基于所述拟合呈现叠加在所述建筑物的所述俯视图像上的所生成的局部楼层平面图,执行提供所述信息;或
将所生成的局部楼层平面图拟合到所述建筑物的在所述建筑物的俯视图像上可见的廓线的部分,并且通过向参与采集所述建筑物的图像的用户并且基于所述拟合在与所述一个或多个附加采集位置相关的一个或多个位置处呈现叠加在所述建筑物的所述俯视图像上的所确定的指引,执行提供所述信息;或
将所生成的局部楼层平面图拟合到多个限定的平面图模板中的一个的部分,并且通过向参与采集所述建筑物的图像的用户并且基于所述拟合呈现叠加在所述一个限定的平面图模板上的所生成的局部楼层平面图,执行提供所述信息;或
将所生成的局部楼层平面图拟合到多个限定的平面图模板中的一个的部分,并且通过向参与采集所述建筑物的图像的用户并且基于所述拟合在与所述一个或多个附加采集位置相关的一个或多个位置处呈现叠加在所述一个限定的平面图模板上的所确定的指引,执行提供所述信息。
13.一种计算机实施的方法,包括:
由具有一个或多个相机的计算装置,对于具有多个房间的建筑物,采集所述多个房间中的两个或更多个房间的两个或更多个第一图像,其中,所述第一图像包括在所述两个或更多个房间中的两个或更多个第一采集位置中的每一个处的图像,并且其中,所述第一图像中的每一个均具有所述两个或更多个房间中的其中定位有所述第一图像的相应第一采集位置的一个房间的至少一些墙壁的视觉覆盖范围;
通过所述计算装置,分析所述第一图像的视觉数据,以生成所述两个或更多个房间的至少局部房间形状,并且确定所述第一图像之间的视觉重叠,包括对于所述第一图像中的每一个,生成其中定位有所述第一图像的所述相应第一采集位置的所述一个房间的至少局部房间形状,并且所述至少局部房间形状包括所述一个房间的所述至少一些墙壁的至少二维(2D)表示;
通过所述计算装置,生成所述建筑物的具有相对于彼此定位的所述两个或更多个房间的房间形状的局部楼层平面图,包括:
通过所述计算装置,至少部分地基于所述第一图像之间的所述视觉重叠确定所述两个或更多个房间的相对定位;
通过所述计算装置,使用来自所述第一图像的所确定的相对定位和所生成的至少局部房间形状,将所述两个或更多个房间的所述至少局部房间形状相对于彼此定位;
通过所述计算装置,生成所述两个或更多个房间的所定位的至少局部房间形状的区域的分割掩码,包括组合用于所述两个或更多个房间中的每一个的单独的分割掩码;
通过所述计算装置,确定表示相对于彼此定位的所述两个或更多个房间的所生成的分割掩码的多边形形状;以及
通过所述计算装置,将所确定的多边形形状分成相对于彼此定位的所述两个或更多个房间的所述房间形状;
通过所述计算装置,至少部分地基于所生成的局部楼层平面图,确定与所述建筑物的在其处以采集一个或多个附加图像的一个或多个附加采集位置相关的指引;以及
通过所述计算装置,呈现包括所生成的局部楼层平面图的视觉表示和与所述一个或多个附加采集位置相关的所确定的指引的信息,以致使在所述一个或多个附加采集位置处要采集的附加图像用于生成所述建筑物的完整楼层平面图。
14.如权利要求13所述的计算机实施的方法,其中,分析所述第一图像的所述视觉数据还包括:对于所述两个或更多个房间中的每一个,确定用于定位所述房间的一个或多个墙壁的不确定性信息,并且其中,确定与所述建筑物的在其处以采集附加图像的一个或多个附加采集位置相关的所述指引包括:将所述附加采集位置中的至少一个识别为在用于减少所述两个或更多个房间中的至少第一房间的至少一个墙壁的所确定的不确定性信息的位置。
15.如权利要求14所述的计算机实施的方法,其中,所述第一房间包括在其处采集所述第一图像中的仅一个的所述两个或更多个第一采集位置中的仅一个,其中,所述两个或更多个房间中的第二房间包括在其处采集所述第一图像中的多个的所述两个或更多个第一采集位置中的多个,
其中,生成所述两个或更多个房间的所述至少局部房间形状还包括:
通过所述计算装置,为了产生所述第二房间的所述局部房间形状,组合在所述第二房间中所包括的所述多个第一采集位置处采集的所述多个图像的所生成的至少局部房间形状,包括基于所述组合减少所产生的局部房间形状的至少一个墙壁的所确定的不确定性信息;以及
通过所述计算装置,为了产生所述第一房间的所述局部房间形状,选择在所述第一房间中所包括的所述仅一个第一采集位置处采集的所述仅一个第一图像的所生成的至少局部房间形状,以用作所述第一房间的所述局部房间形状,包括在所述第一房间的所产生的局部房间形状中,保留所述第一房间的所述一个或多个墙壁的所确定的不确定性信息,
并且其中,呈现所生成的局部楼层平面图的所述视觉表示还包括:呈现关于至少所述第一房间的墙壁的定位的不确定性信息的视觉指示,以及呈现叠加在与所述一个或多个附加采集位置相关的所生成的局部楼层平面图上的视觉指示。
16.如权利要求13所述的计算机实施的方法,其中,分析所述第一图像的所述视觉数据还包括:对于所述两个或更多个房间中的每一个,确定所述房间中的门道或非门道墙壁开口中的至少一个的位置,
其中,生成所述建筑物的所述局部楼层平面图包括:对于所述两个或更多个房间中的每一个,将信息添加到所确定的多边形形状,以识别所述房间的墙壁和所述房间的所述门道或所述非门道墙壁开口中的所述至少一个在所述房间中的位置,
其中,呈现包括所生成的局部楼层平面图的所述视觉表示的所述信息还包括:呈现所添加的信息,以识别所述房间的所述墙壁和所述房间的所述门道或所述非门道墙壁开口中的所述至少一个在所述两个或更多个房间中的每一个中的位置,
其中,所述两个或更多个房间包括第一房间,所述第一房间是所述多个房间的子集,以及
其中,所述方法还包括在呈现包括所生成的局部楼层平面图的所述视觉表示的所述信息之后:
通过所述计算装置,在所述建筑物的附加第二房间中的多个第二采集位置处采集多个附加第二图像,其中,所述第二采集位置包括所述附加采集位置;
通过所述计算装置,分析所述附加第二图像的附加视觉数据,以生成所述附加第二房间的附加房间形状;
通过所述计算装置,生成所述建筑物的第二局部楼层平面图,所述第二局部楼层平面图包括相对于彼此定位的所述附加第二房间的所述附加房间形状;
通过所述计算装置,确定所述第一图像的所述视觉数据和所述附加第二图像的所述附加视觉数据缺乏所述第一房间和所述附加第二房间之间视觉重叠信息,以禁止将所述局部楼层平面图相对于所述第二局部楼层平面图进行定位;
通过所述计算装置,确定与所述建筑物的在其处以采集进一步图像的一个或多个进一步采集位置相关的附加指引,以提供所述第一房间和所述附加第二房间之间的所述视觉重叠信息;
通过所述计算装置,呈现更新的信息,所述更新的信息包括所生成的局部楼层平面图和所生成的第二局部楼层平面图的视觉表示,并且还包括与所述一个或多个进一步采集位置相关的所确定的附加指引;
通过所述计算装置,在多个附加第三采集位置处采集多个附加第三图像,其中,所述第三采集位置包括所述进一步采集位置;
通过所述计算装置,分析所述附加第三图像的进一步视觉数据,包括确定所述第一房间和所述附加第二房间之间的所述视觉重叠信息,
通过所述计算装置,生成所述建筑物的完整楼层平面图,所述完整楼层平面图包括相对于彼此定位的所生成的局部楼层平面图和所生成的第二局部楼层平面图;以及
通过所述计算装置,呈现所生成的完整楼层平面图的视觉表示,以能够对所述建筑物进一步导航。
17.一种非暂时性计算机可读介质,其存储有内容,所述内容致使一个或多个计算装置以执行自动化操作,所述自动化操作至少包括:
通过具有一个或多个相机的所述计算装置中的一个,在具有多个房间的建筑物中的两个或更多个第一采集位置处采集两个或更多个第一图像,其中,所述第一图像中的每一个均具有所述房间的其中定位有所述第一图像的相应第一采集位置的一个房间的至少一些墙壁的视觉覆盖范围;
通过所述一个或多个计算装置分析所述第一图像的视觉数据,以确定所述第一图像之间的视觉重叠,并且生成一个或多个初始房间形状,包括:
对于所述第一图像中的每一个,生成所述一个房间的其中定位有所述第一图像的所述相应第一采集位置的形状,并且所述形状包括所述一个房间的至少一些墙壁的表示;以及
对于包括所述第一采集位置中的至少两个的至少一个房间,组合用于在所述至少两个采集位置处采集的所述第一图像的所述房间的所生成的形状,以产生所述初始房间形状中的用于所述房间的一个;
通过所述一个或多个计算装置,使用包括所述第一采集位置的一个或多个房间的一个或多个限定的房间形状,生成所述建筑物的局部测绘信息,包括:
通过所述一个或多个计算装置,在反映所确定的视觉重叠的一个或多个位置处生成所生成的一个或多个初始房间形状的区域的分割掩码;
通过所述一个或多个计算装置,确定表示所述一个或多个房间的所生成的分割掩码的多边形形状;以及
通过所述一个或多个计算装置,根据所确定的多边形形状产生所述一个或多个限定的房间形状;
通过所述一个或多个计算装置,至少部分地基于与所生成的局部测绘信息相关的信息,确定与所述建筑物的在其处以采集一个或多个附加图像的一个或多个附加采集位置相关的指引;以及
通过所述一个或多个计算装置,提供包括所生成的局部测绘信息和与所述一个或多个附加采集位置相关的所确定的指引的信息,以能够在所述一个或多个附加采集位置处采集附加图像,以用于生成所述建筑物的完整测绘信息。
18.如权利要求17所述的非暂时性计算机可读介质,其中,具有所述一个或多个相机的所述一个计算装置是移动计算装置,并且所述一个或多个计算装置仅包括所述移动计算装置,其中,在用户的控制下执行所述第一图像的采集,并且其中,提供所述信息包括:在图形用户界面中向所述用户显示所生成的测绘信息的视觉表示和所确定的指引。
19.如权利要求17所述的非暂时性计算机可读介质,其中,所述两个或更多个第一采集位置在所述建筑物的两个或更多个房间中,
其中,生成所述一个或多个初始房间形状涉及生成所述两个或更多个房间的初始房间形状,包括使用所述组合产生所述至少一个房间的所述初始房间形状,并且还包括通过将对于在所述单个采集位置处采集的所述第一图像生成的所述形状选择为所述另一个房间的所述附加初始房间形状,产生所述两个或更多个房间中的包括所述第一采集位置中的仅一个的另一个房间的附加初始房间形状,
其中,所生成的局部测绘信息包括所述建筑物的具有相对于彼此定位的所述两个或更多个房间的限定的房间形状的局部楼层平面图,
其中,生成所述局部测绘信息还包括:
通过所述一个或多个计算装置,至少部分地基于所述第一图像之间的所述视觉重叠,确定所述两个或更多个房间的相对定位;以及
通过所述一个或多个计算装置,使用所确定的相对定位,将所述两个或更多个房间的所生成的初始房间形状相对于彼此定位,
其中,生成所述分割掩码是对于所述两个或更多个房间的所定位的生成的初始房间形状的区域,以及
其中,根据所确定的多边形形状产生所述一个或多个限定的房间形状包括:将所确定的多边形形状分成所述两个或更多个房间的所述限定的房间形状。
20.如权利要求17所述的非暂时性计算机可读介质,其中,所述自动化操作还包括:采集所述附加图像,并且使用所述附加图像的附加视觉数据以完成生成所述建筑物的所述测绘信息,并且呈现所述测绘信息,以使得一个或多个用户能够与所呈现的测绘信息进行交互,并且其中,所述建筑物的所述测绘信息包括所述建筑物的内部的三维模型或具有在所述第一图像和所述附加图像中的至少一些之间的表示至少图像间方向的用户可选择互连的虚拟巡视中的至少一个。
CN202310218697.9A 2022-07-25 2023-03-01 用于建筑物测绘信息的增量生成的自动化工具 Pending CN117456040A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/872,914 US20240029352A1 (en) 2022-07-25 2022-07-25 Automated Tools For Incremental Generation Of Building Mapping Information
US17/872,914 2022-07-25

Publications (1)

Publication Number Publication Date
CN117456040A true CN117456040A (zh) 2024-01-26

Family

ID=84330785

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310218697.9A Pending CN117456040A (zh) 2022-07-25 2023-03-01 用于建筑物测绘信息的增量生成的自动化工具

Country Status (5)

Country Link
US (1) US20240029352A1 (zh)
EP (1) EP4312143A1 (zh)
CN (1) CN117456040A (zh)
AU (1) AU2022259701A1 (zh)
CA (1) CA3179379A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117808324A (zh) * 2024-02-27 2024-04-02 西安麦莎科技有限公司 一种无人机视觉协同的建筑进度评估方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220164493A1 (en) * 2019-08-28 2022-05-26 Zillow, Inc. Automated Tools For Generating Mapping Information For Buildings
US11481925B1 (en) * 2020-11-23 2022-10-25 Zillow, Inc. Automated determination of image acquisition locations in building interiors using determined room shapes

Also Published As

Publication number Publication date
US20240029352A1 (en) 2024-01-25
CA3179379A1 (en) 2024-01-25
AU2022259701A1 (en) 2024-02-08
EP4312143A1 (en) 2024-01-31

Similar Documents

Publication Publication Date Title
US11238652B2 (en) Presenting integrated building information using building models
AU2021240285B2 (en) Automated tools for generating building mapping information
CA3139429C (en) Automated determination of image acquisition locations in building interiors using determined room shapes
US11501492B1 (en) Automated room shape determination using visual data of multiple captured in-room images
EP4027301A1 (en) Automated determination of image acquisition locations in building interiors using multiple data capture devices
CA3145605C (en) Automated exchange and use of attribute information between building images of multiple types
EP4207069A1 (en) Automated building information determination using inter-image analysis of multiple building images
EP4312143A1 (en) Automated tools for incremental generation of building mapping information
EP4293562A1 (en) Automated tools for assessing building mapping information generation
EP4358026A1 (en) Automated determination of acquisition locations of acquired building images based on identified surrounding objects

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