(based on Augmentor an PIL)
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.
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 .
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
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.
There are a few supported operations:
flip
- random image flipping followed by-p
optionrotate
- random image rotation followed by-p
,-mlr
and-mrr
optionsdistortion
- random image distortion followed by-p
,-mg
and-gwh
optionsskew
- random image skewing followed by-p
option and constantmagnitude
value of0.7
zoom
- random image zooming followed by-p
,-minf
and-maxf
options
Output images will be saved in output
dir of the root.
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.
- Fixed problem when converting images. Now if image is placed in subdirectory
then that subdir also will be created in