You can download the model weights directly or load them programmatically in Python.
.pt): aerialEye.pt (6.0 MB).onnx): aerialEye.onnx (11.7 MB)You can also download them via terminal using wget or curl:
# Download PyTorch weights
wget https://huggingface.co/kilanisainikhil/AerialEye/resolve/main/aerialEye.pt
# Download ONNX export
wget https://huggingface.co/kilanisainikhil/AerialEye/resolve/main/aerialEye.onnx
Install dependencies:
pip install huggingface_hub ultralytics
Load and run inference in your Python script:
from huggingface_hub import hf_hub_download
from ultralytics import YOLO
# 1. Download the weights automatically from Hugging Face Hub
model_path = hf_hub_download(repo_id="kilanisainikhil/AerialEye", filename="aerialEye.pt")
# 2. Load the model using Ultralytics YOLO
model = YOLO(model_path)
# 3. Run inference on an image
results = model("sample_image.jpg")
results[0].show()
The AerialEye model is designed to detect critical objects from an aerial perspective to assist in emergency response, infrastructure assessment, and disaster management.
It is capable of rapidly identifying 6 specific classes:
0. human (Search and Rescue)
sos (Distress Signals)vehicle (Traffic / Evacuation)flood (Water Level Assessment)road_damage (Infrastructure Integrity)crack (Structural Integrity)The model was trained on a highly curated, unified dataset of 6,327 images, which consists of:
Training Augmentations:
This model serves as the Phase 1 Low-Res Pass in the perception pipeline. For inference on very small objects, the pipeline integrates SAHI (Slicing Aided Hyper Inference) to dynamically slice suspect regions into higher-resolution patches ($640 \times 640$).
The exported weights are fully optimized for:
.pt): For standard inference..onnx): For cross-platform deployment.A side-by-side simulation comparing standard full-frame downscaling ($640 \times 640$) and Slicing Aided Hyper Inference (SAHI) was executed on validation frames.
| Metric | Standard (Downscaled) | SAHI (Sliced Window) | Delta / Change |
|---|---|---|---|
| Objects Detected | 65 | 50 | -15 (-23.1%) |
| Inference Latency | 733.0 ms | 293.6 ms | -439.3 ms |
| Resolution Processing | 640x640 (Downscaled) | Multi-Tile Slicing (Full Scale) | SAHI preserves pixel density |
Standard inference (left, blue) vs. SAHI sliced inference (right, green):

