Original repo building from: https://github.com/PUTvision/UAVVaste/blob/main/README.md
UAVVaste dataset The UAVVaste dataset consists to date of 772 images and 3718 annotations. The main motivation for the creation of the dataset was the lack of domain-specific data. Therefore, this image set is recommended for object detection evaluation benchmarking but also for developing solutions related to UAVs, remote sensing, or even environmental cleaning. The dataset is made publicly available and will be expanded.
Download original UAVVaste dataset available also in the Zenodo repository: https://zenodo.org/record/8214061.
The general concept of operations is to finetune a YOLO model on the rubbish dataset, export it as a .tflite, and use it in an ATAK plugin.
- Download the UAVVaste dataset, which is in a strange sort of COCO format.
- Convert the UAVVaste dataset from COCO format to YOLO format (subfolders)
- Create a dataset.yaml file
- Fine tune a pretrained YOLOv8 model on the converted dataset.
- Export the finetuned model as a .tflite
To get up and running:
pip install ultralytics# for yolo cliconvert_coco.pyfor a first pass at conversionarrange_files.pyto move to subfolders based on train/val/testfix_mapped_classes.pyto fix segments being mapped to a nonexistant -1 class- https://github.com/ultralytics/ultralytics/blob/main/ultralytics/data/converter.py has the code for convert_from_coco(), which unfortunately doesn't support custom classes outside of the COCO classes. so since our dataset defines its own new "rubbish" class which isn't a subset of the original, this will map all class labels to -1. therefore each .txt label file will start with a -1.
- create
dataset.yaml train.shto launch the finetune.predict_and_visualize.pyto sanity check the work.export_to_tflite.pyto convert to tflite.