Skip to content
General-purpose machine learning library for openFrameworks, supporting classification, regression, and clustering tasks
C++ C Other
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
example_classification saving pca Feb 11, 2017
example_classification_threaded update project files and changed addTrainingInstance to addSample Feb 9, 2017
example_clustering update project files and changed addTrainingInstance to addSample Feb 9, 2017
example_clustering_threaded
example_pca random projection Mar 9, 2017
example_regression
example_regression_threaded
libs/dlib updated to ver 0.9 Nov 11, 2015
src random projection Mar 9, 2017
.gitignore update project files and changed addTrainingInstance to addSample Feb 9, 2017
README.md
addon_config.mk added config for properly adding through PG Nov 8, 2015
ofxaddons_thumbnail.png thumbnail May 18, 2014

README.md

ofxLearn

ofxLearn is a general-purpose machine learning library for OpenFrameworks, built on top of dlib.

About

ofxLearn supports classification, regression, and unsupervised clustering. The goal is to be a high-level wrapper for dlib's machine learning routines, taking care of the ugly stuff, i.e. determining a model, kernel, and parameter selection).

The library contains a basic example for each of classification, regression, and clustering. Because training can take a long time, there are also examples for placing each of these tasks into its own separate thread.

Features

ofxLearn supports classification (using kernel ridge regression), regression (using kernel ridge or multilayer perceptron (neural network)), and k-means clustering.

Also has an example for doing a principal component analysis via singular value decomposition. See example_pca.

Each has a separate class for threading (see the _threaded examples).

Usage

See examples for usage of classification, regression, and clustering. Depending on the size and complexity of your data, training can take a long time, and it will freeze the application, unless you use the threaded learners. The examples ending with _threaded run the training in a separate thread and alert you with a callback function when they are done.

You can’t perform that action at this time.