李 宝 根
(复旦大学计算机科学技术学院 上海 201210)
计算机视觉技术是基于感知图像做出对客观对象和场景有用的决策。关键点检测又被称为特征点或兴趣点检测,是计算机视觉领域的关键性技术,被应用于很多任务,如图像匹配[1]、图像检索[2]和视觉同时定位与建图[3]等。关键点通常是指图像中较为突出的、有着很强的可区分性的像素点或者图像区域块,其作为图像中最重要的局部特征之一,具备旋转不变性、视角不变性、尺度不变性等多种优异性质,因此被广泛应用于各种计算机视觉任务中。
尽管在过去的十年里对关键点检测这一问题的研究已经取得了巨大的进展,但由于环境中各种因素的影响,仍然面临着巨大的挑战,需要不断寻求更加鲁棒的关键点检测算法,来使得视觉系统更加有效和可靠。针对光照、旋转、尺度、模糊及视角变换等不利因素,一个鲁棒的关键点检测算法应该具备一些优良特质,如可重复、可区分、数量合理、准确及高效等。
传统的基于手工设计的关键点检测算法大都利用图像的局部梯度信息来检测关键点,例如经典的Hessian特征点检测算子[4]使用Hessian矩阵来计算关键点响应函数。后续的许多算法如LoG(Laplacian of Gaussian)[5]、SURF[6]、KAZE[7]、AKAZE(Accelerated-KAZE)[8]等也都沿用了这一思想。另一类关键点检测算法则从模式识别的角度出发,认为关键点及其周围邻域应该具有特殊性和可区分性,所以存在某种特定的模式,让算法可以通过机器学习的方式去学习这些模式。……