Skip to content

A web mapping app to test, tweak and train the land cover classification from a deep neural network model built by @microsoft

Notifications You must be signed in to change notification settings

vannizhang/aiforearth-landcover-app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

70 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Land Cover Classification App

This web mapping application provides users a tool to visualize, test and tune the pixel level land cover classification from a deep neural network model using the Cognitive Toolkit (CNTK), Azure Geo AI Data Science Virtual Machine or an Azure Batch AI. The model was developed in collaboration between the Chesapeake Conservancy, ESRI, and Microsoft Research as part of Microsoft's AI for Earth initiative.

View it live

App

How it works

  • Click anywhere on the map to load 9 training tile candidates, click the training tile candidates to show it in the area selection panel on map, adjust the opcity to see how it compares to the natural color high resolution aerial imagery.
  • The user may push land cover type sliders up and down to get adjusted results.
  • Click "Teach the machine" button to submit the selected training tile candidate that will be used to train the model.
  • Click the menu button at top right to open a collection of submitted training tiles. A training tile can be selected to open the application to that current state for editing.

Prerequisites

Before we begin, make sure you have a fresh version of Node.js installed. The current Long Term Support (LTS) release is an ideal starting point.

Installing

To begin, clone this repository to your computer:

https://github.com/vannizhang/aiforearth-landcover-app.git

From the project's root directory, install the required packages (dependencies):

npm install

Running the app

Now you can start the webpack dev server to test the app on your local machine:

# it will start a server instance and begin listening for connections from localhost on port 8080
npm run server

Deployment

To build/deploye the app, you can simply run:

# it will place all files needed for deployment into the /build directory 
npm run build

External Libraries:

Resources

Issues

Find a bug or want to request a new feature? Please let us know by submitting an issue.

Contributing

Esri welcomes contributions from anyone and everyone. Please see our guidelines for contributing.

Licensing

Copyright 2016 Esri

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

A copy of the license is available in the repository's license.txt file.

Releases

No releases published

Packages

No packages published