The detection (extraction) of keypoints (keypoint detection), their characterization (feature description), and finally their comparison (matching) are closely related topics in computer vision. Applications using keypoints range from panorama creation to three-dimensional reconstruction, from visual odometry to object tracking, and in many other use cases.
The concept of a keypoint reflects the fact that not all image points, but only some of them, have a high probability of being identified unambiguously during matching. These points are distinctive, stable, and easy to detect. Over the last decade, as in almost every area of computer vision, major advances have been made in the development of local invariant features, namely keypoints that allow applications to define the local geometry of an image and encode it so that it is invariant to image transformations such as translation, rotation, scaling, and affine deformations.
This chapter discusses keypoint detection techniques. Point description and matching strategies are discussed in the following chapters.
A non-exhaustive list of algorithms for detecting keypoints is