IP Library › Granted Patent US 12,737,515
Granted Patent B2
US 12,737,515 · App. 17/809,037 · Granted Sep 15, 2026

Estimating emission source location from satellite imagery

Inventors: Theodore G. van Kessel (Millbrook, NY); Levente Klein (Tuckahoe, NY); Bruce Gordon Elmegreen (Goldens Bridge, NY); Eloisa Bentivegna (Warrington, GB)
Assignee: International Business Machines Corporation
G06F30/27G06F30/28G06N20/20G06T3/40G06T7/73G06T2207/10032G06T2207/20081
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,737,515
App. No.
17/809,037
Granted
Sep 15, 2026
Kind
B2
Abstract

In an approach for estimating emission source location from satellite plume data, a processor creates a dataset of plume concentration data. A processor down samples the dataset to an array at satellite resolution. A processor partitions the array into two separate datasets according to a preset proportion. A processor trains two machine learning models on at least one of the two separate datasets, wherein a first machine learning model of the two machine learning models is for identifying a presence of a plume and a second machine learning model of the two machine learning models is for identifying a source position and magnitude of the plume. A processor applies the two machine learning models to new concentration data.

Claims (68)

1 . A computer-implemented method comprising:

creating a dataset of plume concentration data by combining high-resolution synthetic plume data generated from a synthetic plume model having a higher spatial and temporal resolution than satellite data and a modeled distribution of actual plume data using satellite weather data, the dataset including synthetic plumes, corresponding positions and magnitudes, and the satellite weather data;

responsive to the high-resolution synthetic plume data having the higher spatial and temporal resolution, down sampling the dataset from the high-resolution synthetic plume data to a lower resolution array of synthetic plume data at satellite resolution, the dataset arranged as a first array of pixels with a plume at or near a center pixel of the first array;

partitioning the dataset of plume concentration data into two separate datasets according to a preset proportion as a training dataset and a validation dataset;

preparing the training dataset by recoding position entries of the plume as zero when a source of the plume is disposed outside the center pixel and as one for the source of the plume is contained in the center pixel;

training two machine learning models on at least one of the two separate datasets by:

training a first machine learning model to identify a presence of plumes; and

training a second machine learning model to identify a source position and magnitude of the identified plumes;

applying the two machine learning models to each pixel, in sequence, of a data patch of a new set of actual plume concentration data to identify an actual plume, wherein the second machine learning model is applied responsive to the first machine learning model identifying the presence of a first plume at the pixel;

responsive to receiving an output from the second machine learning model of a subpixel position of a first plume source detected by the first machine learning model at a respective pixel, mathematically combining the respective pixel and the subpixel position to form a single coordinate; and

logging the single coordinate of the actual plume to identify a position of the first plume.

2 . The computer-implemented method of claim 1 , wherein creating the dataset comprises:

using the synthetic plume model to compute two-dimensional concentration data for a plurality of wind and atmospheric conditions from a plurality of positions and at a plurality of magnitudes; and

wherein the synthetic plume model is selected from the group consisting of: a superposition of gaussians (SOG) model, a puff model, and a computational fluid dynamics (CFD) model.

3 . The computer-implemented method of claim 1 , wherein creating the dataset comprises:

using collected actual two-dimensional satellite concentration data at a given resolution from known emission source locations.

4 . The computer-implemented method of claim 1 , wherein down sampling the dataset to the lower resolution array at the satellite resolution comprises:

down sampling the first array of pixels to a second array of pixels at the satellite resolution, wherein at least half of the second array of pixels contains the plume and a remainder containing no plume.

5 . The computer-implemented method of claim 4 , wherein down sampling the dataset to an array at satellite resolution comprises: encoding the source position of the plume in the second array of pixels as a single number corresponding to a pixel position relative to the center pixel; and

aggregating data of the second array of pixels and the source position in a single dataset.

6 . The computer-implemented method of claim 1 , wherein the second machine learning model is applied responsive to the first machine learning model identifying the presence of the first plume at the center pixel of the array.

