IP Library Granted Patent US 11,928,873
Granted Patent B2
US 11,928,873 · App. 17/190,889 · Granted Mar 12, 2024

Systems and methods for efficient floorplan generation from 3D scans of indoor scenes

Inventor: Ameya Pramod Phalak (Sunnyvale, CA)
Assignee: Magic Leap, Inc.
G06V20/64G06F18/23G06F18/2431G06T7/55G06T17/00G06V10/7625G06V20/20G06T2207/10024G06T2207/10028G06T2207/20081G06T2210/04
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,928,873
App. No.
17/190,889
Granted
Mar 12, 2024
Kind
B2
Abstract

Methods, systems, and wearable extended reality devices for generating a floorplan of an indoor scene are provided. A room classification of a room and a wall classification of a wall for the room may be determined from an input image of the indoor scene. A floorplan may be determined based at least in part upon the room classification and the wall classification without constraining a total number of rooms in the indoor scene or a size of the room.

Claims (77)

1. A method for generating a floorplan of an indoor scene, comprising:

determining a wall classification of a wall in a room at least by classifying a first subset of entities of a plurality of entities in a higher-dimensional space as a first input for the wall classification into a first cluster from an input image of an indoor scene and further at least by determining a room classification of the room at least by classifying a second subset of entities of the plurality of entities as a second input for the wall classification into a second cluster based at least in part upon the first cluster, wherein the higher-dimensional space has a dimensionality greater than two; and

determining a floorplan at least by iterating over a grid pertaining to the plurality of entities based at least in part upon the room classification and the wall classification with an unrestricted number for rooms or walls and unrestricted shapes in the indoor scene, wherein

the floorplan comprises respective representations of a plurality of rooms or walls comprising a structure having a spatial extent that is smaller than one or more filtering size thresholds below which structural information is otherwise filtered out,

the spatial extent is smaller than the one or more filtering size thresholds, and

the structure having the spatial extent is represented as a respective representation of a specific room or a specific wall of the respective representations in the floor plan by using multiple hierarchies of spatial contexts and detail levels.

2. The method of claim 1 , wherein determining the room classification of the room and the wall classification of the wall comprises:

identifying the input image, wherein the input image comprises one higher-dimensional image or a sequence of higher-dimensional images from a scan of the indoor scene, wherein a higher-dimensional image comprises a higher dimensionality that is higher than a lower dimensionality of a two-dimension space; and

determining an input point cloud for the input image, wherein the floorplan comprises a first respective representation for the structure having the spatial extent that is smaller than the one or more filtering size threshold, and the floorplan is determined with an unrestricted maximum number of clusters for the rooms or the walls in the indoor scene.

3. The method of claim 2 , wherein determining the room classification of the room and further determining the wall classification of the wall further comprises:

identifying a first subset from the input point cloud for determining the room classification;

identifying a second subset from the input point cloud for determining the wall classification; and

training a deep network with at least a synthetic dataset.

4. The method of claim 3 , wherein determining the room classification of the room and determining the wall classification of the wall further comprises:

generating, at the deep network, one or more wall cluster labels for one or more first features represented in the first subset for the room; and

generating, at the deep network, one or more room cluster labels for one or more second features represented in the second subset for the wall.

5. The method of claim 4 , wherein generating the one or more room cluster labels and the wall cluster label comprise:

performing a nested partitioning on a set of features to divide the set of features into a plurality of overlapping local regions based at least in part upon a distance metric pertaining to the indoor scene; and

extracting a local feature that captures a geometric structure in the indoor scene at least by recursively performing semantic feature extraction on the nested partitioning of the set of features.

6. The method of claim 5 , wherein generating the one or more room cluster labels and a wall cluster label comprises:

abstracting the local feature into a higher-level feature or representation; and

adaptively weighing a plurality of local features at multiple, different scales or resolutions.

7. The method of claim 6 , wherein generating the one or more room cluster labels and a wall cluster label comprises:

combining the plurality of local features at the multiple, different scales or resolutions; and

assigning the one or more room cluster labels and the wall cluster label to a metric space for the indoor scene based at least in part upon the distance metric.

8. A system for generating a floorplan of an indoor scene, comprising:

a processor; and

memory operatively coupled to the processor and storing a sequence of instructions which, when executed by the processor, causes the processor to perform a set of acts, the set of acts comprising:

