DOI: 10.5281/zenodo.17254613
title: Dataset and programs for a study on edge devices for image classification of the Tasmanian devil (Sarcophilus harrisii) for vaccine delivery

description: Description of the data and file structure

The images used in this study were provided by the Department of Natural Resources and Environment Tasmania. These 1920×1080 pixels photos were collected during routine wildlife monitoring activities in Tasmania between 2015 and 2020 using Reconyx HC500 trail cameras. The dataset contained images of relevant species: Tasmanian devil (Sarcophilus harrisii), eastern quoll (Dasyurus viverrinus), spotted tail quoll (Dasyurus maculatus) wombat (Vombatus ursinus), brushtail possum (Trichosurus vulpecula), Bennett’s wallaby (Notamacropus rufogriseus), Tasmanian pademelon (Thylogale billardierii), feral cat (Felis catus), bandicoots (Isoodon obesulus and Perameles gunnii species), unidentified small mammals like rodent (presumable Rattus spp. and Mus spp.), snakes, cattle, birds, and empty background.

These images were used in training, testing, and validation of image classification models for a smart bait dispenser.

Files and variables

File: data_programs.zip

Description: data.zip file contains data used in development of the image classification models for our study.

data: This folder contains 'train_data' and 'test_data' folders for training and testing datasets respectively, created at random. The images were further bifurcated into 'devil' and 'bg' folders containing devil and non-devil images respectively. To ensure that our data contained a representative distribution of species, stratified randomisation was used on the non-devil class, hence subfolders such as 'cat' and 'possum' are in 'bg'. 

programs: Programs (in .ipynb format) associated with training, testing, quantisation, and evaluation are present in 'programs' folder.





imclass_devil_v5.2_cnn_edge: Training and validation of simple convolutional neural network models




imclass_devil_v5.3_scnn_edge: Training and validation of simple depthwise seperable convolutional neural network models




imclass_devil_v5.4_pretrain_edge1: Training and validation of pretrained models that require preprocessing layer (for Arduino devices)




imclass_devil_v5.5_pretrain_edge2: Training and validation of pretrained models that do not require preprocessing layer (for Arduino devices)




imclass_devil_v5.6_pretrain1L Training and validation of pretrained models that require preprocessing layer (for Raspberry Pi devices)




imclass_devil_v5.7_pretrain2: Training and validation of pretrained models that do not require preprocessing layer (for Raspberry Pi devices)




ptquantise_v2_edge: Post training quantisation of all models (input 54 x 54 pixels)




evaluate_v1_fmodel_edge: Evaluation of predictive performance of full models




evaluate_v2_ptq_edge: Evaluation of predictive performance of post training quantised models



Code/software

You will require Jupyter Notebook (with Python 3 compiler) to open and run the programs. The following python packages are used:





os




numpy




tensorflow 2.13




tensorflow_hub




matplotlib.pyplot




sklearn.metrics




pandas




seaborn