图像特征描述、匹配及投影关系估计
1. 特征描述符——FREAK
1.1 FREAK 概述
FREAK 即 Fast Retina Keypoint,是一种二进制描述符,不过它没有关联的检测器,可以应用于任何检测到的关键点集,例如 SIFT、SURF 或 ORB 检测出的关键点。
1.2 采样模式
与 BRISK 类似,FREAK 描述符也是基于在同心圆上定义的采样模式。但它的设计借鉴了人眼的原理,作者观察到视网膜上神经节细胞的密度会随着与中央凹距离的增加而降低。因此,FREAK 构建了一个由 43 个点组成的采样模式,其中靠近中心点的点密度更大。为了获得每个点的强度,会用一个高斯核进行滤波,且高斯核的大小也会随着与中心距离的增加而增大。
1.3 配对比较
为了确定应该进行的配对比较,采用了类似于 ORB 的策略进行实验验证。通过分析数千个关键点,保留方差最大且相关性最低的二进制测试,最终得到 512 对。
1.4 级联比较
FREAK 还引入了级联比较描述符的概念。即首先进行代表较粗信息的前 128 位比较(对应于在较大高斯核的外围进行的测试)。只有当比较的描述符通过这一初始步骤时,才会进行其余的测试。
1.5 代码实现
使用 ORB 检测到的关键点,通过创建 cv::DescriptorExtractor
实例来提取 FREAK 描述符,代码如下:
// to describe with FREAK
feature