IP Library Granted Patent US 11,769,287
Granted Patent B1
US 11,769,287 · App. 18/052,852 · Granted Sep 26, 2023

Systems and methods for automating conversion of drawings to indoor maps and plans

Inventors: Ege Çetintaş (Ankara, TR); Melih Peker (Ankara, TR); Umeyr Kiliç (Istanbul, TR); Can Tunca (Istanbul, TR)
Assignee: Pointr Limited
G06T11/60G06F30/13G06N20/00G06T11/20
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,769,287
App. No.
18/052,852
Granted
Sep 26, 2023
Kind
B1
Abstract

Automating conversion of drawings to indoor maps and plans. One example is a computer-implemented method of creating an indoor map from a CAD drawing, the method comprising: preprocessing an original CAD drawing to create a modified CAD drawing, a text database containing text from the original CAD drawing, a CAD vector-image of the modified CAD drawing, and a CAD raster-image of the modified CAD drawing; creating a floor-level outline; sensing furniture depicted on the floor, the sensing creates set of furniture entities; identifying a room depicted in the CAD drawing; and creating the indoor map for a floor using the floor-level outline, the room-level outline and the room identity.

Claims (92)

1. A computer-implemented method of creating an indoor map from a CAD drawing, the method comprising:

preprocessing, by a device, an original CAD drawing to create a modified CAD drawing, a text database containing text from the original CAD drawing, a CAD vector-image of the modified CAD drawing, and a CAD raster-image of the modified CAD drawing;

creating, by a device, a floor-level outline;

sensing, by a device, furniture depicted on the floor, the sensing creates set of furniture entities;

identifying, by a device, a room depicted in the CAD drawing by:

applying the floor-level outline and the CAD vector-image to a first machine-learning algorithm to produce a room-level bounding line and a first probability distribution regarding identity of the room;

applying the room-level bounding line and the text database to a second machine-learning algorithm to produce a second probability distribution regarding identity of the room;

applying the first and second probability distributions to a third machine-learning algorithm to generate a room identity; and

selecting, based on the room-level bounding line, a room-level outline; and

creating, by a device, the indoor map for a floor using the floor-level outline, the room-level outline, and the room identity.

2. The computer-implemented method of claim 1 wherein applying to the third machine-learning algorithm further comprises applying the furniture entities to the third machine-learning algorithm to generate the room identity.

3. The computer-implemented method of claim 1 wherein identifying the room further comprises identifying each room on the floor depicted in the CAD drawing, each room having a respective room-level segmentation mask and a respective room identity.

4. The computer-implemented method of claim 1 wherein selecting the room-level outline further comprises:

creating, by a device, an entity-based bounding line by applying the room-level bounding line to an entity-based post processing algorithm, the entity-based post processing algorithm creates the entity-based bounding line;

creating, by a device, a graph-based bounding line by applying the room-level bounding line to a graph-based post processing algorithm, the graph-based post processing algorithm generates the graph-based bounding line;

creating, by a device, a GAN-based bounding line by applying the room-level bounding line to a GAN-based post processing algorithm, the GAN-based post processing algorithm generates the GAN-based bounding line; and

choosing, by a device, only one of the entity-based bounding line, the graph-based bounding line, or the GAN-based bounding line be the room-level outline.

5. The computer-implemented method of claim 4 wherein choosing the room-level outline further comprises:

evaluating, by a device, the entity-based bounding line, the graph-based bounding line, and the GAN-based bounding line by a rule-based evaluator, the evaluating results in a rule-based selection;

evaluating, by a device, the entity-based bounding line, the graph-based bounding line, and the GAN-based bounding line by a selection machine-learning algorithm, the evaluating by the selection machine learning algorithm results in a ML-based selection; and

choosing, by device, only one of the rule-based selection or the ML-based selection to be the room-level outline.

6. The computer-implemented method of claim 4 wherein creating the room-level bounding line further comprises:

inflating the room-level bounding line to create an inflated bounding line;

deflating the room-level bounding line to create a deflated bounding line;

selecting a set of remaining entities based on the drawing entities that reside between the inflated bounding line and the deflated bounding line; and

creating the entity-based bounding line from the set of remaining entities.

7. The computer-implemented method of claim 6 wherein creating the entity-based bounding line further comprises:

grouping drawing entities with respect to slope, the grouping results in a plurality of groups of drawing entities; and

for each group of drawing entities, merging drawing entities that meet a predetermined distance criteria and a predetermined overlap criteria;

the grouping and merging result in the set of remaining drawing entities.

8. The computer-implemented method of claim 4 wherein creating the graph-based bounding line further comprises:

inflating the room-level bounding line to create an inflated bounding line;

deflating the room-level bounding line to create a deflated bounding line;

selecting a set of remaining entities being drawing entities that reside between the inflated bounding line and the deflated bounding line; and

creating the graph-based bounding line from the set of remaining entities.

9. The computer-implemented method of claim 8 wherein creating the graph-based bounding line further comprises:

grouping drawing entities of the set of remaining drawing entities with respect to slope, the grouping results in groups of drawing entities;

for each group of drawing entities, selecting an outer drawing entity closest to the room-level bounding line, the selecting for each group of drawing entities results in a set of outer line segments; and

extending at least one of line segment of the set of outer line segments; and

wherein creating the graph-based bounding line further comprises creating the graph-based bounding line from the set of outer line segments.

