IP Library Granted Patent US 10,083,354
Granted Patent B2
US 10,083,354 · App. 15/362,254 · Granted Sep 25, 2018

Advanced cloud detection using machine learning and optimization techniques

Inventor: Michael Aschenbeck (Arvada, CO)
Assignee: DigitalGlobe, Inc.
G06K9/0063G06K9/4642G06K9/4676G06K9/6202G06K9/6262G06K9/6277G06T7/11G06T2207/10032G06T2207/20021G06T2207/30181
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 10,083,354
App. No.
15/362,254
Granted
Sep 25, 2018
Kind
B2
Abstract

Techniques for automatically determining, on a pixel by pixel basis, whether imagery includes ground images or is obscured by cloud cover. The techniques include training a cloud dictionary and a ground dictionary, determining whether a given pixel is best represented by “words” from the cloud dictionary or “words” from the ground dictionary to make an initial determination of cloud or ground, and performing a max-flow, min-cut operation on the image to determine whether each pixel is a cloud or ground imagery.

Claims (37)

1. A computer-implemented process for determining whether given imagery in an overhead image is cloud imagery or ground imagery, comprising:

for multiple portions of an image, making an initial determination about whether each of the multiple portions primarily contains cloud imagery or primarily contains ground imagery by:

with a processor, utilizing words from a cloud dictionary of picture elements to describe a first portion of the image;

with a processor, utilizing words from a ground dictionary of picture elements to describe the first portion of the image;

with a processor, determining whether the cloud dictionary words or the ground dictionary words best describe the first portion of the image; and

with a processor, performing an optimization technique on the multiple portions of the overhead image using the initial determination to determine which portions of the overhead image include cloud imagery or ground imagery.

2. A computer-implemented process as defined in claim 1 , wherein the optimization technique includes identifying adjacent pixels and calculating a capacity between the identified adjacent pixels.

3. A computer-implemented process as defined in claim 2 , wherein the optimization technique further includes creating a score for each pixel to represent the likelihood that the pixel does or does not contain a cloud and creating a grid-graph of the scores of the pixels with adjacency information associated with each set of adjacent pixels.

4. A computer-implemented process as defined in claim 3 , wherein the optimization technique further includes connecting the pixels of the grid-graph to both a source and a sink using the pixel score as the capacity, wherein one of the source and the sink represents cloud and one represents ground, and performing a min-cut/max-flow segmentation on the image.

5. A computer-implemented process as defined in claim 1 , wherein the optimization technique includes applying a window, having a height and width that are less than a height and width of the image and that are the same as that of the cloud dictionary and ground dictionary words, to various portions of the image, the various portions partially overlapping adjacent portions, in order to determine if each portion most likely contains cloud imagery or ground imagery, and incrementing or decrementing a score for each pixel in the portion based on whether the determination was of cloud imagery or ground imagery, respectively.

6. A computer-implemented process as defined in claim 1 , wherein the overhead image is a satellite-based image.

7. A computer-implemented process as defined in claim 1 , further including adding to metadata associated with each pixel an indication of whether each such pixel includes cloud imagery.

8. A computer-implemented process as defined in claim 7 , further including using the indication of cloud imagery in the metadata to select pixels for an orthomosaic image free of clouds.

9. A computer-implemented process as defined in claim 1 , wherein the cloud dictionary includes multiple words that represent portions of cloud imagery and the ground dictionary includes multiple words that represent portions of ground imagery.

10. A computer-implemented process as defined in claim 1 , wherein the determining includes creating a first linear combination of the words from the cloud dictionary and a second linear combination of the words from the ground dictionary, and comparing the first and second linear combinations.

11. A computer-implemented process for determining whether given imagery in an overhead image is cloud imagery or ground imagery, comprising:

with a processor, utilizing words from a cloud dictionary of picture elements to describe a portion of an image;

with a processor, utilizing words from a ground dictionary of picture elements to describe the portion of the image; and

