Design Engineering

Geographical Mapping with Hybrid Aerial/Terrestrial Drones

Oliver Thompson
Design Engineering MEng
Dr Thrishantha Nanayakkara
Modern Motion

I designed a system that uses multiple autonomous quadcopter drones to take aerial photos of a geographical area. The drones work together and communicate between each other over a wireless mesh network. This allows for greater range and high bandwidth communication. An image stitching computer vision algorithm is used to identify features and stitch the images together, assembling a map in real time.

The drone agents are protected by a complaint spherical shell that enables them to withstand impact. It also allows the drones to roll across the ground rather than fly through the air, which I measured to be three times more efficient.

Existing solutions typically use a single agent that must return and land before the data can be used. This system, however, can be used in time-critical situations, where data needs to be collected and acted upon quickly. Multiple drones allow an area to be traversed more quickly and the wireless mesh network allows for real-time streaming of data.

 — Geographical Mapping with Hybrid Aerial/Terrestrial Drones


The system accepts a target area from the user at the central 'ground control server' in the form of JSON data. These coordinates are split into way-points and each drone receives a list of target way-points. Once the drones roll to the way-point, they take off and capture the aerial photo. The aerial photos are returned to the ground control server and assembled into a map that grows as more data is received.

 — Geographical Mapping with Hybrid Aerial/Terrestrial Drones

Electronic Hardware

The drones are controlled by a linux autopilot running on a Raspberry PI. GPS is used to position the drone and a servo-articulated Raspberry Pi camera is used to take the photos. The Ardupilot software stack is used for telemetry, relaying location data, battery voltage and current, and image data back to the ground control server.

 — Geographical Mapping with Hybrid Aerial/Terrestrial Drones

Compliant Frame

The carbon fibre frame helps to protect the drone from impact and allows it to roll back to its original position if a drone crashes. Generative Design was used to keep the 3D printed parts as light as possible.

Wireless Mesh Network

The wireless mesh network uses the Raspberry Pi's built-in WiFi interface and the B.A.T.M.A.N routing protocol. This enables data to hop between any drone on its way to the ground control server. This approach is self-healing and fault-tolerant, meaning the network can recover in the event of failed nodes.

 — Geographical Mapping with Hybrid Aerial/Terrestrial Drones


Socket programming and multi-threading are used to allow multiple drones to communicate with the ground control server simultaneously. Data is serialised into byte form and decoded at the other end. The image stitching algorithm uses the SIFT algorithm to identify features and brute force matching to identify similarities between images. A homography transform then maps the second image onto the first and this process is repeated until all the images are assembled. The image stitching algorithm runs as a separate thread and continuously polls the disk for returned image data.

 — Geographical Mapping with Hybrid Aerial/Terrestrial Drones



This is really cool stuff. I wonder what other (non-mapping) drone tasks could be supported by the rolling feature - it's a great way to balance the high power requirements of a drone with the flexibility a drone provides over a rover or similar.

Tom Hartley

See Nasa's new Mars Drone, you need to send them this!

Michael Hofmann

Outdated Browser

This website has been built using some of the latest web technologies. Unfortunately, your browser doesn't support these technologies. To update your browser, please visit Outdated Browser.