Augmentations

Augmentations increase the generalizability of your model’s performance through increasing the diversity of learning examples for your model.

In Roboflow, select how many times you seek a given image to be augmented. For example, sliding to 3 means each of your images will receive 3 random augmentations based on the settings you select.

In Roboflow, augmentations are chained together. For example, if you select “flip horizontally” and “salt and pepper noise,” a given image will randomly be reflected as a horizontal flip and receive random salt and pepper noise.

Doing your augmentations through Roboflow rather than at the time of training has a few key benefits.

  1. Increases model reproducibility. With Roboflow, you have a copy of how each image was augmented. For example, may find your model performs better on bright images rather than dark images, so you should collect more low-light training data.
  2. Decreases training time. Augmentations are CPU-constrained operations. When you’re training on your GPU and conducting augmentations on-the-fly, your GPU is often waiting for your CPU to provide augmented data at each epoch. That adds up!
  3. Decreases training costs. Because augmentations are CPU-constrained operations, your expensive, rented GPU is often waiting to be fed images for training. That’s wasted dollars.

Flip

Randomly flip (reflect) an image vertically or horizontally. Annotations are correctly mirrored.

Horizontal: Flip the image’s numpy array in the left/right direction.

Vertical: Flip the image’s numpy array in the up/down direction.

90-Degree Rotations

Randomly rotate an image 90 degrees or 180 degrees.

Clockwise: Rotates an image 90 degrees clockwise.

Counter Clockwise: Rotates an image 90 degrees counter clockwise.

Upside Down: Rotates an image 180 degrees (upside down).

Random Rotation

Randomly rotate an image clockwise or counter clockwise up to the degree amount the user selects.