Black Spot Firmware
For every frame
For every ROI
grid for new
in next frame
Modify ROI size if required
Calculate marker image quality
New marker found?
Surround with Region of Interest (ROI) and partition.
Subpixel location and tracking phases
Figure 4.1 The firmware continually executes the steps in this diagram. These can be broken into a segmentation phase, a subpixel location phase, and a tracking phase. These phases involve finding marker images, creating ROIs, calculating marker image centroids and tracking ROI movement. The two boxes in gray represent algorithms that have not been implemented but should be implemented in the future.
The first three goals have implications for processing power and require the design of com- putationally light-weight algorithms. Routines were written to minimise the number of pixels from each frame that are used for computation. For example, an algorithm to pre- dict marker motion based on previous positions is used and this allows fewer pixels to be analysed. In addition to minimising the number of pixels used, the memory footprint of the algorithms was also designed to be low to satisfy the fourth goal.
The last three goals relate to the development process. Ideas from the Object Oriented (OO) community were used to achieve these goals.
The design of the algorithms is described in this section.
broad overview of the ap-
proach taken to tracking is described first followed by more detailed algorithm analysis. The approach to tracking was described in Chapter 3 and is reiterated here with a focus on
Figure 4.1 shows flow diagrams that identify the main parts of the firmware. Tracking is performed in three stages. The first is a segmentation phase that roughly determines the location of the markers being tracked. The second is a more accurate subpixel location phase that determines the markers’ uncalibrated coordinates with high precision. This is followed by the tracking phase. These phases are repeated for each image frame. The