图像局部显著性—点特征(SIFT为例)
????? ? 基于古老的Marr視覺理論,視覺識別和場景重建的基礎(chǔ)即第一階段為局部顯著性探測。探測到的主要特征為直覺上可刺激底層視覺的局部顯著性——特征點(diǎn)、特征線、特征塊。
??????? SalientDetection?已經(jīng)好就沒有復(fù)習(xí)過了,DNN在識別領(lǐng)域的超常表現(xiàn)在各個公司得到快速應(yīng)用,在ML上耗了太多時(shí)間,求職時(shí)被CV的知識點(diǎn)虐死...
點(diǎn)探測總結(jié)(SIft、PCA-SIft、Surf、GLOH、Brief、Brisk、ORB、Freak)
?????? 特征點(diǎn)尋找的準(zhǔn)則之一是算法的通用準(zhǔn)則—泛化性能,即在一個場景中中適用,在另一個場景中也具有相似的效果。而在CV領(lǐng)域,專門對于圖像處理問題,應(yīng)對圖像的縮放、平移、旋轉(zhuǎn)、明暗問題,進(jìn)而提出了特征描述算法的相應(yīng)要求:縮放不變性、平移不變性、旋轉(zhuǎn)不變性和光照不變性。
?????? 廣受好評SIFT特征在綜合評價(jià)上幾乎達(dá)到算法極限,其中圖像金字塔、計(jì)算圖像梯度尋找主方向、梯度歸一化,分別應(yīng)對縮放不變、旋轉(zhuǎn)不變、和光照不變,而同時(shí)局部特征用于模式識別不需要考慮相對平移的影響。參考 原文鏈接(SIFT):http://www.cnblogs .com/cfantaisie/archive/2011/06/14/2080917.html ,文章有修改!為個人意見。
?????? 參考以前的一篇:Sift算法總結(jié):用于圖像搜索
?????? 推薦搜索系列:http://blog.csdn.net/cserchen/article/category/785155?? 。論文下載見文章末尾的參考資料鏈接
?幾個主要的特征點(diǎn)算法年代發(fā)展表:
?????? 1.? 1999年的SIFT(ICCV 1999,并改進(jìn)發(fā)表于IJCV 2004,本文描述),尺度非相關(guān)特征提取;
?????? 2.? 2005年的GLOH 特征(2005年的PAMI期刊);GLOH采用圓形劃分取代SIFT的正方形區(qū)間劃分。
?????? 3.? 2006年的SURF(2006年的ECCV);SURF算法是對SIFT算法加強(qiáng)版,同時(shí)加速的具有魯棒性的特征。第二、標(biāo)準(zhǔn)的SURF算子比SIFT算子快好幾倍,并且在多幅圖片下具有更好的魯棒性。SURF最大的特征在于采用了harr特征以及積分圖像integral image的概念,這大大加快了程序的運(yùn)行速度。
?????? 4.? 2010年的Brief特征(ECCV2010 ); Brief:Binary Robust Independent Elementary Features.
??? ?? 5.? 2011年的brisk算法(ICCV2011);BRISK算法主要利用FAST9-16進(jìn)行特征點(diǎn)檢測(為什么是主要?因?yàn)橛玫揭淮蜦AST5-8),可參見博客:FAST特征點(diǎn)檢測算法。要解決尺度不變性,就必須在尺度空間進(jìn)行特征點(diǎn)檢測,于是BRISK算法中構(gòu)造了圖像金字塔進(jìn)行多尺度表達(dá)。
??????? 補(bǔ)充:2006年提出的fast作為一種角點(diǎn)檢測的方法,不涉及特征子描述。
??????? 6.? 2011年的ORB特征(ICCV2011);ORB是是ORiented Brief 的簡稱,對Brief的特定性質(zhì)進(jìn)行了改進(jìn)。
??? ? ? 7.? 2012年的freak算法(CVPR2012);Fast Retina Keypoint 論文。與brisk算法有相似之處,是在BRISK算法上的改進(jìn)。
?
SIFT特征
?? ??? Sift是David Lowe于1999年提出的局部特征描述子,并于2004年進(jìn)行了更深入的發(fā)展和完善。Sift特征匹配算法可以處理兩幅圖像之間發(fā)生平移、旋轉(zhuǎn)、仿射變換情況下的匹配問題,具有很強(qiáng)的匹配能力。在Mikolajczyk對包括Sift算子在內(nèi)的十種局部描述子所做的不變性對比實(shí)驗(yàn)中,Sift及其擴(kuò)展算法已被證實(shí)在同類描述子中具有最強(qiáng)的健壯性。
一、Sift特征點(diǎn)生成的主要步驟?
???? ? ? 1)、尺度空間的生成;
???????? 2)、檢測尺度空間極值點(diǎn);
??? ? ?? 3)、精確定位極值點(diǎn);
?? ? ? ? 4)、為每個關(guān)鍵點(diǎn)指定方向參數(shù);
?? ? ? ? 5)、關(guān)鍵點(diǎn)描述子的生成。
?1.尺度空間概念:在一個合適的范圍內(nèi),使用高斯卷積核模擬圖像的多尺度化
???????
?????????
L(x,y,σ), σ= 1.6 a good tradeoff
?????????
?? D(x,y,σ), σ= 1.6 a good tradeoff
?
?????????
?? ? 關(guān)于尺度空間的理解說明:圖中的2是必須的,尺度空間是連續(xù)的。
??????? 注釋:高斯核通過調(diào)整核的參數(shù),具有縮放到多尺度空間保持信息穩(wěn)定的性質(zhì),但本質(zhì)上需要圖像像素性質(zhì)遵循高斯分布,而在大多數(shù)情況下,這種情況是滿足的。
????? ? 在 Lowe的論文中 ,? 將第0層的初始尺度定為1.6,圖片的初始尺度定為0.5. 在檢測極值點(diǎn)前對原始圖像的高斯平滑以致圖像丟失高頻信息,所以 Lowe 建議在建立尺度空間前首先對原始圖像長寬擴(kuò)展一倍,以保留原始圖像信息,增加特征點(diǎn)數(shù)量。尺度越大圖像越模糊。
???????????
????????????????????????next octave 是由 first octave 降采樣得到(如2)
?,
??尺度空間的所有取值,s為每組層數(shù),一般為3~5
2、檢測空間極值點(diǎn)
??????????
同一組中的相鄰尺度(由于k的取值關(guān)系,肯定是上下層)之間進(jìn)行尋找
?????????
在極值比較的過程中,每一組圖像的首末兩層是無法進(jìn)行極值比較的,為了滿足尺度變化的連續(xù)性,我們在每一組圖像的頂層繼續(xù)用高斯模糊生成了?3 幅圖像,高斯金字塔有每組S+3層圖像。DOG金字塔每組有S+2層圖像.
3、精確定位極值點(diǎn)
?????
?????????????????????????????????
? ? If ratio > (r+1)2/(r), throw it out (SIFT uses r=10)
???????????????? 表示DOG金字塔中某一尺度的圖像x方向求導(dǎo)兩次
?????? 通過擬和三維二次函數(shù)以精確確定關(guān)鍵點(diǎn)的位置和尺度(達(dá)到亞像素精度)?
?
?4、主方向的確定
直方圖中的峰值就是主方向,其他的達(dá)到最大值80%的方向可作為輔助方向
? ?? Identify peak and assign orientation and sum of magnitude to key point The user may choose a threshold to exclude key points based on their assigned sum of magnitudes.
?????? 利用關(guān)鍵點(diǎn)鄰域像素的梯度方向分布特性為每個關(guān)鍵點(diǎn)指定方向參數(shù),使算子具備旋轉(zhuǎn)不變性。以關(guān)鍵點(diǎn)為中心的鄰域窗口內(nèi)采樣,并用直方圖統(tǒng)計(jì)鄰域像素的梯度方向。梯度直方圖的范圍是0~360度,其中每10度一個柱,總共36個柱。隨著距中心點(diǎn)越遠(yuǎn)的領(lǐng)域其對直方圖的貢獻(xiàn)也響應(yīng)減小.Lowe論文中還提到要使用高斯函數(shù)對直方圖進(jìn)行平滑,減少突變的影響。
?????????
??????
??????????????關(guān)鍵點(diǎn)描述子的生成步驟
?????????
通過對關(guān)鍵點(diǎn)周圍圖像區(qū)域分塊,計(jì)算塊內(nèi)梯度直方圖,生成具有獨(dú)特性的向量,這個向量是該區(qū)域圖像信息的一種抽象,具有唯一性。
5、特征描述子生成
?????
??????每一個小格都代表了特征點(diǎn)鄰域所在的尺度空間的一個像素 ,箭頭方向代表了像素梯度方向,箭頭長度代表該像素的幅值。然后在4×4的窗口內(nèi)計(jì)算8個方向的梯度方向直方圖。繪制每個梯度方向的累加可形成一個種子點(diǎn)。
???????
?????? 每個直方圖有8方向的梯度方向,每一個描述符包含一個位于關(guān)鍵點(diǎn)附近的四個直方圖數(shù)組.這就導(dǎo)致了SIFT的特征向量有128維.(先是一個4×4的來計(jì)算出一個直方圖,每個直方圖有8個方向。所以是4×4×8=128維)將這個向量歸一化之后,就進(jìn)一步去除了光照的影響。
? ? ? ? ???????????????
??????????????????????????????????????????????????????????????????????????????????????????????????????? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 旋轉(zhuǎn)為主方向 ?
?6.計(jì)算過程綜述:
?
?
?
?
?
?
?
二、Sift特征總結(jié)(概念補(bǔ)充)
? 什么是局部特征?
?局部特征從總體上說是圖像或在視覺領(lǐng)域中一些有別于其周圍的局部地方,約束是Hash特性;
?局部特征通常是描述一塊區(qū)域,使其能具有高可區(qū)分度,意味著局部顯著性;
?局部特征的好壞直接會決定著后面使用局部特征進(jìn)行分類、識別是否會得到一個好的結(jié)果。
?局部特征需具備的特性?
?重復(fù)性,這是算法的一般特性,默認(rèn)遵循h(huán)ash性質(zhì)。
?可區(qū)分性,可分離性,用于模式分類的一般基準(zhǔn)。
?準(zhǔn)確性,描述準(zhǔn)確性,即hash映射的直觀性能,即一定保證近鄰哈希。
?數(shù)量以及效率,hash壓縮函數(shù)分布的均勻性,此性能影響到后續(xù)的學(xué)習(xí)效果。
?不變性:hash映射的近鄰特性,這標(biāo)識了近鄰hash函數(shù)本質(zhì)要求,即近鄰的點(diǎn)在映射到另一個空間也應(yīng)該是近鄰。
?局部特征提取算法-SIFT
?SIFT算法由D.G.Lowe 1999年提出,2004年完善總結(jié)。后來Y.Ke將其描述子部分用PCA代替直方圖的方式,對其進(jìn)行改進(jìn)。
? ?SIFT算法是一種提取局部特征的算法,在尺度空間尋找極值點(diǎn),提取位置,尺度,旋轉(zhuǎn)不變量
?SIFT特征是圖像的局部特征,其對旋轉(zhuǎn)、尺度縮放、亮度變化保持不變性,對視角變化、仿射變換、噪聲也保持一定程度的穩(wěn)定性。
?獨(dú)特性好,信息量豐富,適用于在海量特征數(shù)據(jù)庫中進(jìn)行快速、準(zhǔn)確的匹配。
?多量性,即使少數(shù)的幾個物體也可以產(chǎn)生大量SIFT特征向量,這涉及到fast角點(diǎn)檢測的要求。
?可擴(kuò)展性,可以很方便的與其他形式的特征向量進(jìn)行聯(lián)合。
尺度空間理論
?尺度空間理論目的是模擬圖像數(shù)據(jù)的多尺度特征
?其基本思想是在視覺信息圖像信息處理模型中引入一個被視為尺度的參數(shù), 通過連續(xù)變化尺度參數(shù)獲得不同尺度下的視覺處理信息, 然后綜合這些信息以深入地挖掘圖像的本質(zhì)特征。
描述子生成的細(xì)節(jié)
?以極值點(diǎn)為中心點(diǎn),并且以此點(diǎn)所處于的高斯尺度sigma值作為半徑因子。對于遠(yuǎn)離中心點(diǎn)的梯度值降低對其所處區(qū)域的直方圖的貢獻(xiàn),防止一些突變的影響。
?每個極值點(diǎn)對其進(jìn)行三線性插值,這樣可以把此極值點(diǎn)的貢獻(xiàn)均衡的分到直方圖中相鄰的柱子上
歸一化處理
?在求出4*4*8的128維特征向量后,此時(shí)SIFT特征向量已經(jīng)去除了尺度變化、旋轉(zhuǎn)等幾何變形因素的影響。而圖像的對比度變化相當(dāng)于每個像素點(diǎn)乘上一個因子,光照變化是每個像素點(diǎn)加上一個值,但這些對圖像歸一化的梯度沒有影響。因此將特征向量的長度歸一化,則可以進(jìn)一步去除光照變化的影響。
?對于一些非線性的光照變化,SIFT并不具備不變性,但由于這類變化影響的主要是梯度的幅值變化,對梯度的方向影響較小,因此作者通過限制梯度幅值的值來減少這類變化造成的影響。
?
PCA-SIFT算法
? PCA-SIFT與標(biāo)準(zhǔn)SIFT有相同的 亞像素位置 ,尺度 和 主方向。但在第4步 計(jì)算描述子的 設(shè)計(jì),采用的 主成分分析 的技術(shù)。
?下面介紹一下其特征描述子計(jì)算的部分:
?不用原先的4*4*8的特征描述,而用特征點(diǎn)周圍的41×41的像斑計(jì)算它的主元,并用PCA-SIFT將原來的2×39×39(或者XY兩個方向)即3042維的向量降成20或X維,以達(dá)到更精確的表示方式。
?它的主要步驟為,對每一個關(guān)鍵點(diǎn):在關(guān)鍵點(diǎn)周圍提取一個41×41的像斑于給定的尺度,旋轉(zhuǎn)到它的主方向?;計(jì)算39×39水平和垂直的梯度,形成一個大小為3042的矢量;用預(yù)先計(jì)算好的投影矩陣n×3042與此矢量相乘;這樣生成一個大小為n的PCA-SIFT描述子。
?????? 注意:主成分分析的劣勢在于其真正地實(shí)現(xiàn)局部空間壓縮,所以其泛化性能也一定會產(chǎn)生損失。
三、工程師角度理解SIFT(目的驅(qū)動)
SIft的主要價(jià)值在于:
??????? 縮放不變性:這一點(diǎn)?以來尺度空間理論來解決,使用 高斯濾波 理論上可以解決尺度上的差異。在特征點(diǎn)檢測過程中,受到尺度的影響不大;在特征點(diǎn)的描述上,仍然要考慮到尺度對特征向量的影響。
????? ? 旋轉(zhuǎn)不變性:通過對關(guān)鍵點(diǎn)指定主方向來實(shí)現(xiàn)。在檢測到的特征點(diǎn)鄰域內(nèi),尋找局部的梯度方向,作為主方向即世界坐標(biāo)軸。圖像局部旋轉(zhuǎn)后以世界坐標(biāo)軸標(biāo)定,可以重新對齊,即實(shí)現(xiàn)旋轉(zhuǎn)不變。
????????特征點(diǎn)位置確定:位置確定是Sift特征算法可以改進(jìn)的地方,并且應(yīng)對與不同的場景要使用不同的方法,即不是sift特征的特異之處。
????????PCA—sift:在超量圖像檢測的場景下,PCA化并不一定能取得好的效果,也有可能適得其反。
四、點(diǎn)-區(qū)塊檢測對比總結(jié):
??????? 參考鏈接:特征提取方法 SIFT,PCA-SIFT,GLOH,SURF 對比總結(jié)
??????? 總結(jié)論文:A comparison of SIFT, PCA-SIFT and SURF 對三種方法給出了性能上的比較,源圖片來源于Graffiti datase,對原圖像進(jìn)行尺度、旋轉(zhuǎn)、模糊、亮度變化、仿射變換等變化后,再與原圖像進(jìn)行匹配,統(tǒng)計(jì)匹配的效果。效果以可重復(fù)出現(xiàn)性為評價(jià)指標(biāo)。
| method | Time | Scale | Rotation | Blur | Illumination | Affine |
| Sift | common | best | best | common | common | good |
| PCA-sift | good | good | good | best | good | best |
| Surf | best | common | common | good | best | good |
??????? 由此可見,SIFT在尺度和旋轉(zhuǎn)變換的情況下效果最好,SURF在亮度變化下匹配效果最好,在模糊方面優(yōu)于SIFT,而尺度和旋轉(zhuǎn)的變化不及SIFT,旋轉(zhuǎn)不變上比SIFT差很多。速度上看,SURF是SIFT速度的3倍。
?????? ? 采用NN作為匹配策略的特征描述子性能測評結(jié)果:
????????????
?
五、總結(jié)
??????????????? 暫無...............................
參考資料:
Sift Wiki百科:https://en.wikipedia.org/wiki/Scale-invariant_feature_transform
?? ? Sift 原始論文:Lowe, David G. (1999)."Object recognition from local scale-invariant features" (PDF). Proceedings of the International Conference on Computer Vision.2. pp.?1150–1157.doi:10.1109/ICCV.1999.790410.
????? Sift 改進(jìn)和發(fā)展:Lowe, David G. (2004)."Distinctive Image Features from Scale-Invariant Keypoints". International Journal of Computer Vision.60 (2): 91–110.doi:10.1023/B:VISI.0000029664.99615.94.
?GLOH Wiki百科: https://en.wikipedia.org/wiki/GLOH?
???? GLOH原始論文: Krystian Mikolajczyk and Cordelia Schmid "A performance evaluation of local descriptors", IEEE Transactions on Pattern Analysis and Machine Intelligence, 10, 27, pp 1615--1630, 2005.
?Surf 原始論文: Herbert Bay, Andreas Ess, Tinne Tuytelaars, and Luc Van Gool, "Speeded Up Robust Features", ETH Zurich, Katholieke Universiteit Leuven( SURF was first presented byHerbert Bay, et al., at the 2006European Conference on Computer Vision.).
BRISK 原始論文: 《BRISK:Binary Robust Invariant Scalable Keypoints》ICCV2011文章
Freak? 原始論文:《FREAK: Fast Retina Keypoint》CVPR2012
Surf 原始論文:Herbert Bay, Andreas Ess, Tinne Tuytelaars, Luc Van Gool, "SURF: Speeded Up Robust Features", Computer Vision and Image Understanding (CVIU), Vol. 110, No. 3, pp. 346--359, 2008.
?
總結(jié)
以上是生活随笔為你收集整理的图像局部显著性—点特征(SIFT为例)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: dnf五陵怎么玩 五陵怎么去怎么开启
- 下一篇: VTK:VTK嵌入MFC成功