LabVIEW角點(diǎn)檢測(cè)(基礎(chǔ)篇—10)
圖像的特征是圖像的原始特性或?qū)傩?,它包含圖像中的關(guān)鍵信息,是機(jī)器視覺(jué)算法工作的基礎(chǔ)。
圖像的灰度、邊緣、輪廓、紋理、色彩和顆粒屬性等都可作為圖像的特征,它們均從某一維度對(duì)圖像中的目標(biāo)關(guān)鍵屬性進(jìn)行描述。然而,在實(shí)際工作中,有時(shí)需要尋找一種可以對(duì)圖像的各個(gè)局部都能進(jìn)行抽象描述的特征。
例如,若要在圖像存在****畸變且被測(cè)目標(biāo)會(huì)發(fā)生旋轉(zhuǎn)和縮放的情況下,對(duì)圖像中多個(gè)關(guān)鍵部分進(jìn)行關(guān)聯(lián)拼接,然后再進(jìn)行目標(biāo)識(shí)別或匹配,此時(shí)就需要使用一種可以對(duì)旋轉(zhuǎn)、縮放和畸變均保持不變的局部特征。
角點(diǎn)(Corner Point)是解決這類(lèi)問(wèn)題的一種理想選擇。
1
角點(diǎn)檢測(cè)概念
圖像中的興趣點(diǎn)(又稱(chēng)為關(guān)鍵點(diǎn)、特征點(diǎn))是在圖像中容易檢測(cè)且具有代表意義的點(diǎn)?;谶@些點(diǎn),可以進(jìn)行目標(biāo)識(shí)別、圖像匹配和缺陷檢測(cè)等。角點(diǎn)是圖像中最基本的一種興趣點(diǎn),它可定義為圖像中兩個(gè)邊緣的交點(diǎn),或目標(biāo)輪廓線上曲率的局部極大點(diǎn)。角點(diǎn)特征具有計(jì)算量少,匹配簡(jiǎn)單以及旋轉(zhuǎn)、平移、放縮不變性等特點(diǎn),因此在圖像配準(zhǔn)與匹配、目標(biāo)識(shí)別、運(yùn)動(dòng)分析、目標(biāo)跟蹤等應(yīng)用領(lǐng)域都起著非常重要的作用。
圖像在角點(diǎn)處不僅梯度的數(shù)值大,而且梯度方向的變化速率也很大。也就是說(shuō),角點(diǎn)顯示了圖像在二維空間內(nèi)灰度變化劇烈的位置,它和周?chē)忺c(diǎn)有著明顯差異。
例如,下圖中,當(dāng)小窗口位置在任意方向上發(fā)生變化時(shí),含有角點(diǎn)的窗口的灰度就會(huì)有明顯變化。因此可以通過(guò)計(jì)算圖像中的角點(diǎn)獲知圖像各個(gè)局部的信息,從而實(shí)現(xiàn)對(duì)圖像的一種抽象描述。而基于該抽象描述,即可進(jìn)行圖像的匹配及識(shí)別等工作。
2
角點(diǎn)檢測(cè)流程
以角點(diǎn)為特征的機(jī)器視覺(jué)應(yīng)用一般涉及角點(diǎn)檢測(cè)、角點(diǎn)描述和角點(diǎn)匹配3個(gè)過(guò)程。
角點(diǎn)檢測(cè)過(guò)程使用Harris、Shi-Tomasi或FAST等算法來(lái)確定圖像中的角點(diǎn)。角點(diǎn)描述過(guò)程使用BRISK (Binary Robust Invariant Scalable Keypoints)或FREAK (FastRetina Keypoint)方法,基于檢測(cè)到的角點(diǎn)生成以二值方式編碼的特征向量。而角點(diǎn)匹配過(guò)程則計(jì)算兩幅圖像二值特征向量之間的漢明距離,并依據(jù)距離的大小來(lái)判斷其是否匹配。
下圖對(duì)常用的角點(diǎn)檢測(cè)、描述及匹配方法進(jìn)行了匯總。
3
角點(diǎn)檢測(cè)實(shí)踐
Nl Vision使用位于LabVIEW的視覺(jué)與運(yùn)動(dòng)→Machine Vision→Feature
Correspondence函數(shù)選板中的IMAQ Corner Detector和IMAQ FAST Feature PointDetector封裝角點(diǎn)檢測(cè)過(guò)程,返回從矩形ROI中檢測(cè)到的角點(diǎn)坐標(biāo)和強(qiáng)度。
其中IMAQ Corner Detector封裝了Harris和Shi-Tomasi角點(diǎn)檢測(cè)算法,且支持在圖像不同的金字塔圖層進(jìn)行多尺度檢測(cè)。換句話(huà)說(shuō),在進(jìn)行角點(diǎn)檢測(cè)時(shí),它不僅能對(duì)光照和旋轉(zhuǎn)變化保持不變性,還能通過(guò)多尺度的近似方法對(duì)圖像的縮放變化保持不變性。
lMAQ FAST Feature Point Detector封裝了FAST檢測(cè)算法,它以像素為中心,取距其半徑為3的圓環(huán)上的16個(gè)點(diǎn),若其中有連續(xù)的12個(gè)點(diǎn)的灰度與像素的灰度差超過(guò)輸入?yún)?shù)Min Feature Point Strength設(shè)定的閾值,就將像素標(biāo)記為角點(diǎn)。VI對(duì)于光照、旋轉(zhuǎn)和尺度變化保持不變,但是當(dāng)圖像中噪點(diǎn)較多時(shí),F(xiàn)AST健壯性較差,而且算法的效果也依賴(lài)于閾值的選取。
通過(guò)使用角點(diǎn)特征進(jìn)行圖像匹配的實(shí)例,了解角點(diǎn)算法的應(yīng)用,程序設(shè)計(jì)思路如下所示:
程序首先為模板圖像和待檢測(cè)圖像分配緩沖區(qū),并將它們分別讀入內(nèi)存;
隨后調(diào)用IMAQ FAST Feature PointDetector,基于FAST算法分別檢測(cè)兩幅圖像中的角點(diǎn),并由IMAQ Feature PointDescriptor以FREAK算法對(duì)角點(diǎn)信息進(jìn)行二進(jìn)制描述;
這樣一來(lái),從圖像中檢測(cè)到的各個(gè)角點(diǎn)特征都可以由一個(gè)二進(jìn)制的角點(diǎn)特征字符串表示;
IMAQ Match Feature Points能通過(guò)計(jì)算各個(gè)角點(diǎn)特征字符串之間的漢明距離,在設(shè)定的最大可接受距離范圍內(nèi)(本例為32),對(duì)兩幅圖像中的角點(diǎn)進(jìn)行匹配關(guān)聯(lián)。
程序設(shè)計(jì)如下所示:
程序運(yùn)行效果如下所示:
IMAQ Match Feature Points還能基于在兩幅圖像中匹配到的角點(diǎn)坐標(biāo),返回它們之間的單應(yīng)性矩陣(Homography Matrix)。在機(jī)器視覺(jué)領(lǐng)域中,若成像系統(tǒng)可抽象為針孔比如,通過(guò)旋相機(jī),則空間中同一平面內(nèi)的任意兩幅圖像就可由單應(yīng)性矩陣進(jìn)行關(guān)聯(lián)。比如,通過(guò)旋轉(zhuǎn)相機(jī)鏡頭可獲取某一個(gè)物體的兩張不同圖像,這兩張圖像的內(nèi)容不可能只有部分對(duì)應(yīng)。
若存在一個(gè)二維的3×3矩陣,與其中一幅圖像相乘可得到第二幅圖像,則該矩陣就稱(chēng)為兩幅圖像的單應(yīng)性矩陣。單應(yīng)性矩陣可以通過(guò)兩幅圖像中對(duì)應(yīng)的4個(gè)特征點(diǎn)來(lái)計(jì)算,一旦得到單應(yīng)性矩陣,就可以在已知原圖像中關(guān)鍵特征點(diǎn)坐標(biāo)時(shí),計(jì)算得到其在匹配圖像中的坐標(biāo)位置。如上述例子所示,程序使用IMAQ Match FeaturePoints計(jì)算得到的單應(yīng)性矩陣,在檢測(cè)圖像中標(biāo)出所匹配到的目標(biāo)范圍。
角點(diǎn)是圖像中一種特殊的特征點(diǎn),基于角點(diǎn)進(jìn)行圖像檢測(cè)和匹配,能在較難找到圖像特征的情況下,創(chuàng)建圖像拼接或圖像匹配應(yīng)用。常見(jiàn)的角點(diǎn)檢測(cè)方法有Harris、Shi-Tomasi和FAST等。計(jì)算兩幅圖像角點(diǎn)特征向量之間的漢明距離即可完成角點(diǎn)的匹配?;?個(gè)以上的匹配角點(diǎn),可求得關(guān)聯(lián)兩幅圖像的單應(yīng)性矩陣,進(jìn)而基于此矩陣,就能確定模板圖像的位置。
*博客內(nèi)容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀點(diǎn),如有侵權(quán)請(qǐng)聯(lián)系工作人員刪除。
逆變器相關(guān)文章:逆變器原理
逆變器相關(guān)文章:逆變器工作原理
電荷放大器相關(guān)文章:電荷放大器原理