資料介紹
介紹了一種基于TI公司的TMS320VC5402來構造指紋識別系統的方法。詳細論述了系統的各個組成部分以及指紋識別算法的實現流程,結合VC5402的指令集和自身結構特點,討論了如何高效的設計應用程序的方法。文章對如何將DSP的主機接口(HPI)改造成通用輸入輸出口(GPIO)、將多通道緩沖串行口(McBSP)設置成SPI接口進行了詳細的說明,對數據圖像處理需要較大空間而DSP可尋址的數據空間又過小的矛盾,提出了切實可行的解決辦法。
??? 關鍵詞:指紋識別;DSP;混合語言編程
指紋識別技術是以數字圖像處理技術為基礎,而逐步發展起來的。相對于密碼、各種證件等傳統身份認證技術和諸如語音、虹膜等其它生物認證技術而言,指紋識別是一種更為理想的身份認證技術。使用指紋識別具有許多優點,例如:每個人的指紋都不相同,極難進行復制或被盜用;指紋比較固定,不會隨著年齡的增長或健康程度的變化而變化;最重要的在于指紋圖像便于獲取,易于開發識別系統,具有很高的實用性和可行性。
1 指紋識別系統的架構
本課題設計了一個嵌入式系統,通過DSP來完成指紋圖像的采集和指紋識別的算法。另外為使系統有更廣闊的應用領域,在設計上還采用異步串行通訊方式實現了DSP和PC之間的數據交互。據此,系統由指紋傳感芯片、復雜可編程邏輯器件、閃爍存儲器和UART等硬件組成。系統的結構框圖和主要程序流程圖如圖1和圖2所示:
2 系統各部分設計要點
2.1 DSP的選擇和存儲空間的設計
TMS320VC5402具有很高的性價比,可以訪問1M的程序空間和64K的數據空間。內部自帶的16K 雙尋址RAM,可以在一個指令周期內完成兩次讀操作或一次讀和一次寫操作。鎖相環電路則可提供高達100MHz的工作頻率,從而使VC5402完全有能力在較短的時間內完成指紋的識別操作。
由于指紋圖像具有數據量大特點,因此程序的設計不可避免的需要較大的存儲空間。系統中所采集到的8bits灰度圖像大小為300×256,則存儲一幅圖像就需要75K的空間,而VC5402可尋址的數據空間范圍總共才有64K。為此,可以參照VC5402空間分配結構圖,通過程序空間頁擴展功能來解決圖像的存儲和運算問題,運用RPT、READA和WRITA指令完成圖像數據在程序空間和數據空間的搬移操作。
圖1 系統結構框圖
圖2 系統主要程序流程圖
2.2 指紋采集電路的設計
指紋傳感芯片選用Fujitsu公司的MBF200。它由256列×300行電容陣列組成,芯片內設計有兩套采樣保持電路用于指紋圖像的采集。圖像傳輸速度最大可達30幀/秒,能夠滿足連續指紋圖像的采集和比對。MBF200具有手指自動檢測電路(AFD),它允許DSP在沒有指紋時處在低功耗待命模式,當有手指時才通過中斷喚醒它進行相應的處理。然而實驗證明,AFD功能的可靠性較差,不能滿足設計要求。為此,在設計上采用了手動開關加軟件查詢方式來判斷是否進行指紋的采集。當主機接口(HPI)中的HPIENA管腳通過電阻接地,則系統復位上電后,HPI接口將作為通用輸入輸出口(GPIO)來使用。將手動開關的輸出信號線和GPIO的一個指定的輸入口相連接,當要進行指紋采集時,通過開關產生一個輸出信號;而系統初始化后DSP不斷的查詢GPIO中指定的輸入口狀態,一旦發現狀態發生變化,就進行指紋圖像的采集。實驗證明,這種方式很好的解決了圖像采集的問題,提升了系統的可靠性。除此之外,GPIO中其它的管腳可作為輸出管腳來使用,用于控制聲光報警電路。
2.3 DSP與PC接口的設計
為了充分利用VC5402的片上資源,降低成本。系統中使用MAXIM公司的通用異步串行收發器MAX3111E實現DSP和PC的通信。MAX3111E應用SPI接口與主控制器進行通信,它具有四個RS-232電平轉換器,這樣無需再接入MAX232進行電平轉換,從而應用一個芯片就實現了具有SPI接口的主控器與PC進行異步數據傳輸的功能。
VC5402的時鐘停止模式兼容SPI通信協議。當McBSP被設置成時鐘停止模式時,可將發送幀同步信號(FSX)用作SPI協議中/SS,將發送時鐘(CLKX)用作SPI協議中SCK;接收串行數據(DR)和發送串行數據(DX)分別作為協議中的MISO和MOSI。由于發送器與接收器在芯片內部實現了同步,所以接收時鐘(CLKR)和接收幀同步信號(FSR)不用于SPI模式中。當將VC5402配置為主器件,MAX3111E配置為從器件時,系統中McBSP各個寄存器參數的設置如表1所示:
表1 DSP作為SPI協議主器件時,McBSP的配置信息
需要設置的位?所在寄存器?功能描述?系統所采用的值
CLKSTP?SPCR1?禁止或使能SPI模式?11b
CLKXP?PCR?控制BCLKX信號的極性?0b
CLKXM?PCR?控制BCLKX信號的方向?1b
CLKSM?SRGR2?采樣率時鐘從CPU時鐘中取得?1b
CLKGDV?SRGR1?設定采樣率分頻系數?29
FSXM?PCR?控制BFSX信號的方向?1b
FSGM?SRGR2?BFSX在每次數據傳輸時有效?0b
FSXP?PCR?控制BFSX信號極性?1b
XDATDLY?XCR2?給BFSX信號提供正確的建立時間?01b
RDATDLY?RCR2?給BFSX信號提供正確的建立時間 ?01b
RWDLEN1 ?RCR1 ?控制接受數據包長度 ?010b
XWDLEN1 ?XCR1 ?控制發送數據包長度 ?010b
2.4 握手信號與程序加載的設計
系統中使用EPM7128SLC84作為全局邏輯控制器件。FLASH用于存儲系統的應用程序,當系統復位后,通過Bootloader完成程序的搬移。設計上將FLASH映射到數據空間的后32K處,選用XF來區分是對SRAM尋址還是對FLASH尋址。當系統上電復位后,XF引腳輸出高電平,這時FLASH將映射到數據空間中;當程序加載結束后,在系統初始化期間拉低XF信號屏蔽FLASH,從而使SRAM占據數據空間。另外,將MBF200映射到I/O空間的前32K處,使用A15和/IS作為片選信號。在設計上采用原理圖形式編寫CPLD程序,部分程序代碼如圖3所示:
圖3 CPLD原理圖程序
3 指紋識別算法設計概述
原始指紋圖像通常含有較多噪聲,因此需要進行預處理來改善圖像的質量,以便進行特征提取和比對。預處理包括方向圖計算、圖像增強、二值化及去噪、圖像細化及去噪。
由于指紋的紋線具有緩慢變化的特點,在局部通常具有明確的方向性,所以可以利用方向圖對圖像進行平滑和銳化處理。沿紋線的切線方向對圖像進行平滑,以起到連接不應有的間斷的作用:沿紋線的法線方向對圖像進行銳化,以突出紋線的邊緣信息。二值化就是把8灰度的指紋圖像變成0和255的二值圖像。二值化后的圖像通常在脊線上會有白色的斑點,程序上使用種子填充法把斑點去掉。為了進一步壓縮數據,需要對二值化圖像進行細化處理。細化時應保持紋線的連接性、方向性不變,還應保持紋線的中心基本不變。細化后的紋線會出現搭橋及豁口,因此必須進行細化后的去噪工作。預處理中各步驟的圖像如圖4所示。
設計中使用紋線端點和分叉點作為指紋特征點,這不僅是因為這兩類特征點出現的幾率最高且容易檢測,更重要的是它們足以描述指紋的唯一性。程序中使用紋線跟蹤方法提取特征點,其中紋線端點的屬性由橫縱坐標和紋線角度來表示;分叉點的屬性由橫縱坐標,紋線角度和三個分支間的夾角(從大到小)來表示。在提取出指紋特征點后,便會得到一組矢量點,同樣在指紋模板庫中保存的指紋模板也是一組矢量點,要判斷兩個指紋是否相同的問題也就轉化成判斷兩組矢量點是否相同的點模式匹配問題。
??? 關鍵詞:指紋識別;DSP;混合語言編程
指紋識別技術是以數字圖像處理技術為基礎,而逐步發展起來的。相對于密碼、各種證件等傳統身份認證技術和諸如語音、虹膜等其它生物認證技術而言,指紋識別是一種更為理想的身份認證技術。使用指紋識別具有許多優點,例如:每個人的指紋都不相同,極難進行復制或被盜用;指紋比較固定,不會隨著年齡的增長或健康程度的變化而變化;最重要的在于指紋圖像便于獲取,易于開發識別系統,具有很高的實用性和可行性。
1 指紋識別系統的架構
本課題設計了一個嵌入式系統,通過DSP來完成指紋圖像的采集和指紋識別的算法。另外為使系統有更廣闊的應用領域,在設計上還采用異步串行通訊方式實現了DSP和PC之間的數據交互。據此,系統由指紋傳感芯片、復雜可編程邏輯器件、閃爍存儲器和UART等硬件組成。系統的結構框圖和主要程序流程圖如圖1和圖2所示:
2 系統各部分設計要點
2.1 DSP的選擇和存儲空間的設計
TMS320VC5402具有很高的性價比,可以訪問1M的程序空間和64K的數據空間。內部自帶的16K 雙尋址RAM,可以在一個指令周期內完成兩次讀操作或一次讀和一次寫操作。鎖相環電路則可提供高達100MHz的工作頻率,從而使VC5402完全有能力在較短的時間內完成指紋的識別操作。
由于指紋圖像具有數據量大特點,因此程序的設計不可避免的需要較大的存儲空間。系統中所采集到的8bits灰度圖像大小為300×256,則存儲一幅圖像就需要75K的空間,而VC5402可尋址的數據空間范圍總共才有64K。為此,可以參照VC5402空間分配結構圖,通過程序空間頁擴展功能來解決圖像的存儲和運算問題,運用RPT、READA和WRITA指令完成圖像數據在程序空間和數據空間的搬移操作。
圖1 系統結構框圖
圖2 系統主要程序流程圖
2.2 指紋采集電路的設計
指紋傳感芯片選用Fujitsu公司的MBF200。它由256列×300行電容陣列組成,芯片內設計有兩套采樣保持電路用于指紋圖像的采集。圖像傳輸速度最大可達30幀/秒,能夠滿足連續指紋圖像的采集和比對。MBF200具有手指自動檢測電路(AFD),它允許DSP在沒有指紋時處在低功耗待命模式,當有手指時才通過中斷喚醒它進行相應的處理。然而實驗證明,AFD功能的可靠性較差,不能滿足設計要求。為此,在設計上采用了手動開關加軟件查詢方式來判斷是否進行指紋的采集。當主機接口(HPI)中的HPIENA管腳通過電阻接地,則系統復位上電后,HPI接口將作為通用輸入輸出口(GPIO)來使用。將手動開關的輸出信號線和GPIO的一個指定的輸入口相連接,當要進行指紋采集時,通過開關產生一個輸出信號;而系統初始化后DSP不斷的查詢GPIO中指定的輸入口狀態,一旦發現狀態發生變化,就進行指紋圖像的采集。實驗證明,這種方式很好的解決了圖像采集的問題,提升了系統的可靠性。除此之外,GPIO中其它的管腳可作為輸出管腳來使用,用于控制聲光報警電路。
2.3 DSP與PC接口的設計
為了充分利用VC5402的片上資源,降低成本。系統中使用MAXIM公司的通用異步串行收發器MAX3111E實現DSP和PC的通信。MAX3111E應用SPI接口與主控制器進行通信,它具有四個RS-232電平轉換器,這樣無需再接入MAX232進行電平轉換,從而應用一個芯片就實現了具有SPI接口的主控器與PC進行異步數據傳輸的功能。
VC5402的時鐘停止模式兼容SPI通信協議。當McBSP被設置成時鐘停止模式時,可將發送幀同步信號(FSX)用作SPI協議中/SS,將發送時鐘(CLKX)用作SPI協議中SCK;接收串行數據(DR)和發送串行數據(DX)分別作為協議中的MISO和MOSI。由于發送器與接收器在芯片內部實現了同步,所以接收時鐘(CLKR)和接收幀同步信號(FSR)不用于SPI模式中。當將VC5402配置為主器件,MAX3111E配置為從器件時,系統中McBSP各個寄存器參數的設置如表1所示:
表1 DSP作為SPI協議主器件時,McBSP的配置信息
需要設置的位?所在寄存器?功能描述?系統所采用的值
CLKSTP?SPCR1?禁止或使能SPI模式?11b
CLKXP?PCR?控制BCLKX信號的極性?0b
CLKXM?PCR?控制BCLKX信號的方向?1b
CLKSM?SRGR2?采樣率時鐘從CPU時鐘中取得?1b
CLKGDV?SRGR1?設定采樣率分頻系數?29
FSXM?PCR?控制BFSX信號的方向?1b
FSGM?SRGR2?BFSX在每次數據傳輸時有效?0b
FSXP?PCR?控制BFSX信號極性?1b
XDATDLY?XCR2?給BFSX信號提供正確的建立時間?01b
RDATDLY?RCR2?給BFSX信號提供正確的建立時間 ?01b
RWDLEN1 ?RCR1 ?控制接受數據包長度 ?010b
XWDLEN1 ?XCR1 ?控制發送數據包長度 ?010b
2.4 握手信號與程序加載的設計
系統中使用EPM7128SLC84作為全局邏輯控制器件。FLASH用于存儲系統的應用程序,當系統復位后,通過Bootloader完成程序的搬移。設計上將FLASH映射到數據空間的后32K處,選用XF來區分是對SRAM尋址還是對FLASH尋址。當系統上電復位后,XF引腳輸出高電平,這時FLASH將映射到數據空間中;當程序加載結束后,在系統初始化期間拉低XF信號屏蔽FLASH,從而使SRAM占據數據空間。另外,將MBF200映射到I/O空間的前32K處,使用A15和/IS作為片選信號。在設計上采用原理圖形式編寫CPLD程序,部分程序代碼如圖3所示:
圖3 CPLD原理圖程序
3 指紋識別算法設計概述
原始指紋圖像通常含有較多噪聲,因此需要進行預處理來改善圖像的質量,以便進行特征提取和比對。預處理包括方向圖計算、圖像增強、二值化及去噪、圖像細化及去噪。
由于指紋的紋線具有緩慢變化的特點,在局部通常具有明確的方向性,所以可以利用方向圖對圖像進行平滑和銳化處理。沿紋線的切線方向對圖像進行平滑,以起到連接不應有的間斷的作用:沿紋線的法線方向對圖像進行銳化,以突出紋線的邊緣信息。二值化就是把8灰度的指紋圖像變成0和255的二值圖像。二值化后的圖像通常在脊線上會有白色的斑點,程序上使用種子填充法把斑點去掉。為了進一步壓縮數據,需要對二值化圖像進行細化處理。細化時應保持紋線的連接性、方向性不變,還應保持紋線的中心基本不變。細化后的紋線會出現搭橋及豁口,因此必須進行細化后的去噪工作。預處理中各步驟的圖像如圖4所示。
設計中使用紋線端點和分叉點作為指紋特征點,這不僅是因為這兩類特征點出現的幾率最高且容易檢測,更重要的是它們足以描述指紋的唯一性。程序中使用紋線跟蹤方法提取特征點,其中紋線端點的屬性由橫縱坐標和紋線角度來表示;分叉點的屬性由橫縱坐標,紋線角度和三個分支間的夾角(從大到小)來表示。在提取出指紋特征點后,便會得到一組矢量點,同樣在指紋模板庫中保存的指紋模板也是一組矢量點,要判斷兩個指紋是否相同的問題也就轉化成判斷兩組矢量點是否相同的點模式匹配問題。
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- TMS320UC5402和TMS320VC5402數字信號處理器硅勘誤表詳細分析概述 13次下載
- TMS320VC5402和TMS320UC5402引導加載程序的特點和操作詳細概述 10次下載
- 基于TMS320VC5402的DSP基本系統的設計 18次下載
- 在TMS320VC5402上實現的語音識別算法 9次下載
- TMS320VC5402 DSP與串行AD73360 A/D轉換器的接口設計 12次下載
- 基于DSP芯片TMS320VC5402的HPI通信設計 136次下載
- 基于DSP的孤立詞語音識別系統的設計
- 基于TMS320VC5402 的DSP基本系統的設計
- 基于TMS320VC5509A的指紋識別系統的硬件設計
- DSP在嵌入式自動指紋識別系統中的應用
- 基于TMS320VC5402的汽車防撞信號處理系統設計與實現
- AVR 和TMS320VC5402的HPI接口通信設計
- 基于TMS320VC5402的指紋識別系統
- 基于TMS320VC5402的指紋識別系統
- TMS320VC5402 的Flash并行Bootloade
- 基于VC5402和PCI2040實現HPI接口和PCI接口的應用設計 2069次閱讀
- 基于TMS320VC5410和SAA7113芯片實現紙幣號碼識別系統的設計 2779次閱讀
- 基于DSP芯片TMS320VC5402的PCI圖像采集卡 1781次閱讀
- MicroLED技術尚不成熟,現階段屏下指紋識別系統只能做在OLED上 2447次閱讀
- 基于嵌入式應用平臺的指紋識別系統設計 2679次閱讀
- 指紋識別算法的嵌入式系統的設計方法及過程 5955次閱讀
- 基于STM32芯片的指紋識別系統設計與實現 2.2w次閱讀
- 中國十大指紋識別芯片企業盤點 5.4w次閱讀
- 基于ARM的光學指紋識別系統的設計方案 2142次閱讀
- 基于TMS320VC5507的語音識別系統實現 1942次閱讀
- 基于DSP CCS2.2實現指紋識別預處理系統 1956次閱讀
- 基于ARM9的指紋識別系統的設計和實現 3083次閱讀
- TMS320VC5402與單片機的HPI口通信設計 2176次閱讀
- VC5402與外部存儲器的接口設計 1785次閱讀
- 指紋識別的DSP實現方案 1548次閱讀
下載排行
本周
- 1電子電路原理第七版PDF電子教材免費下載
- 0.00 MB | 1489次下載 | 免費
- 2單片機典型實例介紹
- 18.19 MB | 91次下載 | 1 積分
- 3S7-200PLC編程實例詳細資料
- 1.17 MB | 27次下載 | 1 積分
- 4筆記本電腦主板的元件識別和講解說明
- 4.28 MB | 18次下載 | 4 積分
- 5開關電源原理及各功能電路詳解
- 0.38 MB | 9次下載 | 免費
- 6基于AT89C2051/4051單片機編程器的實驗
- 0.11 MB | 4次下載 | 免費
- 7基于單片機和 SG3525的程控開關電源設計
- 0.23 MB | 3次下載 | 免費
- 8基于單片機的紅外風扇遙控
- 0.23 MB | 3次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 2PADS 9.0 2009最新版 -下載
- 0.00 MB | 66304次下載 | 免費
- 3protel99下載protel99軟件下載(中文版)
- 0.00 MB | 51209次下載 | 免費
- 4LabView 8.0 專業版下載 (3CD完整版)
- 0.00 MB | 51043次下載 | 免費
- 5555集成電路應用800例(新編版)
- 0.00 MB | 33562次下載 | 免費
- 6接口電路圖大全
- 未知 | 30319次下載 | 免費
- 7Multisim 10下載Multisim 10 中文版
- 0.00 MB | 28588次下載 | 免費
- 8開關電源設計實例指南
- 未知 | 21539次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935053次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 78.1 MB | 537791次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233045次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191183次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183277次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138039次下載 | 免費
評論
查看更多