SoPC自動(dòng)指紋識別系統(tǒng)設(shè)計(jì)
1.3 硬件優(yōu)化技術(shù)
針對FPGA算術(shù)運(yùn)算中的乘法、除法易出現(xiàn)的時(shí)序問題,對浮點(diǎn)數(shù)運(yùn)算、開方算法、反正切算法等耗費(fèi)大量資源的通用性問題,特別做了如下優(yōu)化:
?。?)乘除法均采用Quartus自帶的IP核進(jìn)行運(yùn)算,IP核采用流水線結(jié)構(gòu),減少系統(tǒng)中時(shí)序不滿足情況的發(fā)生,提高系統(tǒng)的穩(wěn)定性;
?。?)浮點(diǎn)數(shù)運(yùn)算均通過擴(kuò)大倍數(shù)后轉(zhuǎn)為定點(diǎn)數(shù)再進(jìn)行運(yùn)算,可以在降低運(yùn)算復(fù)雜度的同時(shí)降低時(shí)間消耗;
(3)開方算法采用不恢復(fù)余數(shù)開方算法實(shí)現(xiàn),只涉及加減和移位,處理時(shí)間只有輸入位寬的1/2,可降低系統(tǒng)消耗,減少處理時(shí)間;
?。?)反正切運(yùn)算采用CORDIC算法,采用狀態(tài)機(jī)結(jié)構(gòu),通過反復(fù)迭代實(shí)現(xiàn),算法簡單。
2 系統(tǒng)實(shí)現(xiàn)
2.1 MBF200硬件采集模塊
MBF200開啟自動(dòng)檢測功能采集整幅指紋圖像。通過設(shè)置芯片內(nèi)部的閾值寄存器THR使芯片適應(yīng)不同的外部環(huán)境。改變內(nèi)部的PGC、DTR、DCR三個(gè)寄存器的值可以調(diào)整圖像的清晰度,提高采集到的圖像質(zhì)量。
2.2 預(yù)處理模塊的實(shí)現(xiàn)
圖像預(yù)處理主要分為指紋圖像平滑、背景分離和濾波增強(qiáng)三大部分。通過硬件處理控制狀態(tài)機(jī)實(shí)現(xiàn)各個(gè)硬件模塊的處理。圖像平滑采用歸一化處理,背景分離采用方差法,濾波增強(qiáng)采用方向?yàn)V波圖像增強(qiáng)算法來實(shí)現(xiàn).
2.3 Nios算法實(shí)現(xiàn)
軟件算法的主要模塊分別為二值化、細(xì)化、特征提取和特征匹配。其中二值化處理中同時(shí)包括二值化后的填充和刪除算法;細(xì)化算法包括細(xì)化后的去偽算法。二值化算法采用閾值法;細(xì)化算法采用Hilditch細(xì)化算法,同時(shí)采用基于8鄰域特征點(diǎn)的特征提取算法和基于中心點(diǎn)的匹配算法。
評論