Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/Minyus/pipelinex_image_processing
A project to use PipelineX for image processing
https://github.com/Minyus/pipelinex_image_processing
Last synced: 6 days ago
JSON representation
A project to use PipelineX for image processing
- Host: GitHub
- URL: https://github.com/Minyus/pipelinex_image_processing
- Owner: Minyus
- License: other
- Created: 2019-12-10T10:34:19.000Z (almost 5 years ago)
- Default Branch: master
- Last Pushed: 2020-11-14T07:34:03.000Z (almost 4 years ago)
- Last Synced: 2024-08-01T10:19:11.305Z (3 months ago)
- Language: Python
- Homepage:
- Size: 438 KB
- Stars: 3
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-kedro - pipelinex_image_processing - image, TensorFlow/Keras, and MLflow. (Example projects)
README
# Pipelinex Image Processing
An example project using [PipelineX](https://github.com/Minyus/pipelinex), Kedro, OpenCV, Scikit-image, and TensorFlow/Keras for image processing.
Pipeline visualized by Kedro-viz## Directories
- `conf`
- YAML config files for PipelineX project
- `data`
- empty folders (output files will be saved here)
- `logs`
- empty folders (log files will be saved here)
- `src`
- `empty_area.py`
- The algorithm to estimate empty area ratio
- `roi.py`
- Supplementary algorithm to compute ROI (Region of Interest) from segmentation image
- `semantic_segmentation.py`
- Semantic segmentation using PSPNet model pretrained with ADE20K dataset## How to run the code
### 1. Install Python packages
```bash
$ pip install pipelinex opencv-python scikit-image ocrd-fork-pylsd Pillow pandas numpy requests kedro mlflow kedro-viz
```Note: `mlflow` and `kedro-viz` are optional.
#### [Optional] To use the pretrained TensorFlow model:
##### Install tensorflow 1.x and keras-segmentation
```bash
$ pip install "tensorflow<2" keras-segmentation Keras
```##### If you want to use TensorFlow 2.x, install fork of keras-segmentation modified to work with TensorFlow 2.x
```bash
$ pip install "tensorflow>=2.0.0" Keras
$ pip install git+https://github.com/Minyus/image-segmentation-keras.git
```
### 2. Clone `https://github.com/Minyus/pipelinex_image_processing.git````bash
$ git clone https://github.com/Minyus/pipelinex_image_processing.git
$ cd pipelinex_image_processing
```### 3. Run `main.py`
```bash
$ python main.py
```As configured in [catalog.yml](https://github.com/Minyus/pipelinex_image_processing/blob/master/conf/base/catalog.yml), the following 2 images will be downloaded by http requests and then processed using `opencv-python`, `scikit-image`, and `ocrd-fork-pylsd` packages.
![Image](https://cdn.foodlogistics.com/files/base/acbm/fl/image/2018/09/960w/GettyImages_485190815.5b9bfb5550ded.jpg)
![Image](https://www.thetrailerconnection.com/zupload/library/180/-1279-840x600-0.jpg)### 4. [Optional] View the experiment logs in MLflow's UI
```bash
$ mlflow server --host 0.0.0.0 --backend-store-uri sqlite:///mlruns/sqlite.db --default-artifact-root ./mlruns/experiment_001
```
Experiment logs in MLflow's UI## Tested environment
- Python 3.6.8
## Simplified Kedro project template
This project was created from the GitHub template repository at https://github.com/Minyus/pipelinex_template
To use for a new project, fork the template repository and hit `Use this template` button next to `Clone or download`.