AlbumentationsX

albumentations-teamAGPL-3.0活跃维护

面向计算机视觉的高性能图像增强库,支持分类、分割、检测等任务,可同步变换边界框和掩码,适合深度学习训练数据扩增。

Image augmentation for computer vision. AGPL-3.0-only or commercial licensing.

2.6.1发布于 2026-11-09 05:20 UTC593star +1 / 7 天46fork同步于 2026-11-10 17:58 UTC

怎么上手

由 README 提炼,执行前请确认
pip install "torch>=2.13.0" --index-url https://download.pytorch.org/whl/cpu
pip install "albumentationsx[headless]"
硬件要求按 README 说明

README 未说明显存或 GPU 要求;需 Python 3.11 或更高版本,并需预先安装 PyTorch 与任一 OpenCV 变体。

纯 CPU 可运行需要 CUDA
下载:源码 zip·GitHub Releases(安装包)本站不镜像安装包

项目说明

由 README 自动翻译提炼

Python 图像增强库,用统一管线同时处理图像与掩码、框、关键点

面向计算机视觉的高性能图像增强库,支持分类、分割、检测等任务,可同步变换边界框和掩码,适合深度学习训练数据扩增。

核心能力

  • 用 Compose 组合 70+ 增强算子,统一处理图像与标注
  • 同一接口支持 RGB、灰度、多光谱图像、掩码、边界框和关键点
  • 覆盖像素级、空间级、医学与 3D 增强,适配多种 CV 任务
  • 可与 PyTorch、TensorFlow 等框架集成
  • 提供 MCP 集成,让 AI 助手检查变换并预览管线

容易踩的坑

需先自行安装 PyTorch,否则导入 albumentations 会失败;基础包 albumentationsx 不含 PyTorch,需按平台另装;OpenCV 需按有无 GUI 需求选择 headless 或普通版本;默认会收集使用统计,需按文档关闭。

内容由模型根据 README 生成,可能不完整或不准确,以官方文档为准。看原文 README

最近发版

