• Stars
    star
    419
  • Rank 103,397 (Top 3 %)
  • Language
    Python
  • License
    MIT License
  • Created almost 5 years ago
  • Updated 4 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Augmentations usage examples for albumentations library

Notebooks

Usage examples

For detailed examples see notebooks.

from albumentations import (
    HorizontalFlip, IAAPerspective, ShiftScaleRotate, CLAHE, RandomRotate90,
    Transpose, ShiftScaleRotate, Blur, OpticalDistortion, GridDistortion, HueSaturationValue,
    IAAAdditiveGaussianNoise, GaussNoise, MotionBlur, MedianBlur, IAAPiecewiseAffine,
    IAASharpen, IAAEmboss, RandomBrightnessContrast, Flip, OneOf, Compose
)
import numpy as np

def strong_aug(p=0.5):
    return Compose([
        RandomRotate90(),
        Flip(),
        Transpose(),
        OneOf([
            IAAAdditiveGaussianNoise(),
            GaussNoise(),
        ], p=0.2),
        OneOf([
            MotionBlur(p=0.2),
            MedianBlur(blur_limit=3, p=0.1),
            Blur(blur_limit=3, p=0.1),
        ], p=0.2),
        ShiftScaleRotate(shift_limit=0.0625, scale_limit=0.2, rotate_limit=45, p=0.2),
        OneOf([
            OpticalDistortion(p=0.3),
            GridDistortion(p=0.1),
            IAAPiecewiseAffine(p=0.3),
        ], p=0.2),
        OneOf([
            CLAHE(clip_limit=2),
            IAASharpen(),
            IAAEmboss(),
            RandomBrightnessContrast(),
        ], p=0.3),
        HueSaturationValue(p=0.3),
    ], p=p)

image = np.ones((300, 300, 3), dtype=np.uint8)
mask = np.ones((300, 300), dtype=np.uint8)
whatever_data = "my name"
augmentation = strong_aug(p=0.9)
data = {"image": image, "mask": mask, "whatever_data": whatever_data, "additional": "hello"}
augmented = augmentation(**data)
image, mask, whatever_data, additional = augmented["image"], augmented["mask"], augmented["whatever_data"], augmented["additional"]

Augmentations examples.

MultiplicativeNoise

  1. Original image
  2. MultiplicativeNoise(multiplier=0.5, p=1)
  3. MultiplicativeNoise(multiplier=1.5, p=1)
  4. MultiplicativeNoise(multiplier=[0.5, 1.5], per_channel=True, p=1)
  5. MultiplicativeNoise(multiplier=[0.5, 1.5], elementwise=True, p=1)
  6. MultiplicativeNoise(multiplier=[0.5, 1.5], elementwise=True, per_channel=True, p=1)

MultiplicativeNoise image

ToSepia

  1. Original image
  2. ToSepia(p=1)

ToSepia image

JpegCompression

  1. Original image
  2. JpegCompression(quality_lower=99, quality_upper=100, p=1)
  3. JpegCompression(quality_lower=59, quality_upper=60, p=1)
  4. JpegCompression(quality_lower=39, quality_upper=40, p=1)
  5. JpegCompression(quality_lower=19, quality_upper=20, p=1)
  6. JpegCompression(quality_lower=0, quality_upper=1, p=1)

JpegCompression image

ChannelDropout

  1. Original image
  2. ChannelDropout(channel_drop_range=(1, 1), fill_value=0, p=1)
  3. ChannelDropout(channel_drop_range=(1, 1), fill_value=0, p=1)
  4. ChannelDropout(channel_drop_range=(1, 1), fill_value=0, p=1)
  5. ChannelDropout(channel_drop_range=(1, 1), fill_value=0, p=1)
  6. ChannelDropout(channel_drop_range=(1, 1), fill_value=0, p=1)
  7. ChannelDropout(channel_drop_range=(2, 2), fill_value=0, p=1)
  8. ChannelDropout(channel_drop_range=(2, 2), fill_value=0, p=1)
  9. ChannelDropout(channel_drop_range=(2, 2), fill_value=0, p=1)

ChannelDropout image

ChannelShuffle

  1. Original image
  2. ChannelShuffle(p=1)
  3. ChannelShuffle(p=1)
  4. ChannelShuffle(p=1)

ChannelShuffle image

Cutout

  1. Original image
  2. Cutout(num_holes=8, max_h_size=8, max_w_size=8, fill_value=0, p=1)
  3. Cutout(num_holes=10, max_h_size=20, max_w_size=20, fill_value=0, p=1)
  4. Cutout(num_holes=30, max_h_size=30, max_w_size=30, fill_value=64, p=1)
  5. Cutout(num_holes=50, max_h_size=40, max_w_size=40, fill_value=128, p=1)
  6. Cutout(num_holes=100, max_h_size=50, max_w_size=50, fill_value=255, p=1)

Cutout image

ToGray

  1. Original image
  2. ToGray(p=1)

ToGray image

InvertImg

  1. Original image
  2. InvertImg(p=1)

InvertImg image

VerticalFlip

  1. Original image
  2. VerticalFlip(p=1)

VerticalFlip image

HorizontalFlip

  1. Original image
  2. HorizontalFlip(p=1)

HorizontalFlip image

Flip

  1. Original image
  2. Flip(p=1)
  3. Flip(p=1)
  4. Flip(p=1)

Flip image

RandomGridShuffle

  1. Original image
  2. RandomGridShuffle(grid=(3, 3), p=1)
  3. RandomGridShuffle(grid=(5, 5), p=1)
  4. RandomGridShuffle(grid=(7, 7), p=1)

RandomGridShuffle image

Blur

  1. Original image
  2. Blur(blur_limit=(7, 7), p=1)
  3. Blur(blur_limit=(15, 15), p=1)
  4. Blur(blur_limit=(50, 50), p=1)
  5. Blur(blur_limit=(100, 100), p=1)
  6. Blur(blur_limit=(300, 300), p=1)

Blur image