WAYVE - LONDON

SIGNAL PROCESSING AND COMMUNICATIONS LABORATORY - CAMBRIDGE

I am a cross-stack robotics engineer and researcher, currently building self-driving cars for Wayve. Previously I have worked on robotic motion planning, computer vision for manufacturing, optimal supercomputer software parallelisation, embedded software engineering and electrical circuit design for medical devices and racecars.

My research interests are broad but most of my published work is from my PhD where I focused on the representations of 3D space and formulations and solutions of computer vision, kinematics and dynamics problems with hyper-complex algebras. Information about my PhD thesis can be found here.

My PhD research focus was in designing novel computer vision and computer graphics algorithms using conformal geometric algebra (CGA) . I was supervised by Joan Lasenby .

Abstract

Geometric Algebra (GA) has found success in various areas of the physical sciences and engineering over the last decade but remains relatively underutilised in industry and several key topics in the field remain unexplored. This thesis focuses on the practical applications of Geometric Algebra in various interconnected areas of mathematical engineering. In Part I we explore the properties of the objects resulting from the addition of blades in Conformal Geometric Algebra (CGA) and how we might use these objects in computer graphics and robotics algorithms. In Part II we explore how Screw Theory embeds into CGA, how to use this embedding for simulation of the dynamics of rigid bodies, and how practitioners can leverage the geometric primitives built into CGA to represent and solve constraints in multi-body robotic systems.

PDF

The PDF of my thesis can be found here.

HTML

The process of converting a full size latex document like a thesis to HTML is still pretty error prone but the results can be really good when it works. I've had
a go converting my thesis to HTML with **latex2html**, check out the results here.

Open Source Software

To see what code I am working on now check out the pygae organisation on Github. To see what direction my research is going check out my ORCID profile.

Tutorials

The Clifford python package documentation

Slides.com Tutorials

Joan Lasenby talking about Geometric Algebra on the YCombinator podcast

Introductory papers

Imaginary Numbers are not Real - the Geometric Algebra of Spacetime

Covariant Approach To Geometry with Conformal Geometric Algebra

Text Books

Geometric Algebra for Physicists

Geometric Algebra For Computer Science, An Object Oriented Approach to Geometry

Clifford Algebra to Geometric Calculus

Software Packages

Clifford: Geometric Algebra for Python - Numerical geometric algebra module for python

Ganja.js - Javascript Geometric Algebra Generator for Javascript, c++, c#, rust, python

GAlgebra - Symbolic Geometric Algebra/Calculus package for SymPy

Geometric Algebra Library (GAL) - C++17 expression compiler and engine for computing with geometric algebra

I'm in the process of writing some blog posts about various things that interest me. Check them out below and drop me an email/tweet if you find them interesting!

This is a blog post that runs through an alternative to standard checkboard and point based lens undistortion
using line integral transforms. I look at the intuition behind these techniques and then show how to use these methods
in conjunction with OpenCV.

Code accompanying blog post here