10. The computer-implemented method of claim 4 wherein creating the GAN-based bounding line further comprises:

creating, by a device, a first plurality of intermediate bounding lines by a first machine-learning algorithm;

creating, by a device, a second plurality of intermediate bounding lines by a second machine-learning algorithm;

creating the GAN-based bounding line by convolving the first plurality and second plurality of intermediate bounding lines.

11. The computer-implemented method of claim 10 :

wherein creating the first plurality of intermediate bounding lines further comprises applying a cropped raster image to the first machine-learning algorithm, the cropped raster image showing the room; and

wherein creating the second plurality of intermediate bounding lines further comprises applying the room-level bounding line to the second machine-learning algorithm.

12. A computer system comprising:

a processor;

a memory coupled to the processor, the memory storing instruction that, when executed by the processor, cause the processor to:

preprocess an original CAD drawing to create a modified CAD drawing, a text database containing text from the original CAD drawing, a CAD vector-image of the modified CAD drawing, and a CAD raster-image of the modified CAD drawing;

create a floor-level outline;

sense furniture depicted on the floor, the sensing creates set of furniture entities;

identify a room depicted in the CAD drawing by causing the processor to:

apply the floor-level outline and the CAD vector-image to a first machine-learning algorithm to produce a room-level bounding line and a first probability distribution regarding identity of the room;

apply the room-level bounding line and the text database to a second machine-learning algorithm to produce a second probability distribution regarding identity of the room;

apply the first and second probability distributions to a third machine-learning algorithm to generate a room identity; and

select, based on the room-level bounding line, a room-level outline; and

create an indoor map for a floor using the floor-level outline, the room-level outline, and the room identity.

13. The computer system of claim 12 wherein when the processor applies the first and second probability distributions to the third machine-learning algorithm, the instructions further cause the processor to apply the furniture entities to the third machine-learning algorithm to generate the room identity.

14. The computer system of claim 12 wherein when the processor selects the room-level outline, the instructions further cause the processor to:

create an entity-based bounding line by applying the room-level bounding line to an entity-based post processing algorithm, the entity-based post processing algorithm creates the entity-based bounding line;

create a graph-based bounding line by applying the room-level bounding line to a graph-based post processing algorithm, the graph-based post processing algorithm generates the graph-based bounding line;

create a GAN-based bounding line by applying the room-level bounding line to a GAN-based post processing algorithm, the GAN-based post processing algorithm generates the GAN-based bounding line; and

choose only one of the entity-based bounding line, the graph-based bounding line, or the GAN-based bounding line be the room-level outline.

15. The computer system of claim 14 wherein when the processor chooses the room-level outline, the processor further causes the processor to:

evaluate the entity-based bounding line, the graph-based bounding line, and the GAN-based bounding line by a rule-based evaluator, the evaluation results in a rule-based selection;

evaluate the entity-based bounding line, the graph-based bounding line, and the GAN-based bounding line by a selection machine-learning algorithm, the evaluating by the selection machine learning algorithm results in a ML-based selection; and

choose only one of the rule-based selection or the ML-based selection to be the room-level outline.

16. The computer system of claim 14 wherein when the processor creates the room-level bounding line, the instructions further cause the processor to:

inflate the room-level bounding line to create an inflated bounding line;

deflate the room-level bounding line to create a deflated bounding line;

select a set of remaining entities based on the drawing entities that reside between the inflated bounding line and the deflated bounding line; and

create the entity-based bounding line from the set of remaining entities.

17. The computer system of claim 16 wherein when the processor creates the entity-based bounding line, the instructions further cause the processor to:

group drawing entities with respect to slope, the grouping results in a plurality of groups of drawing entities; and

for each group of drawing entities, merge drawing entities that meet a predetermined distance criteria and a predetermined overlap criteria;

the grouping and merging result in the set of remaining drawing entities.

18. The computer system of claim 14 wherein when the processor creates the graph-based bounding line, the instructions further cause the processor to:

inflate the room-level bounding line to create an inflated bounding line;

deflate the room-level bounding line to create a deflated bounding line;

select a set of remaining entities being drawing entities that reside between the inflated bounding line and the deflated bounding line; and

create the graph-based bounding line from the set of remaining entities.

19. The computer system of claim 18 wherein when the processor creates the graph-based bounding line, the instructions further cause the processor to:

group drawing entities of the set of remaining drawing entities with respect to slope, the grouping results in groups of drawing entities;

for each group of drawing entities, select an outer drawing entity closest to the room-level bounding line, the selection for each group of drawing entities results in a set of outer line segments; and

extend at least one of line segment of the set of outer line segments; and

wherein when the processor creates the graph-based bounding line, the instructions further cause the processor to create the graph-based bounding line from the set of outer line segments.

20. The computer system of claim 14 wherein when the processor creates the GAN-based bounding line, the instructions further cause the processor to:

create a first plurality of intermediate bounding lines by a first machine-learning algorithm;

create a second plurality of intermediate bounding lines by a second machine-learning algorithm; and

create the GAN-based bounding line by convolving the first plurality and second plurality of intermediate bounding lines.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 4, 2022
From: CETINTAS, EGE; PEKER, MELIH; KILIC, UMEYR; TUNCA, CAN
To: POINTR LIMITED
Reel/Frame 061884/0704 →
Continuity (2)
Continuation 17732652 · Apr 29, 2022
Provisional Application 63318522 · Mar 10, 2022
Cited By (1)
US 12,511,804