/
Airside System Repository

Airside System Repository

Overview

The airside system runs on the Raspberry Pi 5 on the drone.

Repository:

GitHub - UWARG/computer-vision-python: Autonomy on airside system

Software

Development setup

Follow the instructions: Autonomy Workflow Software

Install packages:

pip install -r requirements.txt pip install -r requirements-pytorch.txt pip install -r modules/common/requirements.txt

Usage - development

Copy the model file (.pt) into the repository.

In config.yaml, update model_path to point to the model file. The latest models can be found in OneDrive Landing Pad Models.

Activate the environment: Autonomy Workflow Software

Enter the commands :

git checkout main git pull ./setup_project.ps1 OR source ./setup_project.sh ./venv/Scripts/Activate.ps1 OR source ./venv/bin/activate python -m main_2024

If your computer does not have CUDA support (ie for the RPi), add --cpu to force the program to use the CPU:

python -m main_2024 --cpu

Other options are available. See them by using -h .

Raspberry Pi setup & usage

Follow the instructions: Running Airside on the Raspberry Pi 5 - Comp 2025

Hotspot Detection Configuration

To modify the hotspot detection configuration edit the detect_brightspot section in config.yaml :

According to OpenCV reference:

  • By color. This filter compares the intensity of a binary image at the center of a blob to blobColor. If they differ, the blob is filtered out. Use blob_color = 0 to extract dark blobs and blob_color = 255 to extract light blobs.

  • By area. Extracted blobs have an area between min_area_pixels (inclusive) and max_area_pixels (exclusive).

  • By circularity. Extracted blobs have circularity (4∗π∗Area)/(perimeter∗perimeter) between min_circularity (inclusive) and max_circularity (exclusive).

  • By ratio of the minimum inertia to maximum inertia. Extracted blobs have this ratio between min_inertia_ratio (inclusive) and max_inertia_ratio (exclusive).

  • By convexity. Extracted blobs have convexity (area / area of blob convex hull) between min_convexity (inclusive) and max_convexity (exclusive)

From https://learnopencv.com/blob-detection-using-opencv-python-c/:

image-20250121-153417.png

Hardware

Raspberry Pi 5: Raspberry Pi 5

CUDA compability information: CUDA and PyTorch