STATUS: OPEN TO R&D ROLES, GRADUATE STUDIES & RESEARCH COLLABORATION
github.com/amanullah7x • LinkedIn
Amanullah Naseer

Amanullah Naseer

Embedded AI Engineer

Autonomous UAVs • C# (.NET) / PyQt6 • Edge Vision

Low-Level Hardware Constraints × Real-Time High-Throughput Software

Architecting High-Speed Autonomous UAVs & Edge AI Systems

I build end-to-end intelligent flight and perception systems operating under rigorous physical constraints. My work bridges PX4/ArduPilot autopilot integration, NVIDIA Isaac Sim digital twins, custom RF-DETR aerial detection models trained and validated on Roboflow, and high-performance C# (.NET) & PyQt6 ground control stations consuming 50+ Hz telemetry feeds without event loop stutter.

89.4%
RF-DETR Nano mAP@50
50+ Hz
MAVLink Telemetry Feed
20 Hz
Decoupled UI Render
5 Classes
Hierarchical Detection
telemetry_flight_stack.log STREAMING

// Real-time MAVLink State Decoupling

[PUB/SUB] ZMQ Sub port 5556 active (55.4 Hz)

[ESTIMATOR] State Vector Est: X=12.44m Y=-4.18m Z=28.50m

[VISION] Subject: Vehicle

[SERVO] Offboard Yaw Rate Cmd: +0.14 rad/s ($dx/dy$ Align)

[UI-AGG] C# TPL / PyQt6 Ring Buffer: 20.0 FPS (0 dropped msgs)

EDGE: JETSON / RPi5 CORAL STACK: C# & PYTHON
Verified Field & Simulation Evidence

Simulation & Aerial Perception Output

Actual recordings validating closed-loop Software-in-the-Loop (SITL) flight control and aerial vehicle detection pipelines.

Isaac Sim + PX4 UAV Perception Testbed

PX4 SITL + QGC + YOLOv8

One-click launcher that starts NVIDIA Isaac Sim with a PX4-controlled drone (Pegasus Simulator) in the Baylands park with a car and a pedestrian, opens QGroundControl for take-off and joystick flight, and shows the drone's 2-axis gimbal camera with live YOLOv8s (VisDrone) detection. Recording: Holybro X500 take-off from QGC, gimbal steered from the app in flight, car and pedestrian detected, return to launch.

Isaac Sim 6.0 Pegasus + PX4 v1.14 (lockstep) QGroundControl ROS 2 Humble YOLOv8s VisDrone PyQt5

Autonomous Tracking in NVIDIA Isaac Sim

Ubuntu SITL + ROS2
Autonomous Aerial Tracking & Visual Servoing GCS HUD 30 FPS Stream

Split-screen architecture: Left window executes the Autonomous Aerial Tracking & Visual Servoing GCS with real-time pixel offset calculation ($dx/dy$) and MAVLink manual override. Right window runs NVIDIA Isaac Sim physics to validate autonomous following and visual navigation prior to physical field hardware tests.

PX4 SITL ROS2 Humble MAVLink Bridge C# / PyQt6 GCS

Custom RF-DETR Nano Aerial Vehicle Detection

89.4% mAP@50
Multi-Part Detection: "Class 0 0.9235" Trained & Validated on Roboflow

RF-DETR Nano, fine-tuned on Roboflow (PyTorch-based) for 50 epochs on a custom-annotated aerial dataset (1,781 images, 384x384). The model detects ground vehicles and their components (Class 0-4); achieved 89.4% mAP@50, 86.8% precision, and 89.2% recall. Results are on the validation set only.

Evaluated on real-world aerial test sample (licensed stock footage) to test scale invariance and low-contrast detection.
RF-DETR Nano Roboflow Training & Validation PyTorch-Based Custom Aerial Dataset

Synthetic Aerial Data with Isaac Sim Replicator

6,000 frames, auto-labelled
AP50 per model on real VisDrone validation images

Does simulator-rendered data improve a drone-view detector on real images? A Replicator generator renders cars and people in the Baylands park with randomized altitude (8-120 m), camera angle, sun, paint and ground; labels come from the renderer. Four YOLOv8s variants were scored on the 548 real VisDrone2019 validation images.

Result: no measurable gain at this scale (real+synthetic 0.372 vs real-only 0.371 mAP50, same schedule). Trained on synthetic images only, the model still finds real cars (AP50 0.36) and some pedestrians (0.11).
Isaac Sim 6.0 Replicator Domain Randomization PhysX Ray-Cast Placement YOLOv8s VisDrone2019-DET Sim-to-Real
Model Training & Validation Metrics