determining a wall classification of a wall in a room at least by classifying a first subset of entities of a plurality of entities in a higher-dimensional space as a first input for the wall classification into a first cluster from an input image of an indoor scene and further at least by determining a room classification of the room at least by classifying a second subset of entities of the plurality of entities as a second input for the wall classification into a second cluster based at least in part upon the first cluster, wherein the higher-dimensional space has a dimensionality greater than two; and

determining a floorplan at least by iterating over a grid pertaining to the plurality of entities based at least in part upon the room classification and the wall classification with an unrestricted number for rooms or walls in the indoor scene and unrestricted shapes, wherein

the floorplan comprises respective representations of a plurality of rooms or walls comprising a structure having a spatial extent that is smaller than one or more filtering size thresholds below which structural information is otherwise filtered out,

the spatial extent is smaller than the one or more filtering size thresholds, and

the structure having the spatial extent is represented as a respective representation of a specific room or a specific wall of the respective representations in the floor plan by using multiple hierarchies of spatial contexts and detail levels.

9. The system of claim 8 , the memory comprising the sequence of instructions which, when executed by the processor, causes the processor to perform determining the floorplan further comprises instructions which, when executed by the processor, causes the processor to perform the set of acts that further comprises:

generating a shape for the room using at least the room classification and the wall classification, wherein the room classification comprises a room cluster label assigned to or associated with the room, the wall classification comprises one or more wall cluster labels assigned to or associated with one or more walls of the room, and the one or more walls comprise the wall; and

generating the floorplan at least by aggregating or integrating an estimated room perimeter relative to a global coordinate system based at least in part upon the shape, wherein the shape comprises a polygon of a DeepPerimeter type, and the floorplan comprises a first respective representation for the structure having the spatial extent that is smaller than the one or more filtering size threshold, and the floorplan is determined with an unrestricted maximum number of clusters for the rooms or the walls in the indoor scene.

10. The system of claim 9 , the memory comprising the sequence of instructions which, when executed by the processor, causes the processor to perform generating the shape further comprises instructions which, when executed by the processor, causes the processor to perform the set of acts that further comprises:

performing a deep estimation on an RGB (red green blue) frame of the input image of the indoor scene; and

generating a depth map and a wall segmentation mask at least by using a multi-view depth estimation network and a segmentation module, wherein the segmentation module is based at least in part upon a PSPNet (Pyramid scene parsing network) and a ResNet (residual network).

11. The system of claim 10 , the memory comprising the sequence of instructions which, when executed by the processor, causes the processor to perform generating the shape further comprises instructions which, when executed by the processor, causes the processor to perform the set of acts that further comprises:

extracting a wall feature cloud at least by fusing one or more mask depth images with pose trajectory using a marching cube algorithm;

isolating a depth prediction corresponding to the wall feature cloud at least by training a deep segmentation network; and

projecting the depth prediction to a higher-dimensional feature cloud.

12. The system of claim 11 , the memory comprising the sequence of instructions which, when executed by the processor, causes the processor to perform generating the shape further comprises instructions which, when executed by the processor, causes the processor to perform the set of acts that further comprises:

clustering the higher-dimensional feature cloud into a plurality of clusters at least by detecting, at the deep segmentation network, one or more features that belong to a same plane instance; and

translating the plurality of clusters into a set of planes that forms a perimeter layout for the floorplan.

13. The system of claim 9 , the memory comprising the sequence of instructions which, when executed by the processor, causes the processor to perform generating the floorplan further comprises instructions which, when executed by the processor, causes the processor to perform the set of acts that further comprises:

identifying a room instance and a wall instance from a scan of the indoor scene; and

estimating a closed perimeter for the room instance.

14. The system of claim 13 , the memory comprising the sequence of instructions which, when executed by the processor, causes the processor to perform generating the floorplan further comprises instructions which, when executed by the processor, causes the processor to perform the set of acts that further comprises:

predicting a number of clusters at least by using a voting architecture; and

extracting a plurality of features at least by performing room or wall regression that computes the plurality of features at one or more scales.

15. A wearable extended reality device for generating a floorplan of an indoor scene, comprising;

an optical system having an array of micro-displays or micro-projectors to present digital contents to an eye of a user;

a processor coupled to the optical system; and

memory operatively coupled to the processor and storing a sequence of instructions which, when executed by the processor, causes the processor to perform a set of acts, the set of acts comprising:

