Note: this project is under development and may be difficult to use at the moment.
The overall goal of Raster Vision is to make it easy to train and run deep learning models over aerial and satellite imagery. At the moment, it includes functionality for making training data, training models, making predictions, and evaluating models for the task of object detection implemented via the Tensorflow Object Detection API. It also supports running experimental workflows using AWS Batch. The library is designed to be easy to extend to new data sources, machine learning tasks, and machine learning implementation.
Our future work includes:
- more documentation and unit tests
- scalable predictions using parallelism
- classification and segmentation
We are shooting for a first release in Summer 2018.
Why do we need yet another deep learning library? In traditional object detection, each image is a small PNG file and contains a few objects. In contrast, when working with satellite and aerial imagery, each image is a set of very large GeoTIFF files and contains hundreds of objects that are sparsely distributed. In addition, annotations and predictions are represented in geospatial coordinates using GeoJSON files.
You can find more information and talk to developers (let us know what you're working on!) at:
In the past, we developed prototypes for semantic segmentation and tagging in this repo, which were discussed in our segmentation , and tagging blog posts. This implementation has been removed from the develop
branch and is unsupported, but can still be found at this tag.
Similarly, an outdated prototype of object detection can be found at this tag under the rv
module.
Raster Vision is publishing docker images to quay.io.
The tag for the raster-vision
image determines what type of image it is:
- The
cpu-*
tags are for running the CPU containers. - The
gpu-*
tags are for running the GPU containers.
We publish a new tag per merge into develop
, which is tagged with the first 7 characters of the commit hash.
To use the latest version, pull the latest
suffix, e.g. raster-vision:gpu-latest
.
Git tags are also published, with the github tag name as the docker tag suffix.
We are happy to take contributions! It is best to get in touch with the maintainers about larger features or design changes before starting the work, as it will make the process of accepting changes smoother.
Everyone who contributes code to Raster Vision will be asked to sign the Azavea CLA, which is based off of the Apache CLA.
-
Download a copy of the Raster Vision Individual Contributor License Agreement or the Raster Vision Corporate Contributor License Agreement
-
Print out the CLAs and sign them, or use PDF software that allows placement of a signature image.
-
Send the CLAs to Azavea by one of:
- Scanning and emailing the document to [email protected]
- Faxing a copy to +1-215-925-2600.
- Mailing a hardcopy to: Azavea, 990 Spring Garden Street, 5th Floor, Philadelphia, PA 19107 USA