Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/nasa-nccs-hpda/terragpu
Python library to process and classify remote sensing imagery by means of GPUs and ML.
https://github.com/nasa-nccs-hpda/terragpu
ai cudf cupy cuspatial dask earth-science geopandas gpu ml numpy raster vector
Last synced: 18 days ago
JSON representation
Python library to process and classify remote sensing imagery by means of GPUs and ML.
- Host: GitHub
- URL: https://github.com/nasa-nccs-hpda/terragpu
- Owner: nasa-nccs-hpda
- License: apache-2.0
- Created: 2020-09-14T20:17:13.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2024-03-14T17:23:17.000Z (10 months ago)
- Last Synced: 2024-04-21T11:23:03.865Z (8 months ago)
- Topics: ai, cudf, cupy, cuspatial, dask, earth-science, geopandas, gpu, ml, numpy, raster, vector
- Language: Python
- Homepage:
- Size: 23.7 MB
- Stars: 7
- Watchers: 3
- Forks: 1
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Citation: CITATION.cff
Awesome Lists containing this project
README
# terragpu
Python library to process and classify remote sensing imagery by means of GPUs
and CPU parallelization for high performance and commodity base environments.We are currently working on tutorials and documentations. Feel to follow this repository for
documentation updates and upcoming tutorials.[![DOI](https://zenodo.org/badge/295528915.svg)](https://zenodo.org/badge/latestdoi/295528915)
![Pipeline Status](https://github.com/nasa-cisto-ai/terragpu/actions/workflows/main.yml/badge.svg)## Objectives
- Library to process remote sensing imagery using GPU and CPU parallelization.
- Machine Learning and Deep Learning image classification and regression.
- Agnostic array and vector-like data structures.
- User interface environments via Notebooks for easy to use AI/ML projects.
- Example notebooks for quick AI/ML start with your own data.### Installation
The following library is intended to be used to accelerate the development of data science products for remote sensing satellite imagery. terragpu can be installed by itself, but instructions for installing the full environments are listed under the requirements directory so projects, examples, and notebooks can be run.
Note: PIP installations do not include CUDA libraries for GPU support. Make sure
NVIDIA libraries are installed locally in the system if not using conda.## Getting Started
``` bash
├── archives <- Legacy code stored to historical reference
├── docs <- Default documentation for working with this project
├── images <- Store project images
├── notebooks <- Jupyter notebooks
├── examples <- Examples for utilizing the library
├── requirements <- Requirements for installing the dependencies
├── scripts <- Utility scripts for analysis
├── terragpu <- Library source code
├── README.md <- The top-level README for developers using this project
├── CHANGELOG.md <- Releases documentation
├── LICENSE <- License documentation
└── setup.py <- Script to install library
```## Background
Library to process and classify remote sensing imagery. This is work in progress currently supporting
Random Forest classification and merging Convolutional Neural Networks from the deep-rsensing project.
Each particular project includes its own README with information.Raster processing relies in xarray and rasterio for memory mapping operations, using Dask as the backend.
PyTorch is implemented for GPU accelaration of Sckitlearn models. GPU acceleration is provided
by the NVIDIA RAPIDS environment and we are in the development phase to support AMD GPUs.## Authors
- Jordan Alexis Caraballo-Vega, [email protected]
- Margaret Wooten, [email protected]## Contributors
- Andrew Weis, [email protected]
- Brian Lee, [email protected]## Installation
See the build [guide](requirements/README.md).
## Contributing
Please see our [guide for contributing to terragpu](CONTRIBUTING.md).
## References
Tutorials will be published under [Medium](https://medium.com/@jordan.caraballo/) for additional support
and development, including how to use the library or any upcoming releases.Please consider citing this when using terragpu in a project. You can use the citation BibTeX:
```bibtex
@software{
A_Caraballo-Vega_TerraGPU_2020,
author = {A Caraballo-Vega, Jordan},
doi = {10.5281/zenodo.5765917},
license = {Apache-2.0},
month = {7},
title = {{TerraGPU}},
url = {https://github.com/nasa-cisto-ai/terragpu},
version = {2021.11},
year = {2020}
}
```## References
[1] Raschka, S., Patterson, J., & Nolet, C. (2020). Machine learning in python: Main developments and technology trends in data science, machine learning, and artificial intelligence. Information, 11(4), 193.
[2] Paszke, Adam; Gross, Sam; Chintala, Soumith; Chanan, Gregory; et all, PyTorch, (2016), GitHub repository, . Accessed 13 February 2020.
[3] Caraballo-Vega, J., Carroll, M., Li, J., & Duffy, D. (2021, December). Towards Scalable & GPU Accelerated Earth Science Imagery Processing: An AI/ML Case Study. In AGU Fall Meeting 2021. AGU.