Detect roads/trails in satellite imagery by training a convnet with OSM ways data.
Work in progress.
pip install -r requirements.txt
Install globalmaptiles.py
mkdir lib
cd lib
git clone git@gist.github.com:1193577.git global_map
cd ..
export PYTHONPATH=$PYTHONPATH:/PATH_TO_REPO/lib/global_map
Detect OpenStreetMap (OSM) ways (streets and trails) in satellite imagery. Train the neural net using MapQuest open imagery, and an OSM ways.
- TensorFlow - using this for the deep learning
- Hinton on using a neural network to do this - best/recent paper on doing this, great success with these methods
- Links from the Tensorflow site
- MNIST Data and Background
- all the other links to Nielsen’s book and Colah’s blog
- Deep Background
Multilayer Convolutional Network
- Download a chunk of satellite imagery from MapQuest at max resolution, in 256x256px PNGs
- Download ways (i.e. road/trails) for that area from OSM
- Generate training and evaluation data
- Download a different set of training imagery and OSM ways, and see if we can predict the ways from the imagery
- flatten it into matrices of trail/no trail
- check tiles visually
- use GDAL to download and composite image tiles
Data Size
- do a tiny area and do it all locally for testing
- use one or more GPUs on Amazon if bottlenecked
Download OSM data, parse out ways
- alternative to Clipper method: load it into Postgres and do it that way
Accuracy
- mimic Hinton’s methods, esp. for getting real road geometries
- see if we can identify trails nearly as well as roads
There's nothing to see here, move along. None of this code probably works. Still working on tutorials to learn deep learning, so I can apply to OSM and satellite imagery.
For using the MNIST data, clone the tensorflow repo, and add the mnist example to your PYTHONPATH:
export PYTHONPATH=$PYTHONPATH:/PATH_TO_REPO/tensorflow/tensorflow/examples/tutorials/mnist/