Skip to main content

YOLOv5/YOLOv8 Data Augmentation with Albumentations

This GitHub repository offers a solution for augmenting datasets for YOLOv8 and YOLOv5 using the Albumentations library. Albumentations is a Python package designed for image augmentation, providing a simple and flexible approach to perform various image transformations. For more detail you can refer my medium article.

Input

input image

Output

input label

Directories description

  • input-ds contain the input of YOLOv8 and YOLOv5 which are following directories.
    • Images directory contains the images
    • labels directory contains the .txt files. Each .txt file contains the normalized bounding boxes in a following format.
  • out-aug-ds contain the augmented output contains following directories.
    • Images directory contains the augmented images.
    • labels directory contains the augmented labels.
  • bb_image This directory contains images with bounding boxes for visualizing the results of augmented data. This is for validation; bounding boxes should be correctly drawn on the objects of interest.
  • utils.py: Contains all user-defined helper function.
  • main.py: Contains Yolo dataset augmentor pipeline
  • CONSTANT.yaml contain following contants need to update on according to your case.
    • inp_img_pth for input images path
    • inp_lab_pth for input labels path
    • out_img_pth for output image path
    • out_lab_pth for output labels path
    • transformed_file_name: use to name augmented output to differentiate from other input dataset.
    • CLASSES: list of input class name according to class number.

Usage

  • step to apply augmentation on your own dataset.
    • Create Virtual Environment.
    • Install requirements using
      pip install -r requirements.txt
      
    • Provide the input and output path in CONSTANT.yaml file.
    • Update the name of transformed_file_name in CONSTANT.yaml otherwise code will overwrite last augmentations.
    • Provide the list of name of classes in CONSTANT.yaml in a same sequence as used to assign class numbers in the YOLO dataset labeling.
      • For example, if you provided a class list as ['obj1', 'obj2', 'obj3'], the class number used for 'obj1' in the label file should be 0, similarly for 'obj2', the class number should be 1, and so on.
    • Run the pipeline using
      python3 run.py
      

Metadata

Release files for yolo-data-augmentor 0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for yolo-data-augmentor 0.1
File Size Uploaded
yolo-data-augmentor-0.1.tar.gz 2.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for yolo-data-augmentor 0.1
File Interpreter ABI Platform
yolo_data_augmentor-0.1-py3-none-any.whl Python 3 none any Details

Total release size: 4.9 kB

Release files / yolo-data-augmentor-0.1.tar.gz

Download URL yolo-data-augmentor-0.1.tar.gz
Size 2.4 kB
Tags Source
SHA-256 checksum
How to use checksums
6894917fb665385f52a2b8fd3e1fafd918d4dafd00872691de865e4582a557aa
BLAKE2b-256 checksum
How to use checksums
909f68aa040867e17d1e5e04da90aa2d6d9588b1a5d10cac38a43f86f1a69c89
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.0.0 CPython/3.10.13

Release files / yolo_data_augmentor-0.1-py3-none-any.whl

Download URL yolo_data_augmentor-0.1-py3-none-any.whl
Size 2.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
65bb4f8ebb7c9b2710dae13e991aacf86122e465f328a8d08020f3498def2e9d
BLAKE2b-256 checksum
How to use checksums
d51702b77b61db22eef20bebe138f578306d0cc84a5ad0099685d7d7c765bb91
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.0.0 CPython/3.10.13

Release history Release notifications | RSS feed

This release

0.1 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page