知乎上看到一個(gè)話題——
目前火熱的 Deep Learning 會滅絕傳統(tǒng)的 SIFT / SURF 特征提取方法嗎姿鸿?
由于之前研究過SIFT和HOG這兩種傳統(tǒng)的特征提取方法蔫耽,故本篇文章先對SIFT和HOG作一綜述夺溢,并比較二者優(yōu)缺點(diǎn)臀防。之后为流,將SIFT和HOG同神經(jīng)網(wǎng)絡(luò)特征提取做一對比酸茴,淺談對上述問題的看法。如果能寫得快一些沼本,再簡單介紹其他幾種傳統(tǒng)的特征提取的方法——SURF噩峦、ORB、LBP抽兆、HAAR等等识补。
目錄
[1] SIFT(尺度不變特征變換)
[2] HOG(方向梯度直方圖)
[3] SIFT和HOG的比較
[4] SIFT/HOG與神經(jīng)網(wǎng)絡(luò)特征提取的比較
[5] 其他傳統(tǒng)特征提取的方法(SURF、ORB郊丛、LBP李请、HAAR)
先對幾個(gè)概念和問題做一個(gè)解釋:
- 圖像為什么要灰度化瞧筛?
- 識別物體厉熟,最關(guān)鍵的因素是梯度(SIFT/HOG),梯度意味著邊緣较幌,這是最本質(zhì)的部分揍瑟,而計(jì)算梯度,自然就用到灰度圖像了乍炉,可以把灰度理解為圖像的強(qiáng)度绢片。
- 顏色,易受光照影響岛琼,難以提供關(guān)鍵信息底循,故將圖像進(jìn)行灰度化,同時(shí)也可以加快特征提取的速度槐瑞。
- 仿射不變性
平面上任意兩條線熙涤,經(jīng)過仿射變換后,仍保持原來的狀態(tài)(比如平行的線還是平行困檩,相交的線夾角不變等)
- 什么是局部特征祠挫?局部特征應(yīng)該具有的特點(diǎn)?
局部特征從總體上說是圖像或在視覺領(lǐng)域中一些有別于其周圍的地方悼沿;局部特征通常是描述一塊區(qū)域等舔,使其能具有高可區(qū)分度;局部特征的好壞直接會決定著后面分類糟趾、識別是否會得到一個(gè)好的結(jié)果慌植。
局部特征應(yīng)該具有的特點(diǎn): 可重復(fù)性甚牲、可區(qū)分性、準(zhǔn)確性蝶柿、有效性(特征的數(shù)量鳖藕、特征提取的效率)、魯棒性(穩(wěn)定性只锭、不變性)著恩。
[1] SIFT(尺度不變特征變換)
1.1 SIFT特征提取的實(shí)質(zhì)
在不同的尺度空間上查找關(guān)鍵點(diǎn)(特征點(diǎn)),并計(jì)算出關(guān)鍵點(diǎn)的方向蜻展。SIFT所查找到的關(guān)鍵點(diǎn)是一些十分突出喉誊、不會因光照、仿射變換和噪音等因素而變化的點(diǎn)纵顾,如角點(diǎn)伍茄、邊緣點(diǎn)、暗區(qū)的亮點(diǎn)及亮區(qū)的暗點(diǎn)等施逾。
1.2 SIFT特征提取的方法
1. 構(gòu)建DOG尺度空間:
模擬圖像數(shù)據(jù)的多尺度特征敷矫,大尺度抓住概貌特征,小尺度注重細(xì)節(jié)特征汉额。通過構(gòu)建高斯金字塔(每一層用不同的參數(shù)σ做高斯模糊(加權(quán)))曹仗,保證圖像在任何尺度都能有對應(yīng)的特征點(diǎn),即保證尺度不變性蠕搜。
2. 關(guān)鍵點(diǎn)搜索和定位:
確定是否為關(guān)鍵點(diǎn)怎茫,需要將該點(diǎn)與同尺度空間不同σ值的圖像中的相鄰點(diǎn)比較,如果該點(diǎn)為max或min妓灌,則為一個(gè)特征點(diǎn)轨蛤。找到所有特征點(diǎn)后,要去除低對比度和不穩(wěn)定的邊緣效應(yīng)的點(diǎn)虫埂,留下具有代表性的關(guān)鍵點(diǎn)(比如祥山,正方形旋轉(zhuǎn)后變?yōu)榱庑危绻眠吘壸鲎R別掉伏,4條邊就完全不一樣缝呕,就會錯(cuò)誤;如果用角點(diǎn)識別岖免,則穩(wěn)定一些)岳颇。去除這些點(diǎn)的好處是增強(qiáng)匹配的抗噪能力和穩(wěn)定性。最后颅湘,對離散的點(diǎn)做曲線擬合话侧,得到精確的關(guān)鍵點(diǎn)的位置和尺度信息。
3. 方向賦值:
為了實(shí)現(xiàn)旋轉(zhuǎn)不變性闯参,需要根據(jù)檢測到的關(guān)鍵點(diǎn)的局部圖像結(jié)構(gòu)為特征點(diǎn)賦值瞻鹏。具體做法是用梯度方向直方圖悲立。在計(jì)算直方圖時(shí),每個(gè)加入直方圖的采樣點(diǎn)都使用圓形高斯函數(shù)進(jìn)行加權(quán)處理新博,也就是進(jìn)行高斯平滑薪夕。這主要是因?yàn)镾IFT算法只考慮了尺度和旋轉(zhuǎn)不變形,沒有考慮仿射不變性赫悄。通過高斯平滑原献,可以使關(guān)鍵點(diǎn)附近的梯度幅值有較大權(quán)重,從而部分彌補(bǔ)沒考慮仿射不變形產(chǎn)生的特征點(diǎn)不穩(wěn)定埂淮。注意姑隅,一個(gè)關(guān)鍵點(diǎn)可能具有多個(gè)關(guān)鍵方向,這有利于增強(qiáng)圖像匹配的魯棒性倔撞。
4. 關(guān)鍵點(diǎn)描述子的生成:
關(guān)鍵點(diǎn)描述子不但包括關(guān)鍵點(diǎn)讲仰,還包括關(guān)鍵點(diǎn)周圍對其有貢獻(xiàn)的像素點(diǎn)。這樣可使關(guān)鍵點(diǎn)有更多的不變特性痪蝇,提高目標(biāo)匹配效率鄙陡。在描述子采樣區(qū)域時(shí),需要考慮旋轉(zhuǎn)后進(jìn)行雙線性插值躏啰,防止因旋轉(zhuǎn)圖像出現(xiàn)白點(diǎn)趁矾。同時(shí),為了保證旋轉(zhuǎn)不變性丙唧,要以特征點(diǎn)為中心愈魏,在附近領(lǐng)域內(nèi)旋轉(zhuǎn)θ角觅玻,然后計(jì)算采樣區(qū)域的梯度直方圖想际,形成n維SIFT特征矢量(如128-SIFT)。最后溪厘,為了去除光照變化的影響胡本,需要對特征矢量進(jìn)行歸一化處理。
- 如果對上述純文字理解困難畸悬,可以參考文章:
SIFT特征提取算法
1.3 SIFT特征提取的優(yōu)點(diǎn)
- SIFT特征是圖像的局部特征侧甫,其對旋轉(zhuǎn)、尺度縮放蹋宦、亮度變化保持不變性披粟,對視角變化、仿射變換冷冗、噪聲也保持一定程度的穩(wěn)定性守屉;
- 獨(dú)特性(Distinctiveness)好,信息量豐富蒿辙,適用于在海量特征數(shù)據(jù)庫中進(jìn)行快速拇泛、準(zhǔn)確的匹配滨巴;
- 多量性,即使少數(shù)的幾個(gè)物體也可以產(chǎn)生大量的SIFT特征向量俺叭;
- 高速性恭取,經(jīng)優(yōu)化的SIFT匹配算法甚至可以達(dá)到實(shí)時(shí)的要求;
- 可擴(kuò)展性熄守,可以很方便的與其他形式的特征向量進(jìn)行聯(lián)合蜈垮;
- 需要較少的經(jīng)驗(yàn)主義知識,易于開發(fā)裕照。
1.4 SIFT特征提取的缺點(diǎn)
- 實(shí)時(shí)性不高窃款,因?yàn)橐粩嗟匾M(jìn)行下采樣和插值等操作;
- 有時(shí)特征點(diǎn)較少(比如模糊圖像)牍氛;
- 對邊緣光滑的目標(biāo)無法準(zhǔn)確提取特征(比如邊緣平滑的圖像晨继,檢測出的特征點(diǎn)過少,對圓更是無能為力)搬俊。
1.5 SIFT特征提取可以解決的問題:
目標(biāo)的自身狀態(tài)紊扬、場景所處的環(huán)境和成像器材的成像特性等因素影響圖像配準(zhǔn)/目標(biāo)識別跟蹤的性能。而SIFT算法在一定程度上可解決:
- 目標(biāo)的旋轉(zhuǎn)唉擂、縮放餐屎、平移(RST)
- 圖像仿射/投影變換(視點(diǎn)viewpoint)
- 光照影響(illumination)
- 目標(biāo)遮擋(occlusion)
- 雜物場景(clutter)
- 噪聲
近來不斷有人改進(jìn),其中最著名的有 SURF(計(jì)算量小玩祟,運(yùn)算速度快腹缩,提取的特征點(diǎn)幾乎與SIFT相同)和 CSIFT(彩色尺度特征不變變換,顧名思義空扎,可以解決基于彩色圖像的SIFT問題)藏鹊。
[2] HOG(方向梯度直方圖)
2.1 HOG特征提取的實(shí)質(zhì)
通過計(jì)算和統(tǒng)計(jì)圖像局部區(qū)域的梯度方向直方圖來構(gòu)成特征。Hog特征結(jié)合SVM分類器已經(jīng)被廣泛應(yīng)用于圖像識別中转锈,尤其在行人檢測中獲得了極大的成功盘寡。
2.2 HOG特征提取的方法
- 灰度化;
- 采用Gamma校正法對輸入圖像進(jìn)行顏色空間的標(biāo)準(zhǔn)化(歸一化)撮慨,目的是調(diào)節(jié)圖像的對比度竿痰,降低圖像局部的陰影和光照變化所造成的影響,同時(shí)可以抑制噪音的干擾砌溺;
- 計(jì)算圖像每個(gè)像素的梯度(包括大小和方向)影涉,主要是為了捕獲輪廓信息,同時(shí)進(jìn)一步弱化光照的干擾规伐;
- 將圖像劃分成小cells(例如6*6像素/cell)蟹倾;
- 統(tǒng)計(jì)每個(gè)cell的梯度直方圖(不同梯度的個(gè)數(shù)),即可形成每個(gè)cell的descriptor楷力;
- 將每幾個(gè)cell組成一個(gè)block(例如3*3個(gè)cell/block)喊式,一個(gè)block內(nèi)所有cell的特征descriptor串聯(lián)起來便得到該block的HOG特征descriptor孵户。
- 將圖像image內(nèi)的所有block的HOG特征descriptor串聯(lián)起來就可以得到該image(你要檢測的目標(biāo))的HOG特征descriptor了。這個(gè)就是最終的可供分類使用的特征向量了岔留。
- 如果對上述純文字理解困難夏哭,可以參考文章:
目標(biāo)檢測的圖像特征提取之(一)HOG特征
2.3 HOG特征提取特點(diǎn)
- 由于HOG是在圖像的局部方格單元上操作,所以它對圖像幾何的和光學(xué)的形變都能保持很好的不變性献联,這兩種形變只會出現(xiàn)在更大的空間領(lǐng)域上竖配。
- 在粗的空域抽樣、精細(xì)的方向抽樣以及較強(qiáng)的局部光學(xué)歸一化等條件下里逆,只要行人大體上能夠保持直立的姿勢进胯,可以容許行人有一些細(xì)微的肢體動作,這些細(xì)微的動作可以被忽略而不影響檢測效果原押。因此HOG特征是特別適合于做圖像中的人體檢測的胁镐。
[3] SIFT和HOG的比較
共同點(diǎn):都是基于圖像中梯度方向直方圖的特征提取方法
不同點(diǎn):
SIFT 特征通常與使用SIFT檢測器得到的興趣點(diǎn)一起使用。這些興趣點(diǎn)與一個(gè)特定的方向和尺度相關(guān)聯(lián)诸衔。通常是在對一個(gè)圖像中的方形區(qū)域通過相應(yīng)的方向和尺度變換后盯漂,再計(jì)算該區(qū)域的SIFT特征。
HOG特征的單元大小較小笨农,故可以保留一定的空間分辨率就缆,同時(shí)歸一化操作使該特征對局部對比度變化不敏感。
結(jié)合SIFT和HOG方法谒亦,可以發(fā)現(xiàn)SIFT對于復(fù)雜環(huán)境下物體的特征提取具有良好的特性竭宰;而HOG對于剛性物體的特征提取具有良好的特性。
筆者曾做過一個(gè)自然場景分類的實(shí)驗(yàn)份招,發(fā)現(xiàn)SIFT的準(zhǔn)確率比HOG高切揭,而如果檢測像人這種剛性的object,HOG的表現(xiàn)要比SIFT好脾还。
[4] SIFT/HOG與神經(jīng)網(wǎng)絡(luò)特征提取的比較
眾所周知伴箩,隨著深度學(xué)習(xí)的發(fā)展,通過神經(jīng)網(wǎng)絡(luò)提取特征得到了廣泛的應(yīng)用鄙漏,那么,神經(jīng)網(wǎng)絡(luò)提取的特征與傳統(tǒng)的SIFT/HOG等特征提取方法有什么不同呢棺蛛?
4.1 神經(jīng)網(wǎng)絡(luò)提取到的特征
我們知道怔蚌,對于一副圖像,像素級的特征沒有任何價(jià)值旁赊,而如果特征是一個(gè)具有結(jié)構(gòu)性(或者說有含義)的時(shí)候桦踊,比如摩托車是否具有車把手,是否具有車輪终畅,就很容易把摩托車和非摩托車區(qū)分籍胯,學(xué)習(xí)算法才能發(fā)揮作用竟闪。
早期,兩個(gè)科學(xué)家Bruno Olshausen和 David Field通過實(shí)驗(yàn)研究了這個(gè)問題杖狼,發(fā)現(xiàn)一個(gè)復(fù)雜圖像往往由一些基本結(jié)構(gòu)組成炼蛤。比如下圖:一個(gè)圖可通過用64種正交的edges(可以理解成正交的基本結(jié)構(gòu))來線性表示。比如樣例的x可以用1-64個(gè)edges中的三個(gè)按照0.8,0.3,0.5的權(quán)重調(diào)和而成蝶涩。而其他基本edges沒有貢獻(xiàn)理朋,均為0 。
具體實(shí)驗(yàn)可以參考文章:
Deep Learning(深度學(xué)習(xí))關(guān)于特征
小塊的圖形可以由基本edge構(gòu)成绿聘,更結(jié)構(gòu)化嗽上,更復(fù)雜的,就需要更高層次的特征表示熄攘,高層表達(dá)由低層表達(dá)的組合而成兽愤。如圖所示:
這就是神經(jīng)網(wǎng)絡(luò)每層提取到的特征。由于是通過神經(jīng)網(wǎng)絡(luò)自動學(xué)習(xí)到了挪圾,因此也是無監(jiān)督的特征學(xué)習(xí)過程(Unsupervised Feature Learning) 烹看。直觀上說,就是找到make sense的小patch再將其進(jìn)行combine洛史,就得到了上一層的feature惯殊,遞歸地向上learning feature。在不同object上做training是也殖,所得的edge basis 是非常相似的土思,但object parts和models 就會completely different了。
4.2 傳統(tǒng)特征提取方法與神經(jīng)網(wǎng)絡(luò)特征提取的比較
觀點(diǎn)1:傳統(tǒng)特征提取方法的研究過程和思路是非常有用的忆嗜,因?yàn)檫@些方法具有較強(qiáng)的可解釋性己儒,它們對設(shè)計(jì)機(jī)器學(xué)習(xí)方法解決此類問題提供啟發(fā)和類比。有部分人認(rèn)為(也有部分人反對)現(xiàn)有的卷積神經(jīng)網(wǎng)絡(luò)與這些特征提取方法有一定類似性捆毫,因?yàn)槊總€(gè)濾波權(quán)重實(shí)際上是一個(gè)線性的識別模式闪湾,與這些特征提取過程的邊界與梯度檢測類似。同時(shí)绩卤,池化(Pooling)的作用是統(tǒng)籌一個(gè)區(qū)域的信息途样,這與這些特征提取后進(jìn)行的特征整合(如直方圖等)類似。通過實(shí)驗(yàn)發(fā)現(xiàn)卷積網(wǎng)絡(luò)開始幾層實(shí)際上確實(shí)是在做邊緣和梯度檢測濒憋。不過事實(shí)上卷積網(wǎng)絡(luò)發(fā)明的時(shí)候何暇,還沒有這些特征提取方法。
觀點(diǎn)2: 深度學(xué)習(xí)的數(shù)據(jù)需求量大對于視覺來說是個(gè)偽命題凛驮。許多研究成果已經(jīng)表明深度學(xué)習(xí)訓(xùn)練得到的模型具有很強(qiáng)的遷移能力裆站,因此在大數(shù)據(jù)集上訓(xùn)練完成的模型只要拿過來在小數(shù)據(jù)集上用就可以,不需要完全重新訓(xùn)練。這種方式在小數(shù)據(jù)集上的結(jié)果往往也比傳統(tǒng)方法好宏胯。
觀點(diǎn)3:還是需要重新訓(xùn)練的羽嫡,只能說大數(shù)據(jù)集訓(xùn)練好的模型提供了一個(gè)比較好的參數(shù)初始化。而且卷積前幾層提取特征僅僅是對分類問題是對的肩袍,但是對于一些dense prediction還是不一樣杭棵,畢竟提取特征不一定有用,還是task dependent了牛。
觀點(diǎn)4:深度學(xué)習(xí)是一種自學(xué)習(xí)的特征表達(dá)方法颜屠,比SIFT/HOG這些依靠先驗(yàn)知識設(shè)計(jì)的feature的表達(dá)效果高。早在13年大家都發(fā)現(xiàn)神經(jīng)網(wǎng)絡(luò)的最后一層的local特征和SIFT性質(zhì)差不多鹰祸,但是表達(dá)能力強(qiáng)太多甫窟。SIFT能做的事情CNN都能做,表達(dá)效果也強(qiáng)蛙婴,那深度學(xué)習(xí)取代SIFT是遲早的事情(或者說已經(jīng)發(fā)生的事情)粗井。深度神經(jīng)網(wǎng)絡(luò)識別率的提高不需要建立在需求大量訓(xùn)練樣本的基礎(chǔ)上,拿pre-train好的模型直接用就可以了街图。在一些沒有訓(xùn)練樣本的應(yīng)用(圖像分割(image stithing)/ 立體匹配(stereo mathing)) 浇衬,可以把卷積層的activation提取出來做stitching的local feature(感覺是一個(gè)可以探索的方向)。未來還有SIFT/SURF這種固定特征提取算法的生存空間嗎餐济?除非是嵌入式這種計(jì)算資源極端受限的情況耘擂,但是現(xiàn)在大家都在試著implement CNN FPGA甚至ASIC了。
觀點(diǎn)5:2016年ECCV上舉辦的一個(gè)local feature的工作會絮姆,發(fā)現(xiàn)在核心匹配問題上醉冤,CNN并沒有什么突破性的進(jìn)展。在Oxford大學(xué)的VGG組提供的Hpatch數(shù)據(jù)集上篙悯,發(fā)現(xiàn)rootsiftpca效果最好蚁阳,如圖:
那么提出兩個(gè)問題:(1)現(xiàn)在流行的特征學(xué)習(xí)方法siamese或triplet等結(jié)構(gòu)是否缺失了什么? (2)雖然CNN可以挖掘patch里面包含的信息并建立對于復(fù)雜幾何和光照變化的不變性鸽照,但是這種學(xué)習(xí)到的不變性是否過度依賴于數(shù)據(jù)而無法有效泛化到真實(shí)匹配場景中所遇到的影像之間的復(fù)雜變化呢螺捐?
- 可以參考以下知乎話題,查看更多觀點(diǎn):
https://www.zhihu.com/question/48315686
[5] 其他傳統(tǒng)特征提取的方法(SURF矮燎、ORB定血、LBP、HAAR)
SURF漏峰、ORB糠悼、LBP可以參考文章:
圖像特征檢測描述(一):SIFT、SURF浅乔、ORB、HOG、LBP特征的原理概述及OpenCV代碼實(shí)現(xiàn)
5.1 SURF
前面提到SITF的缺點(diǎn)是如果不借助硬件加速或?qū)iT的圖像處理器很難達(dá)到實(shí)現(xiàn)靖苇,所以人們就要想辦法對SITF算子進(jìn)行改進(jìn)席噩,SURF算子便是對SIFT的改進(jìn),不過改進(jìn)之后在算法的運(yùn)行時(shí)間上還是沒有質(zhì)的飛躍贤壁。后面要介紹的ORB特征描述算子在運(yùn)行時(shí)間上才是一種質(zhì)的飛躍悼枢。
SURF主要是把SIFT中的某些運(yùn)算作了簡化。SURF把SIFT中的高斯二階微分的模板進(jìn)行了簡化脾拆,使得卷積平滑操作僅需要轉(zhuǎn)換成加減運(yùn)算馒索,這樣使得SURF算法的魯棒性好且時(shí)間復(fù)雜度低。SURF最終生成的特征點(diǎn)的特征向量維度為64維名船。
5.2 ORB
ORB特征描述算法的運(yùn)行時(shí)間遠(yuǎn)優(yōu)于SIFT與SURF绰上,可用于實(shí)時(shí)性特征檢測。ORB特征基于FAST角點(diǎn)的特征點(diǎn)檢測與描述技術(shù)渠驼,具有尺度與旋轉(zhuǎn)不變性蜈块,同時(shí)對噪聲及透視仿射也具有不變性,良好的性能使得用ORB在進(jìn)行特征描述時(shí)的應(yīng)用場景十分廣泛迷扇。
ORB特征檢測主要分為以下兩個(gè)步驟:
①方向FAST特征點(diǎn)檢測: FAST角點(diǎn)檢測是一種基于機(jī)器學(xué)習(xí)的快速角點(diǎn)特征檢測算法百揭,具有方向的FAST特征點(diǎn)檢測是對興趣點(diǎn)所在圓周上的16個(gè)像素點(diǎn)進(jìn)行判斷,若判斷后的當(dāng)前中心像素點(diǎn)為暗或亮蜓席,將候定其是否為角點(diǎn)器一。FAST角點(diǎn)檢測計(jì)算的時(shí)間復(fù)雜度小,檢測效果突出厨内。FAST角點(diǎn)檢測為加速算法實(shí)現(xiàn)祈秕,通常先對回周上的點(diǎn)集進(jìn)行排序,排序使得其計(jì)算過程大大得到了優(yōu)化隘庄。FAST對多尺度特性的描述是還是通過建立圖像金字塔實(shí)現(xiàn)的踢步,而對于旋轉(zhuǎn)不變性即方向的特征則引入灰度質(zhì)心法用于描述特征點(diǎn)的方向。
②BRIEF特征描述: BRIEF描述子主要是通過隨機(jī)選取興趣點(diǎn)周圍區(qū)域的若干點(diǎn)來組成小興趣區(qū)域丑掺,將這些小興趣區(qū)域的灰度二值化并解析成二進(jìn)制碼串获印,將串特征作為該特征點(diǎn)的描述子,BRIEF描述子選取關(guān)鍵點(diǎn)附近的區(qū)域并對每一位比較其強(qiáng)度大小街州,然后根據(jù)圖像塊中兩個(gè)二進(jìn)制點(diǎn)來判斷當(dāng)前關(guān)鍵點(diǎn)編碼是0還是1.因?yàn)锽RIEF描述子的所有編碼都是二進(jìn)制數(shù)的兼丰,這樣就節(jié)省了計(jì)算機(jī)存儲空間。
5.3 LBP
LBP(Local Binary Pattern)唆缴,局部二值模式是一種描述圖像局部紋理的特征算子鳍征,具有旋轉(zhuǎn)不變性與灰度不變性等顯著優(yōu)點(diǎn)。LBP特征描述的是一種灰度范圍內(nèi)的圖像處理操作技術(shù)面徽,針對的是輸入源為8位或16位的灰度圖像艳丛。LBP特征是高效的圖像特征分析方法匣掸,經(jīng)過改進(jìn)與發(fā)展已經(jīng)應(yīng)用于多個(gè)領(lǐng)域之中,特別是人臉識別氮双、表情識別碰酝、行人檢測領(lǐng)域已經(jīng)取得了成功。LBP特征將窗口中心點(diǎn)與鄰域點(diǎn)的關(guān)系進(jìn)行比較戴差,重新編碼形成新特征以消除對外界場景對圖像的影響送爸,因此一定程度上解決了復(fù)雜場景下(光照變換)特征描述問題。
LBP算法根據(jù)窗口領(lǐng)域的不同分為經(jīng)曲LBP和圓形LBP兩種暖释。下面分別介紹:
①經(jīng)典LBP: 經(jīng)典LBP算子窗口為3×3的正方形窗口袭厂,以窗口中心像素為閾值,將其相鄰8領(lǐng)域像素灰度與中心像素值比較球匕,若中心像素值小于周圍像素值纹磺,則該中心像素位置被標(biāo)記為1,否則為0(顯然這種規(guī)則下谐丢,對于中心點(diǎn)大于或等于這兩種情況爽航,算法無法區(qū)分,后續(xù)經(jīng)過改進(jìn)引入LBP+與LBP-因子用來區(qū)分這兩種情況)乾忱。圖像經(jīng)過這種遍歷操作后讥珍,圖像就被二值化了,每一個(gè)窗口中心的8鄰域點(diǎn)都可以由8位二進(jìn)制數(shù)來表示窄瘟,即可產(chǎn)生256種LBP碼衷佃,這個(gè)LBP碼值可以用來反映窗口的區(qū)域紋理信息。LBP具體在生成的過程中蹄葱,先將圖像劃分為若干個(gè)子區(qū)域氏义,子區(qū)域窗口可根據(jù)原圖像的尺寸進(jìn)行調(diào)整,而不一定非得為3×3的正方形窗口图云。一般對于512×640的圖像惯悠,子區(qū)域窗口區(qū)域選取大小為16×16。
②圓形LBP: 經(jīng)典LBP用正方形來描述圖像的紋理特征竣况,其缺點(diǎn)是難以滿足不同尺寸和頻率的需求克婶。Ojala等人對經(jīng)典LBP進(jìn)行了改進(jìn),提出了將3×3的正方形窗口領(lǐng)域擴(kuò)展到任意圓形領(lǐng)域丹泉。由于圓形LBP采樣點(diǎn)在圓形邊界上情萤,那么必然會導(dǎo)致部分計(jì)算出來的采樣點(diǎn)坐標(biāo)不是整數(shù),因此這里就需要對得到的坐標(biāo)像素點(diǎn)值進(jìn)行處理摹恨,常用的處理方法是最近鄰插值或雙線性插值筋岛。
放一張SIFT/HOG/LBP優(yōu)缺點(diǎn)、適用范圍對比圖:
5.4 HAAR
人臉檢測最為經(jīng)典的算法Haar-like特征+Adaboost晒哄。這是最為常用的物體檢測的方法(最初用于人臉檢測)睁宰,也是用的最多的方法肪获。
訓(xùn)練過程: 輸入圖像->圖像預(yù)處理->提取特征->訓(xùn)練分類器(二分類)->得到訓(xùn)練好的模型;
測試過程:輸入圖像->圖像預(yù)處理->提取特征->導(dǎo)入模型->二分類(是不是所要檢測的物體)勋陪。
Haar-like特征是很簡單的贪磺,無非就是那么幾種硫兰,如兩矩形特征诅愚、三矩形特征、對角特征劫映。后來违孝,還加入了邊緣特征、線特征泳赋、中心環(huán)繞特征等雌桑。使用積分圖可以加速計(jì)算特征。最后祖今,使用集成的方法Adaboost進(jìn)行訓(xùn)練校坑。
- 具體細(xì)節(jié)可以參考文章:
特征提取之Haar特征- 再附一個(gè)Haar和HOG比較的問題:
為什么在行人檢測中,HOG特征比Haar特征更精確千诬?
本篇文章到此結(jié)束耍目,有什么錯(cuò)誤歡迎指正!
補(bǔ)充:
1徐绑、SIFT / HOG 不同點(diǎn): SIFT提取的關(guān)鍵點(diǎn)是角點(diǎn)邪驮,HOG提取的是邊緣特征。
2傲茄、傳統(tǒng)特征提取 / CNN特征提取不同點(diǎn):傳統(tǒng)特征提取方法的檢測算子一般是人為設(shè)計(jì)好的毅访,是經(jīng)過大量的先驗(yàn)知識總結(jié)得到的;CNN特征提取相當(dāng)于在訓(xùn)練一個(gè)個(gè)filter(過濾器脊僚、卷積核)揪荣,這些filter相當(dāng)于傳統(tǒng)特征提取方法中的檢測算子坏快。因此,CNN特征提取是利用神經(jīng)網(wǎng)絡(luò)的自主學(xué)習(xí)得到的守呜。