Mobile robots often need to keep track of their pose relative to the environment. In particular, robots operating in a 2D task space (i.e. a horizontal plane) may have access to a vision target with known height and geometry that can be used for pose estimation. This scenario has been seen in several FIRST Robotics Competition games including FIRST Stronghold (2016) and Infinite Recharge (2020).
This repository contains some OpenCV Python code that simulates different algorithms for camera-based pose estimation using a target of known height and geometry. More details on the problem formulation and algorithms can be found in the writeup.