Coder Social home page Coder Social logo

pifu4019 / google_earth_engine_notebook Goto Github PK

View Code? Open in Web Editor NEW

This project forked from alan19922015/google_earth_engine_notebook

0.0 1.0 0.0 3.56 MB

A walkthrough of some Google Earth Engine Features, as well as using the data in TensorFlow

Dockerfile 0.32% Shell 0.62% Jupyter Notebook 86.50% Python 12.57%

google_earth_engine_notebook's Introduction

Google Earth Engine Notebook and Tutorial

Here's a little series of Jupyter Notebooks that walk through pulling imagery from Google Earth Engine. While GEE has many features and server-side computes available, this guide treats GEE simply as an imagery datastore and focuses on navigating the images by location and spectrum.

The second part of this guide (not finished yet) will use the imagery in conjunction with TensorFlow for some light machine learning.

At the end of these guides you should be able to request imagery by location, band, and date, and then use that imagery for machine learning.

Tested on Docker 17.03, MacOS Sierra, Chrome

iPython Chapters

  1. Introduction: Getting imagery from GEE
  2. Spectrums: Pulling data from different specra and collections.
  3. Supervised: A gentle introduction to TensorFlow
  4. Unsupervised: Using autoencoders and clustering to group images (work in progress) -->

Multispectrum Experiment

  1. Data Acquisition
  2. All-in-one Analysis
  3. Pipelined Analysis

Authenticating

Before you can use the Google Earth Engine, you must sign up with your Google account. You can sign up here: https://earthengine.google.com/ (While the website claims it could take a week to get an account, I've never seen it take more than 10 seconds.)

After you've created an account, navigate to the repository directory and review and run ./authenticate_gee.sh. After following the prompts, a credentials file should appear in your ./credentials directory. This file contains your authentication token. The scripts in this repo set that folder as a shared volume so that your credentials are saved across container restarts.

Starting the Notebook

The Docker image used in this guide is based on the TensorFlow Jupyter Stack. The start_gee_notebook.sh script runs the following command:

docker run -it --rm \
    -p 8888:8888 \
    -v $WORK_DIR:/home/jovyan/work \
    -v $CREDENTIALS_DIR:/home/jovyan/.config/earthengine \
    -e GRANT_SUDO=yes --user root \
    jldowns/google_earth_engine_notebook:1.1 \
    start-notebook.sh --NotebookApp.token=''

This will run the container on your machine with root access and security tokens disabled, because it's more convenient when just running on a local machine. You can also just run this command without cloning this repo if you want a Google Earth Engine/TensorFlow Jupyter Notebook environment.

That command also creates two shared volumes: the first is the work directory, which is where the tutorials are kept. The second is a "credentials" directory, described earlier.

After starting the container, travel to localhost:8888 in your browser to access the notebooks.

google_earth_engine_notebook's People

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.