7 . The computer-implemented method of claim 1 , further comprising converting the array into a flattened array for processing by the machine learning models, wherein the flattened array is a one-dimensional array made by arranging the pixels of a two-dimensional array into a linear sequence.

8 . The computer-implemented method of claim 1 , further comprising excluding border pixels of the data patch from analysis by the set of machine learning models.

9 . The computer-implemented method of claim 1 , wherein applying the two machine learning models to each pixel comprises applying the two machine learning models to each pixel of a data patch comprising a plurality of neighboring pixels arranged as a two-dimensional array.

10 . The computer-implemented method of claim 1 , wherein logging the single coordinate of the actual plume comprises logging a plurality of coordinates corresponding to plume sources detected across multiple pixels of the data patch.

11 . A computer program product comprising: one or more computer readable storage media and program instructions collectively stored on the one or more computer readable storage media, the stored program instructions comprising:

program instructions to create a dataset of plume concentration data by combining high-resolution synthetic plume data generated from a synthetic plume model having a higher spatial and temporal resolution than satellite data and a modeled distribution of actual plume data using satellite weather data, the dataset including synthetic plumes, corresponding positions and magnitudes, and the satellite weather data;

program instructions to, responsive to the high-resolution synthetic plume data having the higher spatial and temporal resolution, down sample the dataset from the high-resolution synthetic plume data to a lower resolution array of synthetic plume data at satellite resolution, the dataset arranged as a first array of pixels with a plume at or near a center pixel of the first array;

program instructions to partition the dataset of plume concentration data into two separate datasets according to a preset proportion as a training dataset and a validation dataset;

program instructions to prepare the training dataset by recoding position entries of the plume as zero when a source of the plume is disposed outside the center pixel and as one for the source of the plume is contained in the center pixel;

program instructions to train two machine learning models on at least one of the two separate datasets by:

training a first machine learning model to identify a presence of plumes; and

training a second machine learning model to identify a source position and magnitude of the identified plumes;

program instructions to apply the two machine learning models to each pixel, in sequence, of a data patch of a new set of actual plume concentration data to identify an actual plume, wherein the second machine learning model is applied responsive to the first machine learning model identifying the presence of a first plume at the pixel;

responsive to receiving an output from the second machine learning model of a subpixel position of a first plume source detected by the first machine learning model at a respective pixel, mathematically combine the respective pixel and the subpixel position to form a single coordinate; and

logging the single coordinate of the actual plume to identify a position of the first plume.

12 . The computer program product of claim 11 , wherein the program instructions to create the dataset comprise:

program instructions to use the synthetic plume model to compute two-dimensional concentration data for a plurality of wind and atmospheric conditions from a plurality of positions and at a plurality of magnitudes; and

wherein the synthetic plume model is selected from the group consisting of: a superposition of gaussians (SOG) model, a puff model, and a computational fluid dynamics (CFD) model.

13 . The computer program product of claim 11 , wherein the program instructions to create the dataset comprise:

program instructions to use collected actual two-dimensional satellite concentration data at a given resolution from known emission source locations.

14 . The computer program product of claim 11 , wherein the program instructions to down sample the dataset to the array at the satellite resolution comprise:

program instructions to arrange the dataset as a first array of pixels with the plume at or near a center pixel of the first array; and

program instructions to down sample the first array of pixels to a second array of pixels at the satellite resolution, wherein at least half of the second array of pixels contains the plume and a remainder containing no plume.

15 . The computer program product of claim 14 , wherein the program instructions to down sample the dataset to an array at satellite resolution comprise: program instructions to encode the source position of the plume in the second array of pixels as a single number corresponding to a pixel position relative to the center pixel; and program instructions to aggregate data of the second array of pixels and the source position in a single dataset.

16 . A computer system comprising:

one or more computer processors;

one or more computer readable storage media; and

program instructions collectively stored on the one or more computer readable storage media for execution by at least one of the one or more computer processors, the stored program instructions comprising:

program instructions to create a dataset of plume concentration data by combining high-resolution synthetic plume data generated from a synthetic plume model having a higher spatial and temporal resolution than satellite data and a modeled distribution of actual plume data using satellite weather data, the dataset including synthetic plumes, corresponding positions and magnitudes, and the satellite weather data;