with a processor, determining whether the cloud dictionary words or the ground dictionary words best describe the portion of the image.

12. A computer-implemented process as defined in claim 11 , further including:

with a processor, performing an optimization technique on a plurality of portions of the overhead image including the portion of the overhead image to determine which portions of the overhead image include cloud imagery or ground imagery.

13. A computer-implemented process for determining whether given imagery in an overhead image is cloud imagery or ground imagery, comprising:

for multiple portions of an image, making an initial determination about whether each of the multiple portions primarily contains cloud imagery or primarily contains ground imagery by:

with a processor, utilizing words from a cloud dictionary of picture elements to describe a first portion of the image;

with a processor, utilizing words from a ground dictionary of picture elements to describe the first portion of the image; and

with a processor, determining whether the cloud dictionary words or the ground dictionary words best describe the first portion of the image;

applying a window, having a height and width that are less than a height and width of the image and that are the same as that of the cloud dictionary and ground dictionary words, to various portions of the image, the various portions partially overlapping adjacent portions, in order to determine if each portion most likely contains cloud imagery or ground imagery, and incrementing or decrementing a score for each pixel in the portion based on whether the determination was of cloud imagery or ground imagery, respectively;

identifying adjacent pixels and calculating a capacity between the identified adjacent pixels;

creating a score for each pixel to represent the likelihood that the pixel does or does not contain a cloud;

creating a grid-graph of the scores of the pixels with adjacency information associated with each set of adjacent pixels;

connecting the pixels of the grid-graph to both a source and a sink using the pixel score as the capacity, wherein one of the source and the sink represents cloud and one represents ground; and

performing a min-cut/max-flow segmentation on the image to define portions of the overhead image which are believed to include cloud imagery and portions of the overhead image which are believed to include ground imagery.

14. A computer-implemented process as defined in claim 13 , wherein the overhead image is a satellite-based image.

15. A computer-implemented process as defined in claim 13 , further including adding to metadata associated with each pixel an indication of whether each such pixel includes cloud imagery.

16. A computer-implemented process as defined in claim 15 , further including using the indication of cloud imagery in the metadata to select pixels for an orthomosaic image free of clouds.

17. A computer-implemented process as defined in claim 13 , wherein the cloud dictionary includes multiple words that represent portions of cloud imagery and the ground dictionary includes multiple words that represent portions of ground imagery.

18. A computer-implemented process as defined in claim 13 , wherein the determining includes creating a first linear combination of the words from the cloud dictionary and a second linear combination of the words from the ground dictionary, and comparing the first and second linear combinations.

