CABiNet (MobileNetV3-Large) Finetuned on VDD

License Framework Dataset mIoU Status Maintained

CABiNet (MobileNetV3-Large backbone) semantic segmentation model for aerial drone imagery using the VDD (Varied Drone Dataset) benchmark dataset.

This model is part of the VDD Semantic Segmentation Model Zoo, a collection of CABiNet and YOLO26 models trained and evaluated under a common pipeline for aerial semantic segmentation.

CABiNet (MobileNetV3-Large) on VDD: Input / Ground Truth / Prediction

Qualitative results on VDD test-split examples — single-scale (imgsz=1024) inference, no TTA.


Performance

Metric Score
mIoU 77.76
Pixel Accuracy 89.57
Parameters (M) 9.17
FLOPs (GFLOPs @ 1024px) 54.8

VDD Model Zoo

Rank Model mIoU (%) Pixel Acc (%) Params (M) FLOPs (GFLOPs)
1 YOLO26x-sem 78.83 89.79 40.16 430.9
2 YOLO26l-sem 78.57 89.68 17.87 192.4
3 CABiNet (MobileNetV3-Large) 77.76 89.57 9.17 54.8
4 YOLO26m-sem 77.02 88.3 14.32 152.3
5 YOLO26s-sem 76.35 88.27 6.50 44.4
6 YOLO26n-sem 73.99 86.32 1.63 11.4

Per-Class IoU (%)

Class YOLO26x-sem YOLO26l-sem CABiNet (MobileNetV3-Large) YOLO26m-sem YOLO26s-sem YOLO26n-sem
Other 64.15 65.88 66.28 61.04 60.99 57.27
Wall 69.26 70.93 65.87 70.06 67.48 64.76
Road 72.61 72.18 70.2 70.78 69.68 67.78
Vegetation 90.14 89.68 91.06 89.59 88.63 85.01
Vehicle 70.99 68.52 73.38 68.76 66.08 62.96
Roof 89.34 87.53 86.0 84.52 85.83 84.86
Water 95.3 95.29 91.54 94.41 95.79 95.33

Dataset

VDD (Varied Drone Dataset) is a semantic segmentation benchmark for drone imagery spanning varied altitudes, viewpoints, and scenes (urban, rural, and natural), captured at a uniform native resolution of 4000x3000.

Classes

  • Other
  • Wall
  • Road
  • Vegetation
  • Vehicle
  • Roof
  • Water

Usage

Install Dependencies

pip install torch huggingface_hub
git clone https://github.com/dronefreak/CABiNet.git
cd CABiNet
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate
pip install -e .[dev]

Load Model from Hugging Face

from huggingface_hub import hf_hub_download
import torch

from src.models.cabinet import CABiNet

weights = hf_hub_download(
    repo_id="dronefreak/cabinet-mobilenetv3-large-vdd",
    filename="cabinet_best.pth"
)

model = CABiNet(n_classes=7, mode="large")
ckpt = torch.load(weights, map_location="cpu", weights_only=True)
state_dict = ckpt["model_state"] if isinstance(ckpt, dict) and "model_state" in ckpt else ckpt
model.load_state_dict(state_dict)
model.eval()

Run Inference

import torch

image = ...  # (1, 3, H, W) normalized float tensor
with torch.no_grad():
    logits = model(image)[0]
mask = logits.argmax(dim=1).squeeze(0).cpu().numpy()  # (H, W) class-ID map

Training Configuration

Setting Value
Epochs 1000
Image size 1024
Batch size 4
Dataset VDD (converted images/+masks/ format)
Framework CABiNet custom PyTorch trainer
cls_pw (class weighting) 0.5

Official Resources


Training Framework

Trained with the CABiNet repository, which pairs its own real-time segmentation trainer with a parallel Ultralytics YOLO26-sem pipeline — shared dataset tooling, training/eval, and mIoU benchmarking across UAVid, AeroScapes, and VDD. Star the repo if you find these models useful!


Known Limitations

Performance may degrade in:

  • Small training set (280 images) — heavier augmentation (mosaic/mixup/copy-paste) offsets this during training, but rare-class generalization may still be limited
  • Rare classes (Vehicle, Roof, Water) are underrepresented relative to Vegetation/Road/Wall
  • Very high native resolution (4000x3000, uniform) downsampled to the eval imgsz — fine detail on small objects (e.g. vehicles at altitude) can be lost
  • Varied altitude/viewpoint scenes (the dataset's defining trait) can shift the domain between training crops and a given inference image

Citation

Please cite the following:

@article{cai2025vdd,
  title={Vdd: Varied drone dataset for semantic segmentation},
  author={Cai, Wenxiao and Jin, Ke and Hou, Jinyan and Guo, Cong and Wu, Letian and Yang, Wankou},
  journal={Journal of Visual Communication and Image Representation},
  volume={109},
  pages={104429},
  year={2025},
  publisher={Elsevier}
}

@INPROCEEDINGS{9560977,
  author={Kumaar, Saumya and Lyu, Ye and Nex, Francesco and Yang, Michael Ying},
  booktitle={2021 IEEE International Conference on Robotics and Automation (ICRA)},
  title={CABiNet: Efficient Context Aggregation Network for Low-Latency Semantic Segmentation},
  year={2021},
  pages={13517-13524},
  doi={10.1109/ICRA48506.2021.9560977}
}

@article{Kumaar_Real-time_Semantic_Segmentation_2021,
  author = {Kumaar, Saumya and Lyu, Ye and Nex, Francesco and Yang, Michael Ying},
  doi = {10.1016/j.isprsjprs.2021.06.006},
  journal = {ISPRS Journal of Photogrammetry and Remote Sensing},
  pages = {124--134},
  title = {{Real-time Semantic Segmentation with Context Aggregation Network}},
  url = {https://www.sciencedirect.com/science/article/pii/S0924271621001647},
  volume = {178},
  year = {2021}
}

@article{jocher2026ultralytics,
  title={Ultralytics YOLO26: Unified Real-Time End-to-End Vision Models},
  author={Jocher, Glenn and Qiu, Jing and Liu, Mengyu and Lyu, Shuai and Akyon, Fatih Cagatay and Kalfaoglu, Muhammet Esat},
  journal={arXiv preprint arXiv:2606.03748},
  year={2026}
}

@software{cabinet_uavid_benchmark,
  author = {Kumaar, Saumya},
  title = {CABiNet: Semantic Segmentation Benchmarking on UAVid (CABiNet vs. YOLO26)},
  url = {https://github.com/dronefreak/CABiNet},
  year = {2026}
}
Downloads last month
5
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Dataset used to train dronefreak/vdd-cabinet-mobilenetv3-large

Collection including dronefreak/vdd-cabinet-mobilenetv3-large

Papers for dronefreak/vdd-cabinet-mobilenetv3-large