1. A method for refining a pose estimate of a model coarsely aligned with a run-time image, the pose estimate having at least one parameter, the model having a plurality of model edgelets, the run-time image having a plurality of run-time edgelets, each edgelet having a position and an orientation, the method comprising: mapping the position and orientation of each model edgelet onto the run-time image using the pose estimate to provide a plurality of mapped edgelets; for each mapped edgelet, finding all run-time features having a position within a distance capture range of the mapped edgelet, and having an orientation within an angular capture range of the mapped edgelet, and having an orientation within an angular capture range of the mapped edgelet, so as to provide a correspondence list of run-time features of the mapped edgelet, thereby providing a plurality of correspondence lists; for each mapped edgelet, finding a closest run-time edgelet within the correspondence list of the mapped edgelet; for each mapped edgelet, finding a distance between the mapped edgelet and the closest run-time edgelet within the correspondence list of the mapped edgelet; and modifying the at least one parameter of the pose estimate so as to minimize an average over the plurality of mapped edgelets of the distance between each mapped edgelet and the closest run-time edgelet within the correspondence list of the mapped edgelet.