Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/imdeepmind/hocrox
Hocrox: An image preprocessing and augmentation library with Keras like interface.
https://github.com/imdeepmind/hocrox
computer-vision deep-learning image-processing keras machine-learning opencv python
Last synced: 14 minutes ago
JSON representation
Hocrox: An image preprocessing and augmentation library with Keras like interface.
- Host: GitHub
- URL: https://github.com/imdeepmind/hocrox
- Owner: imdeepmind
- License: mit
- Created: 2021-11-12T10:28:50.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2022-03-17T19:01:37.000Z (almost 3 years ago)
- Last Synced: 2025-01-31T19:32:46.849Z (11 days ago)
- Topics: computer-vision, deep-learning, image-processing, keras, machine-learning, opencv, python
- Language: Python
- Homepage: https://hocrox.imdeepmind.com
- Size: 1020 KB
- Stars: 5
- Watchers: 2
- Forks: 1
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
![]()
An image preprocessing and augmentation library with Keras like interface.[![Hocrox Code Check](https://github.com/imdeepmind/hocrox/actions/workflows/build_check.yml/badge.svg)](https://github.com/imdeepmind/hocrox/actions/workflows/build_check.yml)
![Maitained](https://img.shields.io/badge/Maitained%3F-Yes-brightgreen)
![PyPI - Downloads](https://img.shields.io/pypi/dw/Hocrox?style=flat)
![PyPI](https://img.shields.io/pypi/v/Hocrox?style=flat)
![GitHub closed pull requests](https://img.shields.io/github/issues-pr-closed/imdeepmind/hocrox?style=flat)
![GitHub issues](https://img.shields.io/github/issues/imdeepmind/hocrox?style=flat)
![GitHub](https://img.shields.io/github/license/imdeepmind/hocrox?style=flat)## Table of contents:
- [Table of contents:](#table-of-contents)
- [Introduction](#introduction)
- [The Keas interface](#the-keas-interface)
- [Install](#install)
- [Dependencies](#dependencies)
- [Documentation](#documentation)
- [Example](#example)
- [Blogs and Tutorials](#blogs-and-tutorials)
- [Support](#support)
- [Contributors](#contributors)
- [License](#license)## Introduction
Hocrox is an image preprocessing and augmentation library. It provides a [Keras](https://keras.io/) like simple interface to make preprocessing and augmentation pipelines. Hocrox internally uses [OpenCV](https://opencv.org/) to perform the operations on images. OpenCV is one of the most popular Computer Vision library.
Here are some of the highlights of Hocrox:
- Provides an easy interface that is suitable for radio pipeline development
- It internally uses OpenCV
- Highly configurable with support for custom layers## The Keas interface
Keras is one of the most popular Deep Learning library. Keras provides a very simple yet powerful interface that can be used to develop start-of-the-art Deep Learning models.
Check the code below. This is a simple Keras code to make a simple neural network.
```python
model = keras.Sequential()
model.add(layers.Dense(2, activation="relu"))
model.add(layers.Dense(3, activation="relu"))
model.add(layers.Dense(4))
```In Hocrox, the interface for making pipelines is very much similar. So anyone can make complex pipelines with few lines of code.
## Install
To install Hocrox, run the following command.
```
pip install Hocrox
```## Dependencies
Hocrox uses OpenCV internally so install it before.
## Documentation
Documentation for Hocrox is available [here](http://hocrox.imdeepmind.com/).
## Example
Here is one simple pipeline for preprocessing images.
```python
from hocrox.model import Model
from hocrox.layer import Read, Save
from hocrox.layer.preprocessing.transformation import Resize
from hocrox.layer.augmentation.flip import RandomFlip
from hocrox.layer.augmentation.transformation import RandomRotate# Initalizing the model
model = Model()# Reading the images
model.add(Read(path="./images", name="Read images"))# Resizing the images
model.add(Resize((224, 244), interpolation="INTER_LINEAR", name="Resize images"))# Augmentating the images
model.add(
RandomRotate(
start_angle=-10.0, end_angle=10.0, probability=0.7, number_of_outputs=5, name="Randomly rotates the image"
)
)
model.add(RandomFlip(probability=0.7, name="Randomly flips the image"))# Saving the images
model.add(Save("./preprocessed_images", format="npy", name="Save the image"))# Generating the model summary
print(model.summary())# Transforming the images
model.transform()```
## Blogs and Tutorials
Check this video to learn more about Hocrox.## Support
If you are facing any issues using Hocrox, then please raise an issue on GitHub or post something on the discussion section.Alternatively, you can send email to.
## Contributors
Check the list of contributors [here](https://github.com/imdeepmind/hocrox/graphs/contributors).
## License
[MIT](https://github.com/imdeepmind/hocrox/blob/main/LICENSE)