導(dǎo)讀
本文先從圖像特征開始介紹,后分點(diǎn)闡述特征子和描述子的相關(guān)分類及特點(diǎn),最后以圖像展示了特征匹配的關(guān)系,完整的敘述了整個(gè)建模過程中特征點(diǎn)檢測與匹配的知識(shí)。
一、圖像特征介紹
1、圖像特征點(diǎn)的應(yīng)用
- 相機(jī)標(biāo)定:棋盤格角點(diǎn)陰影格式固定,不同視角檢測到點(diǎn)可以得到匹配結(jié)果,標(biāo)定相機(jī)內(nèi)參
- 圖像拼接:不同視角匹配恢復(fù)相機(jī)姿態(tài)
- 稠密重建:間接使用特征點(diǎn)作為種子點(diǎn)擴(kuò)散匹配得到稠密點(diǎn)云
- 場景理解:詞袋方法,特征點(diǎn)為中心生成關(guān)鍵詞袋(關(guān)鍵特征)進(jìn)行場景識(shí)別

2、圖像特征點(diǎn)的檢測方法
- 人工設(shè)計(jì)檢測算法:sift、surf、orb、fast、hog
- 基于深度學(xué)習(xí)的方法:人臉關(guān)鍵點(diǎn)檢測、3D match點(diǎn)云匹配
- 場景中的人工標(biāo)記點(diǎn):影視場景背景簡單的標(biāo)記,特殊二維碼設(shè)計(jì)(快速,精度低)

3、圖像特征點(diǎn)的基本要求
- 差異性:視覺上場景上比較顯著點(diǎn),灰度變化明顯,邊緣點(diǎn)等
- 重復(fù)性:同一個(gè)特征在不同視角中重復(fù)出現(xiàn),旋轉(zhuǎn)、光度、尺度不變性

二、特征檢測子
1、Harris 角點(diǎn)檢測(早期,原理簡單,視頻跟蹤,快速檢測)
夢寐mayshine:角點(diǎn)檢測(2) - harris算子 - 理論與Python代碼
https://zhuanlan.zhihu.com/p/90393907

- 動(dòng)機(jī):特征點(diǎn)具有局部差異性
- 以每個(gè)點(diǎn)為中心取一個(gè)窗口,例如,5×5/7×7的像素,描述特征點(diǎn)周圍環(huán)境
- 此點(diǎn)具有差異性->窗口往任意方向移動(dòng),則周圍環(huán)境變化較大->具有局部差異性
- 最小二乘線性系統(tǒng)
- 加和符號(hào):表示窗口內(nèi)每個(gè)像素
- w:表示權(quán)重,權(quán)值1或者以點(diǎn)為中心的高斯權(quán)重(離點(diǎn)越近權(quán)重越大)
- I:表示像素,RGB/灰度
- u,v:窗口移動(dòng)的方向
- H:harris矩陣,由兩個(gè)方向上的梯度構(gòu)建而成
- 圖像梯度:
- Harris矩陣:
- Harris矩陣H 的特征值分析
- 兩個(gè)特征值反映相互垂直方向上的變化情況,分別代表變化最快和最慢的方向,特征值大變化快,特征值小變化慢
- λ1 ≈ λ2 ≈ 0, 兩個(gè)方向上變化都很小,興趣點(diǎn)位于光滑區(qū)域
- λ1 > 0 , λ2 ≈ 0 ,一個(gè)方向變化快,一個(gè)方向變化慢,興趣點(diǎn)位于邊緣區(qū)域
- λ1 , λ2 > 0 , 兩個(gè)方向變化都很快,興趣點(diǎn)位于角點(diǎn)區(qū)域(容易判斷)


- Harris角點(diǎn)準(zhǔn)則代替矩陣分解:
- 反映特征值情況,trace為跡
- k的值越小,檢測子越敏感
- 只有當(dāng)λ1和λ2同時(shí)取得最大值時(shí),C才能取得較大值
- 避免了特征值分解,提高檢測計(jì)算效率
- 非極大值抑制(Non-maximal Suppression) 選取局部響應(yīng)最大值,避免重復(fù)的檢測
- 算法流程:
- 0)濾波、平滑,避免出現(xiàn)階躍函數(shù)
- 1)計(jì)算圖像水平和垂直方向的梯度
- 2)計(jì)算每個(gè)像素位置的Harris矩陣
- 3)計(jì)算每個(gè)像素位置的Harris角點(diǎn)響應(yīng)值
- 3+)非極大值抑制
- 4)找到Harris角點(diǎn)響應(yīng)值大于給定閾值且局部最大的位置作為特征點(diǎn)
- 檢測結(jié)果:

2、基于LoG的多尺度特征檢測子
- 動(dòng)機(jī):Harris角點(diǎn)檢測不具有尺度不變性,讓特征點(diǎn)具有尺度不變性

