生物特征識別:小面積指紋識別算法(二)
算法(一)已經介紹了一種小面積指紋識別算法可選的方案,是一種經典的方案,對於面積足夠大且level2特征高於最小限制時,為一種低內存占用,快速的實現方法。但在某些應用場中中(比如終端中,要求占用面積較小,且面積小意味著更低的成本),如果采集器面積進一步縮小,比如采集圖像500dpi下像素在100x60(5mmx4mm),80x80(4mmx4mm),60x60(3mmx3mm)等等,算法(一)的方案穩定性會受到很大挑戰。算法(二)主要基於一些傳統算法來探討目前市場上商業算法的解決方案。
以手機指紋應用場景,傳感器圖像大小128x60為例,錄入應該是:
每次只能采集到很小的部分,因此用於識別和註冊的圖像覆蓋面積會很小,下圖紅色為可能的可能的認證指紋相對於模板所在的位置:
因此,這就構成了兩個問題:
1 算法(一)中特征不足以支持完整相似性判定。
2 待認證與模板圖像之間覆蓋面積有限,可能與幾次按壓重疊。
終端上的應用方案大多采取多模板的方式,像常用的iPhone5s以後的手機,以及華米OV指紋識別功能的手,多是采用5-20次的按壓作為手指的模板。
還是以上面提出的兩個問題為例,我們可以針對性地提出解決方案:
1. 對第一個問題是解決圖與圖之間小面積覆蓋的配準問題。
2. 對第二個問題是解決當前圖像與多模板圖像之間的關系問題。
市場上現有的商用算法大多采取傳統特征的老思路(無論取了個什麽名字,2017年底),無非就是三點:特征,模型與得分。采用一定算法或間隔采樣的方式在取出一些階躍點或特殊位置作為特征點,再對特征點周圍灰度分布手工設計特征,例如某一家的算法描述是這樣的:
采用這種方案可以很大程度上增加對圖像信息描述的精度,通過對圖像梯度等的利用,進而套用傳統手工特征框架進行圖像的匹配運算。而對於說圖像特別小,怎麽判別唯一性,這個就是在多模板匹配的一種機制。
通常性能比較是在FMR<1/50k下,以下是四種算法大概性能():
---------------------------------------------------------------------------------------------
1/1/2018 更新:
方案(二)主要還是傳統的機器視覺算法,參考相關的CV庫都會有不同版本的實現,一般來講不同的實現方案會對圖像預處理,特征的密度,模型等會有不同的要求。
例如,我們采取一種ORB(orient rigde binary)的配準方案,首先對於選取特征點而言要進行必要的圖像處理,算法(一)的圖像處理是為了得到完整的指紋脊線,因此會選擇帶通的Gabor去做圖像的濾波,而我們現在是為了更好地得到圖像的細節便於計算梯度等,而在不同狀態下圖像也具有圖像的噪聲分布。
對於算法(二),一般來說圖像預處理的效果,對特征和模型都具有很大的影響,直接決定了算法能否穩定地落地。對圖像處理一般采取貝葉斯方法濾波和反卷積的方式,通過圖像歸一化,得到較為穩定的圖像。
不同噪聲下特征選取(略去圖像處理)
對於大多數終端而言,可利用的空間是有限的,為了得到更緊湊的特征,也為了減小模板所占用的時間和提高算法執行效率,采取一種二值(binary)特征。對每一個patch進行局部描述,具體描述算法可以簡單歸納為:
定義當前梯度到各個提取之間的差。
二值特征生成: , d表示而至特征的維度
其中設計的損失函數為:
其中
一般取64或128維的二值特征,即8bytes或16bytes
多模板匹配部分參考算法(三)。
算法性能測試:
單手指指紋驗證時間,FRR約37ms,FAR約51ms,其中多模板占用空間最大250kb,平均多模板占用空間208kb
在image約為 80*60條件下測試
*其他主要涉及參考算法(三)
參考文獻:
Patent:CN 106663204 A
生物特征識別:小面積指紋識別算法(二)