FAST特徵

Harris算法提出了搜尋角點(或者說是特徵點)的方式,基於兩個正交方向上的強度變化率,能夠得到不錯的結果,但由於需要耗時的計算影像的一階微分,而特徵點檢測通常只是整個複雜算法的第一步,所以這邊另外介紹FAST檢測器,正如名字所示,此算法能快速進行檢測,依賴較少像素來確定是否為特徵點。

FAST(Features from Accelerated Segment Test)算法,和Harris算法同樣要定義甚麼是角點,FAST的角點定義基於和周圍像素的強度關係,檢查候選像素周圍一圈的像素,與中心點差異較大的像素如果組成連續的圓弧,並且弧長大於圓周長的3/4,那麼就把這個點視為特徵點。

FAST算法使用額外的技巧進行加速,一開始先測試周圍圓上被90分割的四個點,比如說測試點的上、下、左、右四個像素,因為滿足FAST對角點的定義,則這四個點至少有三個和中心點的強度差異須大於閾值,實務上大部分的像素都可用這方法進行移除,因此使用上非常高效,原則上測試上的半徑應該是一個參數,實際上半徑為3可以兼顧結果及效率。

和Harris找角點相同,可以在找到的角點上執行非極大值抑制,而由於FAST算法能快速的檢測特徵點,在對執行速度要求的環境下,比如在高FPS的影片上進行視覺跟蹤時,此時可以考慮用FAST來搜尋特徵點。