Granular Sub-Component Detection Benchmarks

Instead of treating objects as single bounding boxes, the custom RF-DETR Nano model detects granular vehicle components to enable precise aerial vehicle detection.

mAP@50 VALIDATION
89.4%
Across 50 epochs
PRECISION
86.8%
Minimal false alarms
RECALL
89.2%
Object retention
F1-SCORE
88.0%
Harmonic mean

Hierarchical Sub-Component Detection

RF-DETR Evaluation

● Class 0: 100% AP | ● Class 1: 69% AP | ● Class 2: 97% AP | ● Class 3: 87% AP | ● Class 4: 94% AP

Outputs normalized JSON telemetry stream for companion computer pipelines.

50-Epoch Convergence & Loss Curves

Training Graphs

Smooth convergence across Box Location Loss, Class Loss, and Overlap Loss.

Custom PyTorch-based model trained via Roboflow, utilizing data augmentations (scaling, rotation, brightness) for outdoor robustness.

Project Repositories

Flagship Open-Source Case Studies

Each project repository includes technical documentation, architecture diagrams, and implementation code.

Simulation & Perception Testbed

Isaac Sim + PX4 UAV Perception Testbed

Desktop launcher for NVIDIA Isaac Sim + Pegasus + PX4 SITL + QGroundControl with a selectable drone (Holybro X500 built from PX4's model, 5-inch FPV racer, Pegasus quad, Iris), a gimbal camera steerable in flight, and live YOLOv8s detection of people and vehicles in the Baylands park.

Flight loop: PX4 lockstep, 250 Hz physics
Drones: X500 / FPV / Pegasus / Iris
Verified: Take-off, hover, land per model
Roadmap:
  • ›FANET semantic messages (~72 B) instead of video, over NS-3
  • ›Multi-UAV swarms, heterogeneous teams
  • ›Tracking IDs + MOTA/IDF1, offboard target following
  • ›Hexacopter, MAVLink gimbal, moving targets
Self-directed

Autonomous UAV Tracking in NVIDIA Isaac Sim

Software-in-the-loop simulation platform coupling NVIDIA Isaac Sim with PX4 firmware and offboard ROS 2 Humble nodes to validate autonomous visual tracking before hardware tests. Bidirectional MAVLink bridge streaming 50 Hz IMU and state telemetry.

Bridge: MAVLink Bi-Directional
Telemetry: 50 Hz IMU & State
Validation: Zero Hardware Risk
AERIAL DETECTION & VISION

Custom RF-DETR Nano Aerial Vehicle Detection

RF-DETR Nano, fine-tuned on Roboflow (PyTorch-based) for 50 epochs on a custom-annotated aerial dataset (1,781 images, 384x384). Detects ground vehicles and their components (Class 0-4). Achieved 89.4% mAP@50, 86.8% precision, and 89.2% recall on the validation set only.

Validation mAP@50: 89.4%
Precision / Recall: 86.8% / 89.2%
Training: PyTorch-based via Roboflow
Embedded AI Engineer (NRTC)

Autonomous Subject Following

Pilot-in-the-loop follow system running on Raspberry Pi 5 with a Google Coral Edge TPU (SSD-MobileNetV2, 24-30 FPS) and an IMX415 camera. The pilot selects the subject with an RC switch; Kalman-filtered detections drive yaw and forward-velocity commands over MAVLink (Guided mode) to hold a 5 m standoff, returning to hover if the subject is lost. Live video goes to FPV goggles via HDMI and an analogue converter. Flight-tested on a real drone.

Hardware: Raspberry Pi 5 / Coral Edge TPU
Control: MAVLink / Kalman Filter
Stack: ArduPilot/PX4 / FPV
Synthetic Data & Sim-to-Real

Synthetic Aerial Data for UAV Detection

Isaac Sim Replicator generator that renders labelled drone-view images of cars and people (visibility-aware placement via PhysX ray casts, randomized camera, lighting and paint), and a controlled experiment testing whether the data helps a YOLOv8s detector on real VisDrone images. Reported as measured, including the null result.

Dataset: 6,000 frames, 100k boxes
Real-only / real+synthetic: 0.371 / 0.372 mAP50
Synthetic-only, real cars: AP50 0.36
Render speed: ~4 frames/s, RTX 4060
Embedded AI Engineer (NRTC)

High-Throughput Ground Station

Multi-threaded PyQt6 ground control station for MAVLink drones. Separate threads handle the drone link (serial/TCP/UDP), the RTSP video stream and a Leaflet offline-tile map, keeping the UI responsive. Runs a pretrained YOLOv8n (Ultralytics) in a worker thread for person detection on the live feed. Waypoint missions are created on the offline map and were flight-tested on a real drone in Guided mode with set altitude. Controls for altitude change and flight modes (RTL, Land, Guided). Live telemetry: position, flight time, battery, speed, altitude, roll/pitch/yaw, bearing.

Framework: PyQt6 / Leaflet
Telemetry & Video: MAVLink / RTSP
Vision: YOLOv8n
Self-directed

LiDAR-Based Autonomous Aerial Mapping

Spatial mapping pipeline toward GPS-degraded UAV navigation. Integrated an RPLIDAR S2 with ROS 2 Humble on Ubuntu 22.04, generating occupancy grids in Gazebo and RViz for waypoint navigation without GPS. Tested on the bench, in simulation, and on a small ground robot.

Core Sensor: RPLIDAR S2
Framework: ROS 2 Humble / RViz
Environment: Ubuntu 22.04 / Gazebo
Architecture Deep Dive

Solving Non-Trivial Real-Time Constraints

How hardware-software decoupling solves event loop starvation and latency jitter in deployed systems.

The Challenge: UI Thread Starvation at 60 Hz

When raw MAVLink telemetry packets are emitted at 50–60 Hz across multiple UAV channels, streaming them directly into the GUI thread causes the desktop event loop (WPF/Avalonia or PyQt6) to choke on repetitive paint calls, producing visual lag and delaying critical operator inputs.

The Solution: C# TPL / Python Decoupled Buffer

  • Dedicated Ingestion Pipeline: Uses C# asynchronous Channels (`System.Threading.Channels`) or Python background `QThread` to consume non-blocking ZMQ/MAVLink messages at full 60 Hz rate into a thread-safe atomic state store.
  • Throttled 20 Hz Render Timer: Flushes the aggregated state snapshot to the UI at a deterministic 20 Hz rate, matching human visual perception while preserving compute overhead.
  • Zero-Latency Safety Bypass Queue: Failsafe alarms and emergency triggers (e.g., Return-to-Launch, Geofence breach) bypass the aggregator and immediately signal the main event loop.
// Multi-Threaded Telemetry Architecture (C# .NET & Python)
[ UAV MAVLink Stream (50-60 Hz) ]
               │
               ▼
┌──────────────────────────────────────────────┐
│  Network Worker (C# Channel / Python QThread)│
│  - Non-blocking ZMQ socket poll & CRC check  │
└──────────────────────┬───────────────────────┘
                       │
       ┌───────────────┴───────────────┐
       ▼                               ▼
[ Telemetry Ring Buffer ]      [ High-Priority Bypass ]
(Atomic State @ 50 Hz)         (Emergency / Safety Alarms)
       │                               │
       ▼ (Aggregated @ 20 Hz)          ▼ (Instant Event/Signal)
┌──────────────────────────────────────────────┐
│  Desktop UI (WPF/.NET or PyQt6)              │
│  - 20 Hz Instrument & Map Paint (Consistent) │
│  - Instant Emergency Motor Cutoff Handler    │
└──────────────────────────────────────────────┘
Engineering Competencies

Technical Toolkit & Hardware Matrix

Technologies, protocols, and embedded platforms utilized across commercial UAV and vision projects.

LANGUAGES & CORE
C# (.NET) Python TypeScript Bash / Shell
ROBOTICS & SIMULATION
ROS / ROS2 Humble NVIDIA Isaac Sim Isaac Sim Replicator Gazebo PX4 Autopilot ArduPilot MAVLink
EDGE AI & COMPUTER VISION
RF-DETR Nano YOLOv8 / YOLOv11 Roboflow OpenCV PyTorch
NETWORKING & TELEMETRY
ZeroMQ (ZMQ) MQTT WebSockets Protobuf / UART
GCS & SYSTEMS UI
C# (WPF / .NET) PyQt6 Electron.js React.js Tailwind CSS
COMPUTE & HARDWARE
Jetson AGX Orin Google Coral Edge TPU Raspberry Pi 5 Pixhawk 6C/6X ESP32