PX4 is a flight control software stack for autonomous aerial robots that describes itself as "rocket science straight from the best labs, powering anything from racing to cargo drones." One of these labs is at ETH Zurich, where Roman Bapst serves on the faculty. Bapst works on computer vision and actively contributes to the PX4 autopilot platform.
Bapst starts out by describing some of the great things about the PX4 autopilot: it's open source, open hardware, and supported by the Linux Foundation's Dronecode Project, which provides a framework under which developers can contribute to an open source standard platform for drones. PX4 runs on 3DRobotics' Pixhawk hardware, and once you hook up some sensors and servos, it will autonomously pilot nearly anything that flies - from conventional winged aircraft to multicopters to hybrids.
One of PX4's unique features is its modularity, which is fundamentally very similar in structure to ROS. This means that you can run PX4 modules as ROS nodes, while taking advantage of other ROS packages under PX4 to do things like vision based navigation and control. Additionally, it lets you easily simulate PX4-based drones within Gazebo, which, unlike real life, has a free reset button that you can push after a crash.
The PX4 team is currently getting their software modules running as ROS nodes on Qualcomm's Snapdragon Flight drone development platform, which would be a very capable and (affordable) way of getting started with a custom autonomous drone.Gary Servín of Ekumen