- 解決方法:尺度歸一化LoG算子,處理尺度的變化
- LoG算子:Lindeberg(1993)提出Laplacian of Gaussian (LoG)函數(shù)的極值點(diǎn)對(duì)應(yīng)著特征點(diǎn)
- 尺度空間:一副圖像使用不同大小濾波核濾波(e.g.高斯濾波),越大的濾波核越模糊,分辨率越小,不同濾波核濾波后的空間為尺度空間=3維空間(圖像+尺度),模擬人類視覺,較遠(yuǎn)物體模糊,一系列濾波核構(gòu)成的不同分辨率圖像為尺度空間->LoG能夠處理不同尺度的圖像

- LoG算子[1]形式:高斯濾波性質(zhì):卷積->求拉普拉斯算子==求拉普拉斯算子->卷積 其中是LoG算子
- 尺度歸一化LoG[2](使得具有可比性=匯率):其中是尺度歸一化LoG算子
- 不同尺度下的LoG響應(yīng)值不具有可比性
- 構(gòu)建尺度空間,同時(shí)在位置空間和 尺度空間尋找歸一化LoG極值(極大 /極小)點(diǎn)作為特征點(diǎn)
- 不同尺度下的響應(yīng)值
- LoG特征檢測算法流程
- 1)計(jì)算不同尺度上的尺度歸一化LoG函數(shù)值
- 2)同時(shí)在位置和尺度構(gòu)成的三維空間上尋找 尺度歸一化LoG的極值點(diǎn)
- 3)進(jìn)行非極大值抑制,減少重復(fù)檢測 (去除冗余、保持穩(wěn)定性)
- 檢測結(jié)果:效果好,LoG計(jì)算量大

3、基于DoG的多尺度特征檢測子(SIFT)——穩(wěn)定和魯棒
- LoG可以由DoG近似:Lowe(2004)提出歸一化LoG近似等價(jià)于相鄰尺度的高斯差分(DoG)
- 高斯空間:
- 高斯差分DoG:相鄰的空間做差,極點(diǎn)處對(duì)應(yīng)特征點(diǎn)
-
尺度空間的構(gòu)建
- 階數(shù):O=3 (octave=階,每階圖像尺寸減少一半,階數(shù)高->運(yùn)算量大->尺度變化大)
- 每階有效差分?jǐn)?shù):S=3(每個(gè)階內(nèi)劃分?jǐn)?shù))
- 每階層數(shù):N=S+3
-
高斯空間
-
高斯差分
-
有效差分(尺度空間有上下兩個(gè)鄰域才行,邊界無效)
-
任意設(shè)置



- 特征點(diǎn)位置的確定:
- 1)尺度空間和圖像空間上:3*3窗口,26個(gè)鄰域,找極值點(diǎn)比其他都要大DoG,LoG找極大值或極小值
- 2)橫軸向代表離散位置,縱軸代表DoG響應(yīng)值,在極值點(diǎn)鄰域內(nèi)求二階函數(shù)的極值=準(zhǔn)確像素位置

-
亞像素特征點(diǎn)位置的確定
- x:為三維,坐標(biāo)空間+尺度空間
- f(x):為DoG值
- x0:檢測到離散坐標(biāo)下的極大值點(diǎn)
- 任務(wù):在x0附近近似一個(gè)二階函數(shù),求二階函數(shù)極值得到更準(zhǔn)確的亞像素極值位置

- 矩陣的表達(dá)-1階

- 矩陣的表達(dá)-2階

- 極值點(diǎn)有可能是邊緣點(diǎn),->除去邊緣點(diǎn):DoG在邊緣處值較大,需要避免檢測到邊緣點(diǎn)
- 計(jì)算主方向:通過統(tǒng)計(jì)梯度直方圖的方法確定主方向,使算法具有旋轉(zhuǎn)不變性

-
SIFT特征檢測流程:旋轉(zhuǎn)不變性、尺度不變性、亮度 變化不變性,對(duì)視角變化、仿射變換有一定程度的穩(wěn)定性
- 1)計(jì)算圖像尺度空間:
- 2)DoG極值點(diǎn)檢測與定位:保留的特征點(diǎn)
- 3)邊緣點(diǎn)去除:
- 4)計(jì)算主方向
- 5)生成描述子
- 6)檢測結(jié)果

4、快速特征點(diǎn)檢測方法:——實(shí)時(shí)性要求高
-
FAST特征點(diǎn)[3]:Feature from Accelerated Segment Test
- 1)以候選點(diǎn)p為圓心構(gòu)建一個(gè)離散圓
- 2)比較圓周上的像素與p點(diǎn)像素值
- 3)當(dāng)有連續(xù)的n個(gè)像素值明顯亮于或者暗于p時(shí),p被檢測為特征點(diǎn),例Fast9,Fast12
-
特性:通過檢測局部像素灰度變化來確認(rèn)特征點(diǎn)的位置,速度快,SIFT的100倍;不具有尺度和旋轉(zhuǎn)不變性
-
流程:
-
檢測:

