The idea is to make a 3D animated simulation of a drone flying in a realistic urban setting, such as the city of San Francisco. The simulation loads a realistic 3D scene of an existing place available on Google Earth with obstacles such as buildings and trees (and possibly cars or pedestrians). The challenge is to make the drone path realistic: i.e. follow certain rules and constraints in calculating the course while being fast (as it flies). The project will explore different algorithms for path planning and compare the speed vs accuracy tradeoffs. The game engine will automatically compute the flight path and will display it on the screen as the drone flies. The program outputs a video taken from the point of view of the drone to show a realistically rendered scene. We can tell the drone where to fly (which points of interest it should fly by) and take a video from a specific point of view.
Additionally, we will implement animation such as the drone flying, turning, etc. A virtual camera will follow the path of the drone as it flies or will be mounted on the drone itself.
The most challenging part of this project would be to achieve path planning and animation that is realistic, fast, and accurate. All team members have little experience with animation, so learning the basics of Unreal Engine and animation in the allotted time will be a challenge.
We will create a 3D simulation of a drone flying through a realistic environment. We will be able to set and change parameters of the simulations, such as obstacles to avoid, the speed of the drone, and where the drone should fly by. As a final result, we will provide a video in which we will plot a path the drone will take and then the drone flying on that path. We will set limits on where the targets can be placed. The deliverable will be an interactive program built in Unreal Engine.
We think it is realistic to accomplish building a small simulation like this because it synthesizes many concepts developed in class and class projects. We will not be building the simulation from scratch but rather, we would be using resources available to us in the course as well as publicly available libraries and the game engine.
The final result would be a recorded video of different scenarios with the idea that the simulation can easily be extended to other Google Earth locations.
We would measure success if we are able to create interactive components of the simulation, create a realistic path plan, and animate the drone flying through an interesting scene such as a busy San Francisco block.
We hope this simulation helps people flying real drones plan a path. Ideally, we would like to compare our simulated fly path to a real drone (if we can get one).
What we plan to accomplish: a realistic simulation that can inform drone operators on where to fly in a complex environment.
If we have time, the simulation can be extended to more complex environments, and by adding other realistic simulation effects such as wind, moving cars, drone battery life, etc.
Setup Unreal Engine, gather Google Earth data, choose a complex scene, and integrate it into the engine as a 3D model.
Develop basic path planning algorithm that avoids obstacles & passes through certain points given the 3D model of the scene. Compare/combine different algorithms based on speed and accuracy.
Add more complex constraints such as stay away from buildings, re-calculate the path if a new obstacle appears, account for battery life to return to start without crashing, etc.
Evaluate how well our simulation does compared to real drones (gather data or find available data/footage to compare with); prepare final deliverables (write-up, video, presentation).