Getting started with Interactive Machine Learning for openFrameworks / Workshop series - On-demand

Membership plan: Getting Started | Topics: Creative Coding

Course overview

Using openFrameworks, ofxRapidLib and ofxMaximilian, participants will learn how to integrate machine learning into generative applications. You will learn about the interactive machine learning workflow and how to implement classification, regression and gestural recognition algorithms.

What you'll learn

  • Session 1: Set up an openFrameworks project for classification, Collect and label data, Use the data to control audio output and Observe output and evaluate model
  • Session 2: Set up an openFrameworks project for regression, Collect data and train a neural network, Use the neural network output to control audio parameters and Adjust inputs to refine the output behaviour
  • Session 3: Set up an openFrameworks project for series classification, Design gestures as control data, Use classification of gestures to control audio output and Refine gestural input to attain desired output
  • Session 4: Explore methods for increasing complexity, Integrate visuals for multimodal output, Build mapping layers and Use models in parallel and series

Who is this course for?

  • You will explore a static classification approach that employs the k-Nearest Neighbour (KNN) algorithm to categorise data into discrete classes. This will be followed by an exploration of static regression problems that will use multilayer perceptron neural networks to perform feed-forward, non-linear regression on a continuous data source. You will also explore an approach to temporal classification using dynamic time warping which allows you to analyse and process gestural input.

Course content

  • Code for Week 1
  • Part 1 - IML Terminology
  • Part 2 - Collect and Label Data
  • Part 3 - KNN Classification
  • Code Templates for Week 2
  • Part 1 - Static Regression
  • Part 2 - Project Setup
  • Part 3 - Training The Network
  • Part 4 - Controlling Audio
  • Code for Week 3
  • Part 1 - Dynamic Time Warping
  • Part 2 - Project Setup
  • Part 3 - Collect Data
  • Part 4 - Train and Run Model
  • Part 5 - FM Synth Control
  • Part 6 - Triggering Processes
  • Week 4 Code
  • Part 1 - Parallel Models Setup
  • Part 2 - Controlling Parallel Models
  • Part 3 - Gestural Selector
  • Part 4 - Multi-modal Output
  • Part 5 - Models in Series



  • A computer and internet connection
  • Installed versions of the following software: openFrameworks, ofxRapidLib and ofxMaxim
  • Preferred IDE (eg. XCode / Visual Studio)

Course schedule

Meet your instructor

Bryan Dunphy graduated in 2021 from a PhD at Goldsmiths University. He specialises in audio-visual, immersive performances and creations. Most of his work uses Machine Learning.

Notify of

Inline Feedbacks
View all comments
Would love your thoughts, please comment.x