最初由Rosten和Drummond [Rosten06]提出的FAST(加速段测试的特征)特征检测算法是基于将点P与其包围圆内的点集的直接比较的思想。
基本思想是,如果附近的几个点与P类似,那么P将成为一个很好的关键点。点P是FAST算法的关键点候选者。 影响P分类的点的圈由p周围的圆确定。 在这种情况下,该圆上有16个像素,这里编号为0-15。
具体的算法在这里并没有说明。
二、函数
class cv::FastFeatureDetector : public cv::Feature2D {
public:
enum {
TYPE_5_8 = 0, // 8 points, requires 5 in a row
TYPE_7_12 = 1, // 12 points, requires 7 in a row
TYPE_9_16 = 2 // 16 points, requires 9 in a row
};
static Ptr<FastFeatureDetector> create(
int threshold = 10, // 像素强度
bool nonmaxSupression = true, // 打开或关闭得分较低的邻近点的抑制
int type = TYPE_9_16 // 参数设置运算符的类型
);
...
};
三、小结
fast算法本身基本上已经成为历史的一部分,这里只是作为简单的知识了解一下而已;但是图像处理的基本思路存在循环发展的情况,也就是经典的算法在新的运用场景下面会不断得到新的开发利用:比如fast,在ORB中得到了和Brief特征的结合,我们届时继续研究。