Optimal Trajectory Planning for Cinematography with Multiple Unmanned Aerial Vehicles
Alfonso Alc\'antara, Jes\'us Capit\'an, Rita Cunha, An\'ibal Ollero

TL;DR
This paper introduces a novel distributed method for real-time optimal trajectory planning of multiple UAVs for autonomous cinematography, integrating dynamics, collision avoidance, and cinematographic constraints, validated through simulations and outdoor experiments.
Contribution
The paper presents a new non-linear formulation and a distributed algorithm for multi-UAV cinematography trajectory planning, enabling online, smooth, and coordinated filming.
Findings
The method computes online smooth trajectories reducing jerky movements.
It effectively integrates UAV dynamics and cinematography constraints.
Experimental results demonstrate successful outdoor filming with multiple UAVs.
Abstract
This paper presents a method for planning optimal trajectories with a team of Unmanned Aerial Vehicles (UAVs) performing autonomous cinematography. The method is able to plan trajectories online and in a distributed manner, providing coordination between the UAVs. We propose a novel non-linear formulation for this challenging problem of computing multi-UAV optimal trajectories for cinematography; integrating UAVs dynamics and collision avoidance constraints, together with cinematographic aspects like smoothness, gimbal mechanical limits and mutual camera visibility. We integrate our method within a hardware and software architecture for UAV cinematography that was previously developed within the framework of the MultiDrone project; and demonstrate its use with different types of shots filming a moving target outdoors. We provide extensive experimental results both in simulation and…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
