All work

03 / Robotics · Computer vision In progress

Safe Landing autonomous landing for a small drone

An onboard system that lets a quadcopter choose and verify its own landing spot on unprepared ground: the camera looks for a clear spot, the laser rangefinders feel the ground before touchdown.

Year
2026
Status
Simulation done, real drone next
Stack
Python, ROS 2, PX4, OpenCV, Computer vision
Demo: the algorithm searching, checking and landing in the Gazebo simulator
94%safe landings in simulation (89 of 95)
4test worlds: field, hill, town, walking person
~30 msto choose a landing spot
~$175of extra hardware, 135 g

The idea

(01)

Small drones increasingly have to land on an arbitrary patch of ground: in an emergency, after losing the link, or when delivering cargo. That ground may hide rocks, bushes, slopes, roofs or people. LiDAR solves this but is expensive and heavy for a small drone.

This project follows a “look, then feel” principle. A cheap wide-angle camera decides where to land, and two laser point rangefinders check that the ground is flat and clear. A camera mistake, like an unseen slope or a rock, leads to another attempt instead of a crash.

How it works

(02)
  1. 01

    Look

    From 10 m the downward camera classifies every 25 × 25 cm ground cell by colour and texture. A distance transform finds spots with a clear 1 m circle, and up to three candidates are ranked by clearance and distance to the mission point.

  2. 02

    Move and confirm

    The drone flies over the best candidate and re-checks it with a fresh frame before it starts to descend.

  3. 03

    Feel

    During a spiral descent, two laser rangefinders build a cloud of ground points. A robust plane fit measures the slope and finds rocks, holes or bushes the camera cannot see.

  4. 04

    Watch for motion

    Consecutive frames are aligned with a homography (optical flow + RANSAC), so anything that still differs moved by itself. A parallax filter ignores roofs and trees, and a walking person aborts the landing.

  5. 05

    Land or retry

    A state machine lands, goes around and marks the spot as bad, or returns home after three failed attempts.

  6. 06

    Real hardware

    The same code is designed to run on board: Raspberry Pi 5, a wide-angle Pi camera and two TF-Luna rangefinders, about $175 and 135 g in total.

Overview

(03)
Spot selection from 10 m: camera frame, cell grid, bad cells and clearance with candidates
The four test worlds: field, hill, town and a person walking into the landing spot
Rangefinder points during the spiral descent
Safe landings per scenario against the 90% target

What’s next

(04)
  1. 01Build the drone: mount the Raspberry Pi 5, camera and rangefinders on an x500 frame
  2. 02Port the code from simulator sensors to real drivers and test it on the Pi
  3. 03Ground tests, then first flights with a safety pilot
  4. 04Plan B: a YOLO detector trained on drone footage if classic vision fails outdoors
Next project Eban