Background

The ability to study animal behaviour is important in many fields of science and especially biology and behavioural ecology. The latter often employs high-resolution spatial and temporal information to analyse the behaviour of animals. Depending on the sensors used, aspects such as energy expenditure, behaviour, location, speed, heart rate and temperature are monitored [1,2,3,4,5].

A commonly used sensor to monitor the activity level of animals is the accelerometer [6, 7]. Animal-attached tri-axial accelerometers provide a detailed picture of the activity patterns and allow the collection of data from animals in a non-invasive manner and the subsequent analysis of their behaviour. Such animal-borne biologgers or biotelemetry tags, respectively, log or transmit raw sensor data for extended periods of time. The tags are subsequently retrieved and the acceleration signals analysed to answer key questions relating to animal behaviour. However, the manual monitoring and analysis of such accelerometer measurements can be tedious, time-consuming and not feasible for large or open-ended data volumes. Recently, researchers have begun to consider machine learning techniques to automatically classify these large datasets into behavioural classes. For example, McClune et al. classify the behaviour of badgers (Meles meles) as walking, trotting, snuffling and resting [8]. Automatic behaviour classification systems based on tri-axial accelerometer data are trained by recording high-resolution timestamped video recordings during data collection. These recordings serve as ground truth for the raw data, which is used to manually label the data according to specific behaviours. The labelled data are subsequently used to train statistical classifiers. These classifiers can then automatically categorise large datasets according to the chosen behaviours. Automatic behaviour classification has already been applied to a range of animals using various statistical classification and machine learning techniques, including artificial neural networks [9], decision trees [8,9,10,11,12,13], discriminant function analysis [14], hidden Markov models [15], k-nearest neighbours [8, 10, 16], linear discriminant analysis [9], moving averages with thresholds [17], quadratic discriminant analysis [18], random forests [9, 19] and support vector machines [9, 15, 20]. These systems have accomplished automatic behaviour classification with high accuracy, as listed in Table 1. The table lists examples of classified behaviours for a small subset of animal species who have recently been studied using automatic behaviour classification techniques.

Table 1 Summary of some automatic animal behaviour classification systems based on the statistical classification of tri-axial accelerometer data

Currently, automatic behaviour classification is performed as a post-processing step, after data collection. This is the case for all systems described above and listed in Table 1. Such configurations provide very valuable, but historical, information. The ability to analyse animal behaviour in real time, however, has great potential for applied ecological monitoring and wildlife conservation [21]. Some studies have considered the real-time monitoring of animal behaviour using other types of sensors. For example, Cangar et al. consider the automatic real-time monitoring of locomotion and posture behaviour of pregnant cows within a confined space prior to calving using top view cameras and online image analysis [22]. The system achieved high accuracies with an average of 85% for standing and lying and 87% for eating or drinking behaviour for eight cows during the last 24 h before calving. However, video cameras consume a lot of energy and generate large amounts of data and are therefore not suitable for long-term deployment. Furthermore, image or video processing is computationally demanding, which presents challenges for the successful application in real-time nature conservation systems. Satellite- or GSM-enabled GPS transmitters, on the other hand, have a long track record of successfully monitoring animals in real time in remote locations [1, 21, 23]. Wall et al. demonstrate the importance of not only collecting but also analysing GPS data in real time, using tracking collars on African Elephants [21]. It was possible to promptly detect and avoid an elephant bull from breaking through expensive electrical fencing into neighbouring subsistence farming land in order to forage in fields of maize and to inform wildlife managers when elephant herds moved close to specific locations, such as the A2 highway on the Cape-to-Cairo route [21]. The real-time nature of the system allowed immediate alerts to be issued. The same author shows that the system was able to identify a wounded elephant using movement-rate analysis, which led to quick veterinary response and the recovery of the animal. Finally, the system was able to successfully detect elephant mortality by means of immobility analysis, which is key in their anti-poaching and real-time monitoring activities.

Wall et al. go on to point out that while accelerometer data can provide valuable information for real-time management applications, the increased volumes of data produced by the accelerometers introduce new challenges for both the tag’s limited memory and battery capacities as well as the wireless communication of these data to a control room. The author concludes that some form of on-board processing is inevitable. To date, however, no study has considered the on-board classification of tri-axial accelerometer data for real-time automatic behaviour classification. Related studies have considered the real-time monitoring of human activities based on accelerometer data [24,25,26,27,28,29,30]. These studies demonstrate good performance but are also less constrained in terms of battery life and communication bandwidth since users are co-operative and can be relied on to recharge the batteries and to be within reception of standard communication technologies, such as Wi-Fi and cellular networks, which can be used to transfer data. For animal monitoring purposes, these approaches are not feasible. Replacing batteries involves recapturing animals which is difficult, expensive and places additional stress on the animals. Furthermore, wild animals typically live in areas with very limited or no communication coverage except satellite or specifically designed wireless sensor networks [31]. Accordingly, reducing the required bandwidth for data communication will result in increased longevity of the tags and reduce operational costs for satellite transmitters.

It is in this context that we consider the feasibility of an animal-borne behaviour classification system, which captures and automatically classifies three-dimensional accelerometer data in real time and on the animal. The system is evaluated on both sheep and rhinoceros where it distinguishes in real time between behaviours such as running, walking, standing, grazing and lying down. We describe both the developed hardware and software in the interest of system reproducibility. Although the system was implemented using specially designed hardware, it could in principle be reproduced on other tri-axial accelerometer equipped biotelemetry tags to allow real-time transmission of classified behavioural information to further assist research in fields such as behavioural ecology, biosecurity, nature conservation and agriculture.

Methods

The system employs specially designed biotelemetry tags. These tags are externally attached to the animal where they sample a tri-axial accelerometer and pass the raw data through an on-board classifier, which determines the current behaviour of the animal. The updates are available in real time and are stored locally and also transmitted over a wireless communication channel. The system design involves five steps: First, the biotelemetry tag hardware is designed. Second, in a data collection phase, the tags are programmed to sample and store raw accelerometer signals while ground-truth behavioural labels are noted. Third, these recorded signals are transferred to a workstation where they are labelled and used to train and evaluate an automatic classifier.Footnote 1 Fourth, the classification algorithm is implemented on the tags. Finally, the tags are attached to animals where they continuously capture, classify, record and transmit the behaviour of the animal. A ground-truth comparison establishes the accuracy of the on-animal classification. These steps are set out in more detail in the sections that follow.

Hardware

Five tags were developed for our study. The hardware layout is shown in Fig 1. The tags are powered by 3.7 V 1800 mAh lithium-ion batteries. The design utilised a L6932H1.2 ultra-low drop-out voltage regulator (STMicroelectronics, Geneva, Switzerland), a MSP430FR5739 low-power mixed signal microcontroller (Texas Instruments, Dallas, TX, USA), a GNS602 GPS receiver (Global Navigation Systems, North Shields, UK), two FM25V20 ferroelectric non-volatile RAM (FRAM) storage modules of 2 MB each (Cypress Semiconductor, San Jose, CA, USA), a 2 GB MicroSD card (Kingston, München, Germany) and an ADXL345 tri-axial accelerometer (Analog Devices, Norwood, MA, USA) with high-resolution (13-bit) measurement at up to ± 16 g. A low-power CC1101 sub-1 GHz RF transceiver (Texas Instruments, Dallas, Texas, USA) allows wireless data communication at 433 MHz. The tags were packaged using two different collar designs for sheep and rhinoceros. The sheep collars had a total weight of 281 g. which included a 146 mm \(\times\) 80 mm \(\times\) 65 mm polycarbonate casing (126 g), the physical electronics (32 g), a battery (33 g) and a belt (90 g) used to fit the collar around the neck of sheep. The rhinoceros collar had a total weight of 371 g, which included a 117 mm \(\times\) 77 mm \(\times\) 38 mm thick durable and waterproof casing (165 g) made of polyoxymethylene (acetal), the physical electronics (32 g), two batteries (66 g) and two belts (108 g) used to fit the collar around the legs of rhinoceros.

Fig. 1
figure 1

Block diagram of the hardware design of the biotelemetry tags. A MSP430 ultra-low-power microcontroller communicates with the accelerometer using I2C, the GPS using UART and the FRAM, MicroSD card and RF transceiver using SPI. Two tactile switches and two light-emitting diodes were included for software functionality selection and indication purposes, respectively

Initially, the hardware was configured to collect raw accelerometer measurements for both sheep and rhinoceros. In this setting, the microcontroller was programmedFootnote 2 to continuously sample the tri-axial accelerometer at 100 Hz for sheep and 40 Hz for rhinoceros. These measurements were timestamped and subsequently logged to the MicroSD card for later retrieval. The GPS, RF transceiver and FRAM modules were not used during this data collection step.

Data collection

Datasets for both sheep and rhinoceros were complied as part of this study. The collected data were manually labelled with the observed behaviour to provide ground truth. The resulting annotated corpus was used to develop and evaluate statistical classifiers.

Fig. 2
figure 2

Biotelemetry collars. a Fitted around the necks of four sheep. The accelerometer x, y and z axes are associated with left–right, up–down and forward–backward movements of the sheep, respectively, b fitted around the black leg of a rhinoceros. The accelerometer x, y and z axes are associated with the up–down, forward–backward and left–right movements, respectively

For the sheep, raw data were collected on a farm in Carnarvon, Northern Cape, South Africa, in July 2014. The tags were fitted around the necks of the sheep using collars as shown in Fig. 2a. The x, y and z axes are associated with left–right, up–down and forward–backward movements of the sheep, respectively. The data collection was performed during 3 separate days. On each of these three mornings, collars were attached to five individual sheep (Dohne Merino) randomly selected from a group of approximately twenty animals. The sheep were then led to a larger camp and left undisturbed for the duration of the day, during which the tags continuously logged the acceleration. Five common types of behaviour were identified: lying down, standing, walking, running and grazing. The behaviour of the sheep was manually documented with timestamps to serve as ground truth. At the end of each day, the sheep were collected, the collars removed and the recorded acceleration signals downloaded.

The rhinoceros dataset was collected at a private sanctuary early in 2015. Three rhinoceros were available for data collection, one male and one female White Rhinoceros (Ceratotherium simum) and one male Black Rhinoceros (Diceros bicornis). The animals were held in a camp approximately 100 ha in area and moved around freely. The collars were fitted around the left back leg of the rhinoceros as shown in Fig. 2b. The x axis was associated with up–down movement, the y axis with forward–backward movement and the z axis with left–right movement. Data collection took place over a period of 1 week. The rhinoceros were fed daily, and this provided the opportunity to fit the collars. Once the collars were fitted, the rhinoceros were left undisturbed to roam freely in their camp. The collars were removed during later feeding sessions and the data downloaded, after which the collars were redeployed. Four common behaviours were identified: lying down, standing, walking and running. The rhinoceros were monitored each day at the feeding sessions during which timestamped video recordings were made. The video recordings allowed accurate labelling of the gathered data.

Data labelling

In order to train and evaluate the statistical classifiers, it is important to have accurate ground truth. All collected data for both sheep and rhinoceros were segmented and labelled manually with the corresponding behaviour. For the sheep, the ground truth took the form of manual annotations (2014 data). For the rhinoceros, the timestamped video recordings were used (2015 data). A summary of the raw sheep and rhinoceros datasets is given in Table 2.

Table 2 Raw unbalanced datasets

Data collection from rhinoceros was logistically and practically challenging, and as a result the data corpus gathered was smaller than that for sheep. Running behaviour was not observed often for rhinoceros. Grazing behaviour could not be detected because the tags were attached to the back leg for the rhinoceros, and not to the neck as for sheep.

Fig. 3
figure 3

Raw acceleration measurements from the 2014 sheep dataset. Typical acceleration measurements for the five identified sheep behaviours sampled at 100 Hz. The x (red), y (green) and z (blue) accelerometer axes are shown. Differences in the acceleration waveforms are apparent between the five behaviours. However, lying and grazing behaviour have similar acceleration signals

Figure 3 depicts typical measured acceleration signals for the five different behaviours in the sheep dataset. Similarly, Fig. 4 depicts typical measured acceleration signals for the three different behaviours in the rhinoceros dataset. The figures demonstrate that the acceleration waveforms of different behavioural classes exhibit different characteristics.

Fig. 4
figure 4

Raw acceleration measurements from the 2015 rhinoceros dataset. Typical acceleration measurements for the three identified rhinoceros behaviours sampled at 40 Hz. The x (red), y (green) and z (blue) accelerometer axes are shown. Differences in the acceleration waveforms are apparent between the three behaviours

Data pre-processing and feature extraction

