Figure 7.3 This diagram shows the flow of data from the communications layer through the core layer in the Soft Hub.
layer to the user interface and logging system.
centroid packet arrives from the commu-
nications layer. The centroid packet is received from one of the camera modules attached to the hub and the module’s ID is embedded in the centroid packet. The ID is queried against a database of known modules. The corresponding module is retrieved from the database as well as the pose of the module with respect to the hub enclosure’s coordinate frame. The system is configured to know the three camera modules in the hub enclosure,
their IDs, and their poses relative to each other.
Next the centroid ID is used as the key to a database of known markers. If the centroid has been linked to a marker in this database then the marker is returned and it is passed to the pose estimation algorithm and used along with other centroids to form a pose estimate. If the centroid is not linked to a marker in the database then another code path is executed. If the pose of the hub enclosure is known then a correspondence algorithm is run that registers the 2D centroid coordinates with the 3D marker coordinates present in the model of the world. These algorithms are discussed in greater detail in the following section.
The Soft Hub uses a correspondence algorithm to solve the problem of marker registration. This is used to match the images of the markers that the camera modules see to the markers that the system knows exist. This algorithm attempts to match the 2D coordinates of a