Assignments (16)
RELEASE OF SECURITY INTEREST Recorded Mar 3, 2026
From: SIXTH STREET LENDING PARTNERS, ACTING IN ITS CAPACITY AS AGENT
To: AURORA INSIGHT INC.; VANTOR INC. (F/K/A MAXAR INTELLIGENCE INC.); VANTOR SERVICES INC. (F/K/A MAXAR MISSION SOLUTIONS INC.); LANTERIS SPACE LLC (F/K/A MAXAR SPACE LLC); SPATIAL ENERGY, LLC; LANTERIS SPACE ROBOTICS LLC (F/K/A MAXAR SPACE ROBOTICS LLC); VANTOR HOLDINGS INC. (F/K/A MAXAR TECHNOLOGIES HOLDINGS INC.)
Reel/Frame 075021/0624 →
CERTIFICATE OF AMENDMENT Recorded Jan 7, 2026
From: MAXAR INTELLIGENCE INC.
To: VANTOR INC.
Reel/Frame 074270/0330 →
CHANGE OF NAME Recorded Nov 4, 2025
From: MAXAR INTELLIGENCE INC.
To: VANTOR INC.
Reel/Frame 073462/0438 →
RELEASE (REEL 060389/FRAME 0720) Recorded May 12, 2023
From: ROYAL BANK OF CANADA
To: MAXAR INTELLIGENCE INC.; MAXAR SPACE LLC
Reel/Frame 063633/0431 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded May 5, 2023
From: MAXAR INTELLIGENCE INC. (F/K/A DIGITALGLOBE, INC.); AURORA INSIGHT INC.; MAXAR MISSION SOLUTIONS INC. ((F/K/A RADIANT MISSION SOLUTIONS INC. (F/K/A THE RADIANT GROUP, INC.)); MAXAR SPACE LLC (F/K/A SPACE SYSTEMS/LORAL, LLC); SPATIAL ENERGY, LLC; MAXAR SPACE ROBOTICS LLC ((F/K/A SSL ROBOTICS LLC) (F/K/A MDA US SYSTEMS LLC)); MAXAR TECHNOLOGIES HOLDINGS INC.
To: SIXTH STREET LENDING PARTNERS, AS ADMINISTRATIVE AGENT
Reel/Frame 063660/0138 →
TERMINATION AND RELEASE OF PATENT SECURITY AGREEMENT - RELEASE OF REEL/FRAME 060389/0782 Recorded May 4, 2023
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: MAXAR INTELLIGENCE INC.; MAXAR SPACE LLC
Reel/Frame 063544/0074 →
TERMINATION AND RELEASE OF PATENT SECURITY AGREEMENT - RELEASE OF REEL/FRAME 053866/0412 Recorded May 4, 2023
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: MAXAR INTELLIGENCE INC.; MAXAR SPACE LLC
Reel/Frame 063544/0011 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS AND TRADEMARKS - RELEASE OF REEL/FRAME 051258/0465 Recorded May 4, 2023
From: ROYAL BANK OF CANADA, AS AGENT
To: MAXAR INTELLIGENCE INC.; MAXAR SPACE LLC
Reel/Frame 063542/0300 →
CHANGE OF NAME Recorded Feb 15, 2023
From: DIGITALGLOBE, INC.
To: MAXAR INTELLIGENCE INC.
Reel/Frame 062760/0832 →
RELEASE OF SECURITY INTEREST Recorded Jun 21, 2022
From: WILMINGTON TRUST, NATIONAL ASSOCIATION
To: DIGITALGLOBE, INC.; SPACE SYSTEMS/LORAL, LLC; RADIANT GEOSPATIAL SOLUTIONS LLC
Reel/Frame 060390/0282 →
SECURITY AGREEMENT Recorded Jun 17, 2022
From: MAXAR INTELLIGENCE INC.; MAXAR SPACE LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION
Reel/Frame 060389/0782 →
SECURITY AGREEMENT Recorded Jun 16, 2022
From: MAXAR INTELLIGENCE INC.; MAXAR SPACE LLC
To: ROYAL BANK OF CANADA
Reel/Frame 060389/0720 →
PATENT SECURITY AGREEMENT Recorded Sep 23, 2020
From: DIGITALGLOBE, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 053866/0412 →
SECURITY AGREEMENT (NOTES) Recorded Dec 12, 2019
From: DIGITALGLOBE, INC.; RADIANT GEOSPATIAL SOLUTIONS LLC; SPACE SYSTEMS/LORAL, LLC (F/K/A SPACE SYSTEMS/LORAL INC.)
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, - AS NOTES COLLATERAL AGENT
Reel/Frame 051262/0824 →
AMENDED AND RESTATED U.S. PATENT AND TRADEMARK SECURITY AGREEMENT Recorded Dec 11, 2019
From: DIGITALGLOBE, INC.
To: ROYAL BANK OF CANADA, AS COLLATERAL AGENT
Reel/Frame 051258/0465 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 28, 2016
From: ASCHENBECK, MICHAEL
To: DIGITALGLOBE, INC.
Reel/Frame 040433/0746 →
Continuity (1)
Related Publication 20180150677A1 · May 31, 2018