robosat
robosat copied to clipboard
Semantic segmentation on aerial and satellite imagery. Extracts features such as: buildings, parking lots, roads, water, clouds
At the moment we generate the segmentation masks based on OpenStreetMap geometries in `rs rasterize`. There is no standard of how fine or coarse geometries are mapped in OpenStreetMap. Sometimes...
We should implement optional support for test-time augmentation in `rs predict`. Here is how it works: when predicting for a tile we will not only predict on the tile as...
In https://github.com/mapbox/robosat/pull/19 we implemented data augmentations like random rotations and random flipping. In the context of aerial and satellite imagery we should implement additional augmentations: - [ ] Implement random...
For #7. Work in progress. This changeset implements a a randomized online algorithm "reservoir sampling" for randomly sampling k items from a stream of unknown n items. We can use...
At the moment we don't do instance segmentation. This allows our model to be very simple while still achieving amazing results for our current use-cases. Where it breaks down, though,...
At the moment we predict the tile segmentation probabilities by adding a border to the tile. The idea is to do prediction on the larger images to get masks and...
At the moment `rs rasterize` generates masks which always have a feature in them. When we initially train on these masks and their corresponding images, we don't have background-only images...
At the moment we still have our old dataset classes not yet working with the slippy map directory datsets: https://github.com/mapbox/robosat/blob/52299b855b77225b795b015944e31cbddb9ce44b/robosat/datasets.py Tasks: - remove the ImageDirectory dataset as it is unused...
Currently in `rs feature` we extract polygons and simplify them. Then in `rs merge` we buffer, then union, then unbuffer for merging shapes across tile boundaries. This leads to polygons...
See for context: https://github.com/pytorch/pytorch/issues/7178. We currently are passing devices around except for `torch.load` where we have to pass a `map_location` function argument. In https://github.com/pytorch/pytorch/pull/7339 this got changed and we can...