IP Library Granted Patent US 10,929,663
Granted Patent B2
US 10,929,663 · App. 16/596,364 · Granted Feb 23, 2021

Ponding water detection on satellite imagery

Inventors: Wei Guan (Fremont, CA); Pramithus Khadka (St. Louis, MO)
Assignee: THE CLIMATE CORPORATION
G06K9/0063G06K9/00657G06K2009/00644
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,929,663
App. No.
16/596,364
Granted
Feb 23, 2021
Kind
B2
Abstract

A system for identifying ponding water located on a field from image data is described. In an approach, an image of an agricultural field is analyzed using a classifier that has been trained based on the spectral bands of labeled image pixels to identify a probability for each pixel within the image that the pixel corresponds to water. A flow simulation is performed to determine regions of the field that are likely to pool water after rainfall based on precipitation data, elevation data, and soil property data of the field. A graph of vertices representing the pixels and edges representing connections between neighboring pixels is generated. The probability of each pixel within the graph being ponding water is set based on the probability pixel being water, the likelihood that water will pool in the area represented by the pixel, the probability of neighboring pixels being ponding water, and a cropland mask that identifies which pixels correspond to cropland. A class for each pixel is then determined that maximizes the joint probability over the graph.

Claims (53)

1. A method comprising:

a computer system receiving image data of a field comprising a plurality of pixels, precipitation data for the plurality of pixels of the image data of the field indicating one or more amounts of rainfall over one or more regions of the field, elevation data indicating one or more elevations over the one or more regions of the field, and soil property data indicating one or more properties of soil found across the one or more regions of the field;

the computer system running a flow simulation over the plurality of pixels of the image data of the field to identify, using regions of a plurality of regions which still contain water, a set of pixels within the image data that are likely to have ponding water after rainfall;

for each pixel, from the set of pixels within the plurality of pixels:

estimating, using a classifier trained to estimate probabilities that pixels represent ponding water, a probability that a pixel from the set of pixels represents water;

assigning the probability to the pixel;

determining, based on the probability assigned to the pixel and particular precipitation data, from the precipitation data, assigned to the pixel, a class, from one or more classes, to indicate the probability that the pixel represents ponding water after the rainfall;

generating one or more alerts corresponding to the one or more classes determined for the set of pixels.

2. The method of claim 1 , wherein a region of the plurality of regions of the field corresponds to a portion of a satellite image provided for the field; further comprising:

initializing a water level for each region of a plurality of regions of the field is performed based on the precipitation data.

3. The method of claim 2 , wherein the running a flow simulation over the plurality of pixels of the image data of the field comprises:

initializing a water level for each region of the plurality of regions of the field;

iteratively rebalancing water levels between the plurality of regions;

wherein at each iteration water flows from higher elevation regions to neighboring lower elevation regions based on the elevation data until a stopping condition occurs;

wherein the stopping condition occurs when less than a threshold amount of water has shifted from the higher elevation regions to the neighboring lower elevation regions during a previous iteration;

wherein as water flows from the higher elevation regions to the neighboring lower elevation regions an amount of water is removed by being absorbed by soil based on the soil property data;

after iteratively rebalancing the water levels between the plurality of regions of the field, identifying, using regions of the plurality of regions which still contain water, a set of pixels within the image data that are likely to have ponding water after the rainfall.

4. The method of claim 3 , wherein the classifier is logistic regression that has been trained on labeled pixel data derived from one or more images of one or more agricultural fields.

5. The method of claim 4 , wherein each pixel of the plurality of pixels comprises one or more light bands; wherein determining the class for each pixel of the plurality of pixels includes:

generating a model, wherein the model includes a graph comprising a set of vertices, each vertex in the set of vertices representing a respective pixel of the plurality of pixels, and a set of edges representing connections between neighboring pixels of the plurality of pixels;

for each vertex in the set of vertices, setting a probability of being ponding water based on the one or more light bands for the pixel represented by the vertex, a probability of representing water for the pixel represented by the vertex, whether the pixel represented by the vertex is in the set of pixels that are likely to have ponding water, and a probability of neighboring pixels of the pixel represented by the vertex being ponding water;

determining the class for each vertex in the set of vertices that maximizes a joint probability over the graph.

6. The method of claim 5 , wherein the model is implemented using a Markov Random Field.

7. The method of claim 5 , wherein the model increases the probability of being ponding water for a given vertex when the probability of representing water for the pixel represented by the given vertex indicates that the pixel represented by the given vertex likely represents water and the pixel represented by the given vertex is in the set of pixels that are likely to have ponding water.

8. The method of claim 5 , further comprising receiving cropland data that indicates which pixels of the plurality of pixels corresponds to cropland, wherein the model classifies the pixel represented by a given vertex as not ponding water if the cropland data indicates that the pixel represented by the given vertex does not correspond to cropland.

9. The method of claim 5 , wherein generating the one or more alerts includes sending a message to a user device that specifies ponding water has been detected on the field and one or more locations where the ponding water has been detected based on pixels which have been classified as representing the ponding water.

10. The method of claim 5 , wherein generating the one or more alerts includes identifying a shortest route to visit each area on the field corresponding to pixels which have been classified as representing ponding water.

