AGAST检测原理
AGAST(Adaptive and Generic Accelerated Segment Test)算法是Elmar于2010年提出的特征检测算法,改进了FAST(Features from Accelerated Segment Test)特征检测方法,使其具有更快的速度和更好的鲁棒性。AGAST算法提供了比FAST算法更详细的特征标记方式和判断依据,添加了非较亮和非较暗采样区域对原采样区域进行了扩展。 首先对中心像素点周围固定半径圆周上的点进行特征分析,其特征采样模板如图所示。 AGAST算法通常选取圆周上16个点作为决策树的输入值判断特征,圆形的特征检测方式使AGAST算法具有旋转不变性。如果检测到这个点是候选特征点,则会继续用决策树检查更小圆周上的8个点,使该算法对缩放图像有一定的处理能力。通过中心像素点与其圆形区域邻域进行比较,利用邻域像素相较于中心像素的亮暗状态判断是否为特征点。
AGAST还将上一个像素点的状态比较结果作为参考,输入到下一个像素点进行计算,可以更加合理地比较像素邻域的整体结构,并自适应地调整当前的比较方式,更好地检测特征。AGAST邻域采样点的亮度状态总共分为6种,具体状态转换方式如下。 S_n→x{█(d, I_n→x<I_n−t (较暗)@d ̅, I_n→x≥I_n−t∩(S_n→x) ́=u (非较暗)@S, I_n→x≥I_n−t∩(S_n→x) ́=¯b (相似)@S, I_n→x≤I_n+t∩(S_n→x) ́=¯d (相似)@¯b, I_n→x≤I_n+t∩(S_n→x) ́=u (非较亮)@b, I_n→x>I_n+t (较亮))