SAHI successfully resolved duplicate detections and double-counts (reducing duplicate detections by 15 objects / 23.1%) through its overlapping slice merging NMS layer. This eliminates false positives and double-counting errors commonly made by standard downscaled inference over complex aerial grids.
Clone this repository and install the dependencies in a virtual environment:
# Clone the repository
git clone https://huggingface.co/kilanisainikhil/AerialEye
cd AerialEye
# Create and activate a virtual environment
python3 -m venv venv
source venv/bin/activate
# Install required packages
pip install -r requirements.txt
Since the model weights are stored via Git LFS on Hugging Face, cloning the repository without Git LFS will only download small pointer files. You can retrieve the full model weights using either of the following options:
We provide a lightweight Python downloader script download_model.py which downloads the actual weights and samples directly from Hugging Face resolve servers:
# Download default model weights (aerialEye.pt, best.pt) and comparison graphics:
python download_model.py
# Download ALL assets (ONNX, TFLite models, and all sample images):
python download_model.py --all
# Download specific files:
python download_model.py --files aerialEye.onnx best.onnx
Alternatively, you can run the provided bash script to fetch the weights using wget:
chmod +x download_weights.sh
./download_weights.sh
To export the PyTorch model to ONNX yourself:
python -c "from ultralytics import YOLO; model = YOLO('aerialEye.pt'); model.export(format='onnx')"
Compare standard full-frame YOLO inference against Slicing Aided Hyper Inference (SAHI) using the simulation script:
# Run the simulation on the default sample image:
python simulate_sahi.py --image sample_aerial_street.jpg --model aerialEye.pt
# Run the simulation on other sample images:
python simulate_sahi.py --image sample_drone_roundabout.jpg
# Run the simulation with custom slicing parameters:
python simulate_sahi.py --image sample_aerial_street.jpg --slice-size 640 --overlap 0.25
This script generates side-by-side visualization maps:
result_standard.jpg (standard full-frame inference)result_sahi.jpg (SAHI slicing inference with overlapping window merging)To launch the interactive web interface:
python app.py
17 commits
You can download the model weights directly or load them programmatically in Python.
.pt): aerialEye.pt (6.0 MB).onnx): aerialEye.onnx (11.7 MB)You can also download them via terminal using wget or curl:
# Download PyTorch weights
wget https://huggingface.co/kilanisainikhil/AerialEye/resolve/main/aerialEye.pt
# Download ONNX export
wget https://huggingface.co/kilanisainikhil/AerialEye/resolve/main/aerialEye.onnx
Install dependencies:
pip install huggingface_hub ultralytics
Load and run inference in your Python script:
from huggingface_hub import hf_hub_download
from ultralytics import YOLO
# 1. Download the weights automatically from Hugging Face Hub
model_path = hf_hub_download(repo_id="kilanisainikhil/AerialEye", filename="aerialEye.pt")
# 2. Load the model using Ultralytics YOLO
model = YOLO(model_path)
# 3. Run inference on an image
results = model("sample_image.jpg")
results[0].show()
The AerialEye model is designed to detect critical objects from an aerial perspective to assist in emergency response, infrastructure assessment, and disaster management.
It is capable of rapidly identifying 6 specific classes:
0. human (Search and Rescue)
sos (Distress Signals)vehicle (Traffic / Evacuation)flood (Water Level Assessment)road_damage (Infrastructure Integrity)crack (Structural Integrity)The model was trained on a highly curated, unified dataset of 6,327 images, which consists of:
Training Augmentations:
This model serves as the Phase 1 Low-Res Pass in the perception pipeline. For inference on very small objects, the pipeline integrates SAHI (Slicing Aided Hyper Inference) to dynamically slice suspect regions into higher-resolution patches ($640 \times 640$).
The exported weights are fully optimized for:
.pt): For standard inference..onnx): For cross-platform deployment.A side-by-side simulation comparing standard full-frame downscaling ($640 \times 640$) and Slicing Aided Hyper Inference (SAHI) was executed on validation frames.
| Metric | Standard (Downscaled) | SAHI (Sliced Window) | Delta / Change |
|---|---|---|---|
| Objects Detected | 65 | 50 | -15 (-23.1%) |
| Inference Latency | 733.0 ms | 293.6 ms | -439.3 ms |
| Resolution Processing | 640x640 (Downscaled) | Multi-Tile Slicing (Full Scale) | SAHI preserves pixel density |
Standard inference (left, blue) vs. SAHI sliced inference (right, green):

SAHI successfully resolved duplicate detections and double-counts (reducing duplicate detections by 15 objects / 23.1%) through its overlapping slice merging NMS layer. This eliminates false positives and double-counting errors commonly made by standard downscaled inference over complex aerial grids.
Clone this repository and install the dependencies in a virtual environment:
# Clone the repository
git clone https://huggingface.co/kilanisainikhil/AerialEye
cd AerialEye
# Create and activate a virtual environment
python3 -m venv venv
source venv/bin/activate
# Install required packages
pip install -r requirements.txt
Since the model weights are stored via Git LFS on Hugging Face, cloning the repository without Git LFS will only download small pointer files. You can retrieve the full model weights using either of the following options:
We provide a lightweight Python downloader script download_model.py which downloads the actual weights and samples directly from Hugging Face resolve servers:
# Download default model weights (aerialEye.pt, best.pt) and comparison graphics:
python download_model.py
# Download ALL assets (ONNX, TFLite models, and all sample images):
python download_model.py --all
# Download specific files:
python download_model.py --files aerialEye.onnx best.onnx
Alternatively, you can run the provided bash script to fetch the weights using wget:
chmod +x download_weights.sh
./download_weights.sh
To export the PyTorch model to ONNX yourself:
python -c "from ultralytics import YOLO; model = YOLO('aerialEye.pt'); model.export(format='onnx')"
Compare standard full-frame YOLO inference against Slicing Aided Hyper Inference (SAHI) using the simulation script:
# Run the simulation on the default sample image:
python simulate_sahi.py --image sample_aerial_street.jpg --model aerialEye.pt
# Run the simulation on other sample images:
python simulate_sahi.py --image sample_drone_roundabout.jpg
# Run the simulation with custom slicing parameters:
python simulate_sahi.py --image sample_aerial_street.jpg --slice-size 640 --overlap 0.25
This script generates side-by-side visualization maps:
result_standard.jpg (standard full-frame inference)result_sahi.jpg (SAHI slicing inference with overlapping window merging)To launch the interactive web interface:
python app.py
17 commits