A raw image captured by the camera before any image processing. Photo by Jon Bird.

A raw image captured by the camera before any image processing. Photo by Jon Bird.

A thresholded image - the 6 rectangles in the image correspond to the 6 motors in the vibrotactile array. Photo by Jon Bird.

A thresholded image - the 6 rectangles in the image correspond to the 6 motors in the vibrotactile array. Photo by Jon Bird.

Black squares indicate that the majority of the pixels in that region of the image are black, otherwise the rectangel is white. Motors in the vibrotactile array corresponding to a black rectangle are switched on, those corresonding to a white square are switched off. Photo by Jon Bird.

Black squares indicate that the majority of the pixels in that region of the image are black, otherwise the rectangel is white. Motors in the vibrotactile array corresponding to a black rectangle are switched on, those corresonding to a white square are switched off. Photo by Jon Bird.

Prototype 6: Faster Image Processing using openFrameworks

Even with fine tuning, the Processing computer vision code was slow and meant that only slowly moving balls could be tracked. We therefore re-wrote the program in openFrameworks, an open source C++ library which also incorporates openCV, an open source computer vision library created by Intel. This code runs significantly faster than Processing, with no visible lag.


 

 

 

 

Accessibility