新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 讓生物識別技術成為FPGA動態部分重配置功能的“殺手級”應用

        讓生物識別技術成為FPGA動態部分重配置功能的“殺手級”應用

        作者: 時間:2011-02-27 來源:電子產品世界 收藏

          摘要:我們在本項工作中解決的問題是:證實部分重配置適用于基于特性的復雜個人識別算法的開發;運用二維設計抽象層對功能進行空間和時間的管理。

        本文引用地址:http://www.104case.com/article/117277.htm

          關鍵詞:;指紋識別;;部分重配置

          自動指紋識別系統

          指紋識別是自動個人識別技術中使用的最常見、最可靠的技術。大體上,實現的技術將自動指紋識別(AFAS) 劃分為在不同時間和不同條件下執行的兩個階段:登記和識別。

          登記流程中,用戶向系統提供指紋,系統隨即執行一系列需要高強度計算的圖像處理步驟,以提取所有具有相關性、永久性和獨特性的信息,從而使系統明確識別指紋的真正主人。這一系列特性就構成了用戶ID(身份識別號碼),由系統存儲在數據庫中。這一過程一般在安全的環境中,在專業人員的指導下離線執行。

          指紋識別是查看其是否與數據庫中的經認可的用戶一致。在登記過程中執行的各種處理工作將反復進行,以從當前指紋采樣本中提取出獨特的特征。系統隨后將這些特征與數據庫中存儲作為為用戶模版的信息進行對比,以確認當前指紋采樣是否與登記的模版相符。根據數據庫大小,識別分為兩種模式:一對一或一對多匹配。識別一般是在安全度較低的環境中,且在實時約束的條件下完成的。

          這里的每一步被細分為一系列彼此獨立的任務,以從指紋圖像中抽取出用戶獨特的信息。以此為目的,系統將進行一系列具體的運算,如圖像處理(2D 卷積、形態學運算)、三角運算(正弦、余弦、反切、開方)[1] 或者統計(平均值、方差)。

          因此,應用是由一系列按順序流程執行的任務構成的。因為在這個鏈條上某個給定任務的輸出數據是下一項任務的輸入數據,一項任務的開始需要等待前一項任務的完成。另外,在登陸階段和識別階段,有許多任務是反復執行的。

          圖1列舉了目前算法中發生的任務。第一項是圖像獲取。根據傳感器的尺寸,系統可以一次性地獲得整個圖像(全圖像傳感器),也可以分片獲取(掃描傳感器)。在第二種情況下,即我們正在使用的這種情況,需要額外經過一次圖像重構階段。完整的指紋圖像是由連續且部分重疊的圖像條所組成的[2]。

          我們獲得整個重構的圖像之后,下一步是在背景中對前景(即指紋皮膚的凸凹形成的關注區域)分割。我們采用由 5x5 像素的 Sobel邊緣檢測濾波器逐像素完成圖像卷積。完成后,我們以特定的均值和方差進行圖像標準化。

          下一步,我們通過各向同性濾波來增強標準化圖像。該步驟使用 13x13 像素,從之前在采集階段因噪聲而導致圖像丟失或者干擾的圖像區域恢復相關信息[3]。圖像強化步驟完成之后的下一步是計算指紋矢量圖 (field orientation map),以確定圖像前景中脊線和谷線的主要方向。生成的方向場 (eld orientation) 隨后被提交給新的濾波步驟(5x5像素),以獲得精細化的矢量圖。

          此時圖像仍為 8 位灰度。在二值化處理中,由 7x7 像素的 Gabor 方向濾波器進行灰度圖像卷積,以提升脊線和谷線的清晰度,并把每個灰度像素轉化為 1 位二進制(黑或白)點。合成的脊線和谷線圖像再次進行經過平滑處理和重繪。隨后,通過細化或骨架化,將黑白圖像的黑色走線變為一個像素寬。從這個圖像上不難提取指紋的特性或者細節,即紋線端點和紋線分叉點。

          最后,在獲取到指紋細節和方向場數據后,就可以進行指紋模板和樣本的對比。這里采用一種比較直接的算法,在考慮到轉換和旋轉動作以及采集階段因皮膚彈性導致的圖像變形引起的誤差可接受的情況下,讓兩者實現最理想的重合[4]。下一步是進行樣本和模板的匹配,獲知兩者之間的相似度,隨后自動化系統可以根據相似度來確定兩個圖像是否屬于同一人[5]。

          在如圖3所示的整個處理過程中,使用的指紋圖像分辨率為 500dpi,灰度為 8 位,圖像大小為 280x512 像素。圖像獲取采用的是Atmel公司的熱敏指紋傳感器 FingerChip 掃描技術,運算采用的是賽靈思 Virtex-4 XC4VLX25 器件。

          系統架構

          Virtex-4 器件是 AFAS 平臺的計算單元,其中采用 Flash(閃存)作為系統數據庫,存儲FPGA配置數據,以及如用戶指紋模板或生物識別算法配置設置等特定于應用的數據。此外,該系統還使用 DDR-SDM 存儲器來暫時保存從每個處理階段中獲得的中間數據或圖像。我們采用的是串行通信,在我們的案例中是連接至 UART 控制器的 RS-232 收發器 — 后者可在 FPGA 資源中進行綜合 — 以用于調試目的。其目的是將每個階段生成的結果圖像傳輸到 PC 上,以便以圖形化的方式察看每步的指紋圖像或者結果。最后,使用掃描式指紋傳感器來獲取用戶的生物識別特性,并作為識別算法的輸入,如圖 2 所示。

          作為計算單元,FPGA 被劃分為兩個區域,一個是靜態區,由完整的多處理器 CoreConnect 總線系統構成;另一個是可重配置區,用于根據需要放置定制的生物識別協處理器或IP(知識產權),以執行識別算法的各種順序任務,并隨處理的進展進行復用。多處理器 CoreConnect 總線系統主要由賽靈思 MicroBlaze 處理器及其它標準外設構成,同時還擁有一個鏈接至 ICAP (內部配置訪問通道)端口的重配置控制器。

          如圖1所示,所有的處理任務都按照順序執行的次序從 0(靜態)到 B 進行枚舉。定制的硬件協處理器負責在 PRR (部分重配置區域)中實現所有的任務,由 MicroBlaze 在軟件中完成的指紋采集過程除外。

          軟硬件特定的劃分是由于掃描傳感器需要 5μs的積分時間來獲得連續的圖像條(SLICE)。這種速度下無需采用定制的硬件協處理器,采用MicroBlaze軟件采集和重構圖像不僅速度足夠,而且更簡單經濟。

          圖像采集按每個 SLICE 5μs的速率采集 100 個SLICE,每個 SLICE 的大小為 280x8 像素。每兩個連續的圖像 SLICE 之間的像素重疊部分交由軟件進行探測,從而完成圖像的實時重構。

          由于實時的要求,剩余的任務我們交由 FPGA 的 PRR 的定制硬件協處理器來實現。一旦每個特定的任務完成之后,位于器件靜態區的重配置控制器在 MicroBlaze 處理器的控制下,載入下一個任務的工作模塊。重配置控制器通過 ICAP 接口將新模塊的配置數據從 DDR-SDM 中直接傳輸到內部的 FPGA 配置存儲器中,從而完成此項任務。

          值得一提的是,我們使用的是靜態區和可重配置區之間基于 FIFO(先進先出)存儲器和觸發寄存器構成的標準界面。這樣我們就可以在 PRR 中開發標準的生物識別協處理器或 IP,而無需理會系統使用的是哪種多處理器總線,無論其是 AMBA、CoreConnect、Wishbone 還是其它均如此,如圖 2 所示。這一點具有根本性的意義,因為這樣才能確保生物識別算法跨不同平臺的標準化和便攜性。


        上一頁 1 2 下一頁

        關鍵詞: 生物識別 FPGA 201102

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 鄂托克前旗| 宿州市| 丹东市| 济阳县| 武乡县| 成安县| 马山县| 霍林郭勒市| 永靖县| 济源市| 德格县| 拜泉县| 兴安县| 防城港市| 沙雅县| 星子县| 永新县| 南召县| 陆河县| 加查县| 莎车县| 沾益县| 利川市| 泰兴市| 棋牌| 上蔡县| 呼玛县| 同心县| 广东省| 泊头市| 凌云县| 肃宁县| 邛崃市| 平陆县| 福鼎市| 镇原县| 屯留县| 扬中市| 方城县| 南岸区| 石棉县|