Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Data Science
  3. Augmentor

Augmentor

MITPython

A Python library for image augmentation in machine learning, offering a stochastic pipeline approach with fine-grained control over operations.

Visit WebsiteGitHubGitHub
5.1k stars875 forks0 contributors

What is Augmentor?

Augmentor is a Python library for image augmentation specifically designed for machine learning applications. It automates the generation of augmented images to expand datasets, using a stochastic pipeline approach where users define sequences of operations like rotations, distortions, and flips. The library aims to provide fine-grained control over augmentation techniques while remaining platform and framework independent.

Target Audience

Machine learning practitioners, data scientists, and researchers working on computer vision projects who need to augment image datasets for training neural networks or deep learning models. It's particularly useful for those using Keras or PyTorch who require customizable, real-world relevant augmentation pipelines.

Value Proposition

Developers choose Augmentor for its standalone, framework-agnostic design that offers more convenience and finer control compared to built-in augmentation tools. Its pipeline-based stochastic approach, support for ground truth data, and advanced transformations like elastic distortions make it a versatile choice for complex augmentation needs.

Overview

Image augmentation library in Python for machine learning.

Use Cases

Best For

  • Expanding small image datasets for deep learning models
  • Augmenting medical images with corresponding masks for segmentation tasks
  • Generating realistic training data for object detection models
  • Creating custom augmentation pipelines for research experiments
  • On-the-fly augmentation during neural network training with Keras or PyTorch
  • Applying complex transformations like elastic distortions or perspective warps

Not Ideal For

  • Projects requiring 3D or volumetric image augmentation, such as medical CT or MRI scans
  • Real-time video processing applications where frame-by-frame augmentation is needed
  • Teams preferring declarative configuration files (e.g., YAML/JSON) over imperative Python code for defining augmentations

Pros & Cons

Pros

Pipeline Flexibility

Allows building custom sequences of stochastic operations with fine-grained control, as shown in the README where users chain distortions, flips, and crops to generate diverse augmented images.

Ground Truth Synchronization

Supports parallel augmentation of images and their masks using the ground_truth() function, ensuring identical transformations for segmentation tasks, demonstrated with side-by-side examples in the documentation.

Framework Integration

Provides generators for Keras and PyTorch via keras_generator() and torch_transform(), enabling on-the-fly augmentation during training without saving to disk, as outlined in the integration notebooks.

Advanced Transformations

Includes unique operations like elastic distortions and perspective transforms that preserve image size without black padding, highlighted in the README with comparative visuals against other methods.

Cons

2D-Only Limitation

Lacks support for 3D image augmentation, which is a critical gap for fields like medical imaging where volumetric data (e.g., DICOM files) is common, and the README does not mention any plans for 3D features.

Imperative API Verbosity

Requires manual addition of each operation to the pipeline in code, which can be more cumbersome and error-prone compared to declarative configuration systems used in libraries like Albumentations.

Multi-threading Overhead

The README admits that multi-threading can slow down pipelines with very small images, forcing users to disable it via multi_threaded=False, indicating a performance trade-off that requires manual tuning.

Frequently Asked Questions

Quick Stats

Stars5,140
Forks875
Contributors0
Open Issues123
Last commit2 years ago
CreatedSince 2016

Tags

#pytorch-integration#python-library#image-augmentation#deep-learning#neural-networks#augmentation#data-augmentation#computer-vision#machine-learning

Built With

P
Python

Links & Resources

Website

Included in

Data Science3.4k
Auto-fetched 1 day ago

Related Projects

OpenCVOpenCV

Open Source Computer Vision Library

Stars87,212
Forks56,544
Last commit2 days ago
torchvisiontorchvision

Datasets, Transforms and Models specific to Computer Vision

Stars17,633
Forks7,221
Last commit1 day ago
albumentations - A fast and framework agnostic image augmentation libraryalbumentations - A fast and framework agnostic image augmentation library

Fast and flexible image augmentation library. Paper about the library: https://www.mdpi.com/2078-2489/11/2/125

Stars15,286
Forks1,709
Last commit10 months ago
imgaugimgaug

Image augmentation for machine learning experiments.

Stars14,736
Forks2,458
Last commit1 year ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub