Implement additional data augmentations for training
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 2.1k
- Forks
- 385
- PR merge metrics
- No merged PRs in 30d
Description
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.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reading pull request #19, which introduced the existing rotation and flipping augmentations, and trace how those augmentations are applied during training. Implement and validate the listed scaling, color, blur, stitching, contrast, and gamma behaviors, preserving the specified image-versus-mask interpolation and image-only rules; done means all checklist items are covered.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- computer-vision, machine-learning
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100