摘要:若鄰域內(nèi)只有一個(gè)特征點(diǎn)角點(diǎn),則保留,得分計(jì)算公式如下公式中用表示得分,表示閾值它比其他現(xiàn)有的角落探測(cè)器快幾倍但它對(duì)高水平的噪音并不穩(wěn)健,效果取決于閾值
FAST Algorithm for Corner Detection
理論我們已經(jīng)學(xué)習(xí)帶走幾個(gè)特征檢測(cè)器,它們都really good , 但是從實(shí)時(shí)的角度來說,它們的速度還不夠快.作為解決方案,F(xiàn)AST(加速段測(cè)試的特征)算法由Edward Rosten和Tom Drummond在2006年的論文“Machine learning for high-speed corner detection”中提出(后來在2010年修訂).
FAST 全稱 Features from accelerated segment test,一種用于角點(diǎn)檢測(cè)的算法,該算法的原理是取圖像中檢測(cè)點(diǎn),以該點(diǎn)為圓心的周圍的16個(gè)像素點(diǎn)判斷檢測(cè)點(diǎn)是否為角點(diǎn),通俗的講就是中心的的像素值比大部分周圍的像素值要亮一個(gè)閾值或者暗一個(gè)閾值則為角點(diǎn).
實(shí)現(xiàn)步驟:
一個(gè)以像素p為中心,半徑為3的圓上,有16個(gè)像素點(diǎn)(p1、p2、...、p16)
定義一個(gè)閾值,計(jì)算p1、p9與中心p的像素差,若它們絕對(duì)值都小于閾值,則p點(diǎn)不可能是特征點(diǎn),直接pass掉,否則,當(dāng)做候選點(diǎn)
若p是候選點(diǎn),則計(jì)算p1、p9、p5、p13與中心p的像素差,若它們的絕對(duì)值有至少3個(gè)超過閾值,則當(dāng)做候選點(diǎn),否則,直接pass掉
若p是候選點(diǎn),則計(jì)算p1到p16這16個(gè)點(diǎn)與中心p的像素差,若它們有至少9個(gè)超過閾值,則是特征點(diǎn),否則,直接pass掉
對(duì)圖像進(jìn)行非極大值抑制:計(jì)算特征點(diǎn)出的FAST得分值(即score值,也即s值),判斷以特征點(diǎn)p為中心的一個(gè)鄰域(如3x3或5x5)內(nèi),計(jì)算若有多個(gè)特征點(diǎn),則判斷每個(gè)特征點(diǎn)的s值(16個(gè)點(diǎn)與中心差值的絕對(duì)值總和),若p是鄰域所有特征點(diǎn)中響應(yīng)值最大的,則保留;否則,抑制。若鄰域內(nèi)只有一個(gè)特征點(diǎn)(角點(diǎn)),則保留,得分計(jì)算公式如下(公式中用V表示得分,t表示閾值):
NOTE:
它比其他現(xiàn)有的角落探測(cè)器快幾倍
但它對(duì)高水平的噪音并不穩(wěn)健,效果取決于閾值
FAST Feature Detector in OpenCVimport numpy as np import cv2 from matplotlib import pyplot as plt img = cv2.imread("img8.png") # Initiate FAST object with default values fast = cv2.FastFeatureDetector_create() # find and draw the keypoints kp = fast.detect(img,None) img2 = cv2.drawKeypoints(img, kp, None, color=(255,0,0)) # Print all default params print( "Threshold: {}".format(fast.getThreshold()) ) print( "nonmaxSuppression:{}".format(fast.getNonmaxSuppression()) ) print( "neighborhood: {}".format(fast.getType()) ) print( "Total Keypoints with nonmaxSuppression: {}".format(len(kp)) ) cv2.imshow("fast_true",img2) # Disable nonmaxSuppression fast.setNonmaxSuppression(0) kp = fast.detect(img,None) print( "Total Keypoints without nonmaxSuppression: {}".format(len(kp)) ) img3 = cv2.drawKeypoints(img, kp, None, color=(255,0,0)) cv2.imshow("fast_false",img3) cv2.waitKey()
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/42085.html
摘要:理論前面講的角點(diǎn)檢測(cè)器中的角點(diǎn)在旋轉(zhuǎn)的圖像中也是角點(diǎn),但是縮放呢如果縮放圖像,則角可能不是角例如,檢查下面的簡單圖像,當(dāng)在同一窗口中放大時(shí),小窗口內(nèi)的小圖像中的角是平坦的所以角點(diǎn)檢測(cè)器不是尺度不變的所以,在年,不列顛哥倫比亞大學(xué)的在他的論 Introduction to SIFT (Scale-Invariant Feature Transform) 理論 前面講的Harris角點(diǎn)檢...
摘要:角點(diǎn)角點(diǎn)所具有的特征輪廓之間的交點(diǎn)對(duì)于同一場(chǎng)景,即使視角發(fā)生變化,通常具備穩(wěn)定性質(zhì)的特征該點(diǎn)附近區(qū)域的像素點(diǎn)無論在梯度方向上還是其梯度幅值上有著較大變化角點(diǎn)檢測(cè)基本原理使用一個(gè)固定窗口在圖像上進(jìn)行任意方向上的滑動(dòng),比較滑動(dòng)前與滑動(dòng)后兩種情況 Harris Corner Detection 角點(diǎn) 角點(diǎn)所具有的特征: 輪廓之間的交點(diǎn) 對(duì)于同一場(chǎng)景,即使視角發(fā)生變化,通常具備穩(wěn)定性質(zhì)的特...
摘要:低于質(zhì)量水平的所有角落都被拒絕,然后它根據(jù)質(zhì)量按降序?qū)κS嗟慕沁M(jìn)行排序 Shi-Tomasi Corner Detector & Good Features to Track cv2.goodFeaturesToTrack(image, maxCorners, qualityLevel, minDistance[, corners[, mask[, blockSize[, useHa...
摘要:圖像矩圖像矩或稱幾何矩是由在年提出的。矩給出了對(duì)圖像形狀的一種度量。使用建議的第二種采樣方法即以圖像中心進(jìn)行高斯分布采樣,長度使用,然后在基礎(chǔ)上增加了旋轉(zhuǎn)的描述以及快速的計(jì)算方法,這種方法被稱為。 ORB(Oriented FAST and Rotated BRIEF)可用來替代SIFT(或SURF),它對(duì)圖像更具有抗噪特性,是一種特征檢測(cè)高效算法,其速度滿足實(shí)時(shí)要求,可用于增強(qiáng)圖像匹...
閱讀 2045·2021-11-11 16:54
閱讀 2124·2019-08-30 15:55
閱讀 3623·2019-08-30 15:54
閱讀 400·2019-08-30 15:44
閱讀 2241·2019-08-30 10:58
閱讀 434·2019-08-26 10:30
閱讀 3056·2019-08-23 14:46
閱讀 3209·2019-08-23 13:46