PyFlowOpenCv
PyFlowOpenCv is a easy to use rapid prototyping GUI tool for OpenCV. PyFlowOpenCV enable you learn Computer vision without writing a single line of code, which is great for rapid prototyping and learning. Plenty of OpenCV functions are available as building blocks in PyFlowOpenCv that can be combined in a graphical user interface with just a few mouse clicks. A quick demo on how PyFlowOpenCv works for a face detection.
PyFlow is a general-purpose Visual Dataflow Programming library. Nodes represent algorithms with certain inputs and outputs. Connections transfer data from the output (source) of the first node to the input (sink) of the second one. PyFlowOpencv is a visual scripting extension for PyFlow for OpenCV.
Learning OpenCV is quite challenging for most of the beginners. PyFlowOpenCv make the learning curve of OpenCv much smoother. You do not need to write any code, just drag and drop the diagram.
OpenCV comes with GUI tools like Highui and OpenCVGUI, but they are far from user friendly. You still need to write a lot of code to use them. With PyFlowOpenCV, user can focus on build the computer vision pipeline and fine tune the parameter, instead of writing boilerplate source code.
Installation
PyFlowOpenCv is not a standalone software, it is an extension package of PyFlow. PyFlow has to be installed first. You can refer to PyFlow Project to install PyFlow.
The easy way to install PyFlow is::
pip install git+https://github.com/wonderworks-software/PyFlow.git@master
After PyFlow installed through pip or setup.py.
Clone or download PyFlowOpenCV repository
git clone https://github.com/wonderworks-software/PyFlowOpenCv
Go to the installed folder and install requirements for your use case::
cd PyFlowOpenCv
pip install -r requirements.txt
Option: if you need to use OCR module, please refer to this page to install the Tesseract
To run the program in standalone mode, you can invoke pyflow.exe on windows or pyflow on unix OS. Program is located inside PATH/TO/PYTHON/Scripts. You can also run pyflow.py in the root folder of PyFlow(not PyFlowOpenCV) project.
You can enable the PyFlowOpenCv package by one of the following ways ( Just pick one, not all).
- put the addition package path to 'Additional package locations' on preferences dialog.Make sure you add path of PyFlow/Packages under PyFlowOpenCv project to the 'additional package location' edit.
- Copy the PyFlowOpenCv package to .PyFlow/Packages
- User can add location of package to env variable for PYTHONPATH
- Paths listed in PYFLOW_PACKAGES_PATHS env variable (; separated string)
If everything works out, you should able to see 'PyFlowOpenCv' in your NodeBox dialog of the GUI.
Getting Started
We have documentation, and check out the examples in sample folder.
Authors
Pedro Cabrera - Pedro Cabrera
Changbo Yang - Changbo Yang
See also the list of contributors who participated in this project.
Discussion
Join us to our discord channel and ask anything related to project! Please also let us know if you want more OpenCV features in PyFlowOpenCv.