Analysis of the gathered datasets showed very little spectral content above 10 Hz. The three acceleration axes were therefore low-pass-filtered using an 8th-order Butterworth filter with a cut-off frequency of 10 Hz before segmenting the signals into consecutive frames and applying a Hamming data window. Frames spanned 512 and 256 accelerometer measurements, respectively, for sheep and rhinoceros to achieve similar frame durations, due to different sampling frequencies of 100 Hz for sheep and 40 Hz for rhinoceros. These frames were allowed to overlap by 50%. The features extracted from each frame were based on those employed in [20, 32] and included the 11 features listed in Table 3. For each feature, except average signal magnitude, three values were computed, one for each accelerometer axis, leading to a total of 31 features per frame. The same features were extracted for both the sheep and the rhinoceros datasets.

Table 3 Features extracted from the compiled datasets

Dataset balancing

The two datasets were balanced after feature extraction, in order to avoid possible bias between classes or animals. Since the sheep dataset did not identify individual animals, the classes were balanced over all the sheep. This was achieved by random selection from the aggregated data to limit the number of samples for each class to the number available for the least frequent class. Hence, the resulting dataset is evenly drawn from all animals while maintaining the same number of total samples from each class. In the case of the rhinoceros dataset, collection took place from three distinct and identifiable animals. Therefore, this dataset could be balanced over behavioural classes as well as animals. This was achieved by limiting the data available for each class from each animal to that available for the least frequent class among all animals. The resulting dataset had an equal number of samples for each class and for each rhinoceros. We decided to omit the small amount of running data from the rhinoceros dataset for cross-animal testing purposes, since this behaviour was observed for only one animal. The total number of feature vectors available after balancing the datasets is given in Table 4.

Table 4 Balanced datasets

Linear discriminant analysis

Linear discriminant analysis (LDA) is a classification method, which assigns a d-dimensional input feature vector \({\mathbf {x}} = \{x_1,\ldots ,x_d\}\) to one of K classes (\(C_k\)) using a linear decision boundary [33]. This is accomplished after projecting the data to a lower \(K-1\) dimensional space using a transformation matrix \({\mathbf {W}}\), as shown in Eq. 1.

$$\begin{aligned} {{\mathbf {y}}} = {{\mathbf {W}}}^{\mathrm{T}} {\mathbf {x}} \end{aligned}$$
(1)

Here, \({\mathbf {y}} = \{y_1,\ldots ,y_{K-1}\}\) is the \(K-1\) dimensional projected vector. Class separation is maximised in the lower-dimensional space by choosing the matrix \({\mathbf {W}}\) to maximise the between-class variability while minimising the within-class variability. This is achieved by maximising the generalised Fisher criterion, as given in Eq. 2.

$$\begin{aligned} J({\mathbf {w}}) = \frac{{\mathbf {w}}^{\mathrm{T}}{\mathbf {S}}_B{\mathbf {w}}}{{\mathbf {w}}^{\mathrm{T}}{\mathbf {S}}_{{W}}{\mathbf {w}}} \end{aligned}$$
(2)

In Eq. 2, \({\mathbf{S}}_B\) is the sample covariance of the class means:

$$\begin{aligned} {\mathbf {S}}_B = \sum _{k=1}^{K}N_k(\varvec{\mu }_k-\varvec{\mu })(\varvec{\mu }_k-\varvec{\mu })^{\mathrm{T}} \end{aligned}$$
(3)

where the number of samples in class k is given by \(N_k\). \({\mathbf {S}}_W\) is the within-class covariance matrix:

$$\begin{aligned} {\mathbf {S}}_W = \sum _{k=1}^{K}\sum _{x\in C_k}({\mathbf {x}}-\varvec{\mu }_k)({\mathbf {x}}-\varvec{\mu }_k)^{\mathrm{T}} \end{aligned}$$
(4)

The mean for each class by \(\varvec{\mu }_k\) and the overall mean by \(\varvec{\mu }\). The decision boundary is found by solving the generalised eigenvalue problem in Eq. 5 [34]:

$$\begin{aligned} {\mathbf {S}}_B{\mathbf {W}} = \lambda {\mathbf {S}}_W{\mathbf {W}} \end{aligned}$$
(5)

This results in \(K-1\) eigenvectors, which are used to discriminate between the K classes. Classification is accomplished by determining the nearest class mean in the \(K-1\) dimensional space.

$$\begin{aligned} k = {\mathop {\mathrm{argmin}}\limits _{k}} \,\, d({\mathbf {W}}^{\mathrm{T}} {\mathbf {x}}, {\mathbf {W}}^{\mathrm{T}} \varvec{\mu }_k) \end{aligned}$$
(6)