program instructions to, responsive to the high-resolution synthetic plume data having the higher spatial and temporal resolution, down sample the dataset from the high-resolution synthetic plume data to a lower resolution array of synthetic plume data at satellite resolution, the dataset arranged as a first array of pixels with a plume at or near a center pixel of the first array;

program instructions to partition the dataset of plume concentration data into two separate datasets according to a preset proportion as a training dataset and a validation dataset;

program instructions to prepare the training dataset by recoding position entries of the plume as zero when a source of the plume is disposed outside the center pixel and as one for the source of the plume is contained in the center pixel;

program instructions to train two machine learning models on at least one of the two separate datasets by:

training a first machine learning model to identify a presence of plumes; and

training a second machine learning model to identify a source position and magnitude of the identified plumes;

program instructions to apply the two machine learning models to each pixel, in sequence, of a data patch of a new set of actual plume concentration data to identify an actual plume, wherein the second machine learning model is applied responsive to the first machine learning model identifying the presence of a first plume at the pixel;

responsive to receiving an output from the second machine learning model of a subpixel position of a first plume source detected by the first machine learning model at a respective pixel, mathematically combine the respective pixel and the subpixel position to form a single coordinate; and

logging the single coordinate of the actual plume to identify a position of the first plume.

17 . The computer system of claim 16 , wherein the program instructions to create the dataset comprise:

program instructions to use the synthetic plume model to compute two-dimensional concentration data for a plurality of wind and atmospheric conditions from a plurality of positions and at a plurality of magnitudes; and

wherein the synthetic plume model is selected from the group consisting of: a superposition of gaussians (SOG) model, a puff model, and a computational fluid dynamics (CFD) model.

18 . The computer system of claim 16 , wherein the program instructions to create the dataset comprise:

program instructions to use collected actual two-dimensional satellite concentration data at a given resolution from known emission source locations.

19 . The computer system of claim 16 , wherein the program instructions to down sample the dataset to the array at the satellite resolution comprise: program instructions to arrange the dataset as a first array of pixels with the plume at or near a center pixel of the first array;

program instructions to down sample the first array of pixels to a second array of pixels at the satellite resolution, wherein at least half of the second array of pixels contains the plume and a remainder containing no plume;

program instructions to encode the source position of the plume in the second array of pixels as a single number corresponding to a pixel position relative to the center pixel;

