AILIB: JNI wrapping of popular Computer Vision and Machine Learning C++ libraries

This project contains Java Native Interface (JNI) wrapping of several well-known Computer Vision and Machine Learning techniques and algorithms written in C/C++ from some popular libraries such as OpenCV Library, Piotr Dollar’s toolbox, and VLFeat open source library. In particular, the algorithms currently available are:

  • reading image (uses OpenCV)
  • showing image (uses OpenCV)
  • resizing image (uses OpenCV)
  • writing image to file (uses OpenCV)
  • read video and grab frames (uses OpenCV)
  • compute gradients and orientations of given image (uses Piotr Dollar functions)
  • compute gradient histograms (Hog) of given image (uses Piotr Dollar functions)
  • train SVM classifier given supervised data (uses VLfeat functions)
  • extract local binary pattern features from given image (uses VlFeat functions)
  • extract HOG features given image (uses VLFeat functions)
  • apply k-means clustering on given data with given hyper-parameters (uses VLFeat functions)
  • compute SIFT features given image and hyper-parameters (uses VLFeat functions)
  • compute dense SIFT features given image and hyper-parameters (uses VLFeat functions)

The code is available at: https://github.com/Kyaw-Kyaw-Htike/AILIB-JNI-wrapping-of-popular-Computer-Vision-and-Machine-Learning-Cpp-libraries

  • Programming languages: C++, Java
  • Special Expertise Required: JNI, Computer Vision, Machine Learning, OpenCV library, VLFeat Library and Piotr Dollar library.