← All projects

COAST: Altitude as a Coupled Perception Variable in Shared-Camera Aerial-Ground Tracking

Shlok Mehndiratta†, Divyam Sood†, Prashant Gupta†, Agniva Banerjee, Arijit Sen
IFAC Advances in Control and Optimization of Dynamical Systems (ACODS), 2026
accepted · † equal contribution · paper PDF after the camera-ready version
code

One downward camera on a drone (UAV) is the only sensor of a ground robot (UGV). Each image gives both the lane waypoint for navigation and the marker pose for localisation, so one variable, the UAV altitude, sets both. Flying higher widens the view, but the localisation noise grows as R ∝ z2. COAST treats altitude as a perception variable: we find the best altitude in closed form, state exactly when changing it along the path helps, and cut planner computation with event triggering.

Problem
One camera, two jobs

The same frame gives the navigation waypoint (from the segmented lane) and the EKF pose measurement (from the ArUco marker on the UGV). Low altitude gives better localisation; high altitude keeps more of the lane in view.

Downward camera view of the UGV with an ArUco marker on a curved lane, and the same frame with the marker pose and lane waypoint marked
(a) The UAV's downward view. (b) The same frame gives the marker pose and the lane waypoint.
Result
The best altitude, in closed form

The estimation-optimal altitude is the lowest one that keeps the searched lane region inside the camera footprint (the coverage floor), and it rises with path curvature when the search region grows in turns. A changing altitude beats every fixed altitude only when this floor is active and changes along the path; otherwise one fixed altitude is already optimal.

System
Estimator and controllers

An EKF fuses the marker pose with wheel odometry. A belief-space MPC drives the UGV and penalises its own predicted uncertainty. The UAV's aerial planner sets position and altitude, and an ancillary feedback law tracks the plan between re-plans. The planner re-solves only on events (tube exit, uncertainty spike, a turn ahead, drift, or an expiring plan), with a bounded tracking error between events.

Block diagram: UAV camera feeds ArUco and lane detection; state EKF, belief-space UGV MPC, aerial planner with altitude policy, and ancillary law with event trigger
System overview. The EKF belief drives the UGV MPC; its endpoint drives the aerial planner; uncertainty and curvature drive the trigger.
Tests
What the simulations show

In ROS 2/Gazebo, the marker position error follows the predicted z2 law (R2 = 0.983 over 2–7 m). On our tracks the coverage floor stays constant, and as the theory predicts, the adaptive policy ties with the best fixed altitude (within 2.8%). Event triggering needs 24.9× fewer planner solves and 12.3× less planner CPU time than re-solving at 20 Hz, at the same estimation quality.

Plot of ArUco mean squared position error against altitude from 2 to 7 m with a quadratic fit, R squared 0.983
Marker position error grows with the square of altitude, as the model predicts.
Left: altitude over time, adaptive policy climbing in turns versus fixed 2.5 m. Right: mean estimation cost for adaptive and fixed 2.5, 4 and 7 m
(a) The adaptive policy climbs in turns. (b) Its estimation cost ties with the best fixed altitude, as predicted when the floor does not vary.

My part

I built and ran the ROS 2/Gazebo testbed and the experiments, and worked on the result analysis and the paper text. The first three authors contributed equally.

Scope

All results are from software-in-the-loop simulation: the UAV is a velocity-controlled point mass with a nadir camera, with no rotor or attitude dynamics, wind, camera tilt or realistic image noise, and the UAV pose is ground truth. Next steps are tracks where the coverage floor changes along the path, and hardware tests with a full multicopter model.

This project was funded by ANRF (Project No. ANRF/ARG/2025/007351/ENS).