where \(d({\mathbf {a}},{\mathbf {b}})\) is in our case the Euclidean distance between vectors \({\mathbf {a}}\) and \({\mathbf {b}}\).

An underlying assumption of LDA is that each class density is a multivariate Gaussian and that the classes share the same covariance matrix [35]. We were motivated to use the LDA technique since the computations required for classification are simple and could be implemented on our low-power hardware, and because informal analyses of the extracted features indicated their densities to be approximately Gaussian. However, other classifiers could be considered in future.

Software and implementation

Animal-borne behaviour classification is achieved by implementing the trained LDA classifier on the tag itself. The tag executes the software routine shown in Fig. 5.

Fig. 5
figure 5

Software flow diagram of the animal-borne behaviour classification system. Accelerometer sampling is controlled by a timer to ensure a constant sampling frequencies of 100 Hz for sheep and 40 Hz for rhinoceros. The GPS acquisition interval is determined by a second timer

The routine begins by initialising the system and setting all variables to appropriate values. Next, two timers are started. The first corresponds to the desired accelerometer sampling frequency in our case 100 Hz for sheep and 40 Hz for rhinoceros. The second corresponds to the desired GPS sampling interval. The routine then enters the main loop, in which it waits for the read-accelerometer timer to trigger an interrupt. The corresponding interrupt service routine samples the accelerometer and stores the raw x, y, and z acceleration values in a data buffer. This process is repeated until a pre-defined number of samples have been obtained (512 for sheep and 256 for rhinoceros). Feature extraction is subsequently performed on the frame stored in the data buffer. The feature vector is subsequently passed to the LDA classifier, and the classification result transmitted and optionally also stored on-board. At this stage, if the GPS timer was triggered, the GPS location can be obtained, transmitted and stored. The loop completes by clearing the data buffer. An additional delay can be introduced at this point during which the system enters a low-power state for a set duration. This is useful when behavioural updates are required less frequently. However, we configured the system for continuous behavioural updates; hence, no delay was introduced. With this software implementation, behavioural updates are available approximately every 5.3 s for sheep and 6.5 s for rhinoceros, since the sampling is taken at constant intervals (100 Hz for sheep and 40 Hz for rhinoceros), and a set number of samples are stored in the data buffer (512 samples for sheep and 256 samples for rhinoceros) before classification and transmission.

The animal-borne behaviour classification system was implemented and field-tested to evaluate its performance. In April 2015, the tags were configured with the classifier trained on the 2014 sheep dataset and tested at the same farm in Carnarvon on two randomly chosen sheep over a period of 2 days. Video recordings were made to serve as ground truth with which the classification accuracy could be determined. In April 2016, the tags were configured with the classifier trained on the 2015 rhinoceros dataset and tested at the same location on three different rhinoceros over a period of 4 days. Video recordings were again made to provide the ground truth with which to evaluate classification accuracies.

Results

The first goal of the experiments was to determine the utility of the features in Table 3 for behaviour classification in sheep and rhinoceros. All classifiers are trained and evaluated on the datasets in Table 4 within a cross-validation framework. For the sheep dataset, tenfold cross-validation was used. Since the identities of the animals were not unambiguously known for this dataset, the tenfold split was executed by random selection. However, in the case of the rhinoceros dataset, inter-animal classification performance could be evaluated. This was achieved by threefold cross-validation, where training data were always taken from two animals and testing data from the third. This is a leave-one-animal-out cross-validation scheme. Sequential forward selection (SFS), a simple greedy search technique, was used to determine the best combination of features to use for classification [36]. SFS incrementally adds features to the classifier while optimising cross-validated classification accuracy. For both sheep and rhinoceros datasets, SFS was performed on a development set that was split from each training partition during cross-validation. This ensured that the held-out cross-validation partition on which final evaluation was performed was completely independent of all data used during training and system optimisation. Figure 6 shows behaviour classification accuracies measured during cross-validation on the held-out data.

Fig. 6
figure 6

LDA classification accuracy. Classification accuracy of the LDA classifier during sequential forward feature selection for a the sheep and b rhinoceros datasets. Since only three behaviours were classified for the rhinoceros dataset, the classifier was more prone to over-fitting the development set, which results in lower performance on the independent test set when the number of features exceeds 15

