OpenCV实战(19)——特征描述符
0. 前言
SURF 和 SIFT 关键点检测算法为每个检测到的特征计算位置、方向和比例,比例因子信息可用于定义每个特征点周围的图像窗口的大小。因此,无论特征所属对象的比例如何,定义的邻域都将包含相同的视觉信息。本节将介绍如何使用特征描述符描述兴趣点的邻域,在图像分析中,该邻域中包含的视觉信息可用于表征每个特征点,以区分不同特征点。特征描述符通常是 N
维向量,以对光照变化和透视变形鲁棒的方式描述特征点。通常,可以使用简单的距离度量来比较描述符,例如欧几里得距离。因此,特征描述符是可以用于特征匹配应用程序的强大工具。
1. 特征描述符
cv::Feature2D
抽象类定义了许多成员函数,用于计算关键点列表的描述符。由于大多数基于特征的方法都包括检测器和描述符组件,因此相关的类包括检测函数(检测兴趣点)和计算函数(计算它们的描述符),例如 cv::xfeatures2d::SURF
和 cv::xfeature2d::SIFT
类。接下来,我们创建 SURF
特征检测器。
(1) 创建 SURF
描述符:
cv::Ptr<cv