5 个版本2.6.1
  1. 2.6.1AlbumentationsX 2.6.1最新正式版2026-11-09 · 2026-11-09 05:20 UTC

    AlbumentationsX 2.6.1

    Summary

    • Add optional box-aware crop sampling for detection pipelines that must retain one selected box or every annotated box.
    • Correct oriented-box geometry and replay mapping across resize, perspective, crop, and remap operations.
    • Validate root inputs before sampling, including calls skipped by p=0, and preserve the order of repeated replay visits.
    • Fix Macenko stain estimation to use the two largest optical-density principal components.

    Breaking changes

    Custom transform dispatch

    BasicTransform and DualTransform now own sampled-parameter dispatch. Overrides of apply_with_params and _apply_with_params are rejected. Generate values in sample_parameters, return SampledParams, and implement target handlers such as apply or apply_to_mask. See the custom transform guidance. #622

    Input validation

    Invalid declared arguments and malformed root inputs now fail before sampling randomness, including calls skipped by p=0. Incorrect argument kinds raise TypeError; invalid values raise ValueError. Positional sample arguments also raise TypeError. Correct invalid configurations and inputs, and update exception handlers that relied on the previous error types. #620

    Malformed replay records now raise explicit TypeError or ValueError exceptions for invalid kinds, missing fields, unknown classes, or missing named Lambda bindings. Worker RNG lookup errors now propagate instead of silently selecting another stream. #620

    Direct bounding-box calls

    Direct transform calls without a bbox processor now interpret boxes as normalized horizontal boxes. Pass normalized coordinates or use Compose with explicit BboxParams for other formats and oriented boxes. #621

    New features

    RandomResizedCrop: preserve boxes in the crop

    Set bbox_preservation="one_box" to require the crop to contain one uniformly selected box across active bbox fields, or "all_boxes" to contain every box. With no boxes, ordinary sampling is used. The transform relaxes scale and aspect-ratio bounds only as needed to satisfy the box constraint; configured BboxParams filters still apply. The default None preserves existing sampling. #630

    Bug fixes

  2. 2.6.0AlbumentationsX 2.6.02026-11-05 · 2026-11-05 07:14 UTC
    查看更新说明

    AlbumentationsX 2.6.0

    Summary

    • Use float16 NumPy arrays and CPU PyTorch tensors for image and volume augmentation, including batches, masks, and reference data.
    • Apply MixUp and input normalization after collation through albumentations.batch. Both operations run outside autograd and return tensors that can feed a trainable model.
    • Configure ChannelDropout with an eligible channel set and a dropout ratio. Update older configurations that use channel_drop_range.
    • Compose releases input storage promptly after successful calls and calls that raise. Custom samplers that accessed SamplingContext.invocation need the migration below.
    • The release uses Albucore 0.3.5 for image kernels and raises the NumKong minimum to 7.8.7.

    Breaking changes

    ChannelDropout configuration

    ChannelDropout replaces channel_drop_range with channels_to_drop and dropout_ratio. Omit channels_to_drop to make all channels eligible, or pass the channel indices that may be replaced. The ratio applies to the eligible set. The transform rounds half up and retains at least one input channel. Single-channel inputs pass through. The default ratio is 0.5, so set it explicitly when migrating a policy that relied on the old default of one dropped channel.

    For an RGB input, both examples below select one of three channels. An old count range that sampled multiple possible counts requires a new policy choice because the ratio produces a fixed count for a given eligible set. Update saved configurations that contain the old constructor field. #589

    import albumentations as A
    
    # 2.5.1 used A.ChannelDropout(channel_drop_range=(1, 1), fill=0, p=0.5)
    rgb_dropout = A.ChannelDropout(dropout_ratio=1 / 3, fill=0, p=0.5)
    

    Custom sampling hooks

    SamplingContext.invocation and the invocation= constructor argument have been removed. Read sampling.py_random and sampling.random_generator directly. Inspect inputs and target descriptors through the hook's data and targets arguments. For standalone tests or tools, use SamplingContext.from_seed() for an isolated stream or SamplingContext.from_owner() to draw from a configured transform. This keeps sampling state from holding input buffers after the call ends. Migration guide · #602

    # Before
    value = sampling.invocation.py_random.uniform(0, 1)
    
    # After
    value = sampling.py_random.uniform(0, 1)
    

    Image type annotations and wavelength validation

    • albumentations.core.type_definitions.ImageType has been removed. In custom transforms, annotate the dtypes that the operation accepts. For a NumPy operation that accepts all three image dtypes, use NDArray[np.uint8] | NDArray[np.float16] | NDArray[np.float32]. The pinned Albucore release also removes its ImageType alias and exposes convert_dtype for explicit conversions. #614
    • WaterRefraction validates both endpoints of wavelength_range at construction. Fractions must lie in [0.001, 1.0]. Update older configurations outside this range. #612

    New features

    Batch operations for PyTorch training

    The new albumentations.batch module operates on collated tensors such as (N, C, H, W) images and (N, C, D, H, W) volumes. It runs separately from per-sample Compose pipelines. [Batch Augmentations guide](https://github.com/albumentations-team/albumentations-ai-docs/blob/main/docs/4-advanced-guides/

  3. 2.5.1AlbumentationsX 2.5.12026-10-11 · 2026-10-11 18:15 UTC
    查看更新说明

    AlbumentationsX 2.5.1

    Summary

    • Faster MRI augmentation with MotionArtifact, RicianNoise, KSpaceSpikeNoise, and BiasField.
    • Lower temporary-array usage for eligible Rician noise and bias-field reconstruction, with channel-independent scratch buffers for shared k-space spikes.
    • Regression coverage for MRI replay, strided arrays, backend selection, and direct volume batches.
    • One source for development dependencies and automated license-review synchronization for eligible Dependabot lockfile updates.

    Breaking changes

    No public API or minimum Python-version changes; Python 3.11 or higher remains required. Optimized MRI kernels can introduce floating-point roundoff differences. Motion and Rician reconstruction can differ from 2.5.0 by one intensity level for uint8 outputs; seeded replay remains deterministic within this version.

    For contributors, requirements-dev.txt has been removed. Use the groups in pyproject.toml:

    uv sync --locked --group dev --inexact
    

    Install the PyTorch build appropriate for your environment. For the CPU-only CI profile:

    uv sync --locked --group dev --group ci-torch-cpu --inexact
    

    The pip fallback is python -m pip install -e . --group dev with pip 25.1 or higher. See development setup.

    New features

    MRI performance

    • MotionArtifact computes FFTs along the acquisition axis, eliminating two spatial FFT axes. Large writable single-channel volumes use CPU PyTorch FFTs; other inputs use SciPy. #577
    • RicianNoise fuses magnitude reconstruction for eligible large float32 arrays and removes a full-size imaginary-square temporary. #577
    • KSpaceSpikeNoise combines separable coefficients for up to five shared spikes, using published Albucore 0.2.21 operations. Coefficient storage is independent of channel count, and each allocating addition is bounded to one XY plane. #578
    • BiasField interpolates and applies gains one plane at a time for eligible float32 volumes, avoiding a full-volume gain field. Other shapes, dtypes, and field configurations retain their established routes. #578

    Measured through the allocating Compose route on Apple M4 Max, exactly one CPU thread, NumPy DHWC float32 volumes of shape 32 × 256 × 256 × 1:

    TransformParametersBeforeAfterSpeedup
    MotionArtifact2 events101.43 ms70.12 ms1.45×
    RicianNoisestd 0.1, shared fields15.18 ms14.14 ms1.07×
    KSpaceSpikeNoise5 shared spikes, intensity 0.2512.450 ms4.954 ms2.51×
    BiasFieldstd 0.25, scale 0.036.485 ms2.838 ms2.29×

    These are the paired measurements reported in #577 and #578, which include exact revisions, parameters, methods, and complete comparison matrices. They u

  4. 2.5.0AlbumentationsX 2.5.02026-10-07 · 2026-10-07 16:47 UTC
    查看更新说明

    AlbumentationsX 2.5.0

    Summary

    Breaking changes

    • Python 3.10 is no longer supported. Install and run AlbumentationsX with Python 3.11 or newer.
    • Medical transform implementations and functional helpers now live in albumentations.augmentations.medical.transforms and albumentations.augmentations.medical.functional. Code importing implementation modules should update its import path. For example:
    # Before
    from albumentations.augmentations.pixel.color_advanced import HEStain
    
    # After
    from albumentations.augmentations.medical.transforms import HEStain
    

    Top-level exports such as A.HEStain retain their constructor parameters and serialization identifiers.

    New features

    • BiasField simulates smooth multiplicative intensity variation in images and 3D volumes, with shared or per-channel fields.
    • GhostingArtifact simulates periodic MRI ghost replicas in real 3D magnitude volumes.
    • GibbsRinging applies rectangular k-space truncation to 2D images and 3D volumes.
    • MotionArtifact simulates motion between MRI acquisition segments in 3D volumes.
    • The new medical package groups these transforms with Anisotropy3D, HEStain, KSpaceSpikeNoise, and RicianNoise. Their top-level exports, target behavior, and serialization remain intact.

    Bug fixes

    • RandomGamma now builds its uint8 lookup table from exact integer pixel values. With gamma 1, all 256 uint8 values remain unchanged across images and volumes.
    • Corrects the documented gamma equation and brightening/darkening directions, and adds a runnable numeric example.

    Misc

    • For large 3D volumes, KSpaceSpikeNoise, GibbsRinging, and BiasField reduce FFT computation or temporary memory in selected parameter, shape, and dtype ranges. Other inputs keep the existing execution paths.
    • Updates the supported Python and operating-system matrix, contributor guidance, release metadata, and development dependencies.
    • Keeps release-core ASV discovery compatible with 2.4.13 and corrects pinned artifact action version comments in CI workflows (#571, #573).

    Commits

    CommitPRDescription
    7140cc9#558Require Python 3.11+ and refresh ecosystem dependencies
    d1a018b#559Update development dependency group
    cc6aa02#560Add MotionArtifact for MRI acquisition motion
    96ca52b#561Add BiasField for MRI intensity inhomogeneity
    `d3a
  5. 2.4.132026-10-02 · 2026-10-02 13:43 UTC
    查看更新说明

    What's Changed

    Full Changelog: https://github.com/albumentations-team/AlbumentationsX/compare/2.4.12...2.4.13

用户点评

登录用户的真实使用记录,可按版本和硬件筛选
共 0 条

    还没有人点评。第一个说出真实体验的人最有价值。

    README 原文

    未翻译

    AlbumentationsX

    PyPI version CI PyPI Downloads

    📣 Stay updated! Subscribe to our newsletter for the latest releases, tutorials, and tips.

    License: AGPL-3.0-only Commercial License

    Docs Discord Twitter LinkedIn Reddit

    AlbumentationsX is a Python library for image augmentation. It provides high-performance, robust implementations and cutting-edge features for computer vision tasks. Image augmentation is used in deep learning and computer vision to increase the quality of trained models. The purpose of image augmentation is to create new training samples from the existing data.

    Citing

    If AlbumentationsX supports your research, please cite AlbumentationsX: One Augmentation Pipeline for Images and Related Annotations. Your citation makes the project's research impact visible to funders and helps sustain maintenance.

    @article{iglovikov2026albumentationsx,
        title = {AlbumentationsX: One Augmentation Pipeline for Images and Related Annotations},
        author = {Iglovikov, Vladimir},
        journal = {arXiv preprint arXiv:2608.11123},
        year = {2026},
        doi = {10.48550/arXiv.2608.11123},
        url = {https://arxiv.org/abs/2608.11123}
    }
    

    Licensing

    AlbumentationsX offers two license options:

    • Commercial license: choose alternative permissions for proprietary software under an agreement covering your team, products, and deployments. Request a quote or email [email protected].
    • AGPL-3.0-only: available at no charge. The AGPL permits commercial use subject to its terms. Read the license guide.

    Commercial, proprietary, internal, or production status alone does not require a commercial license. See the AGPL text and licensing details and history for the applicable terms.

    For supplier questionnaires and purchasing documents, see institutional procurement.

    Quick Start

    # Install the PyTorch build for your platform first. For Linux CPU-only:
    pip install "torch>=2.13.0" --index-url https://download.pytorch.org/whl/cpu
    
    # Then install AlbumentationsX with OpenCV.
    pip install "albumentationsx[headless]"
    
    import albumentations as A
    
    transform = A.Compose(
        [
            A.RandomCrop(width=256, height=256),
            A.HorizontalFlip(p=0.5),
            A.RandomBrightnessContrast(p=0.2),
        ]
    )
    

    Here is an example of how you can apply some pixel-level augmentations to create new images from the original one: parrot

    Why AlbumentationsX

    Table of contents

    Authors

    Current Maintainer

    Vladimir I. Iglovikov | Kaggle Grandmaster

    Emeritus Core Team Members

    Mikhail Druzhinin | Kaggle Expert

    Alex Parinov | Kaggle Master

    Alexander Buslaev | Kaggle Master

    Eugene Khvedchenya | Kaggle Grandmaster

    Installation

    AlbumentationsX requires Python 3.11 or higher. To install the latest version from PyPI:

    Basic Installation

    Install the PyTorch build for your CPU, CUDA, or MPS environment before installing AlbumentationsX. For a Linux CPU-only environment:

    pip install "torch>=2.13.0" --index-url https://download.pytorch.org/whl/cpu
    

    For CUDA or macOS (MPS), use the matching command from the PyTorch installation selector. AlbumentationsX does not choose or install a PyTorch accelerator build.

    If you already have OpenCV installed (any variant), install AlbumentationsX:

    pip install -U albumentationsx
    

    Installation with OpenCV

    If you don't have OpenCV installed yet, choose the appropriate variant:

    # For servers/Docker (no GUI support, lighter package)
    pip install -U "albumentationsx[headless]"
    
    # For local development with GUI support (cv2.imshow, etc.)
    pip install opencv-python && pip install -U albumentationsx
    
    # For OpenCV with extra algorithms (contrib modules)
    pip install opencv-contrib-python && pip install -U albumentationsx
    
    # For contrib + headless
    pip install -U "albumentationsx[contrib-headless]"
    

    Note: AlbumentationsX works with any OpenCV variant:

    • opencv-python (full version with GUI)
    • opencv-python-headless (no GUI, smaller size)
    • opencv-contrib-python (with extra modules)
    • opencv-contrib-python-headless (contrib + headless)

    Choose the one that fits your needs. The library will detect whichever is installed.

    pip install albumentationsx installs the base dependency set without PyTorch. It is useful for dependency-only consumers such as documentation builds. Importing albumentations requires the PyTorch build you selected above.

    Other installation options are described in the documentation.

    Documentation

    The full documentation is available at https://albumentations.ai/docs/. For security, release verification, and contributor guides, see the repository documentation.

    For AI-assisted augmentation review, AlbumentationsX can also be used through MCP-capable hosts such as Claude Desktop, Cursor, Claude Code, and Codex. The community AlbumentationsX MCP integration lets assistants inspect transforms, validate pipelines, render bounded local preview batches, compare preview runs, collect concrete feedback, and export reproducible AlbumentationsX pipelines.

    A simple example

    import albumentations as A
    import cv2
    
    transform = A.Compose(
        [
            A.RandomCrop(width=256, height=256),
            A.HorizontalFlip(p=0.5),
            A.RandomBrightnessContrast(p=0.2),
        ]
    )
    
    image = cv2.imread("image.jpg", cv2.IMREAD_COLOR_RGB)
    
    transformed = transform(image=image)
    transformed_image = transformed["image"]
    

    AlbumentationsX collects usage statistics by default to guide product development. See data collection and opt-out.

    List of augmentations

    Pixel-level transforms

    Spatial-level transforms

    TransformImageImagesMaskMasksBBoxes (HBB)BBoxes (OBB)KeypointsVolumeVolumesMask3DMasks3D
    Affine✓✓✓✓✓✓✓✓✓✓✓
    AtLeastOneBBoxRandomCrop✓✓✓✓✓✓✓✓✓✓✓
    BBoxSafeRandomCrop✓✓✓✓✓✓✓✓✓✓✓
    BBoxSubsetSafeRandomCrop✓✓✓✓✓✓✓✓✓✓✓
    CenterCrop✓✓✓✓✓✓✓✓✓✓✓
    CoarseDropout✓✓✓✓✓✓✓✓✓✓
    ConstrainedCoarseDropout✓✓✓✓✓✓✓✓
    CopyAndPaste✓✓✓✓✓
    Crop✓✓✓✓✓✓✓✓✓✓✓
    CropAndPad✓✓✓✓✓✓✓✓✓✓✓
    CropNonEmptyMaskIfExists✓✓✓✓✓✓✓✓✓
    D4✓✓✓✓✓✓✓✓✓✓✓
    ElasticTransform✓✓✓✓✓✓✓✓✓✓✓
    Erasing✓✓✓✓✓✓✓✓✓✓
    FrequencyMasking✓✓✓✓✓✓✓✓✓✓
    GridDistortion✓✓✓✓✓✓✓✓✓✓✓
    GridDropout✓✓✓✓✓✓✓✓✓✓
    GridElasticDeform✓✓✓✓✓✓✓✓✓✓
    GridMask✓✓✓✓✓✓✓✓✓✓
    GuidedCoarseDropout✓✓✓✓✓✓
    HorizontalFlip✓✓✓✓✓✓✓✓✓✓✓
    Lambda✓✓✓✓✓✓✓✓✓✓✓
    LetterBox✓✓✓✓✓✓✓✓✓✓✓
    LongestMaxSize✓✓✓✓✓✓✓✓✓✓✓
    MaskDropout✓✓✓✓✓✓✓✓
    Morphological✓✓✓✓✓✓✓✓✓✓
    Mosaic✓✓✓✓✓✓
    NoOp✓✓✓✓✓✓✓✓✓✓✓
    OpticalDistortion✓✓✓✓✓✓✓✓✓✓✓
    OverlayElements✓✓
    Pad✓✓✓✓✓✓✓✓✓✓✓
    PadIfNeeded✓✓✓✓✓✓✓✓✓✓✓
    Perspective✓✓✓✓✓✓✓✓✓✓✓
    PiecewiseAffine✓✓✓✓✓✓✓✓✓✓✓
    PixelDropout✓✓✓✓✓✓✓✓✓✓✓
    PixelSpread✓✓✓✓✓✓✓✓✓✓✓
    RandomCrop✓✓✓✓✓✓✓✓✓✓✓
    RandomCropFromBorders✓✓✓✓✓✓✓✓✓✓✓
    RandomCropNearBBox✓✓✓✓✓✓✓✓✓✓✓
    RandomGridShuffle✓✓✓✓✓✓✓✓✓✓
    RandomResizedCrop✓✓✓✓✓✓✓✓✓✓✓
    RandomRotate90✓✓✓✓✓✓✓✓✓✓✓
    RandomScale✓✓✓✓✓✓✓✓✓✓✓
    RandomSizedBBoxSafeCrop✓✓✓✓✓✓✓✓✓✓✓
    RandomSizedCrop✓✓✓✓✓✓✓✓✓✓✓
    Resize✓✓✓✓✓✓✓✓✓✓✓
    Rotate✓✓✓✓✓✓✓✓✓✓✓
    SafeRotate✓✓✓✓✓✓✓✓✓✓✓
    ShiftScaleRotate✓✓✓✓✓✓✓✓✓✓✓
    SmallestMaxSize✓✓✓✓✓✓✓✓✓✓✓
    SquareSymmetry✓✓✓✓✓✓✓✓✓✓✓
    ThinPlateSpline✓✓✓✓✓✓✓✓✓✓✓
    TimeMasking✓✓✓✓✓✓✓✓✓✓
    TimeReverse✓✓✓✓✓✓✓✓✓✓✓
    Transpose✓✓✓✓✓✓✓✓✓✓✓
    VerticalFlip✓✓✓✓✓✓✓✓✓✓✓
    WaterRefraction✓✓✓✓✓✓✓✓✓✓✓
    XYMasking✓✓✓✓✓✓✓✓✓✓

    Medical transforms

    Medical acquisition artifacts and histology stain augmentation live in albumentations.augmentations.medical. Use their public names through albumentations, such as A.GibbsRinging and A.HEStain.

    TransformImageImagesVolumeVolumes
    Anisotropy3D✓✓
    BiasField✓✓✓✓
    GhostingArtifact✓✓
    GibbsRinging✓✓✓✓
    HEStain✓✓✓✓
    KSpaceSpikeNoise✓✓✓✓
    MotionArtifact✓✓
    RicianNoise✓✓✓✓

    3D transforms

    TransformVolumeVolumesMask3DMasks3DKeypoints
    Affine3D✓✓✓✓✓
    CenterCrop3D✓✓✓✓✓
    CoarseDropout3D✓✓✓✓✓
    CubicSymmetry✓✓✓✓✓
    ElasticTransform3D✓✓✓✓✓
    Flip3D✓✓✓✓✓
    GridShuffle3D✓✓✓✓✓
    Pad3D✓✓✓✓✓
    PadIfNeeded3D✓✓✓✓✓
    RandomCrop3D✓✓✓✓✓
    RandomResizedCrop3D✓✓✓✓✓
    RandomRotate90_3D✓✓✓✓✓
    Resize3D✓✓✓✓✓

    Semantic segmentation on the Inria dataset

    inria

    Medical imaging

    medical

    Object detection and semantic segmentation on the Mapillary Vistas dataset

    vistas

    Keypoints augmentation

    Benchmark Results

    These results cover the library versions listed below.

    Image Benchmark Results

    System Information

    • Platform: macOS-15.1-arm64-arm-64bit
    • Processor: arm
    • CPU Count: 16
    • Python Version: 3.12.8

    Benchmark Parameters

    • Number of images: 2000
    • Runs per transform: 5
    • Max warmup iterations: 1000

    Library Versions

    • albumentationsx: 2.0.8
    • augly: 1.0.0
    • imgaug: 0.4.0
    • kornia: 0.8.0
    • torchvision: 0.20.1

    Performance Comparison

    Number shows how many uint8 images per second can be processed on one CPU thread. Larger is better. The Speedup column shows how many times faster AlbumentationsX is compared to the fastest other library for each transform.

    Transformalbumentationsx2.0.8augly1.0.0imgaug0.4.0kornia0.8.0torchvision0.20.1Speedup(AlbX/fastest other)
    Affine1445 ± 9-1328 ± 16248 ± 6188 ± 21.09x
    AutoContrast1657 ± 13--541 ± 8344 ± 13.06x
    Blur7657 ± 114386 ± 45381 ± 125265 ± 11-1.42x
    Brightness11985 ± 4552108 ± 321076 ± 321127 ± 27854 ± 135.68x
    CLAHE647 ± 4-555 ± 14165 ± 3-1.17x
    CenterCrop128119293 ± 2164----N/A
    ChannelDropout11534 ± 306--2283 ± 24-5.05x
    ChannelShuffle6772 ± 109-1252 ± 261328 ± 444417 ± 2341.53x
    CoarseDropout18962 ± 1346-1190 ± 22--15.93x
    ColorJitter1020 ± 91418 ± 5-104 ± 487 ± 12.44x
    Contrast12394 ± 3631379 ± 25717 ± 51109 ± 41602 ± 138.99x
    CornerIllumination484 ± 7--452 ± 3-1.07x
    Elastic374 ± 2-395 ± 141 ± 03 ± 00.95x
    Equalize1236 ± 21-814 ± 11306 ± 1795 ± 31.52x
    Erasing27451 ± 2794--1210 ± 273577 ± 497.67x
    GaussianBlur2350 ± 118387 ± 41460 ± 23254 ± 5127 ± 41.61x
    GaussianIllumination720 ± 7--436 ± 13-1.65x
    GaussianNoise315 ± 4-263 ± 9125 ± 1-1.20x
    Grayscale32284 ± 11306088 ± 1073100 ± 241201 ± 522600 ± 235.30x
    HSV1197 ± 23----N/A
    HorizontalFlip14460 ± 3688808 ± 10129599 ± 4951297 ± 132486 ± 1071.51x
    Hue1944 ± 64--150 ± 1-12.98x
    Invert27665 ± 3803-3682 ± 792881 ± 434244 ± 306.52x
    JpegCompression1321 ± 331202 ± 19687 ± 26120 ± 1889 ± 71.10x
    LinearIllumination479 ± 5--708 ± 6-0.68x
    MedianBlur1229 ± 9-1152 ± 146 ± 0-1.07x
    MotionBlur3521 ± 25-928 ± 37159 ± 1-3.79x
    Normalize1819 ± 49--1251 ± 141018 ± 71.45x
    OpticalDistortion661 ± 7--174 ± 0-3.80x
    Pad48589 ± 2059---4889 ± 1839.94x
    Perspective1206 ± 3-908 ± 8154 ± 3147 ± 51.33x
    PlankianJitter3221 ± 63--2150 ± 52-1.50x
    PlasmaBrightness168 ± 2--85 ± 1-1.98x
    PlasmaContrast145 ± 3--84 ± 0-1.71x
    PlasmaShadow183 ± 5--216 ± 5-0.85x
    Posterize12979 ± 1121-3111 ± 95836 ± 304247 ± 263.06x
    RGBShift3391 ± 104--896 ± 9-3.79x
    Rain2043 ± 115--1493 ± 9-1.37x
    RandomCrop128111859 ± 137445395 ± 93421408 ± 6222946 ± 4231450 ± 2492.46x
    RandomGamma12444 ± 753-3504 ± 72230 ± 3-3.55x
    RandomResizedCrop4347 ± 37--661 ± 16837 ± 375.19x
    Resize3532 ± 671083 ± 212995 ± 70645 ± 13260 ± 91.18x
    Rotate2912 ± 681739 ± 1052574 ± 10256 ± 2258 ± 41.13x
    SaltAndPepper629 ± 6--480 ± 12-1.31x
    Saturation1596 ± 24-495 ± 3155 ± 2-3.22x
    Sharpen2346 ± 10-1101 ± 30201 ± 2220 ± 32.13x
    Shear1299 ± 11-1244 ± 14261 ± 1-1.04x
    Snow611 ± 9--143 ± 1-4.28x
    Solarize11756 ± 481-3843 ± 80263 ± 61032 ± 143.06x
    ThinPlateSpline82 ± 1--58 ± 0-1.41x
    VerticalFlip32386 ± 93616830 ± 165319935 ± 17082872 ± 374696 ± 1611.62x

    🤝 Contribute

    We thrive on community collaboration! AlbumentationsX wouldn't be the powerful augmentation library it is without contributions from developers like you. Please see our Contributing Guide to get started. A huge Thank You 🙏 to everyone who contributes!

    AlbumentationsX open-source contributors

    We look forward to your contributions to help make the AlbumentationsX ecosystem even better!

    📜 License

    See Licensing for the two options. The AGPL text, licensing history, and third-party notices record the applicable terms. Earlier releases retain the permissions that accompanied them.

    📞 Contact

    For bug reports and feature requests related to AlbumentationsX, please visit GitHub Issues. For questions, discussions, and community support, join our active communities on Discord, Twitter, LinkedIn, and Reddit. We're here to help with all things AlbumentationsX!


    📫 Stay Connected

    Never miss updates, tutorials, and tips from the AlbumentationsX team! Subscribe to our newsletter.