and program instructions to aggregate data of the second array of pixels and the source position in a single dataset.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 27, 2022
From: VAN KESSEL, THEODORE G.; KLEIN, LEVENTE; ELMEGREEN, BRUCE GORDON; BENTIVEGNA, ELOISA
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 060316/0650 →
Continuity (1)
Related Publication 20230418999A1 · Dec 28, 2023
References Cited (34)
US 5206818A · Speranza · 1993 [cited by applicant]
US 10948471B1 · MacMullin · 2021 [cited by examiner]
US 20110213554A1 · Archibald · 2011 [cited by applicant]
US 20150019185A1 · Cunningham · 2015 [cited by applicant]
US 20170134497A1 · Harter · 2017 [cited by examiner]
US 20200051260A1 · Shen · 2020 [cited by examiner]
US 20200155881A1 · Tohidi · 2020 [cited by examiner]
US 20200159397A1 · Tohidi · 2020 [cited by applicant]
US 20210398289A1 · Schmidt · 2021 [cited by applicant]
US 20220262116A1 · Hosseini · 2022 [cited by examiner]
US 20230059007A1 · Agrawal · 2023 [cited by examiner]
US 20230362335A1 · Kastner · 2023 [cited by examiner]
CA 2758747A1 · 2021 [cited by applicant]
CN 104181276A · 2014 [cited by applicant]
Ba et al., “SmokeNet: Satellite Smoke Scene Detection Using Convolutional Neural Network with Spatial and Channel-Wise Attention”, Remote Sensing 11, No. 14: 1702, 2019, 22 Pages. [cited by applicant]
Brandt et al., “Methane Leaks from North American Natural Gas Systems”, Science, vol. 343, Feb. 14, 2014, ResearchGate, 4 Pages. [cited by applicant]
Clarisse et al., “Tracking down global NH3 point sources with wind-adjusted super resolution”, Atmospheric Measurement Techniques, 12, 2019, 17 Pages. [cited by applicant]
Hirst et al., “Locating and quantifying gas emission sources using remotely obtained concentration data”, Atmospheric Environment, vol. 74, Aug. 2013, ScienceDirect, 18 Pages. [cited by applicant]
Jacob et al., “Satellite observations of atmospheric methane and their value for quantifying methane emissions”, Atmospheric Chemistry and Physics, vol. 16, issue 22, 2016, 26 Pages. [cited by applicant]
Keats et al., “Efficiently characterizing the origin and decay rate of a nonconservative scalar using probability theory”, Ecological Modelling 205, 2007, ScienceDirect, 16 Pages. [cited by applicant]
Kuhlmann et al., “Detectability of CO2 emission plumes of cities and power plants with the Copernicus Anthropogenic CO2 Monitoring (CO2M) mission”, Atmospheric Measurement Techniques, 12, 2019, 25 Pages. [cited by applicant]
Larsen et al., “A deep learning approach to identify smoke plumes in satellite imagery in near-real time for health risk communication”, Journal of Exposure Science & Environmental Epidemiology, vol. 31, 2021, 12 Pages. [cited by applicant]
Mazzoni et al., “An operational MISR pixel classifier using support vector machines”, Remote Sensing of Environment, 107, 2007, ScienceDirect, 10 Pages. [cited by applicant]
Pomareda et al., “Chemical Source Localization Fusing Concentration Information in the Presence of Chemical Background Noise ”, Sensors 2017, 17, 904, Apr. 20, 2017, 23 Pages. [cited by applicant]
Ramasubramanian et al., “Pixel Level Smoke Detection Model with Deep Neural Network”, SPIE Remote Sensing 2019, Strasbourg, France, Sep. 9-12, 2019, 35 Pages. [cited by applicant]
Sharan et al., “A point-source reconstruction from concentration measurements in low-wind stable conditions”, Quarterly Journal of the Royal Meteorological Society 138 (668), 2012, 3 Pages. (Abstract Only). [cited by applicant]
Sharan et al., “Least Square Data Assimilation for Identification of the Point Source Emissions”, Pure & Applied Geophysics; Basel vol. 169, Issue. 3, Mar. 2012, 10 Pages. (Abstract Only). [cited by applicant]
Sheng et al., “High-resolution inversion of methane emissions in the Southeast US using SEAC4RS aircraft observations of atmospheric methane: anthropogenic and wetland sources”, Atmospheric Chemistry and Physics, vol. 1… [cited by applicant]
Stanev et al., “Identification of release sources in advection-diffusion system by machine learning combined with Green's function inverse method”, Applied Mathematical Modelling 60, 2018, ScienceDirect, 26 Pages. [cited by applicant]
Varon et al., “Quantifying methane point sources from fine-scale satellite observations of atmospheric methane plumes”, Atmospheric Measurement Techniques, 11, 2018, 14 Pages. [cited by applicant]
Wen et al., “Wildfire Smoke Plume Segmentation Using Geostationary Satellite Imagery”, Tackling Climate Change with Machine Learning workshop at ICML 2021, Sep. 3, 2021, 7 Pages. [cited by applicant]
Yee, Eugene, “Theory for Reconstruction of an Unknown Number of Contaminant Sources using Probabilistic Inference”, Boundary-Layer Meteorology, vol. 127, 2008, 36 Pages. [cited by applicant]
Zhang et al., “Quantifying methane emissions from the largest oil-producing basin in the United States from space”, Science Advances, vol. 6, Issue 17, Apr. 22, 2020, 9 Pages. [cited by applicant]
Zhuk et al., “On Source-Term Parameter Estimation for Linear Advection-Diffusion Equations with Uncertain Coefficients”, SIAM Journal on Scientific Computing, vol. 38, Issue 4, 2016, 2 Pages. (Abstract Only). [cited by applicant]