-
Oriented FAST (ORB)
- 獲取尺度不變性:構(gòu)建圖像金字塔,在金字塔 每一層上檢測關(guān)鍵點(diǎn)
- 獲取旋轉(zhuǎn)不變性 :通過灰度質(zhì)心法(Intensity Centroid) 確定圖像主方向
- 圖像塊B上的矩定義為:
- 圖像塊B的質(zhì)心定義為 :
- 計(jì)算方向角 :
- 檢測結(jié)果:

三、特征描述子
特征描述子 Feature Descriptor
- 每個(gè)特征點(diǎn)獨(dú)特的身份認(rèn)證
- 同一空間點(diǎn)在不同視角的特征點(diǎn)具有高度相似的描述子
- 不同特征點(diǎn)的的描述子差異性盡量大
- 通常描述子是一個(gè)具有固定長度的向量
特征支持區(qū)域
- 主方向:進(jìn)行旋轉(zhuǎn)并重新插值
- 特征尺度:影響支持區(qū)域的大小

1、基于直方圖的描述子
(1)用于微小運(yùn)動(dòng)的描述子 [4](e.g.相鄰兩幀視頻)
- 定義:以特征點(diǎn)為中心的矩形區(qū)域內(nèi)所有像素的灰度值作為描述子
- 特性:適用于微小變化的圖像對(duì) 圖像存在明顯的旋轉(zhuǎn)、尺度、光照和透視變換時(shí)不穩(wěn)定
(2)Sift描述子——旋轉(zhuǎn)主方向
- 定義:根據(jù)主方向?qū)χС謪^(qū)域進(jìn)行旋轉(zhuǎn),并通過雙線性插值重構(gòu)
- 特性:圖像歸一化處理,去除光照變化

-
統(tǒng)計(jì)局部梯度信息流程:
- 1)將區(qū)域劃分成4x4的block ;
- 2)每個(gè)block內(nèi)統(tǒng)計(jì)梯度方向 的直方圖(高斯加權(quán)梯度作為系數(shù))

(2)Sift描述子——生成描述子

(2)Sift描述子——?dú)w一化處理
-
處理方式
- 1)門限處理-直方圖每個(gè)方向的梯度幅值不超過0.2
- 2)描述子長度歸一化
-
特性:歸一化處理提升了特征點(diǎn)光度變化的不變性
-
SIFT描述子變種:PCA-SIFT/SURF
(3)GLOH描述子[5]:Gradient Location-orientation Histogram
- 一共有1+2x8=17 個(gè)blocks
- 每個(gè)blocks計(jì)算16個(gè)方向的直方圖
- 描述子共16x17=272維
- 通過PCA可以降維到128

(4)DAISY描述子[6]:每個(gè)圓的半徑對(duì)應(yīng)高斯的尺度

2、基于不變性的描述子
3、二進(jìn)制描述子——BRIEF
-
描述子形式:描述向量由N個(gè)0或者1組成 N=128,256,512
-
描述子特性:生成速度快(漢明距離),匹配效率高 ,簡單有效;不具有旋轉(zhuǎn)不變性
-
描述子流程:
- 1)圖像進(jìn)行如高斯濾波預(yù)處理——去除噪聲
- 2)在支持區(qū)域內(nèi)隨機(jī)采樣N對(duì)大小5×5的patch
- 3)比較patch內(nèi)像素和的大小,并保留結(jié)果構(gòu)成特征向量 $ au(p;x,y)=left{ egin{aligned} 1, ifp(x)

四、特征匹配
計(jì)算兩幅圖像中特征描述子的匹配關(guān)系

1、距離度量
歸一化互相關(guān),1 ->非常匹配,0->不匹配

2、匹配策略
最近鄰:加了距離約束,防止孤立點(diǎn)

3、高效匹配

4、特征匹配驗(yàn)證



審核編輯 :李倩
-
算法
+關(guān)注
關(guān)注
23文章
4706瀏覽量
95174 -
圖像
+關(guān)注
關(guān)注
2文章
1094瀏覽量
41158 -
深度學(xué)習(xí)
+關(guān)注
關(guān)注
73文章
5557瀏覽量
122690
原文標(biāo)題:綜述:特征點(diǎn)檢測與匹配
文章出處:【微信號(hào):vision263com,微信公眾號(hào):新機(jī)器視覺】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
機(jī)器視覺圖像處理之角點(diǎn)檢測技術(shù)
Firefly RK3399Pro開源主板 + 單目攝像頭,人體特征點(diǎn)檢測方案
一種基于輪廓分析的圖像特征點(diǎn)檢測方法
基于改進(jìn)局部不變特征的興趣點(diǎn)匹配
基于區(qū)域檢測特征匹配方法設(shè)計(jì)研究
FAST特征點(diǎn)檢測features2D

firefly人體特征點(diǎn)檢測介紹

基于Laplace-Beltrami算子的特征點(diǎn)檢測算法

基于高斯金字塔圖像的改進(jìn)Harris特征點(diǎn)檢測算法

高階多視圖離群點(diǎn)檢測及其研究綜述
基于計(jì)算機(jī)視覺領(lǐng)域中的特征檢測和匹配研究

三種最常用的特征檢測與匹配算法總結(jié)

評(píng)論