For sheep, the classifier was trained to distinguish between five behaviours: lying down, standing, walking, running and grazing. The best classifier employed 27 features and achieved an accuracy of 85.70%. Table 5 shows the corresponding confusion matrix. It is clear that lying down, standing and running can be accurately classified. Walking behaviour was confused with standing and with grazing in 5.74% and in 8.21% of cases, respectively. Grazing behaviour was confused with lying down in 38.54% of all cases. This is due to the similarities of the measured acceleration signals for the two behaviours, as shown in Fig. 3.

Table 5 Confusion matrix showing the accuracies achieved by the LDA classifier trained on the 2014 sheep dataset

For rhinoceros, the classifier was trained to distinguish between three behaviours: lying down, standing and walking. The best classifier used 15 features and achieved an almost perfect classification accuracy of 99.78%. Table 6 shows the corresponding confusion matrix. It is clear that both walking and lying down were classified very accurately. Standing behaviour was confused with lying down in 0.67% of cases. Furthermore, Fig. 6 shows that, for both sheep and rhinoceros, most performance gain is afforded by approximately the first 5 of the possible 31 features. For sheep, these were standard deviation (z axis), minimum value (x and y axes), variance (z axis) and spectral entropy (z axis). For rhinoceros, the top five features determined by SFS were maximum value (x axis), minimum value (x and y axes), mean value (x axis) and variance (z axis). The results of SFS therefore allow the dimensionality of the feature vector to be reduced while maintaining the best possible performance.

Table 6 Confusion matrix showing the accuracies achieved by the LDA classifier trained on the 2015 rhinoceros dataset

The second goal was to determine whether a LDA classifier, using a subset of features with low computational demands, could be used to accurately classify the behaviour of sheep and rhinoceros in real time, given the limited resources of the animal-borne system. We found that our system was able to accomplish real-time on-animal classification using a 12-dimensional feature vector consisting of the maximum value, minimum value, mean value and standard deviation for all three axes. The system achieved classification accuracies of 82.40% for sheep and 96.10% for rhinoceros and delivered updates every 5.3 and 6.5 s for sheep and rhinoceros, respectively. Although further investigation is needed to determine the trade-offs between feature complexity, system performance and power consumption, the chosen features agree to a large extent with those chosen by SFS.

Discussion

The accuracies achieved by our on-animal classifiers were slightly below the best accuracies achieved during laboratory development (Fig. 6). To some extent, this is due to the partial mismatch between the features used by the on-animal system, and those identified to be most useful by SFS. It is therefore expected that on-animal classification can be further improved by employing the feature sets identified during SFS. Further research is needed to determine the trade-offs between feature complexity, system accuracy and power consumption for real-time implementations. Nevertheless, the on-animal accuracies achieved are sufficient to be useful in field tests, it is not far below the best laboratory results and it compares well with the accuracies listed in Table 1. This indicates that the behaviour classes considered are distinguishable on the basis of accelerometer measurements for both sheep and rhinoceros and that this can be achieved on-animal and in real time. As also anticipated by Wall et al., we believe such real-time behavioural updates have the potential to greatly aid nature conservation efforts [21]. We also believe that animal-borne behaviour classification can provide additional value to the movement-rate analysis and immobility detection algorithms used by the same authors. Similar analytical techniques can be applied to determine normal daily thresholds for each behaviour and thereby identify abnormal behaviour. For example, excessive lying behaviour and below-normal walking behaviour might indicate animal injury or illness [21, 37]. This is also of particular interest in precision agriculture applications and might compliment current techniques used to detect lameness in cattle. Darr et al. confirm that excessive lying behaviour is linked to lameness in cattle, which can be treated if behavioural changes are promptly detected [37]. Therefore, they implemented a system that stores timestamped average values of each accelerometer axis every 15 s. A base station can later retrieve the information over a wireless link, whereafter the data are compared to an 0.5 g threshold to determine animal lying time. Furthermore, animal immobility might be more quickly identified by detecting excessive lying behaviour. Since immobility detection is critical to nature conservation efforts [21], we plan in future to add immobility as a separate class and train the classifiers accordingly. This might allow quick response in an attempt to catch poachers red handed. At present, our specific focus is the monitoring of rhinoceros to assist conservation efforts, since these animals are currently subject to an unprecedented and sustained poaching onslaught [38]. Our field tests indicate that both the behaviour and GPS location can be monitored in real time as illustrated in Fig. 7, which shows the location and behaviour of a rhinoceros over 1 day. One can easily identify the different behaviours and use this information to learn the animal’s spatiotemporal preferences over longer periods of time in order to identify abnormal behaviour.

