Skip to main content

Torchvision Complementary tool to perform batch and GPU data augmentations.

Project description

Efficient vision data augmentations for CPU/GPU per-sample/batched data.

Under active development, subject to API change

PyPI python PyPI version documentation codecov License

Torchaug

Introduction

Torchaug is a data augmentation library for the Pytorch ecosystem. It is meant to deal efficiently with tensors that are either on CPU or GPU and either per-samples or on batches.

It seeks to improve Torchvision performance that has been implemented over Pytorch and Pillow to, among other things, perform data augmentations. However, because it has been implemented first with per-sample CPU data augmentations in mind, it has several drawbacks to make it efficient:

  • For data augmentations on GPU, some CPU/GPU synchronizations cannot be avoided.
  • For data augmentations applied on batch, the randomness is sampled for the whole batch and not each sample.

Torchaug removes these issues and is meant to be used complimentary with Torchvision. It follows the same nomenclature as Torchvision with functional augmentations and transforms class wrappers. It is split into two packages:

  • transforms for per-sample data augmentations
  • batch_transfroms for batched data augmentations.

More details can be found in the documentation.

To be sure to retrieve the same data augmentations as Torchvision, it has been tested on each of its components to match Torchvision outputs.

How to use

  1. Install a Pytorch >= 2.0 environment.

  2. Install Torchaug.

pip install torchaug
  1. Import data augmentations either from torchaug.transforms or torchaug.batch_transforms packages.
from torchaug.transforms import RandomColorJitter
from torchaug.batch_transforms import BatchRandomColorJitter

transform = RandomColorJitter(...)
batch_transform = BatchRandomColorJitter(...)

How to contribute

Feel free to contribute to this library by making issues and/or pull requests. For each feature you implement, add tests to make sure it works. Also, make sure to update the documentation.

LICENSE

This project is under the Apache license 2.0.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

torchaug-0.2.4.tar.gz (27.4 kB view details)

Uploaded Source

Built Distribution

torchaug-0.2.4-py3-none-any.whl (30.1 kB view details)

Uploaded Python 3

File details

Details for the file torchaug-0.2.4.tar.gz.

File metadata

  • Download URL: torchaug-0.2.4.tar.gz
  • Upload date:
  • Size: 27.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.17

File hashes

Hashes for torchaug-0.2.4.tar.gz
Algorithm Hash digest
SHA256 ee3c69135d71f5754964d814e5dec16ce1fcc32e9d4f1e707626a8bc8bb6d6d4
MD5 4171441ff34cd462926e60d74cd18e1b
BLAKE2b-256 34c13db5202a55f48bc711d484358f6d664cb1ac0615ed48b76b6e63301fd642

See more details on using hashes here.

File details

Details for the file torchaug-0.2.4-py3-none-any.whl.

File metadata

  • Download URL: torchaug-0.2.4-py3-none-any.whl
  • Upload date:
  • Size: 30.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.17

File hashes

Hashes for torchaug-0.2.4-py3-none-any.whl
Algorithm Hash digest
SHA256 732d195ad4fc027d27505b2859a930351d79097ae88b1843a0201ba46df8fd99
MD5 7a74d9fd7722a7a82b7ccf9447d3ad53
BLAKE2b-256 73584e0cc9590316d9f0be8c47598e9e9b3789196d6b9437853d8b55c41b7199

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page