DTU MLOps 111: Semantic Segmentation for Drone Imagery
Welcome to the documentation for Team 111's MLOps project!
Project Overview
This project implements semantic segmentation for drone imagery using the nnU-Net architecture. The system identifies five different classes of objects from aerial urban scenes:
- πͺ Obstacles - Buildings, structures, and physical barriers
- π¦ Water - Rivers, lakes, and water bodies
- π© Soft Surfaces - Grass, vegetation, and unpaved areas
- π₯ Moving Objects - Vehicles, people, and dynamic obstacles
- β¬οΈ Landing Zones - Safe areas for drone landing
Purpose
The trained model enhances the safety of autonomous drone flights and landings in urban areas by accurately distinguishing different types of obstacles from safe landing zones.
Quick Navigation
π Getting Started
New to the project? Start here:
- Installation - Set up your development environment
- Environment Setup - Configure credentials and paths
- Quick Start - Run your first workflow
π User Guide
- Commands Reference - Complete
tasks.pycommand documentation - Workflows - Step-by-step guides for data, training, and API
- Troubleshooting - Solutions to common issues
Key Features
- β nnU-Net Architecture - State-of-the-art medical imaging segmentation adapted for drones
- β MLOps Best Practices - DVC for data versioning, Docker for containerization
- β FastAPI Inference - Production-ready REST API for real-time predictions
- β High-Performance Serving - BentoML integration for model packaging and adaptive batching
- β Cloud Deployment - GCP Cloud Run deployment with data drift monitoring
- β Comprehensive Testing - Automated tests with coverage reporting
Dataset
The project uses the Semantic Segmentation Drone Dataset containing 400 RGB drone images with pixel-level semantic labels.
Original dataset from TU Graz, IVC
Technology Stack
- Framework: PyTorch with nnU-Net
- Package Manager: UV
- Version Control: Git + DVC
- API: FastAPI + Uvicorn & BentoML
- Containers: Docker
- Cloud: Google Cloud Platform (GCS, Cloud Run)
- Monitoring: Weights & Biases, Evidently
Team 111
- Ecenaz Elverdi (s252699@dtu.dk)
- Akin Mert GΓΌmΓΌs (s242508@dtu.dk)
- Elif Pulukcu (s252749@dtu.dk)
- Kerick Jon Walker (s252618@dtu.dk)
- Bruno Zorrila Medina Luna (s260015@dtu.dk)
Ready to get started? Head to the Installation Guide!