Automated recording and tracking
Our research uses a strong mechanistic approach and often requires the testing of large number of individuals to look at the effects of individual heterogeneity in animal groups. Therefore I have developed my own software packages to easily record experimental trials in a controlled and automated way (pirecorder) and track both individuals and groups of animals (ATracker). pirecorder is publicly available and comes with detailed documentation to help other researchers to set-up and work with a controlled raspberry pi recording system. It consists of a main recorder module and a number of helper methods that facilitate setting-up the the Raspberry Pi, configuring the the camera, scheduling recordings, and converting recorded media.

A look inside the controlled recording setup of our lab with a calibrated Raspberry Pi camera in the foreground.
ATracker is a Python package I have developed to enables the automatic tracking of both individual animals as well as groups of tagged and untagged animals in a range of environments. It provides highly detailed spatio-temporal output of individual and group movement dynamics as well as behavioural state changes. It contains a number of helper methods, including camera calibration, dynamic tracking parameter configuration, interactive error checking, custom video output, and a manual tracker function. ATracker is currently still in beta and not yet publicly available. Both pirecorder and ATracker make use of a large number of utility image, mathematical and general functions from the associated AnimLab package, publicly available here.

Screenshot of ATracker tracking a video of a school of five three-spined sticklebacks with known identities. Lines indicate association network.