11. A non-transitory computer-readable storage medium storing one or more instructions which, when executed by one or more processors, cause the one or more processors to perform steps comprising:

receiving image data of a field comprising a plurality of pixels, precipitation data for the plurality of pixels of the image data of the field indicating one or more amounts of rainfall over one or more regions of the field, elevation data indicating one or more elevations over the one or more regions of the field, and soil property data indicating one or more properties of soil found across the one or more regions of the field;

running a flow simulation over the plurality of pixels of the image data of the field to identify, using regions of a plurality of regions which still contain water, a set of pixels within the image data that are likely to have ponding water after rainfall;

for each pixel, from the set of pixels within the plurality of pixels:

estimating, using a classifier trained to estimate probabilities that pixels represent ponding water, a probability that a pixel from the set of pixels represents water;

assigning the probability to the pixel;

determining, based on the probability assigned to the pixel and particular precipitation data, from the precipitation data, assigned to the pixel, a class, from one or more classes, to indicate the probability that the pixel represents ponding water after the rainfall;

generating one or more alerts corresponding to the one or more classes determined for the set of pixels.

12. The non-transitory computer-readable storage medium of claim 11 , wherein a region of the plurality of regions of the field corresponds to a portion of a satellite image provided for the field; further comprising: initializing a water level for each region of a plurality of regions of the field is performed based on the precipitation data.

13. The non-transitory computer-readable storage medium of claim 12 , wherein the running a flow simulation over the plurality of pixels of the image data of the field comprises:

initializing a water level for each region of the plurality of regions of the field;

iteratively rebalancing water levels between the plurality of regions;

wherein at each iteration water flows from higher elevation regions to neighboring lower elevation regions based on the elevation data until a stopping condition occurs;

wherein the stopping condition occurs when less than a threshold amount of water has shifted from the higher elevation regions to the neighboring lower elevation regions during a previous iteration;

wherein as water flows from the higher elevation regions to the neighboring lower elevation regions an amount of water is removed by being absorbed by soil based on the soil property data;

after iteratively rebalancing the water levels between the plurality of regions of the field, identifying, using regions of the plurality of regions which still contain water, a set of pixels within the image data that are likely to have ponding water after the rainfall.

14. The non-transitory computer-readable storage medium of claim 13 , wherein the classifier is logistic regression that has been trained on labeled pixel data derived from one or more images of one or more agricultural fields.

15. The non-transitory computer-readable storage medium of claim 14 , wherein each pixel of the plurality of pixels comprises one or more light bands; wherein determining the class for each pixel of the plurality of pixels includes:

generating a model, wherein the model includes a graph comprising a set of vertices, each vertex in the set of vertices representing a respective pixel of the plurality of pixels, and a set of edges representing connections between neighboring pixels of the plurality of pixels;

for each vertex in the set of vertices, setting a probability of being ponding water based on the one or more light bands for the pixel represented by the vertex, a probability of representing water for the pixel represented by the vertex, whether the pixel represented by the vertex is in the set of pixels that are likely to have ponding water, and a probability of neighboring pixels of the pixel represented by the vertex being ponding water;

determining the class for each vertex in the set of vertices that maximizes a joint probability over the graph.

16. The non-transitory computer-readable storage medium of claim 15 , wherein the model is implemented using a Markov Random Field.

17. The non-transitory computer-readable storage medium of claim 15 , wherein the model increases the probability of being ponding water for a given vertex when the probability of representing water for the pixel represented by the given vertex indicates that the pixel represented by the given vertex likely represents water and the pixel represented by the given vertex is in the set of pixels that are likely to have ponding water.

18. The non-transitory computer-readable storage medium of claim 15 , storing additional instructions for: receiving cropland data that indicates which pixels of the plurality of pixels corresponds to cropland, wherein the model classifies the pixel represented by a given vertex as not ponding water if the cropland data indicates that the pixel represented by the given vertex does not correspond to cropland.

19. The non-transitory computer-readable storage medium of claim 15 , wherein generating the one or more alerts includes sending a message to a user device that specifies ponding water has been detected on the field and one or more locations where the ponding water has been detected based on pixels which have been classified as representing the ponding water.

20. The non-transitory computer-readable storage medium of claim 15 , wherein generating the one or more alerts includes identifying a shortest route to visit each area on the field corresponding to pixels which have been classified as representing ponding water.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 23, 2026
From: CLIMATE LLC
To: MONSANTO COMPANY
Reel/Frame 075177/0751 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 23, 2026
From: MONSANTO COMPANY
To: MONSANTO TECHNOLOGY LLC
Reel/Frame 075177/0908 →
CHANGE IN PRINCIPAL PLACE OF BUSINESS Recorded Sep 2, 2025
From: CLIMATE LLC
To: CLIMATE LLC
Reel/Frame 072810/0444 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 18, 2024
From: GUAN, WEI; KHADKA, PRAMITHUS
To: THE CLIMATE CORPORATION
Reel/Frame 067154/0636 →
CHANGE OF NAME Recorded Nov 16, 2023
From: THE CLIMATE CORPORATION
To: CLIMATE LLC
Reel/Frame 065610/0571 →
Continuity (3)
Continuation 16038006 · Jul 17, 2018
Continuation 14860247 · Sep 21, 2015
Related Publication 20200050826A1 · Feb 13, 2020