Particle Filter for Tracking

I wrote a framework for Particle Filter-based tracking from colour images. The framework utilizes importance sampling and dynamical system model for object tracking. It is capable of tracking in the presence of short-lived occlusion.

Particle Filter

Input Sequence
Input Sequence
space
Particle Filter-based tracking
Particle Filter-based tracking


Code available at: https://github.com/masaddev/OpenCVParticleFilter

OpenCVRandomForest: Framework for Multi-variate Random Forest Regression in OpenCV

I wrote this framework as part of the application for my research. The code is written in C++ using OpenCV, enabling real-time execution. I have specifically made sure to utilize memory in an efficient way. The framework runs in real-time on mobile platforms running windows. It also contains a simple utility function used to explore the individual tree structures.

OpenCVRandomForest

space
Visualization of Tree structures
Visualization of Tree structures


Code available at: https://github.com/masaddev/OpenCVRandomForest

OpenCVKinect: Acquiring Kinect Data Streams in OpenCV

I have worked with Kinect Sensor for a number of projects. Some of these required me to collect big datasets. The existing methods that I found for acquring and storing data from Kinect Sensor were all either too complicated or required a lot of libraries. The biggest issue was that once I acquired data I had to save it before implementing any computer vision based algorithm as it was not directly accessible within commonly used computer vision libraries. I wrote a library using OpenCV (C++) that enabled acquisition of Kinect data streams directly into OpenCV cv::Mat format. This library has since been used by a number of researchers and students to acquire data and process it using OpenCV library in real-time.

OpenCVKinect

Colour Image
Colour Image
space
Depth Image
Depth Image


Code available at: https://github.com/masaddev/OpenCVKinect

OpenCVGMM: Gaussian Mixture Model in OpenCV

In my spare time I have also implemented Gaussian Mixture Model using Expectation Maximization in OpenCV C++. This is a straightforward implementation that I used in some clustering problems. The key attractive idea of GMM is its probabilistic approach, where a sample can coexist in multiple clusters with varying probabilities.

OpenCVGMM

GMM Clustering
GMM Clustering
space
GMM Clustering
GMM Clustering


Code available at: https://github.com/masaddev/OpenCVGMM