Skip to main content

Small, fast and simple Python CLI image converter for CNNs.

Project description

Rudi

If you want to train a CNN, the custom dataset must be a collection of images of the same aspect ratio, extension, etc. This script is gonna do that for you. Rudi is a command line tool for converting and augmenting your dataset of images.

Installation

Install Python3 and then run the following command:

pip install rudi

or clone the repo firs

git clone https://github.com/liashchynskyi/rudi
cd rudi

and run python setup.py install or pip install .

Usage

Imgur

Convert a dataset

For example, you have a basic tree of the root directory (the script will also work if the root containt only images without other dirs).

root    
в””в”Ђв”Ђв”Ђclass1
в”‚   в”‚   image_c1.png
в”‚   в”‚   image_c2.png
в”‚   в””в”Ђв”Ђв”Ђsubdirectory    
в””в”Ђв”Ђв”Ђclass2
    в”‚   image_c1.png
    в”‚   image_c2.png

Just run rudi convert --help Imgur

Let's convert images in current directory to jpg format and set new aspect ratio to 224px.

rudi convert -t jpg --target-size=224 ./

Output images will be saved in output dir of the root.

Dataset augmentation

Command: rudi augment --help Imgur

There are a few supported operations:

  • flip - random image flipping followed by -p option
  • rotate - random image rotation followed by -p,-mlr and -mrr options
  • distortion - random image distortion followed by -p,-mg and -gwh options
  • skew - random image skewing followed by -p option and constant magnitude value of 0.7
  • zoom - random image zooming followed by -p,-minf and -maxf options

Output images will be saved in output dir of the root.

Changelog

  • 1.0.1
    • Fixed problem when converting images. Now if image is placed in subdirectory then that subdir also will be created in output dir.

Donate

Just put a star on this repository рџЊћ Thanks!

made by @liashchynskyi

Project details


Download files

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

Files for rudi, version 1.0.1
Filename, size File type Python version Upload date Hashes
Filename, size rudi-1.0.1.tar.gz (4.1 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page