AnimalTracker: An ImageJ-Based Tracking API to Create a Customized Behaviour Analyser Program


Widely used behavioural investigation methods, such as the Morris water maze or fear conditioning tests, can be evaluated in several different ways. Commercially available software tools (e.g., Smart, Anymaze, etc.) as well as freely available programs are designed to fulfil certain pre-defined tasks with pre-defined methods. 2 Thus, they do not allow the modification of the applied algorithms and prevent further customisation. We aimed to establish the AnimalTracker application programming interface (API) in a way that its structure allows easy expansion with independent ImageJ applications/plugins, providing a widely useful toolkit for customized behavioural investigations and analyses. The AnimalTracker API can analyse any image sequence compatible with ImageJ. The API has three main functional modules (see Fig. 1 and the website for detailed descriptions). The function of the Tracker module is to process video recordings and to determine the observed object's XY coordinates in each frame. Each frame goes through a customizable processing chain (Fig. 1a). The function of the filtering step is to facilitate the binarization of the frames by decreasing image noise and/or removing the background. Besides several commonly used filters, a background subtractor filter is also provided to remove the static objects from each frame. During the binarization step, separation of the foreground from the background is performed. The postprocessing step serves to correct the errors of the binarization process, such as removing excess foreground pixels caused by image noise. In case of the filtering and postprocessing steps, algorithms can be expanded and concatenated freely and in an unlimited manner. During blob detection, the program searches for continuous foreground areas (so-called blobs). Ideally, the blob should represent the tracked animal only but visual artefacts may also be recognised as blobs. During the blob comparison step, the blob most closely matching the tracked object is selected by the Simple Distance Blob Comparator algorithm. Finally, the numerical output of the Tracker module provides the XY coordinates of the blob and can be exported as a text file. Custom processing chains created for different types of recordings can be saved and used as templates. The TrackAnalyzer module is responsible for the extraction of different trajectory parameters measured during the recording (Fig. 1c). The module works with the XY position set provided by the Tracker module or can read any external text file containing trajectory data arranged in the required structure (X and Y coordinates separated by space, line-by-line). Calculation of the total time and time spent without movement as well as the distance performed within the zones (see below) are built-in features of the API. Additional parameters (such as angle preference in case of the Morris water maze plugin) can

DOI: 10.1007/s12021-016-9303-z

Extracted Key Phrases

1 Figure or Table

Cite this paper

@article{Gulys2016AnimalTrackerAI, title={AnimalTracker: An ImageJ-Based Tracking API to Create a Customized Behaviour Analyser Program}, author={M{\'a}rton Guly{\'a}s and Norbert Bencsik and Szilvia Pusztai and Hanna Liliom and Katalin Schlett}, journal={Neuroinformatics}, year={2016}, volume={14}, pages={479-481} }