① OpenCV+Python特徵提取演算法與圖像描述符之SIFT / SURF / ORB
演算法效果比較博文
用於表示和量化圖像的數字列表,簡單理解成將圖片轉化為一個數字列表世灶表示。特徵向量中用來描述圖片的各種屬性的向量稱為特徵矢量。
參考
是一種演算法和方法,輸入1個圖像,返回多個特徵向量(主要用來處理圖像的局部,往往會把多個特徵向量組成一個一維的向量)。主要用於圖像匹配(視覺檢測),匹配圖像中的物品。
SIFT論文
原理
opencv官網解釋
實質是在不同的尺度空間上查找關鍵點(特徵點),並計算出關鍵點的方向。SIFT所查找到的關鍵點是一些十分突出,不會因光照,仿射變換和噪音等因素而變化的點,如角點、邊緣點、暗區的亮點及亮區的暗點等。
尺度不變特徵轉換(Scale-invariant feature transform或SIFT)是一種電腦視覺的演算法用來偵測與描述影像中的局部性特徵,它在空間尺度中尋找極值點,並提取出其位置、尺度、旋轉不變數。
其應用范圍包含物體辨識、機器人地圖感知與導航、影像縫合、3D模型建立、手勢辨識、影像追蹤和動作比對。
對現實中物體的描述一定要在一個十分重要的前提下進行,這個前提就是對自然界建模時的尺度。當用一個機器視覺系統分析未知場景時,計算機沒有辦法預先知道圖像中物體的尺度,因此我們需要同時考慮圖像在多尺度下的描述,獲知感興趣物體的最佳尺度。圖像的尺度空間表達指的是圖像的所有尺度下的描述。
KeyPoint數據結構解析
SURF論文
原理
opencv官網解釋
SURF是SIFT的加速版,它善於處理具有模糊和旋轉的圖像,但是不善於處理視角變化和光照變化。在SIFT中使用DoG對LoG進行近似,而在SURF中使用盒子濾波器對LoG進行近似,這樣就可以使用積分圖像了(計算圖像中某個窗口內所有像素和時,計算量的大小與窗口大小無關)。總之,SURF最大的特點在於採用了Haar特徵以及積分圖改團像的概念,大大加快了程序的運行效率。
因為專利原因,OpenCV3.3開核返橘始不再免費開放SIFT\SURF,需要免費的請使用ORB演算法
ORB演算法綜合了FAST角點檢測演算法和BRIEFF描述符。
演算法原理
opencv官方文檔
FAST只是一種特徵點檢測演算法,並不涉及特徵點的特徵描述。
論文
opencv官方文檔
中文版
Brief是Binary Robust Independent Elementary Features的縮寫。這個特徵描述子是由EPFL的Calonder在ECCV2010上提出的。主要思路就是在特徵點附近隨機選取若干點對,將這些點對的灰度值的大小,組合成一個二進制串,並將這個二進制串作為該特徵點的特徵描述子。文章同樣提到,在此之前,需要選取合適的gaussian kernel對圖像做平滑處理。
1:不具備旋轉不變性。
2:對雜訊敏感
3:不具備尺度不變性。
ORB論文
OpenCV官方文檔
ORB採用了FAST作為特徵點檢測運算元,特徵點的主方向是通過矩(moment)計算而來解決了BRIEF不具備旋轉不變性的問題。
ORB還做了這樣的改進,不再使用pixel-pair,而是使用9×9的patch-pair,也就是說,對比patch的像素值之和,解決了BRIEF對雜訊敏感的問題。
關於計算速度:
ORB是sift的100倍,是surf的10倍。
對圖片數據、特徵分布的一種統計
對數據空間(bin)進行量化
Kmeans
邊緣:尺度問題->不同的標准差 捕捉到不同尺度的邊緣
斑點 Blob:二階高斯導數濾波LoG
關鍵點(keypoint):不同視角圖片之間的映射,圖片配准、拼接、運動跟蹤、物體識別、機器人導航、3D重建
SIFT\SURF
② 圖像的特徵提取都有哪些演算法
圖像的經典特徵提取方法:
1 HOG(histogram of Oriented Gradient,方向梯度直方圖)
2 SIFT(Scale-invariant features transform,尺度不變特徵變換)
3 SURF(Speeded Up Robust Features,加速穩健特徵,對sift的改進)
4 DOG(Difference of Gaussian,高斯函數差分)
5 LBP(Local Binary Pattern,局部二值模式)
6 HAAR(haar-like ,haar類特徵,注意haar是個人名,haar這個人提出了一個用作濾波器的小波,為這個濾波器命名為haar濾波器,後來有人把這個濾波器用到了圖像上,就是圖像的haar特徵)
圖像的一般提取特徵方法:
1 灰度直方圖,顏色直方圖
2 均值,方差
3 信號處理類的方法:灰度共生矩陣,Tamura紋理特徵,自回歸紋理特徵,小波變換。
4 傅里葉形狀描述符,小波描述符等,
③ 圖像的特徵提取都有哪些演算法
常用的圖像特徵有顏色特徵、紋理特徵、形狀特徵、空間關系特徵。
一 顏色特徵
(一)特點:顏色特徵是一種全局特徵,描述了圖像或圖像區域所對應的景物的表面性質。一般顏色特徵是基於像素點的特徵,此時所有屬於圖像或圖像區域的像素都有各自的貢獻。由於顏色對圖像或圖像區域的方向、大小等變化不敏感,所以顏色特徵不能很好地捕捉圖像中對象的局部特徵。另外,僅使用顏色特徵查詢時,如果資料庫很大,常會將許多不需要的圖像也檢索出來。顏色直方圖是最常用的表達顏色特徵的方法,其優點是不受圖像旋轉和平移變化的影響,進一步藉助歸一化還可不受圖像尺度變化的影響,基缺點是沒有表達出顏色空間分布的信息。
(二)常用的特徵提取與匹配方法
(1) 顏色直方圖
其優點在於:它能簡單描述一幅圖像中顏色的全局分布,即不同色彩在整幅圖像中所佔的比例,特別適用於描述那些難以自動分割的圖像和不需要考慮物體空間位置的圖像。其缺點在於:它無法描述圖像中顏色的局部分布及每種色彩所處的空間位置,即無法描述圖像中的某一具體的對象或物體。
最常用的顏色空間:RGB顏色空間、HSV顏色空間。
顏色直方圖特徵匹配方法:直方圖相交法、距離法、中心距法、參考顏色表法、累加顏色直方圖法。
(2) 顏色集
顏色直方圖法是一種全局顏色特徵提取與匹配方法,無法區分局部顏色信息。顏色集是對顏色直方圖的一種近似首先將圖像從 RGB顏色空間轉化成視覺均衡的顏色空間(如 HSV 空間),並將顏色空間量化成若干個柄。然後,用色彩自動分割技術將圖像分為若干區域,每個區域用量化顏色空間的某個顏色分量來索引,從而將圖像表達為一個二進制的顏色索引集。在圖像匹配中,比較不同圖像顏色集之間的距離和色彩區域的空間關系
(3) 顏色矩
這種方法的數學基礎在於:圖像中任何的顏色分布均可以用它的矩來表示。此外,由於顏色分布信息主要集中在低階矩中,因此,僅採用顏色的一階矩(mean)、二階矩(variance)和三階矩(skewness)就足以表達圖像的顏色分布。
(4) 顏色聚合向量
其核心思想是:將屬於直方圖每一個柄的像素分成兩部分,如果該柄內的某些像素所佔據的連續區域的面積大於給定的閾值,則該區域內的像素作為聚合像素,否則作為非聚合像素。
(5) 顏色相關圖
二 紋理特徵
(一)特點:紋理特徵也是一種全局特徵,它也描述了圖像或圖像區域所對應景物的表面性質。但由於紋理只是一種物體表面的特性,並不能完全反映出物體的本質屬性,所以僅僅利用紋理特徵是無法獲得高層次圖像內容的。與顏色特徵不同,紋理特徵不是基於像素點的特徵,它需要在包含多個像素點的區域中進行統計計算。在模式匹配中,這種區域性的特徵具有較大的優越性,不會由於局部的偏差而無法匹配成功。作為一種統計特徵,紋理特徵常具有旋轉不變性,並且對於雜訊有較強的抵抗能力。但是,紋理特徵也有其缺點,一個很明顯的缺點是當圖像的解析度變化的時候,所計算出來的紋理可能會有較大偏差。另外,由於有可能受到光照、反射情況的影響,從2-D圖像中反映出來的紋理不一定是3-D物體表面真實的紋理。
例如,水中的倒影,光滑的金屬面互相反射造成的影響等都會導致紋理的變化。由於這些不是物體本身的特性,因而將紋理信息應用於檢索時,有時這些虛假的紋理會對檢索造成「誤導」。
在檢索具有粗細、疏密等方面較大差別的紋理圖像時,利用紋理特徵是一種有效的方法。但當紋理之間的粗細、疏密等易於分辨的信息之間相差不大的時候,通常的紋理特徵很難准確地反映出人的視覺感覺不同的紋理之間的差別。
(二)常用的特徵提取與匹配方法
紋理特徵描述方法分類
(1)統計方法統計方法的典型代表是一種稱為灰度共生矩陣的紋理特徵分析方法Gotlieb 和 Kreyszig 等人在研究共生矩陣中各種統計特徵基礎上,通過實驗,得出灰度共生矩陣的四個關鍵特徵:能量、慣量、熵和相關性。統計方法中另一種典型方法,則是從圖像的自相關函數(即圖像的能量譜函數)提取紋理特徵,即通過對圖像的能量譜函數的計算,提取紋理的粗細度及方向性等特徵參數
(2)幾何法
所謂幾何法,是建立在紋理基元(基本的紋理元素)理論基礎上的一種紋理特徵分析方法。紋理基元理論認為,復雜的紋理可以由若干簡單的紋理基元以一定的有規律的形式重復排列構成。在幾何法中,比較有影響的演算法有兩種:Voronio 棋盤格特徵法和結構法。
(3)模型法
模型法以圖像的構造模型為基礎,採用模型的參數作為紋理特徵。典型的方法是隨機場模型法,如馬爾可夫(Markov)隨機場(MRF)模型法和 Gibbs 隨機場模型法
(4)信號處理法
紋理特徵的提取與匹配主要有:灰度共生矩陣、Tamura 紋理特徵、自回歸紋理模型、小波變換等。
灰度共生矩陣特徵提取與匹配主要依賴於能量、慣量、熵和相關性四個參數。Tamura 紋理特徵基於人類對紋理的視覺感知心理學研究,提出6種屬性,即:粗糙度、對比度、方向度、線像度、規整度和粗略度。自回歸紋理模型(simultaneous auto-regressive, SAR)是馬爾可夫隨機場(MRF)模型的一種應用實例。
三 形狀特徵
(一)特點:各種基於形狀特徵的檢索方法都可以比較有效地利用圖像中感興趣的目標來進行檢索,但它們也有一些共同的問題,包括:①目前基於形狀的檢索方法還缺乏比較完善的數學模型;②如果目標有變形時檢索結果往往不太可靠;③許多形狀特徵僅描述了目標局部的性質,要全面描述目標常對計算時間和存儲量有較高的要求;④許多形狀特徵所反映的目標形狀信息與人的直觀感覺不完全一致,或者說,特徵空間的相似性與人視覺系統感受到的相似性有差別。另外,從 2-D 圖像中表現的 3-D 物體實際上只是物體在空間某一平面的投影,從 2-D 圖像中反映出來的形狀常不是 3-D 物體真實的形狀,由於視點的變化,可能會產生各種失真。
(二)常用的特徵提取與匹配方法
Ⅰ幾種典型的形狀特徵描述方法
通常情況下,形狀特徵有兩類表示方法,一類是輪廓特徵,另一類是區域特徵。圖像的輪廓特徵主要針對物體的外邊界,而圖像的區域特徵則關繫到整個形狀區域。
幾種典型的形狀特徵描述方法:
(1)邊界特徵法該方法通過對邊界特徵的描述來獲取圖像的形狀參數。其中Hough 變換檢測平行直線方法和邊界方向直方圖方法是經典方法。Hough 變換是利用圖像全局特性而將邊緣像素連接起來組成區域封閉邊界的一種方法,其基本思想是點—線的對偶性;邊界方向直方圖法首先微分圖像求得圖像邊緣,然後,做出關於邊緣大小和方向的直方圖,通常的方法是構造圖像灰度梯度方向矩陣。
(2)傅里葉形狀描述符法
傅里葉形狀描述符(Fourier shape descriptors)基本思想是用物體邊界的傅里葉變換作為形狀描述,利用區域邊界的封閉性和周期性,將二維問題轉化為一維問題。
由邊界點導出三種形狀表達,分別是曲率函數、質心距離、復坐標函數。
(3)幾何參數法
形狀的表達和匹配採用更為簡單的區域特徵描述方法,例如採用有關形狀定量測度(如矩、面積、周長等)的形狀參數法(shape factor)。在 QBIC 系統中,便是利用圓度、偏心率、主軸方向和代數不變矩等幾何參數,進行基於形狀特徵的圖像檢索。
需要說明的是,形狀參數的提取,必須以圖像處理及圖像分割為前提,參數的准確性必然受到分割效果的影響,對分割效果很差的圖像,形狀參數甚至無法提取。
(4)形狀不變矩法
利用目標所佔區域的矩作為形狀描述參數。
(5)其它方法
近年來,在形狀的表示和匹配方面的工作還包括有限元法(Finite Element Method 或 FEM)、旋轉函數(Turning Function)和小波描述符(Wavelet Descriptor)等方法。
Ⅱ 基於小波和相對矩的形狀特徵提取與匹配
該方法先用小波變換模極大值得到多尺度邊緣圖像,然後計算每一尺度的 7個不變矩,再轉化為 10 個相對矩,將所有尺度上的相對矩作為圖像特徵向量,從而統一了區域和封閉、不封閉結構。
四 空間關系特徵
(一)特點:所謂空間關系,是指圖像中分割出來的多個目標之間的相互的空間位置或相對方向關系,這些關系也可分為連接/鄰接關系、交疊/重疊關系和包含/包容關系等。通常空間位置信息可以分為兩類:相對空間位置信息和絕對空間位置信息。前一種關系強調的是目標之間的相對情況,如上下左右關系等,後一種關系強調的是目標之間的距離大小以及方位。顯而易見,由絕對空間位置可推出相對空間位置,但表達相對空間位置信息常比較簡單。
空間關系特徵的使用可加強對圖像內容的描述區分能力,但空間關系特徵常對圖像或目標的旋轉、反轉、尺度變化等比較敏感。另外,實際應用中,僅僅利用空間信息往往是不夠的,不能有效准確地表達場景信息。為了檢索,除使用空間關系特徵外,還需要其它特徵來配合。
(二)常用的特徵提取與匹配方法
提取圖像空間關系特徵可以有兩種方法:一種方法是首先對圖像進行自動分割,劃分出圖像中所包含的對象或顏色區域,然後根據這些區域提取圖像特徵,並建立索引;另一種方法則簡單地將圖像均勻地劃分為若干規則子塊,然後對每個圖像子塊提取特徵,並建立索引。
④ 指紋識別是怎麼進行的
導語:指紋識別技術通常使用指紋的總體特徵如紋形、三角點等來進行分類,再用局部特徵如位置和方向等來進行用戶身份識別。盡管指紋只是人體皮膚的小部分,但是,它蘊涵著大量的信息。那麼,接下來就讓我們一起來具體的了解以下關於指紋識別是怎麼進行的內容吧。文章僅供大家的參考!
1.指紋圖像的獲取
指紋圖像的採集是自動指紋識別系統的重要組成部分。早期的指紋採集都是通過油墨按壓在紙張上產生的。20世紀80年代,隨著光學技術和計算機技術的發展,現代化的採集設備開始出現。
感測器是一種能把物理量或化學量變成便於利用的電信號的器件。在測量系統中它是一種前置部件,它是被測量信號輸入後的第一道關口,是生物認證系統中的採集設備。
這些感測器根據探測對象的不同,可分為光學感測器、熱敏感測器和超聲感測器;根據器件的不同,可分為CMOS器件感測器和CCD器件感測器。它們的工作原理都是:將生物特徵經過檢測後轉化為系統可以識別的圖像信息。在生物認證系統中,可靠和廉價的'圖像採集設備是系統運行正常、可靠的關鍵。
2.指紋圖像的增強
常見的預處理方法如下:
(1)採用灰度的均衡化,可以消除不同圖像之間對比度的差異。
(2)使用簡單的低通濾波消除斑點雜訊、高斯雜訊。
(3)計算出圖像的邊界,進行圖像的裁剪,這樣可以減少多餘的計算量,提高系統的速度。
常用圖像增強演算法具體包括以下幾種:
(1)基於傅里葉濾波的低質量指紋增強演算法;
(2)基於Gabor濾波的增強方法;
(3)多尺度濾波方法;
(4)改進的方向圖增強演算法;
(5)基於知識的指紋圖像增強演算法;
(6)非線性擴散模型及其濾波方法;
(7)改進的非線性擴散濾波方法。
目前最新的分割演算法有以下幾種:
(1)基於正態模型進行的指紋圖像分割演算法;
(2)基於馬爾科夫隨機場的指紋圖像分割演算法;
(3)基於數學形態學閉運算的灰度方差法;
(4)基於方向場的指紋圖像分割演算法。
3.指紋特徵的提取
近年來,新的指紋特徵提取演算法主要包括以下幾種:
(1)基於Gabor濾波方法對指紋局部特徵的提取演算法。
(2)基於CNN通用編程方法對指紋特徵的提取演算法。
(3)基於IFS編碼的圖像數字化技術,即建立IFS模型,計算源圖像與再生圖像之間的相似性,快速提取指紋圖像的特徵。
(4)基於脊線跟蹤的指紋圖像特徵點提取演算法。該演算法可以直接從灰度指紋圖像中有效提取細節點和脊線骨架信息。
(5)基於小波變換和ART(自適應共振理論)神經網路的指紋特徵提取演算法。
4.指紋圖像的分類與壓縮
常用的指紋分類技術有以下幾種:
(1)基於規則的方法,即根據指紋奇異點的數目和位置分類。
(2)基於句法的方法。這種方法的語法復雜,推導語法的方法復雜、不固定。這種方法已經逐漸被淘汰了。
(3)結構化的方法,即尋找低層次的特徵到高層次的結構之間相關聯的組織。
(4)統計的方法。
(5)結合遺傳演算法和BP神經元網路的方法。
(6)多分類器方法。
常用的壓縮演算法有以下兩種:
(1)圖像壓縮編碼方法:包括無損壓縮(熵編碼)和有損壓縮(量化)。
(2)基於小波變換的指紋壓縮演算法:包括WSQ演算法、DjVu演算法、改進的EZW演算法等。
5.指紋圖像的匹配
傳統的指紋匹配演算法有很多種:
(1)基於點模式的匹配方法:如基於Hough變換的匹配演算法、基於串距離的匹配演算法、基於N鄰近的匹配演算法等。
(2)圖匹配及其他方法:如基於遺傳演算法的匹配、基於關鍵點的初匹配等。
(3)基於紋理模式的匹配:如PPM匹配演算法等。
(4)混合匹配方法等。
近幾年,又出現了如下新的匹配演算法:
(1)基於指紋分類的矢量匹配。該法首先利用指紋分類的信息進行粗匹配,然後利用中心點和三角點的信息進一步匹配,最後以待識別圖像和模板指紋圖像的中心點為基準點,將中心點與鄰近的36個細節點形成矢量,於是指紋的匹配就轉變為矢量組數的匹配。
(2)基於PKI(Public Key Infrastructure,公鑰基礎設施)的開放網路環境下的指紋認證系統。
(3)實時指紋特徵點匹配演算法。該演算法的原理是:通過由指紋分割演算法得到圓形匹配限制框和簡化計算步驟來達到快速匹配的目的。
(4)一種基於FBI(Federal Bureauof Investigation)細節點的二次指紋匹配演算法。
(5)基於中心點的指紋匹配演算法。該演算法利用奇異點或指紋有效區域的中心點尋找匹配的基準特徵點對和相應的變換參數,並將待識別指紋相對於模板指紋作姿勢糾正,最後採用坐標匹配的方式實現兩個指紋的比對。