Giter Site home page Giter Site logo

uipf's Introduction

Unified Image Processing Framework

This program provides a framework for Image Processing allowing you to split your processing chain into independent, reuseable modules which can also be run stand alone as well as in complex processing chains. It comes with a Graphical Processing Chain Editor and also a console interface for running the processing chains and modules.

Installation

Precompiled binaries are available for debian and ubuntu:

  1. Download the zip file with the packages for your system.
  2. unzip them into an empty directory.
  3. run sudo dpkg -i *.deb to start the installation and then sudo apt-get install -f to install dependencies and finish the installation.

On other systems you need to compile UIPF yourself. See the "How to build"-section on how to do this.

Usage

The Documentation can be found in the /doc directory. Check the README.md file there for an overview.

We also have a demo video on vimeo.com: https://vimeo.com/133464857

How to build

Dependencies

The following dependencies are needed to build:

On Debian/Ubuntu you can install the above packages by running the following command:

sudo apt-get install libboost-serialization-dev libboost-program-options-dev libboost-filesystem-dev libboost-graph-dev libopencv-dev qtbase5-dev qtbase5-dev-tools libglibmm-2.4-dev

The following additional packages may be needed for building C++ code:

sudo apt-get install build-essential cmake pkg-config

If you want to work on the GUI, you may also want to install Qt Creator: To install Qt5, you can download '.run' offline or online installer from qt open source community download (https://www.qt.io/download-open-source/#section-2) (where 'qt-opensource-linux-x64-5.4.2.run' is the downloaded file, use the below command via terminal)

chmod +x qt-opensource-linux-x64-5.4.2.run
./qt-opensource-linux-x64-5.4.2.run

Building with CMake on Linux

Run the following commands after cloning the repository in the repostiory base directory:

mkdir -p code/build
cd code/build
cmake ..
make
sudo make install

For a custom installation prefix you may specify it in the DESTDIR for the make command, like so: make DESTDIR=/tmp/uipf install, which will install all uipf files under the directory /tmp/uipf.

If something goes wrong you may run make VERBOSE=1 for more detailed output.

For a fast build you can run make -j 4 where 4 is the number of parallel executions to use. Be careful though, as this may take a lot of RAM and make the system unstable.

Troubleshooting

error while loading shared libraries

When running the uipf binary after compiling you may see the following error:

$ uipf
uipf: error while loading shared libraries: libuipf-module.so.2.0: cannot open shared object file: No such file or directory

Solution: run sudo ldconfig to make the linker aware of the newly installed library.

libdc1394 error: Failed to initialize libdc1394

When you run UIPF you might see the following error:

libdc1394 error: Failed to initialize libdc1394

This is caused by opencv and in most cases can be savely ignored. See this question on stackoverflow for more details.

It seems to be fixed in libdc1394-22 version 2.2.5 which is included in Debian stretch.

Some modules could not be loaded

If you are seening errors when modules could not be loaded there is most likely a problem with linking, i.e. missing symbols because some libraries are missing. To get more information on which symbols cause problems you can enable the linker debugging via LD_DEBUG.

LD_DEBUG=bindings uipf -l 2>&1  | grep -v "binding file" 

This will run uipf -l to list all modules available to uipf, and print debug information about library loading via the environment variable LD_DEBUG=bindings. It will also redirect stderr to stdout (2>&1) and filter out irrelevant information to make it easier to see the error: grep -v "binding file".

Building with CMake on Windows

TBD.

How to contribute

Please read the CONTRIBUTING.md for details.

License

This work is licensed under the BSD 2-clause License. Check the LICENSE file for the license terms.

uipf's People

Contributors

7eppsy avatar cebe avatar marcus7 avatar mila-brandt avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.