Projects

Research projects, competition entries, and open source work β€” from unsupervised LiDAR perception to autonomous robots competing in the field.

Research In Progress
2025 – Present

Physics-Guided Learning for Autonomous Navigation

PhD dissertation at CTU VRAS Group. Developing control algorithms for autonomous mobile robots that leverage terrain properties obtained through perception and physics-informed neural networks, enabling adaptive navigation across diverse outdoor environments.

PyTorchROS2Open3DDockerNVIDIA Jetson
Research Complete
2025

FlowSeg4D: Unsupervised 4D Panoptic Segmentation

Master's thesis. An unsupervised framework for online 4D panoptic segmentation of LiDAR driving scenes that combines scene flow estimation with clustering to achieve temporal consistency without labeled data. Achieves LSTQ 46.9 on SemanticKITTI, rivalling supervised methods.

PyTorchOpen3DPythonLiDAR
Research In Progress
2022 – Present

Outdoor Autonomous Robotics

Research project at CTU VRAS Group covering semantic segmentation, navigation, and localisation for robots operating in unstructured outdoor environments. Involves deployment on NVIDIA Jetson platforms and validation on HPC infrastructure.

C++PythonROS2NVIDIA JetsonHPC
Research Complete
2023

Autonomous Road Crossing with a Mobile Robot

Bachelor's thesis. A behavior-tree control algorithm that lets a mobile robot safely cross roads by detecting and tracking surrounding vehicles. Evaluated in simulation and on real hardware. Received the Dean's Award at CTU FEE.

PythonROSBehavior TreesOpenCV
Open Source In Progress
2025 – Present

SimView β€” Batched 3D Simulation Visualizer

An interactive web-based 3D visualization tool for comparing parallel robot simulation runs side-by-side on shared terrain. Built with Three.js and a Python API (PyTorch/NumPy), it renders multi-batch trajectories, terrain heightmaps, contact points, and body-force vectors, and plots time-series scalar metrics in real time.

PythonThree.jsPyTorchWebSockets3D Viz
Open Source In Progress
2024 – Present

OSM data for autonomous robotics

A Python package for downloading and processing OpenStreetMap data for use in autonomous robotics applications. Provides tools to extract road networks, building footprints, and other relevant map features, and convert them into formats suitable for robot navigation and planning. Comes with a visualization tool to inspect and edit the extracted map data, perform high-level route planning, and export to ROS-compatible formats. ROS2 version includes a Tracker mode for real-time robot localization, state verification and control. Deployable as a ROS2 package and standalone Python library.

PythonJavaScriptROS2Path Planning
Open Source In Progress
2024 – Present

Online Robot Monitoring

Software for online monitoring of deployed autonomous robots β€” tracks position, sensor health, process states, and key metrics in real time. Server side processing and visualization application, and ROS2 node for data collection and transmission. Coming soon under an open source licence.

PythonJavaScriptCI/CD
Competition Complete
2025

Robotour 2025 β€” 2nd Place

International outdoor robot competition. Our robot autonomously navigated an urban environment to deliver beer, placing 2nd among international teams. The software stack included ROS2-based navigation, sensor fusion for localization, and a custom behavior tree for task execution. The robot successfully completed the delivery route while avoiding pedestrians and staying within the designated path and time limits.

ROS2PythonC++Navigation
Competition Complete
2022

Porsche Engineering Student Contest β€” 2nd Place

Developed full autonomy software for a 1:10 scale vehicle capable of high-speed circuit navigation, road sign recognition, and real-time obstacle avoidance. Competed against teams from European universities in accuracy and speed challenges.

PythonOpenCVROSEmbedded
Competition Complete
2016

RobosoutΔ›ΕΎ β€” 1st Place

National high-school robotics competition organised by CTU FEE, 8th edition. Competed as team Next Team (with Petr Molek and David Strouhal) and achieved 1st place among 16 teams. The Pathfinder task required a LEGO MINDSTORMS robot to autonomously complete three sequential stages β€” line following, maze navigation, and a return line β€” within 120 seconds, competing in a double-elimination bracket format.

LEGO MINDSTORMSNXT-GSensor FusionControl