Industrial Smoke Plume Detection
Characterization of Industrial Smoke Plumes from Remote Sensing Data.
https://github.com/HSG-AIML/IndustrialSmokePlumeDetection
Category: Emissions
Sub Category: Emission Observation and Modeling
Keywords
deep-learning earth-observation greenhouse-gas-emissions machine-learning pollution-prediction remote-sensing
Keywords from Contributors
self-supervised-learning semantic-segmentation
Last synced: about 3 hours ago
JSON representation
Repository metadata
Code Repository for: "Characterization of Industrial Smoke Plumes from Remote Sensing Data", presented at Tackling Climate Change with Machine Learning workshop at NeurIPS 2020.
- Host: GitHub
- URL: https://github.com/HSG-AIML/IndustrialSmokePlumeDetection
- Owner: HSG-AIML
- License: gpl-3.0
- Created: 2020-11-06T15:09:47.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2021-04-20T10:20:24.000Z (about 4 years ago)
- Last Synced: 2025-04-10T04:01:45.491Z (17 days ago)
- Topics: deep-learning, earth-observation, greenhouse-gas-emissions, machine-learning, pollution-prediction, remote-sensing
- Language: Python
- Homepage:
- Size: 142 MB
- Stars: 41
- Watchers: 4
- Forks: 8
- Open Issues: 1
- Releases: 0
https://github.com/HSG-AIML/IndustrialSmokePlumeDetection/blob/main/
# Industrial Smoke Plume Detection This repository contains the code base for our publication *Characterization of Industrial Smoke Plumes from Remote Sensing Data*, presented at the *Tackling Climate Change with Machine Learning* workshop at NeurIPS 2020.  ## About this Project The major driver of global warming has been identified as the anthropogenic release of greenhouse gas (GHG) emissions from industrial activities. The quantitative monitoring of these emissions is mandatory to fully understand their effect on the Earth’s climate and to enforce emission regulations on a large scale. In this work, we investigate the possibility to detect and quantify industrial smoke plumes from globally and freely available multiband image data from ESA’s Sentinel-2 satellites. Using a modified ResNet-50, we can detect smoke plumes of different sizes with an accuracy of 94.3%. The model correctly ignores natural clouds and focuses on those imaging channels that are related to the spectral absorption from aerosols and water vapor, enabling the localization of smoke. We exploit this localization ability and train a U-Net segmentation model on a labeled subsample of our data, resulting in an Intersection-over-Union (IoU) metric of 0.608 and an overall accuracy for the detection of any smoke plume of 94.0%; on average, our model can reproduce the area covered by smoke in an image to within 5.6%. The performance of our model is mostly limited by occasional confusion with surface objects, the inability to identify semi-transparent smoke, and human limitations to properly identify smoke based on RGB-only images. Nevertheless, our results enable us to reliably detect and qualitatively estimate the level of smoke activity in order to monitor activity in industrial plants across the globe. Our data set and code base are publicly available. The full publication is available on arxiv. The data set is available on [zenodo](http://doi.org/10.5281/zenodo.4250706). ## Content `classification/`: Resnet-50 classifier code, training and evaluation routines `segmentation/`: U-Net segmentation model code, training and evaluation routines ## How to Use Download this repository as well as the [data](http://doi.org/10.5281/zenodo.4250706) and decompress the latter. For both model training and evaluation, you will have to modify the directory paths appropriately so that they point to the image and segmentation label data. It is expected that the data are split into separate data sets for training, validation, and evaluation. For our publication, this has been done in such a way that all observations of a single location are contained in a single data set. Other strategies are possible and will be left to the user. Either model can be trained by invoking: python train.py with the following optional parameters: * `-bs` to define a batch size, * `-ep ` to define the number of training epochs, * `-lr ` to define a starting learning rate, and * `-mo ` to define a momentum value. The models can be evaluated on the test data set by calling the corresponding `eval.py` script. ## Acknowledgements If you use this code for your own project, please cite the following conference contribution: Mommert, M., Sigel, M., Neuhausler, M., Scheibenreif, L., Borth, D., "Characterization of Industrial Smoke Plumes from Remote Sensing Data", Tackling Climate Change with Machine Learning Workshop, NeurIPS 2020.
Owner metadata
- Name: Artificial Intelligence & Machine Learning (AI:ML Lab) @ HSG
- Login: HSG-AIML
- Email:
- Kind: organization
- Description: Deep Learning Research by AIML Team @ HSG
- Website: www.hsg.ai
- Location: St.Gallen
- Twitter:
- Company:
- Icon url: https://avatars.githubusercontent.com/u/59830997?v=4
- Repositories: 8
- Last ynced at: 2023-03-05T03:48:37.987Z
- Profile URL: https://github.com/HSG-AIML
GitHub Events
Total
- Watch event: 1
Last Year
- Watch event: 1
Committers metadata
Last synced: 6 days ago
Total Commits: 6
Total Committers: 3
Avg Commits per committer: 2.0
Development Distribution Score (DDS): 0.5
Commits in past year: 0
Committers in past year: 0
Avg Commits per committer in past year: 0.0
Development Distribution Score (DDS) in past year: 0.0
Name | Commits | |
---|---|---|
Michael Mommert | m****t@u****h | 3 |
Michael Mommert | m****i | 2 |
Damian Borth | d****h@g****m | 1 |
Committer domains:
- unisg.ch: 1
Issue and Pull Request metadata
Last synced: 1 day ago
Total issues: 1
Total pull requests: 0
Average time to close issues: N/A
Average time to close pull requests: N/A
Total issue authors: 1
Total pull request authors: 0
Average comments per issue: 1.0
Average comments per pull request: 0
Merged pull request: 0
Bot issues: 0
Bot pull requests: 0
Past year issues: 0
Past year pull requests: 0
Past year average time to close issues: N/A
Past year average time to close pull requests: N/A
Past year issue authors: 0
Past year pull request authors: 0
Past year average comments per issue: 0
Past year average comments per pull request: 0
Past year merged pull request: 0
Past year bot issues: 0
Past year bot pull requests: 0
Top Issue Authors
- Myhuang1996 (1)
Top Pull Request Authors
Top Issue Labels
Top Pull Request Labels
Dependencies
- geopandas ==0.8.1
- matplotlib ==3.1.3
- numpy ==1.17.4
- rasterio ==1.2.dev0
- scikit-learn ==0.22.1
- tensorboard ==2.3.0
- torch ==1.5.0
- torchvision ==0.6.0
- tqdm ==4.40.2
Score: 4.836281906951478