Algorithm Overview

NIS-Elements tracking algorithm is inspired by the paper by Jaqaman, K. et al.: Robust single-particle tracking in live-cell time-lapse sequences published in Nature Methods 2008 Vol. 5 No. 8.

The tracking algorithm has two major phases:

  1. Frame-to-frame object linking (needs Tracking module: applicable to ROIs and Binaries)

  2. Track processing (needs Advanced Tracking module: applicable to Binaries on

Frame-to-frame object linking

The algorithm works with a set of active tracks. Initially - in the first frame each object is set to be an active track. Then the algorithm goes through all frames in time and tries to extend the track. An object not fitting to any track may initiate a new active track (if ignore new tracks is unchecked) at any time as well. At a given frame, each track can be linked to at most one object. If there is no suitable link a gap is introduced. In case that Gap Closing is disabled, the track is terminated and no longer active for further linking. If gaps are allowed the track remains active. It can link until the gap length reaches the threshold which terminates it.

The goal of linking is to find the best correspondence between active tracks so far and objects in the current frame. A probability for each possible link (active track with object) together with a probability of track ending is calculated. The result is the solution with globally (over all possibilities: linking, gap closing, track ending and new track starting) highest probability.

The probability of a link is the likelihood that the track will extend through the given object. As each track is built a Kalman filter is applied and its prediction and error estimate are used to calculate a multidimensional Gaussian probability distribution function for a given frame. From this function it is possible calculate the probability that any object links with the given track.

The probability of non-linking (i.e. track termination) is given by user as a multiplication factor of Standard deviation. The lower the factor the smaller the linking area becomes and the probability of non-linking increases. The Standard Deviation is calculated for each track and time-point. With increasing object speeds the Standard deviation increases as well. This criterion is relative.

Additionally, user can set an absolute maximum speed, which eliminates impossible links right away.

Splitting (when enabled) is done first. Objects that split in two are determined based on selected mass conservation model: either the number of pixels or the sum intensity should be constant during the division. Remaining objects are linked normally.

Object Features

Some distinguishing object features may be selected to be included into probability calculation. Features that are selected should have the ability to distinguish between objects that form distinct tracks. Maximum change per second may be set for every feature as a restriction. Infinity means that the feature is not restricted.

Track Processing

This phase is optional and it works on tracks from previous Frame-to-frame linking phase. In general every pair of two tracks can link (Gap Closing), branch (Splitting), merge to each other or remain independent. In this phase every of these possibilities for all possible track pairs is given a probability and a globally best combination is found.

Depending on the number of tracks found in previous phase Track Processing can be a lengthy process. The complexity is greatly reduced by filtering tracks and not using all options at the same time. Enabling track processing on thousands of tracks may cause several minutes of calculations.

For Gap Closing the probability of linking two tracks depends on similarity of both track characteristics, such as their speed, direction and variability of both. For Track Splitting a track start can link to any midpoint of another track and the probability calculated from mass conservation model and characteristics of involved tracks. Track Merging uses similar calculation for probability of linking a track end to a midpoint of another track.

This phase can find and close additional gaps or splits that were not found in the Frame-to-frame linking phase. It may be also aided by specifying restrictions in Object features. It should be used as refinement of an already good tracking result of Frame-to-frame linking. On the other hand, It will hardly improve if Frame-to-frame phase failed.