IP Library Granted Patent US 11,625,843
Granted Patent B2
US 11,625,843 · App. 16/910,175 · Granted Apr 11, 2023

Systems and methods for automatic alignment of drawings

Inventors: Jae Min Lee (Fullerton, CA); Joseph W. Wezorek (Pasadena, CA)
Assignee: Bluebeam, Inc.
G06T7/33G06F16/2255G06F30/13G06T3/0006
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,625,843
App. No.
16/910,175
Granted
Apr 11, 2023
Kind
B2
Abstract

Systems and methods are disclosed for automatically aligning drawings. One method comprises receiving a source drawing and a target drawing, determining main axes of the source and target drawings respectively, and aligning the main axis of the source drawing to the main axis of the target drawing. A plurality of source feature point vectors and target feature point vectors may be generated from the source and target drawings, whose main axes have been aligned. A predetermined number of matching FPV pairs may then be determined across the source and target drawings, and the source drawing may be aligned with the target drawings based on the matching FPV pairs.

Claims (63)

1. A computer-implemented method for automatically aligning drawings, comprising:

receiving a source drawing and a target drawing;

generating an angle-count barcode based on a number of lines associated with each angle for each of the source drawing and the target drawing;

determining a main axis of the source drawing and a main axis of the target drawing based at least in part on the angle-count barcode;

aligning the main axis of the source drawing to the main axis of the target drawing;

generating a plurality of source feature point vectors (FPVs) from the source drawing and a plurality of target FPVs from the target drawing;

determining a predetermined number of matching FPV pairs across the source drawing and the target drawing; and

aligning the source drawing with the target drawing based on the matching FPV pairs.

2. The computer-implemented method of claim 1 , wherein determining the main axis of the source drawing and the main axis of the target drawing comprises, for each of the source drawing and the target drawing:

generating an angle-length barcode based on a total length of lines associated with each angle; and

determining the main axis based at least in part on the angle-length barcode.

3. The computer-implemented method of claim 1 , wherein aligning the main axis of the source drawing to the main axis of the target drawing comprises:

rotating the source drawing until the main axis of the source drawing becomes aligned with the main axis of the target drawing.

4. The computer-implemented method of claim 1 , wherein determining the predetermined number of matching FPV pairs across the source drawing and the target drawing comprises:

determining a type of each of the plurality of target FPVs; and

storing the plurality of target FPVs in a three-dimensional (3D) hashing table based on the type of each of the plurality of target FPVs.

5. The computer-implemented method of claim 1 , wherein determining the predetermined number of matching FPV pairs across the source drawing and the target drawing comprises:

determining a type of each of the plurality of source FPVs; and

determining a number of source FPVs associated with each type.

6. The computer-implemented method of claim 5 , wherein determining the predetermined number of matching FPV pairs across the source drawing and the target drawing further comprises:

determining a least common type of source FPVs based on the determined number of source FPVs associated with each type; and

matching a predetermined number of source FPVs to a predetermined number of target FPVs,

wherein the matching starts from the least common type of source FPVs.

7. The computer-implemented method of claim 5 , wherein the type of each of the plurality of source FPVs is defined by one or more angles associated with the respective source FPV.

8. The computer-implemented method of claim 1 , wherein aligning the source drawing with the target drawing based on the matching FPV pairs comprises:

determining a transformation matrix based on the matching FPV pairs; and

aligning the source drawing with the target drawing based on the transformation matrix.

9. The computer-implemented method of claim 8 , wherein the transformation matrix is determined using an affine transformation.

10. A system for automatically aligning drawings, comprising:

one or more processors;

at least one non-transitory computer readable medium storing instructions which, when executed by the one or more processors, cause the one or more processors to perform operations comprising:

receiving a source drawing and a target drawing;

determining a main axis of the source drawing and a main axis of the target drawing;

aligning the main axis of the source drawing to the main axis of the target drawing;

generating a plurality of source feature point vectors (FPVs) from the source drawing and a plurality of target FPVs from the target drawing;

determining a predetermined number of matching FPV pairs across the source drawing and the target drawing by determining a type of each of the plurality of target FPVs and storing the plurality of target FPVs in a three-dimensional (3D) hashing table based on the type of each of the plurality of target FPVs; and

aligning the source drawing with the target drawing based on the matching FPV pairs.

11. The system of claim 10 , wherein determining the main axis of the source drawing and the main axis of the target drawing comprises, for each of the source drawing and the target drawing:

generating an angle-count barcode based on a number of lines associated with each angle; and

determining the main axis based at least in part on the angle-count barcode.

12. The system of claim 11 , wherein determining the main axis of the source drawing and the main axis of the target drawing comprises, for each of the source drawing and the target drawing:

generating an angle-length barcode based on a total length of lines associated with each angle; and

determining the main axis based at least in part on the angle-length barcode.

13. The system of claim 10 , wherein aligning the main axis of the source drawing to the main axis of the target drawing comprises:

rotating the source drawing until the main axis of the source drawing becomes aligned with the main axis of the target drawing.

14. The system of claim 10 , wherein determining the predetermined number of matching FPV pairs across the source drawing and the target drawing comprises:

determining a type of each of the plurality of source FPVs; and

determining a number of source FPVs associated with each type.

15. The system of claim 14 , wherein determining the predetermined number of matching FPV pairs across the source drawing and the target drawing further comprises:

determining a least common type of source FPVs based on the determined number of source FPVs associated with each type; and

matching a predetermined number of source FPVs to a predetermined number of target FPVs,

wherein the matching starts from the least common type of source FPVs.

16. The system of claim 14 , wherein the type of each of the plurality of source FPVs is defined by one or more angles associated with the respective source FPV.

17. The system of claim 10 , wherein aligning the source drawing with the target drawing based on the matching FPV pairs comprises:

determining a transformation matrix based on the matching FPV pairs; and

aligning the source drawing with the target drawing based on the transformation matrix.

18. At least one non-transitory computer readable medium for automatically aligning drawings, the at least one non-transitory computer readable medium storing instructions which, when executed by one or more processors, cause the one or more processors to perform operations comprising:

receiving a source drawing and a target drawing;

determining a main axis of the source drawing and a main axis of the target drawing;

aligning the main axis of the source drawing to the main axis of the target drawing;

generating a plurality of source feature point vectors (FPVs) from the source drawing and a plurality of target FPVs from the target drawing;

determining a predetermined number of matching FPV pairs across the source drawing and the target drawing by determining a type of each of the plurality of source FPVs and determining a number of source FPVs associated with each type; and

aligning the source drawing with the target drawing based on the matching FPV pairs.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 24, 2020
From: LEE, JAE MIN; WEZOREK, JOSEPH W.
To: BLUEBEAM, INC.
Reel/Frame 053027/0942 →
Continuity (1)
Related Publication 20210407111A1 · Dec 30, 2021