determining a wall classification of a wall in a room at least by classifying a first subset of entities of a plurality of entities in a higher-dimensional space as a first input for the wall classification into a first cluster from an input image of an indoor scene and further at least by determining a room classification of the room at least by classifying a second subset of entities of the plurality of entities as a second input for the wall classification into a second cluster based at least in part upon the first cluster, wherein the higher-dimensional space has a dimensionality greater than two; and

determining a floorplan at least by iterating over a grid pertaining to the plurality of entities based at least in part upon the room classification and the wall classification with an unrestricted number for rooms or walls and unrestricted shapes in the indoor scene, wherein

the floorplan comprises respective representations of a plurality of rooms or walls comprising a structure having a spatial extent that is smaller than one or more filtering size thresholds below which structural information is otherwise filtered out,

the spatial extent is smaller than the one or more filtering size thresholds, and

the structure having the spatial extent is represented as a respective representation of a specific room or a specific wall of the respective representations in the floor plan by using multiple hierarchies of spatial contexts and detail levels.

16. The wearable extended reality device of claim 15 , the memory comprising the sequence of instructions which, when executed by the processor, causes the processor to perform determining the floorplan further comprises instructions which, when executed by the processor, causes the processor to perform the set of acts that further comprises:

generating a shape for the room using at least the room classification and the wall classification, wherein the room classification comprises a room cluster label assigned to or associated with the room, the wall classification comprises one or more wall cluster labels assigned to or associated with one or more walls of the room, and the one or more walls comprise the wall; and

generating the floorplan at least by aggregating or integrating an estimated room perimeter relative to a global coordinate system based at least in part upon the shape, wherein the shape comprises a polygon of a DeepPerimeter type, and the floorplan comprises a first respective representation for the structure having the spatial extent that is smaller than the one or more filtering size threshold, and the floorplan is determined with an unrestricted maximum number of clusters for the rooms or the walls in the indoor scene.

17. The wearable extended reality device of claim 16 , the memory comprising the sequence of instructions which, when executed by the processor, causes the processor to perform generating the shape further comprises instructions which, when executed by the processor, causes the processor to perform the set of acts that further comprises:

performing a deep estimation on an RGB (red green blue) frame of the input image of the indoor scene; and

generating a depth map and a wall segmentation mask at least by using a multi-view depth estimation network and a segmentation module, wherein the segmentation module is based at least in part upon a PSPNet (Pyramid scene parsing network) and a ResNet (residual network).

18. The wearable extended reality device of claim 17 , the memory comprising the sequence of instructions which, when executed by the processor, causes the processor to perform generating the shape further comprises instructions which, when executed by the processor, causes the processor to perform the set of acts that further comprises:

extracting a wall feature cloud at least by fusing one or more mask depth images with pose trajectory using a marching cube algorithm;

isolating a depth prediction corresponding to the wall feature cloud at least by training a deep segmentation network; and

projecting the depth prediction to a higher-dimensional feature cloud.

19. The wearable extended reality device of claim 18 , the memory comprising the sequence of instructions which, when executed by the processor, causes the processor to perform generating the shape further comprises instructions which, when executed by the processor, causes the processor to perform the set of acts that further comprises:

clustering the higher-dimensional feature cloud into a plurality of clusters at least by detecting, at the deep segmentation network, one or more features that belong to a same plane instance; and

translating the plurality of clusters into a set of planes that forms a perimeter layout for the floorplan.

20. The wearable extended reality device of claim 16 , the memory comprising the sequence of instructions which, when executed by the processor, causes the processor to perform generating the floorplan further comprises instructions which, when executed by the processor, causes the processor to perform the set of acts that further comprises:

identifying a room instance and a wall instance from a scan of the indoor scene; and

estimating a closed perimeter for the room instance.

Assignments (3)
SECURITY INTEREST Recorded Oct 28, 2025
From: MAGIC LEAP, INC.; MENTOR ACQUISITION ONE, LLC; MOLECULAR IMPRINTS, INC.
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 073388/0027 →
SECURITY INTEREST Recorded May 24, 2022
From: MOLECULAR IMPRINTS, INC.; MENTOR ACQUISITION ONE, LLC; MAGIC LEAP, INC.
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 060338/0665 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 4, 2021
From: PHALAK, AMEYA PRAMOD
To: MAGIC LEAP, INC.
Reel/Frame 055493/0702 →
Continuity (2)
Provisional Application 62985263 · Mar 4, 2020
Related Publication 20210279950A1 · Sep 9, 2021
Cited By (3)
US 12,518,407 US 12,554,687 US 12,705,835