P-001 · 2025 · Hackathon

Broken-tile detection with YOLOv8

A 24-hour ChefTreff AI Hackathon prototype: a YOLOv8 model detects broken roof tiles in photos, served through a FastAPI upload endpoint and a web interface.

YOLOv8PyTorchFastAPIDockerCVAT

From site photo to prediction in 24 hours

Roof-tile images from construction sites
  1. PreparationImage collection and preprocessing notebooks
  2. AnnotationCVAT labels exported in YOLO format
  3. Detection modelUltralytics YOLOv8 trained on broken tiles
  4. ApplicationFastAPI endpoint and HTML client in Docker

A user uploads a photo through the web client

Broken tile detected or not, with the number of detections
A hackathon prototype: wider validation across lighting, viewpoints and damage types would be needed before site use.

The challenge

The project explored how images taken on a construction site could help identify damaged roof tiles. The task was to detect visible defects in an image and make the prediction accessible through a small application, within the 24-hour hackathon.

Data and model

The workflow includes image collection and preprocessing notebooks, annotation in CVAT and labels exported in YOLO format. An Ultralytics YOLOv8 model was trained to detect broken tiles. The repository includes the trained checkpoint and prediction outputs.

From model to application

A FastAPI endpoint accepts an uploaded image, converts it to RGB and runs the detector. The implemented response reports whether a broken tile was detected and how many detections were returned. A lightweight HTML client provides the upload interface, while Docker packages the application and its dependencies.

What the prototype demonstrates

The project connects data preparation, object detection and an application interface in one workflow. It is a hackathon prototype: the presence of a trained model and demo does not establish readiness for construction-site use. Broader validation across lighting conditions, viewpoints and types of damage would be needed.

View source on GitHub ↗

ChefTreff hackathon website ↗

← Back to all projects

Timur Salakhetdinov ·