imaugtools contains tools used for image augmentation: translate, rotate, crop. This library is for you if you do NOT want to stretch or skew, or pad pixels when doing any of these operations.
Project description
imaugtools
imaugtools contains tools used for image augmentation: translate, rotate, crop. This library is for you if you do NOT want to stretch or skew, or pad pixels that would make your images look strange when doing any of these operations.
Installation
To install imaugtools, simply run in your terminal
pip install imaugtools
Usage
Example image
Translation
my_image_translated = translate_image(my_image, 0.1, 0.2)
my_image_translated_uncropped = translate_image(my_image, 0.1, 0.2, crop=False)
imshow(my_image_translated, my_image_translated_uncropped, mode='BGR')
Rotation
my_image_rotated = rotate_image(my_image, 30) # angle in degrees
my_image_rotated_uncropped = rotate_image(my_image, 30, crop=False)
imshow(my_image_rotated, my_image_rotated_uncropped, mode='BGR')
Cropping
my_image_center_cropped = center_crop(my_image, (150, 200))
my_image_cropped_around_center = crop_around_center(my_image, (150, 200))
imshow(my_image_center_cropped, my_image_cropped_around_center, mode='BGR')
print(my_image_center_cropped.shape, my_image_cropped_around_center.shape)
# Output: (200, 200, 3) (200, 200, 3)
Note
- Import the above functions from
imaugtools
like,
from imaugtools import translate_image, rotate_image
imshow
function used here is from imshowtools library
Advanced Usage
Strided Translation
Strided translation is very powerful image augmentation techniques used in training neural networks.
tx_max = 1
and ty_max = 1
is equivalent to a stride of 1 in both directions. After you specify tx_max
, you can specify tx
(translation in x-axis) from -tx_max
to +tx_max
. The same applies to ty
and ty_max
.
my_images_translated = []
for j in range(-1, 2):
for i in range(-1, 2):
my_images_translated.append(translate_image(my_image, i, j, tx_max=1, ty_max=1))
imshow(*my_images_translated, mode='BGR')
tx_max = 0.5
and ty_max = 0.5
is equivalent to a stride of 0.5 in both directions
my_images_translated = []
for j in range(-2, 3):
for i in range(-2, 3):
my_images_translated.append(translate_image(my_image, i/4, j/4, tx_max=0.5, ty_max=0.5))
imshow(*my_images_translated, mode='BGR')
Contributing
Pull requests are very welcome.
- Fork the repo
- Create new branch with feature name as branch name
- Check if things work with a jupyter notebook
- Raise a pull request
Licence
Please see attached Licence
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
Built Distribution
Hashes for imaugtools-0.1.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 706470a7df28dc56a42b43ab54884a90ce42029b738e4796e4cbd7c2266e62c7 |
|
MD5 | 5b66723a0c410d78179c0a4effa2b248 |
|
BLAKE2b-256 | 88a1a4706ec3f53fe43c59a05455d23c6c1f755481f9b16e321ce792e498cd37 |