Skip to main content

A python package to support essential trasformations on image datasets

Project description

Documentation Status codecov Python version Last commit

ImaGenie

imagenie is a Python package for image augmentation and modification, providing a variety of functions to manipulate images for machine learning, computer vision, or creative purposes. Whether you need to flip, scale, convert to grayscale, or blur images, imagenie is your one-stop solution for fast and efficient image manipulation.

Features

  • Flipping: flip(image, direction=0) flips the input image either horizontally or vertically. Useful for augmenting datasets by introducing mirror-image variations. 0 = horizontal flip, 1 = vertical flip

  • Scaling: scale(image, N) resizes the input image by a given scale factor N. This is crucial for normalizing or creating variations in image resolution.

  • Blurring: blur(image, stdev=1.0) applies a Gaussian blur effect to the image. Helps simulate real-world noise or reduce sharpness for specific use cases.

  • Grayscaling: grayscale(image) converts the image to grayscale. Ideal for models that only require intensity information, excluding color features.

  • Augmenting with a sequence of operations: augment(images, operations) applies a sequence of user-defined augmentation operations to a list of images. Useful for image generating images for computer vision tasks.

Installation

To install from pypi:

$ pip install imagenie

To build from the github repo follow the following steps: Clone the repository using the following command :

$ git clone https://github.com/UBC-MDS/ImaGenie.git

then navigate to the repository by running the following command

$ cd ImaGenie

Then run the following command:

$ poetry install

Running Test Suite

In the package directory run the following command to run the test suit for this package:

$ pytest

Usage

A few exampls to get you started with imagenie:

  1. Import the functions from the package

    from imagenie.flip import flip
    from imagenie.scale import scale
    from imagenie.blur import blur
    from imagenie.grayscale import grayscale
    from imagenie.augment import augment
    
  2. Load the images as Numpy arrays

    import matplotlib.pyplot as plt
    image = plt.imread(IMAGE_PATH)
    image2 = plt.imread(IMAGE_PATH)
    
  3. Leverage imagenie's image modification functions

    • Flip image horizontally or vertically
    flipped_image = flip(image, direction = 1)
    
    • Scale image by a desired scaling factor
    scaled_image = scale(image, N = 0.4)
    
    • Blur image with a defined standard deviation
    blurred_image = blur(image, stdev = 2.0)
    
    • Convert RGB to grayscaled images
    grayed_image = grayscale(image)
    

Python Ecosystem Integration

This package fits well within the Python ecosystem by providing functionality for image manipulation and augmentation. There are several popular libraries for image processing, that offer more complex functionalities, but this package provides a simple, user-friendly interface for common operations tailored for specific image manipulation tasks.

Reference for other image processing libraries:

Contributors

  • Agam Sanghera
  • Gurmehak Kaur
  • Yuhan Fan
  • Yichun Liu

Contributing

Interested in contributing? Check out the contributing guidelines. Please note that this project is released with a Code of Conduct. By contributing to this project, you agree to abide by its terms.

License

imagenie was created by Agam Sanghera, Gurmehak Kaur, Yuhan Fan, Yichun Liu. It is licensed under the terms of the MIT license.

Credits

imagenie was created with cookiecutter and the py-pkgs-cookiecutter template.

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

imagenie-1.4.0.tar.gz (6.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

imagenie-1.4.0-py3-none-any.whl (8.4 kB view details)

Uploaded Python 3

File details

Details for the file imagenie-1.4.0.tar.gz.

File metadata

  • Download URL: imagenie-1.4.0.tar.gz
  • Upload date:
  • Size: 6.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.8

File hashes

Hashes for imagenie-1.4.0.tar.gz
Algorithm Hash digest
SHA256 a325fbdde9033d5b5f17490e5af4f159fa3f1d4217feb734ab7b38a9e461e2db
MD5 e6ebac44f082881197c7bf969ed9fbba
BLAKE2b-256 0445b2c4d3e858902f19b304b7c262dfc9f7a9a8fe1f95ac2f09beb695c1d917

See more details on using hashes here.

File details

Details for the file imagenie-1.4.0-py3-none-any.whl.

File metadata

  • Download URL: imagenie-1.4.0-py3-none-any.whl
  • Upload date:
  • Size: 8.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.8

File hashes

Hashes for imagenie-1.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4a59adf164392a67a80c8d2d5f6cc5edc5355164ee90e86b5163a2ad0eac6884
MD5 187e861ac7d22a2518d86e33d649516d
BLAKE2b-256 55246479693ef6f2535211c7cdf033732e36f121a10ebf90a4f3c284fedddedf

See more details on using hashes here.

Supported by

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