A visual odometer can estimate robot motion by tracking a set of invariant keypoints over a sequence of camera frames, at a computational cost that is roughly linear in the number of extracted keypoints. The leading literature suggests to extract all keypoints with a response value—e.g., a Laplacian or Hessian determinant—above a given threshold. We find that the number of image keypoints that pass a given threshold is highly variable between images, which is impractical for real time systems where motion needs to be estimated in constant time. Here we propose to extract a constant number of keypoints that have the highest response for their respective frame. To find the optimal number of extracted keypoints, we define a range of thresholds on odometer performance, and study how the number of image pairs for which a visual odometer passes the thresholds depends on the number of extracted keypoints. We find that the shapes of the resulting graphs are relatively invariant to the chosen threshold values and that for all threshold values the region where good odometer performance is balanced with computational efficiency is relatively small. We conclude that if odometer performance has to be weighed against computational cost, there is relatively little room for trade, and that a robust optimum can quickly and easily be found.
Authors Volker Nannen | Gabriel Oliver Codina
In IFAC Workshop on Navigation, Guidance and Control of Underwater Vehicles (NGCUV’2012), Porto, Portugal, pp. 331-336, 2012.