IP Library Granted Patent US 12,499,135
Granted Patent B2
US 12,499,135 · App. 17/957,501 · Granted Dec 16, 2025

Computer systems and methods for identifying location entities and generating a location entity data taxonomy

Inventors: Azadeh Yazdan Panah Gohar Rizi (Richmond Hill, CA); Matt Man (Thornhill, CA); Taylor Wasser (Toronto, CA); Julian Clayton (Milford, CT)
Assignee: Procore Technologies, Inc.
G06F16/29G06V10/82G06V30/14G06V30/1456G06V30/147G06V30/18181G06V30/19153G06V30/30G06V30/422G06V20/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 12,499,135
App. No.
17/957,501
Granted
Dec 16, 2025
Kind
B2
Abstract

An example computing platform is configured to: obtain a two-dimensional drawing of a portion of a construction project; perform an image processing analysis of the two-dimensional drawing to identify one or more location entities within the two-dimensional drawing; derive embeddings for each location entity in the two-dimensional drawing; based on the derived embeddings, determine relationships between the one or more location entities; and based on the determined relationships between the one or more location entities, generate a location entity data taxonomy that includes each identified location entity as a respective node that is related to at least one other location entity.

Claims (57)

1 . A computing platform comprising:

at least one network interface;

at least one processor;

at least one non-transitory computer-readable medium; and

program instructions stored on the at least one non-transitory computer-readable medium that are executable by the at least one processor such that the computing platform is configured to:

obtain a two-dimensional drawing of a portion of a construction project;

perform an image processing analysis of the two-dimensional drawing to identify one or more location entities within the two-dimensional drawing;

derive embeddings for each location entity in the two-dimensional drawing;

based on the derived embeddings, determine relationships between the one or more location entities;

based on the determined relationships between the one or more location entities, generate a location entity data taxonomy that includes each identified location entity as a respective node that is related to at least one other location entity;

cause an end-user device to display a visualization of the location entity data taxonomy; and

cause the end-user device to filter the displayed visualization based on information about a given user associated with the end-user device, wherein the program instructions that are executable by the at least one processor such that the computing platform is configured to generate the location entity data taxonomy comprise program instructions that are executable by the at least one processor such that the computing platform is configured to:

apply one or more machine-learning models that are configured to receive the derived embeddings as input and output the location entity data taxonomy.

2 . The computing platform of claim 1 , wherein the program instructions that are executable by the at least one processor such that the computing platform is configured to obtain the two-dimensional drawing comprise program instructions that are executable by the at least one processor such that the computing platform is configured to:

obtain a first image file of the two-dimensional drawing that is composed of pixels; and

convert the first image file to a second image file of the two-dimensional drawing that is composed of instructions for arranging points, lines, and curves in the two-dimensional drawing.

3 . The computing platform of claim 1 , wherein the image processing analysis comprises utilizing one or more image processing techniques and thereby detecting at least one area representative of a location entity.

4 . The computing platform of claim 1 , wherein the image processing analysis comprises extracting information indicative of a location entity utilizing one or both of (i) optical character recognition or (ii) one or more natural language processing techniques.

5 . The computing platform of claim 1 , wherein the image processing analysis comprises detecting discrete areas within the two-dimensional drawing.

6 . The computing platform of claim 1 , wherein the derived embeddings comprise one or more of (i) position embedding data that indicates a relative position of a respective location entity within the two-dimensional drawing, (ii) image embedding data that indicates a region of interest where the respective location entity is located within the two-dimensional drawing, or (iii) text embedding data that represents one or more string sequences associated with the respective location entity.

7 . The computing platform of claim 1 , further comprising program instructions that are executable by the at least one processor such that the computing platform is configured to:

receive, from the end-user device, data indicating a selection of a given node of the location entity data taxonomy; and

after receiving the data indicating the selection, cause the end-user device to display taxonomy information for the given node.

8 . At least one non-transitory computer-readable medium, wherein the at least one non-transitory computer-readable medium is provisioned with program instructions that, when executed by at least one processor, cause a computing platform to:

obtain a two-dimensional drawing of a portion of a construction project;

perform an image processing analysis of the two-dimensional drawing to identify one or more location entities within the two-dimensional drawing;

derive embeddings for each location entity in the two-dimensional drawing;

based on the derived embeddings, determine relationships between the one or more location entities;

based on the determined relationships between the one or more location entities, generate a location entity data taxonomy that includes each identified location entity as a respective node that is related to at least one other location entity;

cause an end-user device to display a visualization of the location entity data taxonomy; and

cause the end-user device to filter the displayed visualization based on information about a given user associated with the end-user device, wherein the program instructions that are executable by the at least one processor such that the computing platform is configured to generate the location entity data taxonomy comprise program instructions that are executable by the at least one processor such that the computing platform is configured to:

apply one or more machine-learning models that are configured to receive the derived embeddings as input and output the location entity data taxonomy.

9 . The at least one non-transitory computer-readable medium of claim 8 , wherein the image processing analysis comprises utilizing one or more image processing techniques and thereby detecting at least one area representative of a location entity.

