All Projects → acannistra → planet-snowcover

acannistra / planet-snowcover

Licence: MIT license
Can we use Planet high-resolution imagery to assess snow cover?

Programming Languages

Jupyter Notebook
11667 projects
HTML
75241 projects

Projects that are alternatives of or similar to planet-snowcover

kubernetes-reading-notes
Kubernetes源码阅读笔记
Stars: ✭ 96 (+405.26%)
Mutual labels:  cloud-native
wash
WAsmcloud SHell - A multi-tool for various wasmCloud activities.
Stars: ✭ 80 (+321.05%)
Mutual labels:  cloud-native
matrixone
Hyperconverged cloud-edge native database
Stars: ✭ 1,057 (+5463.16%)
Mutual labels:  cloud-native
newtonjs-graph
Cloud Architecture Graphs for Humans
Stars: ✭ 85 (+347.37%)
Mutual labels:  cloud-native
kc-sofastack-demo
SOFAStack Demo for SOFAStack Cloud Native Workshop on KubeCon China 2019
Stars: ✭ 37 (+94.74%)
Mutual labels:  cloud-native
rust-cloud-native.github.io
A curated list of awesome Cloud Native Rust frameworks, libraries and software
Stars: ✭ 212 (+1015.79%)
Mutual labels:  cloud-native
insightedge
InsightEdge Core
Stars: ✭ 22 (+15.79%)
Mutual labels:  cloud-native
learn
The best path to .Net Microservices Udemy Learning Path. .Net world evolving to the microservices and Cloud-native systems to provide rapid change, large scale, and resilience cutting-edge systems. Cloud-native microservices empower organizations to build and run scalable applications in modern, dynamic environments such as public, private, and …
Stars: ✭ 24 (+26.32%)
Mutual labels:  cloud-native
configuro
An opinionated configuration loading framework for Containerized and Cloud-Native applications.
Stars: ✭ 81 (+326.32%)
Mutual labels:  cloud-native
souls
SOULs 🔥 Build Serverless Apps faster like Rails. Powered by Ruby GraphQL, RBS/Steep, Active Record, RSpec, RuboCop, and Google Cloud.
Stars: ✭ 327 (+1621.05%)
Mutual labels:  cloud-native
apisix-website
Apache APISIX Website
Stars: ✭ 81 (+326.32%)
Mutual labels:  cloud-native
opssight-connector
OpsSight Connector documentation
Stars: ✭ 15 (-21.05%)
Mutual labels:  cloud-native
CoSky
High-performance, low-cost microservice governance platform. Service Discovery and Configuration Service | 高性能、低成本微服务治理平台
Stars: ✭ 57 (+200%)
Mutual labels:  cloud-native
zadig
Zadig is a cloud native, distributed, developer-oriented continuous delivery product.
Stars: ✭ 1,615 (+8400%)
Mutual labels:  cloud-native
velum
Dashboard for CaaS Platform clusters (v1, v2 and v3)
Stars: ✭ 55 (+189.47%)
Mutual labels:  cloud-native
cloud-native-pipelines
Cloud-native pipelines leveraging Concourse, Pivotal Build Service and Spinnaker to deploy apps
Stars: ✭ 15 (-21.05%)
Mutual labels:  cloud-native
k8s-app-monitor-agent
Kubernetes application monitor agent
Stars: ✭ 20 (+5.26%)
Mutual labels:  cloud-native
incubator-eventmesh
EventMesh is a dynamic event-driven application runtime used to decouple the application and backend middleware layer, which supports a wide range of use cases that encompass complex multi-cloud, widely distributed topologies using diverse technology stacks.
Stars: ✭ 939 (+4842.11%)
Mutual labels:  cloud-native
gryllidae
Opinionated CNCF-based, Docker Compose setup for everything needed to develop a 12factor app
Stars: ✭ 18 (-5.26%)
Mutual labels:  cloud-native
genie-cloud
Genie As A Service and Thingpedia
Stars: ✭ 267 (+1305.26%)
Mutual labels:  cloud-native

Planet Snowcover

Planet Snowcover is a project that pairs airborne lidar and Planet Labs satellite imagery with cutting-edge computer vision techniques to identify snow-covered area at unprecedented spatial and temporal resolutions.

💡This work was presented by Tony (@acannistra) at AGU 2019 in San Francisco. See the slides here.

