This project is used to generate wrappers for common classes and data structures of the OpenISS project to support bindings for Java (and other languages) based of the OpenISS C++ framework. It is used as an example for a JNI library in Processing for Java-based projects like ISSv2, known as OIGesture JNI Library in OpenISS's examples directory.
This repo is currently based on Jashanjot Singh's master's thesis that currently covers only the OpenISS Gesture Recognition specialization framework and wrappers for NiTE2 and Nuitrack middleware.
The middleware also needs to be present if used:
- OpenNI2
- NiTE2
- Nuitrack
Otherwise, the particular modules can be commented out.
The project was built and tested on Ubuntu 18+ and macOS 10.11+.
This repository contains SWIG interface files for OpenISS Getsure Framework related classes, a maintainable way to let SWIG generate wrapper classes for OpenISS gesture library in a target language.
Currently, wrappers can be generated for Java only.
mkdir build && cd build
cmake .. -DOIGESTURE_SWIG_JNI:BOOL=ON -DBUILD_SHARED_LIBS=ON
make -j4
cp liboigesturecxx.so swig/
ln -s lib{OpenNI2/NiTE2/Nuitrack/Middleware} swig/
(optional)cmake .. -DOIGESTURE_SWIG_TEST_JAR=ON
make -j4
- Jashanjot Singh, Universal Gesture Tracking Framework in OpenISS and ROS and its Applications, Master's thesis, January 2020, Concordia University, Montreal