| | --- |
| | license: apache-2.0 |
| | tags: |
| | - object-detection |
| | - yolo |
| | - yolov11 |
| | - ultralytics |
| | - drone |
| | - uav |
| | - imav |
| | - robotics |
| | - autonomous-landing |
| | - helipad-detection |
| | datasets: |
| | - custom |
| | pipeline_tag: object-detection |
| | model-index: |
| | - name: platform_yolov11n |
| | results: |
| | - task: |
| | type: object-detection |
| | metrics: |
| | - type: mAP@50 |
| | value: 0.995 |
| | - type: mAP@50-95 |
| | value: 0.973 |
| | - type: precision |
| | value: 0.996 |
| | - type: recall |
| | value: 0.989 |
| | --- |
| | |
| | # IMAV 2025 Platform Detection - YOLOv11n |
| |
|
| | Platform detection model for **IMAV 2025 Indoor Competition - Mission 4**. |
| |
|
| | ## Competition Context |
| |
|
| | The [16th International Micro Air Vehicle Conference and Competition (IMAV 2025)](https://femexrobotica.org/imav2025/) took place in San Andrés Cholula, Puebla, Mexico. The competition theme was **"Search and Rescue"**, inspired by Mexico's seismic activity and the need for micro air vehicles in disaster response scenarios. |
| |
|
| | ## Target Object |
| |
|
| |  |
| |
|
| | **Platform Specifications:** |
| | - Board: 1m × 1m square |
| | - Outer circle: Ø 0.85m (black stroke) |
| | - Inner circle: Ø 0.8m |
| | - H marking: 0.6m height, 0.35m width, 0.075m stroke |
| |
|
| | ## Mission 4: Land on Moving Platform with Smoke |
| |
|
| | The MAV must autonomously land on a moving platform: |
| |
|
| | | Parameter | Value | |
| | |-----------|-------| |
| | | Platform size | 1m × 1m | |
| | | Lateral movement | up to 1m | |
| | | Max speed | 0.5 m/s | |
| | | Obstacle | Smoke machine (partial occlusion) | |
| |
|
| | **Scoring:** |
| |
|
| | | Task | Points | |
| | |------|--------| |
| | | No landing | 0 | |
| | | Landing (stationary) | 2 | |
| | | Landing (moving platform) | +3 | |
| | | Landing (with smoke) | +3 | |
| |
|
| | ## Performance |
| |
|
| | | Metric | Value | |
| | |--------|-------| |
| | | mAP@50 | 0.995 | |
| | | mAP@50-95 | 0.973 | |
| | | Precision | 0.996 | |
| | | Recall | 0.989 | |
| |
|
| | ### Training Curves |
| |
|
| |  |
| |
|
| | ### Confusion Matrix |
| |
|
| |  |
| |
|
| | ### Validation Predictions |
| |
|
| |  |
| |
|
| | ## Model Formats |
| |
|
| | | Format | File | Use Case | |
| | |--------|------|----------| |
| | | PyTorch | `platform_yolov11n.pt` | Training, fine-tuning | |
| | | ONNX | `platform_yolov11n.onnx` | Cross-platform inference | |
| | | TensorRT | `platform_yolov11n.engine` | Jetson Orin Nano Super | |
| |
|
| | ## Training Configuration |
| |
|
| | | Parameter | Value | |
| | |-----------|-------| |
| | | Base model | yolo11n.pt | |
| | | Epochs | 100 | |
| | | Image size | 640×640 | |
| | | Batch | Auto | |
| | | Optimizer | Auto | |
| | | LR | 0.01 → 0.01 (cosine) | |
| | | Augmentation | Mosaic, RandAugment | |
| | | Dropout | 0.05 | |
| |
|
| | Full config: [`train/args.yaml`](train/args.yaml) |
| |
|
| | ## Usage |
| |
|
| | ### mirela-sdk |
| |
|
| | ```python |
| | from mirela_sdk.ai.detection import Detector |
| | |
| | detector = Detector("blackbeedrones/imav-2025-platform:best.pt") |
| | detector.load() |
| | |
| | result = detector.detect(image, conf=0.5) |
| | for det in result: |
| | print(f"Platform: {det.confidence:.2f} at {det.center}") |
| | ``` |
| |
|
| | ### Ultralytics |
| |
|
| | ```python |
| | from ultralytics import YOLO |
| | |
| | model = YOLO("best.pt") |
| | results = model.predict(image, conf=0.5) |
| | ``` |
| |
|
| | ## References |
| |
|
| | - [IMAV 2025](https://femexrobotica.org/imav2025/) |
| | - [Rulebook](https://femexrobotica.org/imav2025/index.php/rulebook-imav-2025/) |
| | - [mirela-sdk](https://github.com/blackbeedrones/mirela-sdk) |
| |
|