AutoGPR: Autonomous Subsurface Surveying AMR

Home > Projects > AutoGPR: Autonomous Subsurface Surveying AMR
thumbnail
ROS2UbuntuC++NextJSReactREST API

A fully autonomous rover which uses ground penetrating radar to detect and classify subsurface features using an unsupervised machine learning model. The robot is controlled and monitored using a web dashboard simplified for use by someone with no technical background in robotics.

Mechatronics Capstone Project | Queen's University

System Architecture & Overview

The AutoGPR System is an Autonomous Mobile Robot (AMR) engineered to map, survey, and detect subsurface anomalies across a designated region of interest. The system integrates a Ground Penetrating Radar (GPR) payload with custom autonomy, navigation, and network-connected telemetry pipelines. Under the academic supervision of Dr. Joshua Marshall and Dr. Alexander Braun, the multidisciplinary team successfully designed, assembled, and validated a physical prototype that fully met all stakeholder requirements.


Key Technical Contributions

Firmware & ROS 2 Hardware Abstraction

  • Microcontroller Firmware: Authored native C++ firmware for ESP32 microcontrollers to handle low-level sensor interfaces and hardware-level communication.

  • ROS 2 Humble Driver Development: Developed custom ROS 2 driver nodes to interface directly with the GPR hardware, establishing low-latency data acquisition pipelines and reliable hardware-in-the-loop (HIL) communication.

State Estimation, Fusion & Custom Navigation

  • Robust State Estimation: Implemented the robot_localization package utilizing an Unscented Kalman Filter (UKF) to fuse high-frequency proprioceptive data (wheel odometry, IMU) and low-frequency extroceptive (GPS) data for accurate, drift-reduced robot pose estimation.

  • Custom Coverage Path Planning (CPP): Designed and deployed a custom grid-search coverage algorithm optimized with rounded turns (spline/clothoid based trajectory smoothing) to maintain constant velocity and prevent wheel slippage during GPR scanning passes.

ML Data Pipelines & Unsupervised Anomaly Detection

  • Deep Feature Extraction: Engineered an end-to-end signal processing pipeline featuring a Convolutional Autoencoder neural network to compress raw, high-dimensional GPR B-scans into dense, low-dimensional latent space representations.

  • Dimensionality Reduction & Anomaly Scoring: Applied Principal Component Analysis (PCA) to the encoded latent representations to isolate the dimensions with the highest variance. This allowed the system to perform unsupervised, real-time anomaly detection and flag subsurface structural deviations without requiring pre-labeled environmental data.

Full-Stack Telemetry & Human-Robot Interface (HRI)

  • Bidirectional Web Communication: Built a dual-channel communication architecture using REST APIs for configuration, state changes, and command execution, alongside WebSockets for high-frequency, real-time telemetry streaming and map updates.

  • Modern Frontend Control Panel: Developed a responsive web interface using Next.js and React to display real-time 2D/3D visualizations of GPR scans, spatial telemetry, and system diagnostics to the end user.

2026 — Built by Kyle Levy