Visual odometry is the backbone of localization for robots and autonomous vehicles, and it is taught in two useless extremes: flashy demo reels with no explanation, or dense papers with no code. This course is the middle. Over about 7 hours you build monocular and stereo VO from the essential matrix up, write RANSAC and the nonlinear solvers by hand, add keyframes and a g2o bundle-adjustment back end, then run the complete pipeline on KITTI, EuRoC and a simulator, first in Python and then in C++ on ROS 2. No black boxes. Real datasets with ground truth. Two full pipelines that are yours.
Search for visual odometry and you get two extremes: demo reels that show a trajectory and explain nothing, or papers with no runnable code between the equations. The gap in the middle is where the architectural intuition lives, so most engineers skip it and install a package instead. That works until a degeneracy case collapses the estimate and the only remaining fix is rebooting the robot by hand, which means the system was never autonomous.
Clones a SLAM package, edits a YAML file, and hopes. When the trajectory spikes there is nothing to inspect, because the front end, the solver and the graph are all somebody else's decisions.
Knows the monocular estimate is a ratio between two frames, recognizes the stationary-camera case on sight, and changes the outlier rule, the keyframe threshold or the graph directly.
This is not a survey of the literature. Visual navigation decomposes into six pieces, and the six levels of this course build precisely those, in the order they depend on each other. The row below is the whole pipeline in miniature.
The same three-step loop on every stage of the pipeline, so you never watch without building, and never trust a result you have not tried to destroy.
Each level ends in code that runs and is the prerequisite for the next, so no stage of the pipeline ever appears out of nowhere. About 7 hours of build-along video across nine chapters, ending with the same system written twice, once to understand it and once to run it in real time.
A stack that runs, the rotation math visual navigation actually uses, and both benchmark datasets loaded, plotted and understood.
The two pipelines every open-source project is a variation of, built end to end, compared honestly, and then broken on purpose.
The two numerical engines under the pose solver, written by hand on problems small enough to see, before they are trusted at scale.
The idea that separates a frame-to-frame demo from a system: anchor the estimate to a keyframe, and give the map a structure you can actually query.
The professional line. Poses and landmarks become one graph, and the whole window is solved against every measurement at once.
Everything above assembled into one system: first in Python, where every mechanism stays visible, then in C++ on ROS 2, where it runs in real time.
You finish with two pipelines you wrote, a back end you can defend, and a clear view of the line where visual odometry ends and visual-inertial odometry and full SLAM begin.
Prerequisites: fluent Python and NumPy, working knowledge of camera projection and calibration, and the rotation and state-estimation basics that Robotics 101 and the Computer Vision course cover. Chapter 2 reviews manifolds, SE(3) and the vision essentials, but it reviews them rather than teaching them from zero. You need Linux, Ubuntu or WSL, and chapter 9 is a C++ ROS 2 workspace, so you must be able to read C++ even if you do not write it. Datasets are free downloads and there is no hardware to buy.
By Level 5 you can explain a visual odometry system from the raw stereo pair to the optimized map, and say which stage a given failure came from. Here is the exact stack you build, box by box. Every box is your own code.
This is the real code, not a brochure diagram: vo_frontend_mapping.py, vo_frontend_tracking.py, vo_backend.py, vo_map_model.py and vo_visualizer.py in the Python package, and map.hpp, stereo_geometry.hpp and the viewer in the C++ ROS 2 workspace.
Chapter order matches the produced course, and the lesson list is pulled live from the course itself. Chapters 1 to 8 are Python; chapter 9 is the C++ and ROS 2 rebuild.
Straight from the course. Every algorithm shown here is one you implement yourself and then watch run on data with ground truth.
Founder of Ubicoders His graduate research at Ohio State was visual-inertial odometry: estimating a monocular camera's ego-motion and its uncertainty, published first-author at AIAA. Since 2014 he has been building the same stack outside the lab, from gesture-controlled multirotors to a stereo visual SLAM pipeline written from scratch in C++ with a g2o back end. This course is the framework he spent months looking for and never found.
“During my graduate studies, I spent months, literally months, grappling with these concepts, struggling to find a single foothold. I was drowning in equations and open source code that I couldn't even understand.”
“In modern visual navigation, bundle adjustment is the real line between hobbyist tutorial and professional project.”
verbatim, from the course introduction
Ask in the discussion thread on the lesson itself, or in the Discord forum. The instructor is notified for every post and answers there himself. Chapter 1 has a lesson on which channel to use and what to include, because a VO question with the sequence, the frame and the plot attached gets a far better answer than one without.
A verifiable Certificate of Completion recording that you implemented monocular and stereo visual odometry, a keyframe map, and a bundle-adjustment back end, and validated them against dataset ground truth. It is not a licence and it is not a degree. It is a statement of what you built, which is the only thing this audience checks anyway.
Everything needed to build visual odometry you own, from two-view geometry to a node that runs in real time.
You can get here without this course, the same way the instructor did: months of grappling with papers and open-source code until the architecture finally clicks. This is that path compressed into nine chapters, with the derivations, the failure cases and both pipelines included, and the choice is entirely yours.
Applicable sales tax / VAT is calculated at checkout based on your location.
Price increases September 1, 2026.
Secure checkout via Paddle.com
Visual odometry is the layer the rest of visual navigation stands on. Once the front end, the solvers and the graph are yours, the things that used to read as research projects become the next build.
This website's cookies improve browsing efficiency, much like a sweet treat complements a meal, making navigation satisfying and user-friendly. See our cookie policy.