BioImageOperation (BIO) - Tracking step by step guide

Here is a step by step example of image tracking, using the BioImageOperation software including BIO script (see below). This software allows real-time processing (on standard consumer hardware) directly from HD video source or video files. For this example we use a public source: ants walking on concrete with varying lighting (video used from this public source - full video available here).

This is what the source video looks like

orig

 

First, detection is applied on each raw video image, to determine the objects of interest

detect

 

Next, we use contour detection to determine clusters (from OpenCV), then apply a custom high performance tracking algorithm (including direction & 'collision' detection)

track

 

An alternative way of visualising the tracking shows the history for each ant

track2

 

Additionally, we can analyse common paths over time

paths

 

The basic script used for basic tracking (using default / automatic parameter values):

 

OpenVideo("ants_in_concrete.mov")

{

  Grayscale()

  5:background = UpdateBackground()

  DifferenceAbs(background)

  Threshold()

 

  CreateClusters()

  CreateTracks()

 

  DrawClusters()

  ShowImage()

}