robosat
robosat copied to clipboard
Implement additional data augmentations for training
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 scaling (image with bicubic, mask with nearest).
- [ ] Implement random color jitter in HSV color space (image only).
- [ ] Implement motion blur (directional, not just gaussian blur). Mostly for drone imagery use-case.
- [ ] Implement stitching artifacts. Simulate with shear (offset of part of the image) and blur on only one side.
- [ ] Implement changes in contrast.
Note: implement contrast jitter as something like add -0.2..0.2 and gamma (x**n) 0.8..1.2 to the luminance channel. That’s important because the camera is doing auto-exposure and you can get very different contrast profiles for under cloud v. under sun, the same feature in and out of a tree’s shadow, etc.