Installation instructions


The OpenPTV contains of:

  1. Core library written in C, called liboptv
  2. Python/Cython bindings, shipped together with the liboptv

The Python bindings allow the easy access to the C library. There are two Python GUI packages that are built around the Python bindings to allow the end-user to use it in a more intuitive way:

  1. Python 3 with PyQt4 GUIs and command line scripts from Yosef Meller called The Particle Bureau of Investigation or pbi
  2. Python 3 based GUI (using TraitsUI, Enthought Chaco, etc.) called PyPTV

The overview

  1. if you plan to use C/C++/Fortran/etc. - compile the liboptv from source using cmake and testing it using libcheck library (see below instructions for Linux and Mac OS X).
  2. if you plan to use it only from Python (either through pbi command line approach or using pyptv GUI) then you can save time on installing liboptv by pip (see below) or compiling through Python bindings and testing it from Python.

liboptv - a library of the OpenPTV algorithms

This is a library - you can build it and link to it in your own project, e.g. calling functions from your own GUI or command-line software. When the package is installed correctly, you can reference it in your code by including files from the optv directory under the standard include path. For example:

#include <optv/tracking_frame_buf.h>

To build your program you also link it with liboptv. On gcc, one adds the flag -loptv to the command line. Other compilers and IDEs have their own instructions for adding libraries; consult your IDE/compiler manual for the details.

The library is using Check framework for the unit tests and Cmake project for the build. We recommend installing both software packages, however it is not obligatory, you may skip the relevant parts if you’re not going to develop or test the library.

Installation of PyPTV (the GUI, including liboptv) called PyPTV

Install Python 3 (Anaconda or anything else):

python -m pip install --upgrade pip
pip install numpy
pip install pyptv --index-url --extra-index-url

Use our test case folder to see PyPTV in action like in video tutorials

Download and run the test case:

git clone --depth 1 -b master --single-branch
pyptv test_cavity

If you want to try the software but not really to get a development version, then you can use one of the two options: Virtual Machine appliance for VirtualBox software or Docker:

Try Docker

This method requires to install first: Docker and X Server (for GUI); then, either pull the ready image or build locally the docker image. This installation works on Windows (tested on Win 10), Mac OS X (tested on Mojave 10.14.2) and Linux.

Please follow the detailed instructions on PyPTV Dockerfiles

Building development version and installation

If you want your own copy of the software, compiled and tested on your platform, then you first need to install Python 3. Note that we work on the Python 3 version but it is not ready yet.

If nothing works, where I can get help?

Send your build logs, description of the problem and details of the operating system, Python version, etc. to our Google group or forum: <!forum/openptv>