Generating dynamically feasible trajectories for quadrotor cameras

When designing trajectories for quadrotor cameras, it is important that the trajectories respect the dynamics and physical limits of quadrotor hardware. We refer to such trajectories as being feasible. In this paper, we introduce a fast and user-friendly algorithm for generating feasible quadrotor camera trajectories. Our algorithm takes as input an infeasible trajectory designed by a user, and produces as output a feasible trajectory that is as similar as possible to the user's input. By design, our algorithm does not change the spatial layout or visual contents of the input trajectory. Instead, our algorithm guarantees the feasibility of the output trajectory by re-timing the input trajectory, perturbing its timing as little as possible while remaining within velocity and control force limits. Our choice to perturb the timing of a shot, while leaving the spatial layout and visual contents of the shot intact, leads to a well-behaved non-convex optimization problem that can be solved at interactive rates. We implement our algorithm in an open-source tool for designing quadrotor camera shots, where we achieve interactive performance across a wide range of camera trajectories. We demonstrate that our algorithm is between 25x and 45x faster than a spacetime constraints approach implemented using a commercially available solver. As we scale to more finely discretized trajectories, this performance gap widens, with our algorithm outperforming spacetime constraints by between 90x and 180x. Finally, we fly 5 feasible trajectories generated by our algorithm on a real quadrotor camera, producing video footage that is faithful to Google Earth shot previews, even when the trajectories are at the quadrotor's physical limits.

[1]  Marc Pollefeys,et al.  PIXHAWK: A micro aerial vehicle design for autonomous flight using onboard computer vision , 2012, Auton. Robots.

[2]  Siddhartha S. Srinivasa,et al.  Physics-based motion retiming , 2006, SCA '06.

[3]  HanrahanPat,et al.  Generating dynamically feasible trajectories for quadrotor cameras , 2016 .

[4]  Robin Deits,et al.  Efficient mixed-integer planning for UAVs in cluttered environments , 2015, 2015 IEEE International Conference on Robotics and Automation (ICRA).

[5]  Pat Hanrahan,et al.  An interactive tool for designing quadrotor camera shots , 2015, ACM Trans. Graph..

[6]  Michael A. Saunders,et al.  SNOPT: An SQP Algorithm for Large-Scale Constrained Optimization , 2002, SIAM J. Optim..

[7]  Nancy S. Pollard,et al.  Efficient synthesis of physically valid human motion , 2003, ACM Trans. Graph..

[8]  Veit Hagenmeyer,et al.  Constrained reachability and trajectory generation for flat systems , 2014, Autom..

[9]  Vijay Kumar,et al.  Minimum snap trajectory generation and control for quadrotors , 2011, 2011 IEEE International Conference on Robotics and Automation.

[10]  Charles Richter,et al.  Aggressive flight of fixed-wing and quadrotor aircraft in dense indoor environments , 2015, Int. J. Robotics Res..

[11]  Jessica K. Hodgins,et al.  Synthesizing physically realistic human motion in low-dimensional, behavior-specific spaces , 2004, ACM Trans. Graph..

[12]  Jean-Jacques E. Slotine,et al.  Improving the Efficiency of Time-Optimal Path-Following Algorithms , 1988, 1988 American Control Conference.

[13]  L. Nielsen,et al.  Torque limited path following by on-line trajectory time scaling , 1989, Proceedings, 1989 International Conference on Robotics and Automation.

[14]  Kang G. Shin,et al.  Minimum-time control of robotic manipulators with geometric path constraints , 1985 .

[15]  J. Betts Survey of Numerical Methods for Trajectory Optimization , 1998 .

[16]  Andrew P. Witkin,et al.  Spacetime constraints , 1988, SIGGRAPH.

[17]  Huang Jiea A Survey of Numerical Methods for Trajectory Optimization , 2012 .

[18]  Jessica K. Hodgins,et al.  Synthesizing physically realistic human motion in low-dimensional, behavior-specific spaces , 2004, SIGGRAPH 2004.

[19]  Konstantin Kondak,et al.  Closed-Loop Behavior of an Autonomous Helicopter Equipped with a Robotic Arm for Aerial Manipulation Tasks , 2013 .

[20]  Nicolas Pronost,et al.  Interactive Character Animation Using Simulated Physics: A State‐of‐the‐Art Review , 2012, Comput. Graph. Forum.

[21]  Goele Pipeleers,et al.  Time-optimal quadrotor flight , 2013, 2013 European Control Conference (ECC).

[22]  Stephen P. Boyd,et al.  Minimum-time speed optimisation over a fixed path , 2014, Int. J. Control.

[23]  Otmar Hilliges,et al.  Airways: Optimization-Based Planning of Quadrotor Trajectories according to High-Level User Goals , 2016, CHI.

[24]  Jan Swevers,et al.  Time-Optimal Path Tracking for Robots: A Convex Optimization Approach , 2009, IEEE Transactions on Automatic Control.

[25]  James F. Whidborne,et al.  A prototype of an autonomous controller for a quadrotor UAV , 2007, 2007 European Control Conference (ECC).