DOI: 10.5281/zenodo.14586487
title: Dataset - Unlocking Aerobatic Potential of Quadcopters: Autonomous Freestyle Flight Generation and Execution

description: Dataset - Unlocking Aerobatic Potential of Quadcopters: Autonomous Freestyle Flight Generation and Execution

Dataset for manuscripts "Unlocking Aerobatic Potential of Quadcopters: Autonomous Freestyle Flight Generation and Execution".

This dataset includes the raw data for the images in the manuscript except for the schematic drawings.

The source code is released as ROS packages at GitHub.

Large-scale aerobatic flight

Code: outdoor.mlx

Data: outdoor_data/





outdoor_final.bag: This rosbag captures all essential data during outdoor flight in real-world experiments.




outdoor_map.pcd: Pointcloud map file of the outdoor flight environment.




[ManeuverName]View[id].mp4: Video files showcasing different maneuvers from various perspectives during rosbag playback in Rviz visualization software.



Successive aerobatic maneuvers in confined spaces

Code: indoor.mlx

Data: indoor_data/





nokov[id].bag: The rosbag captures all essential data during indoor flight in real-world experiments. Each bag representing a single aerobatic flight. Data package representing indoor experimental flights, with each package representing a single flight.




indoor_map.pcd: Pointcloud map file of the indoor flight environment.



Combination of aerobatic intentions

Data: intention_simulation/





[ManeuverName]_Intention.png: Input aerobatic intentions.




[ManeuverName]_Action.png: Maneuvers generated based on intentions.



These pictures are rendered using Blender.

Ablation analyses

Yaw compensation

Code:





ablation_yaw_comp.mlx




yaw_sensitivity.mlx



Data: ablation_data/YawComp/





[with/without]YCM.mp4: Slow-motion footage of the drone executing flight trajectories in the yaw-sensitive area at 1/50th of the original speed.




[with/without]YCM.txt: State computation of the entire trajectory, with a time interval of 0.2 microseconds for each line of state.



Trajectory optimization

Code:





ablation_traj_opt.mlx




attitude_penalty.mlx



Data: ablation_data/TrajOpt/





OptTrajRet.txt: Various evaluation metrics obtained from 90 trajectory generations.




[ManeuverName]_[OptimizeCondition].png: Typical optimized trajectories under different optimization conditions for various maneuvers.



Additional data in the rebuttal

Matching and surpassing human pilots

Code:





human_single.mlx




human_multi.mlx



Data: human_competition/[single/multi]/[auto/manual]/[id].bag: The rosbag captures all essential data about drone flight in competition.

Accurate thrust module fitting

Code: thrust_fitting.mlx

Data: thrust_fitting/[lidar/nokov].csv: measured calibration data of two drones.

Optimization of 1000 aerobatic trajectories

Code: repeat_trajopt.mlx

Data: repeat_traj_opt/





opt_result.txt: final output results of the trajectory optimization problem.




optBoundValue.txt: boundary values of trajectories.




trajpos.txt: position, velocity, and orientation of the trajectories.



Aerobatics vs. Non-Aerobatics

Code: nonaero_compare.mlx

Data: nonaero_compare/





aerotraj_[aero/non].txt: position and orientation of the trajectories.




opt_result_[aero/non].txt: final output results of the trajectory optimization problem.




optBoundValue_[aero/non].txt: boundary values of trajectories.




trajpos_[aero/non].txt: position, velocity, and orientation of the trajectories.