10 . The at least one non-transitory computer-readable medium of claim 8 , wherein the image processing analysis comprises extracting information indicative of a location entity utilizing one or both of (i) optical character recognition or (ii) one or more natural language processing techniques.

11 . The at least one non-transitory computer-readable medium of claim 8 , wherein the image processing analysis comprises detecting discrete areas within the two-dimensional drawing.

12 . The at least one non-transitory computer-readable medium of claim 8 , wherein the derived embeddings comprise one or more of (i) position embedding data that indicates a relative position of a respective location entity within the two-dimensional drawing, (ii) image embedding data that indicates a region of interest where the respective location entity is located within the two-dimensional drawing, or (iii) text embedding data that represents one or more string sequences associated with the respective location entity.

13 . The at least one non-transitory computer-readable medium of claim 8 , wherein the at least one non-transitory computer-readable medium is also provisioned with program instructions that, when executed by the at least one processor, cause the computing platform to:

receive, from the end-user device, data indicating a selection of a given node of the location entity data taxonomy; and

after receiving the data indicating the selection, cause the end-user device to display taxonomy information for the given node.

14 . A method carried out by a computing platform, the method comprising:

obtaining a two-dimensional drawing of a portion of a construction project;

performing an image processing analysis of the two-dimensional drawing to identify one or more location entities within the two-dimensional drawing;

deriving embeddings for each location entity in the two-dimensional drawing;

based on the derived embeddings, determining relationships between the one or more location entities; and

based on the determined relationships between the one or more location entities, generating a location entity data taxonomy that includes each identified location entity as a respective node that is related to at least one other location entity, wherein generating the location entity data taxonomy comprises applying one or more machine-learning models that are configured to receive the derived embeddings as input and output the location entity data taxonomy;

cause an end-user device to display a visualization of the location entity data taxonomy; and

cause the end-user device to filter the displayed visualization based on information about a given user associated with the end-user device.

15 . The method of claim 14 , wherein obtaining the two-dimensional drawing comprises:

obtaining a first image file of the two-dimensional drawing that is composed of pixels; and

converting the first image file to a second image file of the two-dimensional drawing that is composed of instructions for arranging points, lines, and curves in the two-dimensional drawing.

16 . The method of claim 14 , wherein the image processing analysis comprises utilizing one or more image processing techniques and thereby detecting at least one area representative of a location entity.

17 . The method of claim 14 , wherein the image processing analysis comprises extracting information indicative of a location entity utilizing one or both of (i) optical character recognition or (ii) one or more natural language processing techniques.

18 . The method of claim 14 , wherein the image processing analysis comprises detecting discrete areas within the two-dimensional drawing.

19 . The method of claim 14 , wherein the derived embeddings comprise one or more of (i) position embedding data that indicates a relative position of a respective location entity within the two-dimensional drawing, (ii) image embedding data that indicates a region of interest where the respective location entity is located within the two-dimensional drawing, or (iii) text embedding data that represents one or more string sequences associated with the respective location entity.

20 . The method of claim 1 , further comprising:

receiving, from the end-user device, data indicating a selection of a given node of the location entity data taxonomy; and

after receiving the data indicating the selection, causing the end-user device to display taxonomy information for the given node.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 3, 2022
From: YAZDANPANAH, AZADEH; MAN, MATT; WASSER, TAYLOR; CLAYTON, JULIAN
To: PROCORE TECHNOLOGIES, INC.
Reel/Frame 061287/0705 →
Continuity (1)
Related Publication 20240111792A1 · Apr 4, 2024
References Cited (12)
US 10984780B2 · Bellegarda · 2021 [cited by examiner]
US 20180068482A1 · Yam · 2018 [cited by examiner]
US 20210064858A1 · Batra · 2021 [cited by examiner]
US 20210073449A1 · Segev · 2021 [cited by examiner]
JP 2015007955A · 2015 [cited by examiner]
JP 2017037457A · 2017 [cited by applicant]
KR 102104605B1 · 2020 [cited by applicant]
WO 2022075634A1 · 2022 [cited by applicant]
International Searching Authority, PCT International Search Report and Written Opinion, PCT International Application No. PCT/US2023/075288, dated Jan. 29, 2024, 9 pages. [cited by applicant]
Abioye, Sofiat O. et al., “Artificial Intelligence in the Construction Industry: A Review of Present Status, Opportunities and Future Challenges”, Journal of Building Engineering, vol. 44, Oct. 5, 2021, 13 pages. [cited by applicant]
Devlin, Jacob et al., “BERT: Pre-Training of Deep Bidirectional Transformers for Language Understanding”, arXiv:1810.04805v2 [cs.CL] May 24, 2019, 16 pages. [cited by applicant]
Redmon, Joseph et al., “You Only Look Once: Unified, Real-Time Object Detection”, In Proceedings of the IEEE conference on computer vision and pattern recognition, 2016, pp. 779-788. [cited by applicant]