EthoLoop 3D Tracking

The core elements to build EthoLoop Tracking system are:

1- NVIDIA Jetson TX2
2- XIMEA Camera
3- Wide angle objectives
4- Wireless Router
5- Linux Machine

To track animals in three dimensional (3D) environments, Etholoop uses multiple high speed cameras (XIMEA) each connected to a single embedded AI computing device (NVIDIA Jetson) for image processing purposes. This allows tracking individuals at extremely high speed (~800 Hz). The Jetson TX2 modules are responsible to extract the two-dimensional information of individuals from each view point and wirelessly transmit them to the Host machine (Linux) for 3D reconstruction.

Setup Image Processing Units

The image processing units of EthoLoop system is made of an NVIDIA Jetson TX2 connected to XIMEA USB3 Camera.EthoLoop Image Processing package provides:

1- Installation of OpenCV libraries alongside CUDA
2- Installation of XIMEA camera libraries 
2- Source code for ultra high speed real-time tracking of individuals in two dimensions.  

The following steps described should be performed on all your Jetson-TX2s separately. Alternatively you can perform the steps on only one Jetson-TX2 and follow the guidelines described here to clone your other Jetsons-TX2s.



Flash Jetson TX2

We highly recommend to download and install JetPack 3.2.1 on any linux machine and flash all your Jetson-TX2s.

chmod +x

Follow the instructions provided during the installation. While performing the flashing process install the Linux4Tegra and CUDA on your Jetson-TX2 device and DO NOT install the provided OpenCV by JetPack. Your configuration should look like the attached picture. EthoLoop installation file provides OpenCV libraries with the suitable configuration.

If you use the latest NVIDIA SDK, then remove the OpenCV installed by the JetPack.



Download and install EthoLoop Image Processing package 

After flashing and installing all CUDA libraries, download the EthoLoop Image Processing Package on your Jetson-TX2 device. Make the bash file executable and run the installation.

chmod +x

Setup EthoLoop Host machine

 The EthoLoop software is written in C/C++ and uses OpenCV libraries. EthoLoop Host Package provides:

1 -  Automated 3D Calibration and Real-time tracking 
2 -  Close Up system control (see how to setup your close-up system)
3 -  Multiple RECO-Boxes Control (see how to setup a RECO-Box)
4 -  Designe different closed-loop experiment 

In the following we provide a step by step procedure to setup the host machine, install requiered libraries and EthoLoop software.  



Install Ubuntu 

We highly recommend to install the EthoLoop host machine on a separate PC and have a fresh installation of Ubuntu 16.04.   



Download and install EthoLoop software pachage

Download EthoLoop Host Machin package and unzip the file. The package contains a bash file ( that will install important libraries such as:

1 - OpenCV   
2 - XIMEA Linux SDK
3 - Dynamixel SDK

Open a terminal and navigate to the directory where the EthoLoop Host package is located. Make the installation file executable and run:

chmod +x
sudo ./



Run EthoLoop software

Once the installation of all requiered libraries is completed and EthoLoop is successfully installed, navigate into the EthoLoop bin folder and run EthoLoop software.




Start 3D calibration and tracking

From EthoLoop software go to "3D Calibration", define your real-world coordinates and your Jetson TX2 IP address and follow the guidlines.

Once you are done with the 3D calibration, on EthoLoop software "Create a Config File" with only loading the calibration output. 

Then proceed with "Run EthoLoop" and load your config file.

Site was started with Mobirise