Fig. 7
figure 7

Rhinoceros behaviour and movement collected in real time. Since the behaviour is classified on the biotelemetry tag, it can be combined with GPS location to produce information on what, where and when the animal is exhibiting specific behaviours. In this figure, we can see where the rhinoceros was lying down (blue), where it stood (red) and where it walked (black)

Since our system only transmits the classification result (6 bytes) as opposed to the raw data (2816 bytes) or extracted features (53 bytes), it is better suited to the low-power and error-prone data channels that prevail when considering wireless communication in the animal’s habitat. In addition, animal-borne behaviour classification shows potential to reduce the overall power consumption and increase the resolution of GPS loggers/transmitters by dynamically updating the rate at which GPS locations are obtained [39]. Brown et al. calculate the statistical variance of a single accelerometer axis to identify animal activity levels as resting, medium- or high intensity and set the GPS schedule accordingly [39]. Their system reduced the overall power consumption while achieving a greater number of locations per day with a lower mean search time per location attempt [39]. Our system has potential to compliment such strategies by dynamically changing the GPS schedule based upon the animal’s behaviour. Furthermore, implementing behaviour-specific GPS schedules can enable researchers and conservationists to focus on specific behaviours while maximising the tag’s lifetime, since unwanted behavioural updates can be avoided. Wilson et al. demonstrate the need for such behaviour-specific updates in their study of the locomotion dynamics of hunting in wild cheetahs [40]. Their system dynamically adapted the rate at which both the GPS and inertial measurement unit (IMU) were sampled, based upon the animal activity level (measured using the accelerometer) and the time of day (measured using the GPS). This implementation resulted in a reduced average power consumption and higher-resolution data for specific hunting events [40]. Although the system successfully recorded 367 runs over a period of 17 months, a further 530 runs were identified in the activity data, but not recorded, because the collar did not trigger on every run owing to the time of day and conservative trigger thresholds. We anticipate that similar studies might benefit from the use of animal-borne behaviour classification rather than fixed thresholds. Animal-borne behaviour classification might also be used in GPS drift-corrected dead reckoning applications as described in Dewhirst et al. [41]. The study points out that animal dynamic body acceleration has an approximately linear relationship with animal speed, which is a key metric used along with calibrated magnetometer measurements to achieve GPS drift-corrected dead reckoning. This improves the accuracy of animal path and travel distance estimates [41]. In future work, our technique might provide additional information that can be used in conjunction with the vector of the dynamic body acceleration (VeDBA), magnetometer measurements and GPS data to achieve this goal.

It is clear that biological sensor tags can play a critical role in animal conservation [42]. We hope that further research in the presented and related directions can serve to optimise system longevity and data resolution, thereby enabling advances in applied ecological monitoring and wildlife conservation by means of sensor-equipped tags and real-time on-board processing techniques.

Summary and conclusion

An animal-borne behaviour classification system was successfully designed, implemented, deployed and tested on sheep and rhinoceros. The specially designed biotelemetry tags were able to achieve real-time on-animal classification of behaviour using statistical classification of tri-axial accelerometer measurements. When distinguishing between the five behaviour classes (standing, walking, grazing, running and lying down) for sheep, the best laboratory system achieved a cross-validated classification accuracy of 85.70% using 27 features, while an on-animal classifier using 12 features achieved 82.40% in independent tests. When discriminating between three behaviour classes (standing, walking and lying down) for rhinoceros, the best laboratory system achieved a cross-validated classification accuracy of 99.78% using 15 features, while an on-animal classifier using 12 features achieved 96.10% in independent tests. The animal-borne system produced live behavioural updates approximately every 5.3 s for sheep and 6.5 s for rhinoceros. We conclude that the behaviour of sheep and rhinoceros can be determined with high accuracy from measured tri-axial acceleration data. Furthermore, we conclude that it is possible to achieve this on the animal to provide real-time behavioural information. The development of our system is continuing with the extension of the data sets, the application to other types of animal and the assessment of other classification techniques. In the longer term, we aim to use our animal-borne classifiers to model animal behaviour for conservation applications.