IP Library › Granted Patent US 11,769,278
Granted Patent B2
US 11,769,278 · App. 17/982,120 · Granted Sep 26, 2023

Polygonal building extraction from satellite images

Inventors: Stefano Zorzi (Graz, AT); Shabab Bazrafkan (Graz, AT); Friedrich Fraundorfer (Graz, AT); Stefan Habenschuss (Graz, AT)
Assignee: Blackshark.ai GmbH
G06T11/203G06T7/13G06T7/73G06T2200/04G06T2207/10032G06T2207/20084G06T2207/20164G06T2207/30184
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,278
App. No.
17/982,120
Granted
Sep 26, 2023
Kind
B2
Abstract

Vectorization of an image begins by receiving a two-dimensional rasterized image and returning a descriptor for each pixel in the image. Corner detection returns coordinates for all corners in the image. The descriptors are filtered using the corner positions to produce corner descriptors for the corner positions. A score matrix is extracted using the corner descriptors in order to produce a permutation matrix that indicates the connections between all of the corner positions. The corner coordinates and the permutation matrix are used to perform vector extraction to produce a machine-readable vector file that represents the two-dimensional image. Optionally, the corner descriptors may be refined before score extraction and the corner coordinates may be refined before vector extraction. A three-dimensional or N-dimensional image may also be input. A convolutional neural network performs descriptor extraction and corner detection; a graph neural network produces the refinements; and an optimal connection network performs score extraction.

Claims (70)

1 . A method of vectorization of an image, said method comprising:

receiving a two-dimensional image;

processing said image and returning a descriptor for each pixel in said image;

processing said image and returning a plurality of corner positions of said image;

filtering said descriptors using said corner positions and returning corner descriptors for said corner positions;

extracting a score matrix from said corner descriptors that indicates connections between said corner positions, each pair of corner positions being assigned a score;

converting said score matrix into a permutation matrix; and

converting said corner positions and said permutation matrix into a machine-readable vector file that represents said two-dimensional image.

2 . A method as recited in claim 1 further comprising:

refining said corner descriptors using a neural network to produce refined corner descriptors; and

extracting said score matrix from said refined corner descriptors.

3 . A method as recited in claim 1 further comprising:

refining said corner positions to calculate an offset for said each corner position to obtain refined corner positions, said refined corner positions being used in said converting.

4 . A method as recited in claim 1 further comprising:

refining said corner descriptors using a neural network to produce refined corner descriptors;

extracting said score matrix from said refined corner descriptors;

refining said corner positions using said neural network to calculate an offset for said each corner position to obtain refined corner positions, said refined corner positions being used in said converting.

5 . A method as recited in claim 1 wherein the machine-readable vector file uses the standard CMG, SVG, XMF, EPS, JSON, Geo-Json or Shapefiles.

6 . A method as recited in claim 1 further comprising:

extracting two score matrices from said corner descriptors that each indicates connections between said corner positions, a first of said two score matrices indicating connections in a clockwise direction and a second of said two score matrices indicating connections in a counter-clockwise direction; and

converting said corner positions and said two score matrices into a machine-readable vector file that represents said N-dimensional image.

7 . A method as recited in claim 1 wherein said machine-readable vector file is not pixel based.

8 . A vectorization pipeline system, said system comprising:

a descriptor extraction processing unit that receives a two-dimensional image and returns a descriptor for each pixel location in said image;

a corner detection processing unit that processes said image and returns a plurality of corner positions of said image;

a filter processing unit that filters said descriptors using said corner positions and returns corner descriptors for said corner positions;

a score extraction processing unit that extracts a matrix of scores from said corner descriptors that indicates connections between said corner positions, each pair of corner positions being assigned a score and converts said matrix of scores into a permutation matrix; and

a vector extraction unit that converts said corner positions and said permutation matrix into a machine-readable vector file.

9 . A method of vectorization of an image, said method comprising:

receiving a three-dimensional image;

processing said image and returning a descriptor for each location in said image, each location being identified by three coordinates;

processing said image and returning a plurality of corner positions of said image;

filtering said descriptors using said corner positions and returning corner descriptors for said corner positions;

extracting a score matrix from said corner descriptors that indicates connections between said corner positions, each pair of corner positions being assigned a score;

converting said score matrix into a permutation matrix; and

converting said corner positions and said permutation matrix into a machine-readable vector file that represents said three-dimensional image.

10 . A method as recited in claim 9 further comprising:

refining said corner descriptors using a neural network to produce refined corner descriptors; and

extracting said score matrix from said refined corner descriptors.

11 . A method as recited in claim 9 further comprising:

refining said corner positions to calculate an offset for said each corner position to obtain refined corner positions, said refined corner positions being used in said converting.

12 . A method as recited in claim 9 further comprising:

refining said corner descriptors using a neural network to produce refined corner descriptors;

extracting said score matrix from said refined corner descriptors;

refining said corner positions using said neural network to calculate an offset for said each corner position to obtain refined corner positions, said refined corner positions being used in said converting.

13 . A method as recited in claim 9 wherein the machine-readable vector file uses the standard CMG, SVG, XMF, EPS, JSON, Geo-Json or Shapefiles.

14 . A method as recited in claim 9 further comprising:

extracting two score matrices from said corner descriptors that each indicates connections between said corner positions, a first of said two score matrices indicating connections in a clockwise direction and a second of said two score matrices indicating connections in a counter-clockwise direction; and

converting said corner positions and said two score matrices into a machine-readable vector file that represents said three-dimensional image.

15 . A method of vectorization of an image, said method comprising:

receiving an N-dimensional image, N being greater than three;

processing said image and returning a descriptor for each location in said image, each location being identified by N coordinates;

processing said image and returning a plurality of corner positions of said image;

filtering said descriptors using said corner positions and returning corner descriptors for said corner positions;

extracting a score matrix from said corner descriptors that indicates connections between said corner positions, each pair of corner positions being assigned a score;

converting said score matrix into a permutation matrix; and

converting said corner positions and said permutation matrix into a machine-readable vector file that represents said N-dimensional image.

16 . A method as recited in claim 15 further comprising:

refining said corner descriptors using a neural network to produce refined corner descriptors; and

extracting said score matrix from said refined corner descriptors.

17 . A method as recited in claim 15 further comprising:

refining said corner positions to calculate an offset for said each corner position to obtain refined corner positions, said refined corner positions being used in said converting.

18 . A method as recited in claim 15 further comprising:

refining said corner descriptors using a neural network to produce refined corner descriptors;

extracting said score matrix from said refined corner descriptors;

refining said corner positions using said neural network to calculate an offset for said each corner position to obtain refined corner positions, said refined corner positions being used in said converting.

19 . A method as recited in claim 15 wherein the machine-readable vector file uses the standard CMG, SVG, XMF, EPS, JSON, Geo-Json or Shapefiles.

20 . A method as recited in claim 15 further comprising:

extracting two score matrices from said corner descriptors that each indicates connections between said corner positions, a first of said two score matrices indicating connections in a clockwise direction and a second of said two score matrices indicating connections in a counter-clockwise direction; and

converting said corner positions and said two score matrices into a machine-readable vector file that represents said N-dimensional image.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 12, 2023
From: ZORZI, STEFANO; BAZRAFKAN, SHABAB; FRAUNDORFER, FRIEDRICH; HABENSCHUSS, STEFAN
To: BLACKSHARK.AI GMBH
Reel/Frame 062357/0786 →
Continuity (3)
Provisional Application 63289010 · Dec 13, 2021
Provisional Application 63277800 · Nov 10, 2021
Related Publication 20230146018A1 · May 11, 2023