Researchers: Tony Cannistra1, Dr. David Shean2, and Dr. Nicoleta Cristea2

1: Department of Biology, University of Washington, Seattle, WA.
2: Department of Civil and Environmental Engineering, University of Washington, Seattle, WA

This Repository

This repository serves as the canonical source for the software and infrastructure necessary to sucessfully build and deploy a machine-learning based snow classifier using Planet Labs imagery and airborne lidar data.

Primary Components

The contents of this repository are divided into several main components, which we detail here. This is the place to look if you're looking for something in particular.

Folder Description Details
./pipeline Jupyter notebooks detailing the entire data processing, machine learning, and evaluation pipeline. These notebooks detail every step in this workflow, from start to finish.
./preprocess A set of Python CLI tools for preprocessing data assets. These tools help to reproject and threshold the ASO raster files, create vector footprints of raster data, tile the imagery for training, and other related tasks.
./model The implementation of the machine learning/computer vision techniques used by this project. This work relies heavily on the robosat.pink repository, which we've forked and modified extensively.
./sagemaker The infrastructure required to use Amazon Sagemaker to manage our ML training jobs. Sagemaker requires considerable configuration, including a Docker container. We build this container from this directory, which has a copy of the ./model directory.
./experiments Configuration files that describe experiments used to assess the performance of this ML-based snow cover method. Our ML infrastructure uses "config files" to describe the inputs and other parameters to train the model effectively. We use these files to describe experiments that we perform, using different sets of ASO and imagery.
./implementation-notes Technical descriptions of the implementation considerations that went into this project. These are working documents, in raw Markdown format.
./raster_utils Small utility functions for managing raster computations. Not much to see here.
./environment Raw Python environment configuration files. ⚠️ These emerge from conda and change often. Use sparingly. We preserve our environment via Docker, which should be used in this case (see the ./sagemaker directory)
./analysis Jupyter notebooks that describe analyses about our snow mask product. ⚠️ These are a work in progress and change frequently.

Requirements

Basic Requirements

The goal of this work is to provide a toolkit that is relatively easy to deploy for someone with working knowledge of the following tools:

  • Python 3
  • Jupyter notebooks
  • Basic command-line tools

More specific requirements can be found in the Infrastructure Deployment section below.

Development Requirements

This free, open-source software depends on a good number of other free, open-source software packages that permit this work. To understand the inner workings of this project, you'll need familiarity with the following:

To build and manage our infrastructure, we use Docker and Terraform.

Accounts and Data

Amazon Web Services

This project relies on cloud infrastructure from Amazon Web Services, which is a cloud services provider run by Amazon. AWS isn't the only provider in this space, but is the one we chose due to a combination of funding resources and familiarity. To run these tutorials and perform development tasks with this software, you'll need an AWS account. You can get one here.

Planet Labs

In order to access the imagery data from Planet Labs used to train our computer vision models and assess their performance, we rely on a relationship with collaborator Dr. David Shean in UW Civil and Environmental Engineering, who has access to Planet Labs data through a NASA Terrestrial Hydrology Program award.

If you're interested in getting access to Planet Labs imagery for research, check out the Planet Education and Research Program.

NASA Earthdata

Finally, to gain access to the NASA/JPL Airborne Snow Observatory lidar-derived snow depth information, you need an account with NASA Earthdata. Sign up here.

Infrastructure Deployment

To explore this work, and the tutorials herein, you'll need to deploy some cloud infrastructure to do so. This project uses Dockerand Terraform to manage and deploy consistent, reliable cloud infrastructure.

For detailed instructions on this process, view the documentation.

To jump right to the guts of the deployment, here's our Dockerfile and Terraform Resource Definition.

Tutorials

Through support from Earth Science Information Partners, we're happy to be able to provide thorough interactive tutorials for these tools and methods in the form of Jupyter notebooks. You can see these tutorials in the data pipeline folder ./pipeline.

Acknowledgements and Funding Sources

This work wouldn't be possible without the advice and support of Dr. Nicoleta Cristea, Dr. David Shean, Shashank Buhshan, and others.

We gratefully acknowledge financial support from the Earth Science Innovation Partners Lab, the NASA Terrestrial Hydrology Program, the Planet Labs Education and Research Program, and the National Science Foundation.

Original Proposal

To see the original resarch proposal for this project, now of date, view it here.


Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].