基于STM32的指紋識別系統(tǒng)的設計_第1頁
基于STM32的指紋識別系統(tǒng)的設計_第2頁
基于STM32的指紋識別系統(tǒng)的設計_第3頁
基于STM32的指紋識別系統(tǒng)的設計_第4頁
基于STM32的指紋識別系統(tǒng)的設計_第5頁
已閱讀5頁,還剩25頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

基于STM32的指紋識別系統(tǒng)的設計摘要隨著經濟時代的到來和科技的發(fā)展,人們對生活水平有了更進一步的的追求,對生活的安全性逐步提高,其中含有身份安全認證功效的指紋識別技術在人們的關注和需求下,得到了長足的發(fā)展,出現了多個不同的指紋識別系統(tǒng),然而大多數指紋識別系統(tǒng)是基于PC機的,在便捷性和可移動性上還存在諸多局限性?;谇度胧降闹讣y識別成為了人們的研究的方向,并獲得了一定的成果。然而在這些應用中尚有諸多局限性等待大家的討論研發(fā),需要更進一步的研究和改善,以提高系統(tǒng)的應用前景。本文通過對嵌入式有關知識、圖像預解決等方面的理論知識進行研究,在前人的基礎之上,開發(fā)了一套小型的嵌入式身份識別系統(tǒng)。本文根據要設計的身份識別系統(tǒng)的功效來討論了有關的指紋識別系統(tǒng)的硬件設計,完畢了基于STM32微解決器的指紋識別系統(tǒng)設備的硬件電路設計和對應的軟件設計。該系統(tǒng)含有指紋圖像采集、指紋庫中數目統(tǒng)計、指紋比對、指紋錄入等功效。另外,本文電路設計中選用的電器件在價格和性能上都有一定的優(yōu)勢。同時,本文對指紋識別系統(tǒng)的過程和有關的原理進行了一定的分析和研究,重點研究指紋圖像的預解決過程。核心詞:指紋識別;STM32;嵌入式技術;圖像預解決ThedesignofthefingerprintidentificationsystembasedonSTM32AbstractWiththeadventoftheeraofeconomyandthedevelopmentofscienceandtechnology,people'slivingstandardshavefurtherpursuit,graduallyimprovethesafetyofthelife,theonewhichhasthefunctionofauthenticationsecurityfingerprintidentificationtechnologyunderthepeople'sattentionanddemand,therapiddevelopment,appearedavarietyoffingerprintidentificationsystem,butmostofthefingerprintidentificationsystemisbasedonPC,therearestillmanydeficienciesintheconvenienceandmobility.Basedonembeddedfingerprintidentificationhasbecomepeoplethedirectionoftheresearch,andachievedsomeresults.Howeverintheseapplicationsandtherearemanyinadequatewaitwediscussresearchanddevelopment,theneedtofurtherresearchandimprovement,inordertoimprovetheapplicationprospectofthesystem.Basedontheembeddedknowledge,imagepreprocessing,etctostudythetheoryofknowledge,onthebasisofpredecessors,hasdevelopedasmallembeddedidentificationsystem.Identificationbasedontodesignthesystemfunctiontodiscusstherelatedfingerprintrecognitionsystemhardwaredesign,completedthefingerprintidentificationsystembasedonSTM32microprocessorequipmentdesignofhardwarecircuitandsoftwaredesign.Thesystemhasafingerprintimagecollection,fingerprintlibrarystatistics,fingerprints,fingerprintinputnumber,andotherfunctions.Inaddition,thispaperselectedfromthecircuitdesignofelectrichaveacertainadvantageinpriceandperformance.Atthesametime,inthispaper,thefingerprintrecognitionsystemhasbeenconductedfortheprocessandtherelatedprincipleofanalysisandstudyonthekeyresearchoffingerprintimagepretreatmentprocess.Keywords:fingerprintidentification;STM32;Embeddedtechnology;Imagepreprocessing目錄摘要 =1\*ROMANIAbstract =2\*ROMANII第1章緒論 11.1引言 11.2指紋識別技術 11.3指紋識別研究的現狀 2第2章STM32嵌入式指紋識別系統(tǒng)的設計 22.1設計的概述 22.1.1圖像分割 22.1.2指紋圖像的收斂 32.1.3指紋圖像的二值化解決 32.1.4指紋圖像的細化 32.1.5指紋圖像增強 42.1.6特性點的提取 42.2指紋傳感器的分類 42.2.1光電式指紋傳感器 42.2.2熱敏指紋傳感器 52.2.3電容式指紋傳感器 52.2.4超聲波指紋傳感器 62.2.5壓敏指紋傳感器 62.3指紋采集程序設計 62.3.1指紋比配 72.3.2圖像場計算 72.4細節(jié)提取 8第3章系統(tǒng)的硬件設計及軟件設計 83.1指紋識別系統(tǒng)的硬件 83.1.1采集方式 93.1.2MBF200傳感器概述 113.1.3MBF200重要寄存器 113.1.4MBF200的重要功效 123.1.5SPI通信模式 123.2STM32指紋識別的軟件 123.2.1系統(tǒng)主程序設計 133.2.2傳感器初始化程序 143.2.3存儲器的擴展程序設計 163.2.4串口程序的設計 163.2.5移植算法程序 17第4章成果分析 184.1圖像匹配測試 184.2指紋識別系統(tǒng)測試 19第5章總結 20致謝 21參考文獻 22附錄1 23第1章緒論1.1引言隨著社會的進步和經濟的發(fā)展,人們越來越關注身份鑒別的精確性和安全性。指紋識別就是根據生物特性的身份認證方式之一[1]。傳統(tǒng)的身份識別辦法的局限性和弊端體現得越來越明顯。從本質上解決傳統(tǒng)了身份識局限性,因此正逐步被承認。指紋識別技術發(fā)展至今已經成為生物特性識別應用最為可靠,方便的一種類型。本研究設計,是一種基于STM32芯片的指紋識別系統(tǒng),它是通過指紋算法解決,以及傳感器采集指紋數據等來實現指紋識別的。同時它還結合了VC++實現了人機交換顯示指紋分辨數據。鑒于STM32有下列幾點功效高速低功耗,這個特點能夠讓我們將其作為主控芯片。嵌入式指紋識別系統(tǒng)有較高的實時性、精確性安全性等各個實驗的來以規(guī)定進行了改善,以提高指紋識別系統(tǒng)的性能[2]。1.2指紋識別技術指紋識別技術是指運用計算機進行的指紋自動識別的技術,它是一項綜合技術,其研究發(fā)展涉及到多個前沿及邊沿科學,如含糊數學、數學形態(tài)學、神經網絡、模式識別、計算機視覺、人工智能、數據壓縮、并行解決以及網絡技術?;灸軌蚍譃槿?;捺印指紋、含糊指紋和活體指紋。捺印指紋指的是將沾了印墨的手指按壓在某種東西(普通是紙)上所留下的指紋痕跡,過去普通采用的都是這種采集方式,直到今天,這種方式仍然是指紋采集的重要手段之一。含糊指紋普通是指犯罪現場采集觀察到的指紋。根據錄入原理的不同,活體指紋錄入能夠分為光反射式、超聲反射式、熱敏式以及電容式幾個。根據采集時指頭與否與錄入儀器接觸,又可分為接觸式和非接觸式。根據與否能夠滾動采集指紋又可分為滾動指紋錄入儀和非滾動指紋錄入儀[3]。1.3指紋識別研究的現狀指紋自動識別系統(tǒng)是網絡、光電技術、圖像解決、智能卡、數據庫技術等于一體的綜合技術。并把它變成計算機解決過的暗碼相比對的代碼。這些代碼通過加密解決,然后經獨特的有關算法進行識別判斷,在算法上采用一種指紋的全部圖案,而有的采用指紋的特殊細節(jié)的辦法。第2章STM32嵌入式指紋識別系統(tǒng)的設計2.1設計的概述指紋識別系統(tǒng)事實上是一種相稱復雜的多任務系統(tǒng),整個過程涉及圖像采集、預解決、特性提取、識別匹配等,考慮到實際應用的需要,還必須加上數據傳輸、外圍設備控制等部分來完畢一系列諸如人機對話、指紋數據庫數據讀取、匹配成果輸出等工作。其中預解決、特性提取和匹配識別都含有算法復雜、計算量大的特點,因此整個系統(tǒng)事實上也是一種計算密集的過程。要實現這樣一種多任務、高計算密度的系統(tǒng),除了規(guī)定解決器擁有強大的計算能力外還必須擁有強大的控制能力來協(xié)調調度和分派資源。同時,大量高速的存儲器資源也是必不可少的。在這種系統(tǒng)中,由于微解決器既要完畢復雜的圖像解決,又要負責監(jiān)控外圍設備的任務,這樣使得系統(tǒng)解決指紋的效率偏低,系統(tǒng)的功效簡樸,并且更重要的是對于系統(tǒng)升級或功效擴展都十分不便。在本嵌入式指紋自動識別系統(tǒng)中,我們將其分為指紋識別算法模塊加控制模塊兩大部分。指紋圖像預解決可得到含有清晰紋理構造的指紋灰度圖像,涉及圖像特性分割,圖像收斂、平滑、增強、二值化等一系列過程。2.1.1圖像分割指紋圖像應用部分梯度場值高,在很大程度上背景部分梯度場值低,因此,能夠以分型維數的物理模型為基礎通過梯度場來分割指紋圖像。在這里我們能夠通過某些計算辦法來實現圖像的分割[4]。本分割辦法構造邊界曲線概率密度模型,接著根據指紋圖像所含有的內在特性構造外背景區(qū)域概率密度函數和內指紋區(qū)域概率密度函數,然后形成邊界曲線的Markov鏈,最后采用馬爾科夫鏈蒙特卡洛模擬(MCMC)辦法實現動態(tài)模擬,求取最優(yōu)的邊界曲線,從而實現對指紋圖像的有效分割。指紋圖像中存在有脊線區(qū)域、谷線區(qū)域和背景區(qū)域。相對而言,脊線區(qū)域上的像素的灰度值相差很小,而谷線區(qū)域與背景區(qū)域上的像素的灰度值相差很小。反映在灰度直方圖上,灰度值就會在兩處集中而形成兩個峰,兩個峰對應的灰度值分別稱之為脊線中心灰度和谷線中心灰度。那么,能夠認為脊線區(qū)域中像素的灰值服從以脊線中心灰度為中心的正態(tài)分布。然而對于指紋區(qū)而言,其上的像素既可能在脊線區(qū)域上,也可能在谷線區(qū)域上,而谷線的灰度分布跟背景灰度分布相似。因此判斷曲線Γ內部區(qū)域在指紋區(qū)的指標應當是屬于脊線區(qū)域的像素。在一塊指紋區(qū)上,脊線和谷線總是交替出現,能夠認為,脊線像素總數與谷線像素部數大致也相等。換句話說,脊線像素的總數應當大概等于指紋區(qū)像素的總數的1/2,太大或太小都不行。2.1.2指紋圖像的收斂當受到外界的噪聲干擾時,指紋紋線像素的位置和灰度會變化并發(fā)散。指紋圖像的收斂就是使像素的變化差別縮小到預先固定的閾值之內。二維高斯函數描數值,A是該點的發(fā)散振幅(用灰度值表達),最后一項是二維高斯函數模板算子。2.1.3指紋圖像的二值化解決指紋圖像二值化解決把指紋圖像變成黑白兩色的指紋紋線構造。如果一種點的切向灰度之和比法向灰度之和要小,則可判斷為黑點處在指紋紋路的背景上。所謂灰度圖象的二值化就是通過設定閥值,把它變?yōu)閮H用兩個灰度值分別表達圖象的前景和背景顏色的二值圖象。圖象的二值化能夠根據下面的閥值來解決。2.1.4指紋圖像的細化指紋圖像的細化是為了減少要解決的信息量,把指紋的脊線部分對稱減薄,使指紋紋線由原來的多個像素寬度變?yōu)閱蝹€像素的線形圖。本研究采用查表法對指紋進行細化解決。因指紋圖像已進行二值化解決,其像素要么是0,要么是和方向差,再分析其內在的關系,從而建立局部的特征向量以進行指紋特性點的初次匹配。同時在匹配的過程中標記最大且不為零的匹配分數Score,再對所得匹配分數Score求和并通過進一步算法得到相對匹配分數S,為了減少誤判,本研究通過設立門限對指紋的匹配狀況進行初步鑒定。全局匹配:對于沒有得到鑒定的狀況,通過全局匹配來進行進一步鑒定。由于前文已經求取了指紋的奇異點,這里將提取的指紋A和指紋B的奇異點(中心點或三角點)分別作為待鑒定和模板庫指紋圖像相應的極坐標的中心點。2.1.5指紋圖像增強指紋圖像增強是指紋識別系統(tǒng)的重要構成部分,在通過算法使指紋不清晰的地方得到改善的同時盡量保存指紋原有的特性信息,確保后續(xù)圖像解決的準確性和可靠性。對于指紋圖像的增強,本研究前面通過計算獲得指紋的方向場和頻率場信息,這里采用較成熟可靠的Gabor小波濾波器實現圖像的智能增強,該小波工具首先在指紋紋線上能夠對在該位置方向場上的指紋紋線進行收斂增強,另首先它也符合指紋紋線相間的特點,能夠在該位置的頻率場上對指紋紋線進行振蕩增強,從而提高圖像的增強效果,方便更有利地提取指紋特性點信息[5]。2.1.6特性點的提取特性點提取分兩種狀況,即:對端點和交叉點的提取;對指紋特性奇異點的提取。本次的研究采用的是交叉數的特性提取辦法。在特性點檢測中,對Harris算子提出了兩種不同的辦法,添加了高斯函數一階微分作為濾波窗口,此窗口是能夠手動調節(jié)的,進行了改善,得到了比傳統(tǒng)的使用梯度算子進行檢測更加好的結果。隨著圖像解決精度規(guī)定的不停提高,對圖像邊沿檢測的精度規(guī)定也在不停提高,現有的邊沿特性檢測算子大多都是像素級的辦法來實現的。2.2指紋傳感器的分類指紋采集設備按指紋傳感器工作原理的不同可分為五類:光電式、電容式、壓敏式、熱敏式和超聲波式。下面就指紋傳感器的幾個類型分別加以介紹。2.2.1光電式指紋傳感器光電式指紋傳感器工作原理是運用從光源發(fā)出的一組光線,通過棱鏡后照射在待采手指上,由于指紋的脊和谷對光線的反射不同,所形成的指紋紋路圖像被投射到半導體光敏矩陣器件上,形成隨圖像明暗變化而變化的電信號。最后通過A/D轉換電路轉換為一連串指紋識別系統(tǒng)設計的數字圖像信息。早期的光電式指紋傳感器中,光電圖像轉換器件重要采用半導體CCD器件,其信號輸出大多是模擬信號,與解決器的接口電路比較復雜,抗干擾能力也較弱。隨著CMOS數碼陣列光電圖像傳感器技術的不停成熟,在光電圖像轉換的領域中,CMOS光電器件開始逐步取代傳統(tǒng)的CCD光電器件。用CMOS光電器件取代CCD光電器件而構成的光電式指紋傳感器,稱之為CMOS光電式指紋傳感器。光電式指紋傳感器的優(yōu)勢在于,產品的成本相對較低,耐用度好,抗靜電強度高,能承受一定程度的溫度變化,并能夠提供分辨率為500dpi的圖像。局限性之處重要體現在尺寸過大和潛在指印兩個方面。2.2.2熱敏指紋傳感器熱敏式指紋傳感器的采樣原理是通過感應在傳感器上指紋的脊和谷的溫度不同來獲得指紋圖像。熱敏式指紋傳感器的工作方式屬于被動掃描型,輸出信號為圖像幀序列,需要用專門的圖像拼接算法來拼接出一蝠完整的指紋圖像。其特點是體積小,成本極低。但其輸出的圖像經拼接后生成的指紋圖像幾何失真度較大。熱敏式指紋傳感器采用了全新的設計思路,它的工作機理是基于對溫度的敏感。從而能夠在不影響芯片采集性能的前提下,在其表面涂覆一層導電的鈦膜,既起到靜電保護的作用,又能夠提高芯片的耐瘩損性能。它的采集面普通呈窄條線狀構造,采集時變化了以往傳統(tǒng)的“捺印”模式[6]。依靠手指在指紋傳感器表面上滑動時,各對應熱敏傳感單元上溫度的不同變化來生成指紋圖像的電信號。2.2.3電容式指紋傳感器電容式指紋傳感器由半導體晶片構成,在半導體晶片的表面,集成了約100,000個電容傳感器陣列,其表面是絕緣的。當活體手指放在上面時,皮膚構成了電容陣列,手指上導電性能良好的真皮層上的脊和谷相對晶片表面的距離不同,與芯片之間產生不同的電容使電容傳感器陣列中對應單元的電壓值也不同,繼而使這些電信號轉換成一種8bit的灰度數字指紋圖像。半導體電容式指紋傳感器含有自動增益(AGC)功效,在不同的環(huán)境下結合反饋的信息,能夠自動調節(jié)行列、局部范疇以及每一種像素的敏捷度,從而提高圖像的質量。例如一種局部不清晰(對比度差)的干燥指紋圖像,或者是手指按壓力度較輕而使邊沿含糊不清,都能夠被反饋環(huán)路感覺到,并自動增強其敏捷度來進行賠償,在圖像捕獲的瞬間生成清晰的圖像。因此采用半導體電容式指紋傳感器錄入設備,能夠在相對較差的條件下生成質量較好的指紋圖像。對不同的氣候變化和職業(yè)背景所帶來的手指變化,含有較好的適應性。半導體電容式傳感器體積小巧,它能夠集成到許多現有設備特別是移動式設備中,圖像幾何失真度小,能夠生成質量較好的指紋圖像,并且指紋錄入時不需要較大面積的錄入頭。其缺點是受半導體大規(guī)模集成電路制造技術水平的限制,其采集的面積不易做大。對特別潮濕的手指,采集效果不佳。另外,容易受到靜電的影響,這使得傳感器有時會取不到圖像,甚至會被損壞。2.2.4超聲波指紋傳感器超聲波指紋傳感器取像的原理是通過超聲波掃描指紋的表面,接受其反射信號,測量它的變化值,得到脊的深度和具體位置,進而獲得指紋圖像。該類傳感器工作時,超聲波能夠穿透臺板以及指紋上的灰塵和殘存物,因此積累在皮膚上的臟物和油脂對超聲波掃描獲得的圖像影響不大,因此這樣的圖像是實際脊線凹凸的真實反映。其優(yōu)點是采集面積大、適應能力好。缺點是設備體積大、成本高以及使用壽命不穩(wěn)定。2.2.5壓敏指紋傳感器壓敏指紋傳感器頂層的表面是含有彈性的壓敏介質材料,它們根據指紋的外表脊紋線的凹凸轉化為對應的電子信號,繼而形成指紋圖像。其重要特點是成本較低,對干濕手指適應能力極佳,即使將其浸入水中,也不會影響指紋圖像采集質量。缺點是對于婦女、小朋友等皮膚較嬌嫩的手指,采集的圖像不夠清晰。2.3指紋采集程序設計程序設計核心是程序實現SPI通信模式下STM32和指紋傳感器FPS200的通信操作。FPS200有19個寄存器,用來控制指紋數據采集過程中的狀態(tài)和行為,這里介紹幾個比較重要的寄存器的初始化:(1)初始化CTRLB,使能芯片的ENABLE位使其處在工作狀態(tài),XTALSE位選擇內部12M晶振,同時使能指紋自動檢測,通過判斷RDY位的狀態(tài)決定指紋圖像數據的讀取。(2)初始CTRLA,這里可以選擇GETROW、GETIMG和GETSUB這3種存取模式的1種作為存取模式,本研究給CTRLA寫入0x02,即選擇GETIMG模式來獲取整幅圖像。(3)初始化DTR、DCR和PGC,它們影響采集圖片的質量,DTR是放電時間寄存器,影響著圖像背景亮暗程度。結束與否讀到該圖像的最后單元與否讀到該行最后單元初始化DTR初始化CTRLA自動采集指紋數據結束與否讀到該圖像的最后單元與否讀到該行最后單元初始化DTR初始化CTRLA自動采集指紋數據圖像場計算分割圖像場計算分割均衡化平滑增強二值化細化原始灰度圖像指紋圖像預解決特性點提取特性匹配匹配成果圖2.12.3.1指紋比配指紋匹配指的是通過對兩枚指紋特性集間的相似性比較,來判斷對應的指紋圖像與否來自同一手指的過程,它是一種非常典型而又亟待解決的模式識別問題?,F在,指紋細節(jié)點匹配算法分類有多個:根據指紋識別的目的能夠分為一比一匹配和一比N匹配;根據操作過程的差別可分為自動匹配和人機交互匹配;根據匹配適應性能夠分為彈性匹配和剛性匹配。根據指紋細節(jié)點定義和相似性判斷函數選用的不同,指紋匹配辦法更是多個多樣的,例如基于奇異點的、基于三角形的、基于極坐標變換的,基于動態(tài)規(guī)劃的、基于圖匹配的等等辦法,不勝枚舉。需要闡明的是這些分類辦法都難以囊括全部的指紋匹配算法,由于同時有諸多算法彼此交叉。需要指出的是,上述分類辦法并不是絕對的,多個辦法是互相聯(lián)系的,每個算法都有自己的特點,并針對特殊的應用。例如:圖匹配的辦法對質量差指紋圖的噪聲抗干擾能力較好,但辦法未經大規(guī)模實驗的證明;細節(jié)點匹配對質量好的指紋圖像計算精確,紋理特性的可辨別性不強;基于紋理信息和串匹配的混合匹配辦法在一定程度上提高了識別率,但是計算代價非常高;基于三角匹配和動態(tài)規(guī)劃的混合匹配辦法能夠解決非線性形變的問題,但是提取的特性過大,難以滿足在線實用的規(guī)定。總而言之,指紋圖像的幾何影像形變及錯位等問題是匹配算法需要做的首要工作。因此,在指紋識別中必須考慮這些指紋圖像中可能存在的線性或非線性形變?,F在已有的算法依賴一種前提條件:待匹配的兩幅指紋圖像是使用相似配備、相似采集儀來采集的,即同模態(tài),并且,這些指紋允許存在一定程度的噪聲。而匹配算法的最后目的是對給定的兩幅指紋,謀求使這兩幅圖像的灰度(或特性)相似度之間差別達成最小的辦法。在這種狀況下,重要的工作經常是對指紋形變問題的研究,建立一種定義在有窮的形變參數空間的帶參數的形變變換模型,最后進行形變參數最優(yōu)化解決[7]。2.3.2圖像場計算圖像場計算涉及圖像的強度場、梯度場、方向場以及頻率場計算。首先本研究采用Soble算子求指紋圖像灰度函數,再分別沿x和y方向偏導Ax(x,y)和Ay(x,y),計算該指紋圖像的梯度場,由于梯度場能夠較好地分割指紋圖像。2.4細節(jié)提取細節(jié)點對應的脊線用在與該脊線上的采樣點來表達,采樣的距離約為脊線間的平均距離。脊線分支點對應的脊線是與該細節(jié)點的方向近來的那條。脊線末梢對應的脊線則就是該細節(jié)點所在的脊線。采樣點用該點與對應細節(jié)點的距離di和連接該點與對應細節(jié)點的直線與對應細節(jié)點方向的夾角αi來表達,αi的取值范疇是-180到180度[8]。細節(jié)點對應的脊線及脊線上的采樣點的例子。在細節(jié)匹配中,對應脊線將被用來對用來匹配的兩個平面點集進行校準,并且,校準的參數,也就是兩個點集中任意一對脊線間的旋轉角度,將被用來作為判斷它們所對應的細節(jié)點能否看作匹配的細節(jié)點的條件。第3章系統(tǒng)的硬件設計及軟件設計3.1指紋識別系統(tǒng)的硬件圖3.1所示是本STM32指紋識別系統(tǒng)的硬件框圖。從圖3.1中能夠看到,本系統(tǒng)重要由指紋數據采集模塊、微解決器模塊、數據存儲模塊和通訊模塊等四個模塊構成。本系統(tǒng)以本解決器為核心來驅動指紋傳感器采集指紋,并將指紋數據放入存儲器中,此數據能夠被PC通過串口獲取,也能夠保存在數據存儲器中。指紋數據采集模塊可運用軟件方式來判斷與否進行指紋的采集。當進行指紋采集時,指紋傳感芯片將按照設定的參數來采集指紋,并將模擬圖像轉換成數字圖像,然后在ARM的控制下,將數據存儲在外部數據空間,以等待下一步的解決。指紋識別系統(tǒng)的硬件框圖以下。SDRAMSDRAMARM通訊接口MBF200FLASH圖3.1微解決器模塊以ARM和數據存儲器為核心,可對采集到的指紋圖像進行對應的預解決,并通過對發(fā)光二極管的控制來顯示指紋預解決成果。數據存儲模塊由SDRAM、FLASH構成。其中Flash中寄存的是系統(tǒng)的應用程序和一種指紋預解決后的數據,系統(tǒng)上電后,即可通過“BootLoader”功效將程序加載到FLASH中方便程序運行。功效將程序加載到FLASH中方便程序運行。SDRAM用來寄存指紋圖像并提供程序運行時所需要的臨時數據空間。通訊模塊的設計要考慮到解決的簡易性。本系統(tǒng)的指紋數據上傳采用的是串口方式。3.1.1采集方式MBF200[9]有三種總線接口:USB接口、微解決器總線(MCU)接口和串行外設接口(SPI)。使用時可由模式選擇管腳MODE[1:0]擬定其所處的工作模式。在MCU接口模式,通過自動增加行列地址寄存器的值以及模數轉換的途徑優(yōu)化功效,可使FPS200內置的原則8位微解決器總線的性能大大加強,其圖像傳輸速度可達成30幀/秒,故能夠滿足持續(xù)指紋圖像的采集和比對。在SPI接口模式,MBF200傳感器可通過其內置的SPI接口來減小MBF200對硬件的依賴,這樣,系統(tǒng)只需6條線就能夠與帶SPI接口的微解決器相連接。在SPI模式下,MBF200的圖像傳輸速度為10幀/秒。而在USB接口模式下,由于FPS200內置有高速USB核電路,其外部不再需要其它USB控制器,因而可作為原則的USB設備來使用。在USB模式下,MBF200的圖像傳輸速度為13幀/秒。3.1.2MBF200傳感器概述富士通公司的MBF200固體指紋傳感器是一款直接接觸的指紋識別芯片。它含有高性能、低功耗、低成本的特性,是電容性傳感器,在傳感陣列中有一種二維的金屬電極傳感陣列,每一種金屬電極充當電容的一種電容板,接觸的手指作為電容的另外一種電容扳,器件表面的鈍化層作為兩板的絕緣層。當手指觸摸傳感器表面時,指紋的高低不平就會在傳感器陣列上產生變化的電容,從而引發(fā)二維陣列上電壓的變化,并形成指紋傳感圖像。tdBF200是根據原則的CMOS工藝制造而成,傳感陣列為256X300,有50um時間延遲,產生的圖像的分辨率為500dpi。該芯片的特點是:電容性固態(tài)傳感器;500dpi的分辨率(50um間隔);傳感器面積為1.28cmX1.50cm:256X300的傳感陣列;工作電壓范疇為3.3V一5V;特別的硬抗化學的保護涂層;集成了8位ADC:3種總線接口,即8位微解決器(MCU)總線接口、集成的USB全速接口及集成的串行周邊1發(fā)備接口MBF200的傳感器陣列由256行300列的傳感器單元構成,每一列有兩個采樣保持電路,每次捕獲一行指紋圖像數據。行捕獲分為兩個階段,第一階段,將電容板的被選行充電到3.3V或5V,在充電的同時,一種內部信號使自&一種采樣保持電路以采樣被選行的電容單元電壓;第二階段是傳感器板放電階段,放電快慢由放電電流寄存器。3.1.3MBF200重要寄存器地址標記功效:0x00RAH行地址高位;0x01RAL行地址低位;0x02CAL列地址低位;0x03REH行末地址低位;0x04REL行末地址低位;0x05CEL列末地址低位;0x06DTR放電時間寄存器;0x07DCR放電電流寄存器;0x08CTRLA控制寄存器;A0x09LTRLB控制寄存器;B0x0ACTRLC控制寄存器;C0x0BSRA狀態(tài)寄存器;0x0CPGC可編程增益控制寄存器;0x0DICR中斷控制寄存器;0x0EISR中斷狀態(tài)寄存器;0x0FTHR門限寄存器;0x10CIDH芯片標記高;0x11CIDL芯片標記低;0x12TST測試模式寄存器。這些就是MBF200的重要寄存器。由于列地址最大為256,因此,MBF200只有一種列開始寄存器CAL和一種列結束寄存器CEL。另外,THR用于在自動檢測指紋時設立門限電壓。PGC用于在A/D轉換時設立放大器的增益。3.1.4MBF200的重要功效MBF200的傳感器陣列由256列300行的傳感器單元構成。每一列有兩個采樣保持電路,每次捕獲一行指紋圖像數據。行捕獲分為兩個階段,第一階段,將電容板的被選行充電到3.3V或5V,在充電的同時,一種內部信號使能一種采樣保持電路以采樣被選行的電容單元電壓;第二階段是傳感器板放電階段,放電快慢由放電電流寄存器決定。放電階段結束后,可由一種內部信號使能另一種采樣保持電路去采樣電容單元的最后電壓,充電電壓與放電電壓之差就是所要測量的有用傳感信號電壓。行捕獲結束之后,接著對該信號進行數字化,從而完畢一次采樣。事實上,該芯片的敏捷度是由放電電流和放電時間寄存器來調節(jié)的。3.1.5SPI通信模式MOTOROLA公司的SPI總線的基本信號線為3根傳輸線,即SI、SO、SCK。傳輸的速率由時鐘信號SCK決定,SI為數據輸入、SO為數據輸出。它包含了一種主片和多個從片,主片通過發(fā)出片選信號-CS來控制對哪個從片進行通信,當某個從片的-CS信號有效時,能通過SI接受指令、數據,并通過SO發(fā)回數據。而未被選中的從片的SO端處在高阻狀態(tài)。主設備通過產生移位時鐘來發(fā)起通訊。通訊時,數據由SO輸出,SI輸入,數據在時鐘的上升或下降沿由SO輸出,在緊接著的下降或上升沿由SI讀入,這樣通過8/16次時鐘的變化,完畢8/16位數據的傳輸。3.2STM32指紋識別的軟件本程序是以IAREmbeddedforARM作為系統(tǒng)的一種專門嵌入式微解決器所開發(fā)的環(huán)境,其特點開發(fā)容易,簡答易學,代碼緊湊。其涉及項目管理,編輯器、C/C++編譯器和ARM匯編器、連接器和支持RTOS的調試工具C-SPY。IAREWARM內部開發(fā)了全軟件模擬功效,能夠在沒有外接硬件設備的狀況下進行調試,通過軟件自帶的模擬程序實現任何ARM內核和外部環(huán)境的模擬。其中IAR公司還推出了芯片仿真器,支持無縫連接。只需將該仿真器的兩端通過JTAG接口和USB接口分別與STM32芯片和計算機相連,即可實現與IAREWARM的連接進行軟件的仿真和調試,下載速度可達800kb/秒,并且無需任何驅動程序,簡樸方便,是最實用有效的ARM系統(tǒng)軟件開發(fā)的工具。在IAREWARM下實現程序開發(fā),并對開發(fā)的程序進行仿真和調試的具體流程以下:(1)新建工作區(qū),然后創(chuàng)立工程,生成一種新的項目,添加要開發(fā)的全部應用程序,選擇芯片類型同時配備編譯和連接有關參數和輸出文獻途徑等。(2)編譯和連接項目中的應用程序,生成編譯器列表文獻和連接存儲器分派文獻。(3)使用j-link仿真器調試和運行程序,同時設立斷點。3.2.1系統(tǒng)主程序設計指紋識別的主程序是將指紋解決的各個階段:涉及指紋采集、圖像的預解決、提取特性點、圖像匹配整個過程組合在一起實現嵌入式系統(tǒng)的指紋識別,在組合的過程中,要實現算法程序的移植、系統(tǒng)存儲空間的分派和算法的優(yōu)化等各個部分,最后實現精確高效的指紋識別。其系統(tǒng)的主程序流程圖如圖3.2所示。主程序的重要初始化函數以下:RCC_Configuration();//系統(tǒng)時鐘初始化NVIC_Configuration();//中斷初始化GPIO_Configuration();//GPIO初始化USART_Configuration();//串口初始化MBF200_Init();//MBF200初始化LCD1602_init();//1602液晶初始化FSMC_SRAM_Init();//SRAM初始化開始開始STM32系統(tǒng)初始CP200初始化自動采集指紋數據初始化CTRLA初始化DTR讀CTRLA寄存器等待A/D轉換時間與否讀到該行的最后單元與否讀到該圖的最后單元結束等待行捕獲時間圖3.2.指紋識別系統(tǒng)流程3.2.2傳感器初始化程序對于傳感器的初始化,事實上是主控制器通過SPI通信對傳感器內部寄存器寫數據的過程,當寫數據時,通過先發(fā)送寫命令0X02,再發(fā)送要寫的寄存器地址,最后向對應地址的寄存器寫入數據,整個過程遵照SPI時序。需要強調一點,根據MBF200的技術資料中寫數據的時序圖,這里要寫的寄存器地址是原地址的值左移3位然后補零而形成的新的地址值。初始化CTRLB,使能芯片的ENABLE位,使其處在工作狀態(tài),傳感器啟動內部A/D轉換,XTALSE位選擇內部12M晶振,同時使能指紋自動檢測,通過判斷RDY位的狀態(tài)決定指紋圖像數據的讀取;當有手指按在傳感器的電容陣列區(qū)域時,傳感器自動喚起電路啟動,開始由休眠轉入工作狀態(tài),同時向主控制器發(fā)送一種中斷信號,傳感器開始逐行采集指紋的每一種像素,通過A/D轉化后,將數據暫存在CTRLA中,主控制器接受到中斷后,等待A/D轉換結束,開始讀取CTRLA的數據,讀取結束后則繼續(xù)等待A/D轉換數據,如果沒有能夠讀到該行的最后單元,則返回CTRLA寄存器,繼續(xù)讀取A/D轉換數據,否則需要判斷與否讀到圖像的最后單元,如果到圖像末尾則整個采集工作結束,否則繼續(xù)等待傳感器捕獲指紋信息,讀取下一行數據。這里給出傳感器的初始化程序:voidMBF200_Init(){MBF_WriteREG(0x06,0x38);//初始化寄存器DTRMBF_WriteREG(0x07,0x01);//初始化寄存器DCRMBF_WriteREG(0x0C,0x0C);//初始化寄存器PGCMBF_WriteREG(0x0F,0x2C);//初始化寄存器THRMBF_WriteREG(0x0E,0x03);//初始化寄存器ISRMBF_WriteREG(0x09,0x0D);//初始化寄存器CTRLBMBF_WriteREG(0x00,0x00);//初始化寄存器RAHMBF_WriteREG(0x01,0x00);//初始化寄存器RALMBF_WriteREG(0x02,0x00);//初始化寄存器CALMBF_WriteREG(0x03,0x00);//初始化寄存器REHMBF_WriteREG(0x04,0x00);//初始化寄存器RELMBF_WriteREG(0x05,0x00);//初始化寄存器CELMBF_WriteREG(0x0A,0x00);//初始化寄存器CTRLCMBF_WriteREG(0x08,0x00);//初始化寄存器CTRLA}3.2.3存儲器的擴展程序設計STM32對SRAM存儲器的擴展重要是通過對FSMC的配備實現的,系統(tǒng)選擇Bank1的子Bank3,根據存儲器IS62WV51216BL的映射位置FSMC_BCR3和FSMC_BTR3/BWTR3進行設立。首先選擇芯片映射到Bank1的第3個子Bank,設立對SRAM的讀/寫使用相似時序,這樣對時序寄存器只需要設立BTR3就能夠了,選擇存儲器的類型為SRAM,設立數據寬度為16(bit),嚴禁對地址和數據的復用,配備等待時序為在等待前的一種周期有效,同時使能芯片寫操作,這樣就完畢了對該寄存器的初始化。STM32的FSMC固件庫里包含了NORFlash控制器全部操作固件,通過對數據構造FSMC_NORSRAMTimingInitTypeDef內部組員的設立能夠實現時間參數寄存器FSMC_BTR3和BWTR3的轉變,使得內部組員的設立能夠實現對基本特性參數配備寄存器FSMC_BCR3的初始化。3.2.4串口程序的設計將指紋傳感器采集到的指紋數據保存在外部SRAM的全局數組中必須用到主控制器。系統(tǒng)通過設計串口程序建立主控制器與上位機的異步串口通信,對主控制器的串口進行初始化,對串口的有關參數進行設立,當到波特率選擇最大值為115200時,并啟動UART1,即可通過串口發(fā)送和接受函數實現與上位機的數據交互。采集的指紋數據通過串口線被發(fā)送到上位機的接受數據緩沖區(qū),需要在上位機設計串口程序將緩沖區(qū)的數據進行接受和保存。對次設計而言,MSComm控件封裝了與串口有關的全部API函數,在設計時只需要調用有關屬性、辦法、事件就能夠實現對串口通信的開發(fā),而不需要學習復雜的API函數,相對簡樸。因此本設計采用MSComm控件在VC++環(huán)境下實現對串口程序的開發(fā)。本設計選擇事件驅動法,對MSComm控件的慣用屬性,其中涉及端標語、通信參數、通信合同、端口狀態(tài)等進行初始化設立,并打開通信端口,然后通過OnComm事件的CommEvent屬性的值來判斷與否有數據發(fā)送或接受。當下位機開始發(fā)送數據時,即發(fā)生了一種通信事件,將引發(fā)上位機程序產生OnComm事件,并使得其CommEvent屬性的值將發(fā)生變化,應用程序根據CommEvent屬性值為2,表達緩沖區(qū)接受到字符,開始使用GetInput()函讀取接受緩沖區(qū)數據,由于在讀取和發(fā)送數據的過程中,使用的數據類型都為VARIANT型,因此需要將讀取的緩沖區(qū)數據保存在一種VARIANT[10]變量中,然后將該變量中的VARIANT型數據轉換為Cstring型變量存入全局數組。3.2.5移植算法程序研究算法時普通不用考慮存儲空間的分派問題,因此系統(tǒng)的內部存儲空間做夠大,能夠滿算法解決的規(guī)定對于嵌入式微解決器而言,芯片內部存儲空間有限,指紋的解決算法需要解決的數據量相對較大,其采集的指紋圖像、提取特性模板和運行的程序代碼都會占據較大的存儲空間,合理的分派存儲空間對系統(tǒng)算法的執(zhí)行十分重要。算法中間解決的臨時圖像通過建立全局數組的方式存儲在外部SRAM中;指紋提取的模板特性點以構造體的形式寄存在FLASH中;便于后來對其進行添加和刪除;指紋的待匹配特性點通過分派動態(tài)內存來保存,當系統(tǒng)識別結束后,即將該數據釋放,為系統(tǒng)的存儲空間節(jié)省了資源。系統(tǒng)解決過程中的臨時圖像數據就寄存在該全局數組中。對應外部SRAM,能夠通過兩個指針lpDIBBits(原圖像指針)和lpDataOut(目的圖像指針)指向該數組,以這兩指針算法的輸入輸出端口可實現圖像算法解決,即將指紋圖像解決前后的數據都保存在該數組中,避免了系統(tǒng)存儲資源的浪費。在指紋圖像的采集部分,通過對圖像邊沿處不重要的圖像信息進行裁剪,使得采集的圖像為250*200,同時對于存儲在數組中的矩陣圖像數據,通過抽樣提取的方式對圖像矩陣的行和列進行了減半縮小[11],使得圖像變?yōu)樵瓉淼?/4即為125*100的圖像,這兩個方面的解決使得圖像的數據量得到了較大減少,提高了系統(tǒng)的執(zhí)行效率。第4章成果分析4.1圖像匹配測試圖像特性匹配重要是通過統(tǒng)計匹配的特性點數計算兩幅圖像的相似度,驗證圖像的匹配,算法通過對特性點匹配的相似度進行計算,如果兩幅指紋圖像相似度于0.6,則認為兩幅指紋來自同一種手指的指紋。VC上針對兩幅圖像的匹配設計特性點匹配界面如圖4.1圖4.1特性匹配界面將圖像的預解決和細節(jié)特性點匹配算法相結合,從原指紋圖像開始對圖像的預解決算法和指紋的匹配算法進行整體性能的測試。采用指紋傳感器采集的指紋圖像作為輸入圖像,通過指紋算法解決,根據圖像的匹配程度給出匹配成果,匹配成功則輸出”sameimage”,匹配失敗則輸出“differentimage”.4.2指紋識別系統(tǒng)測試通過將VC++的指紋識別算法移植到嵌入式系統(tǒng)中,搭建嵌入式指紋識別系統(tǒng)平臺,并對圖像的識別算法進行測試。匹配成功LCD1602輸出”sameimage”字符串,匹配失敗LCD1602輸出“differentimage”字符串。通過在嵌入式系統(tǒng)上的驗證,指紋識別算法在該系統(tǒng)是上的識別精確率有所減少,分析重要因素可能是系統(tǒng)為了提高解決速度,對指紋圖像進行了抽樣縮小解決,使得圖像損失了部分的特性信息,識別的精確率有所下降,但是仍然保持在95%的水平。圖片數據量的減小使得系統(tǒng)在識別效率上得到了較大的提高。原來系統(tǒng)整個識別過程大概需要6s的時間,通過改善識別時間能夠控制在3s以內,大大提高了系統(tǒng)的識別效率。第5章總結隨著社會的發(fā)展,技術的不停進步,生物識別作為一種方便有效的身份認證技術,越來越受到人們的青睞,指紋識別技術作為生物識別技術中最為成熟的一種,始終都是人們研究的重點,特別是嵌入式技術在指紋識別方面應用以來,提高了指紋識別系統(tǒng)的性價比,為指紋識別系統(tǒng)走向民用提供了便利,現在人們已經開發(fā)出了多款不同的嵌入式指紋識別系統(tǒng),并且廣泛應用在社會的各個領域。本文對現有指紋識別技術原理和研究現狀進行了簡要分析,并對指紋算法和嵌入式系統(tǒng)進行研究,通過對現有指紋解決算法進行改善,設計了一種基于STM32的嵌入式指紋識別系統(tǒng),并在該系統(tǒng)上對指紋識別的可行性進行了驗證。本文的研究工作重要涉及以下幾個方面。本設計實現了指紋圖像從采集到指紋識別的整個過程,但畢竟筆者對指紋識別技術的研究才剛剛起步,設計的系統(tǒng)在某些方面還存局限性,需要進一步的改善。指紋采集的質量直接影響著算法的復雜度,系統(tǒng)在指紋算法解決方面,有較大一部分是對采集圖像做預解決增強,如果能采集到高質量的指紋圖像,將減少較多不必要的預解決算法,進而提高系統(tǒng)算法執(zhí)行的效率。該傳感器含有MCU、SPI和USB三種接口模式,其中SPI接口的速度較慢,如果改為MCU接口的采集模式將較大的提高系統(tǒng)的采集效率。另外,本設計只是實現了指紋的識別,還缺少鍵盤和模式設立等人機交互界面,同時考慮到系統(tǒng)的成本和設計難度,選擇STM32作為主控芯片,對指紋識別系統(tǒng)進行了開發(fā),使得減少了較大成本,但系統(tǒng)的性能與DSP解決效果還是存在差別,這里STM32芯片內部即使集成了乘法器,但是其在主頻上還是存在較大的局限性,如果將STM32與DSP解決芯片相結合來實現指紋識別系統(tǒng),將較大的提高整個系統(tǒng)的性能。致謝時間猶如光陰似箭,轉眼間我們的大學生涯即將結束。在遼寧科技大學信息技術學院學習的這段時間,許多老師和同窗在學習上和生活上都予以了我很大的協(xié)助。謹向全部予以我協(xié)助、關心和指導的老師、同窗、朋友以及親人致以衷心的感謝。首先要感謝我的導師孫功勤老師,在此期間,孫老師百忙之中抽出時間予以了我諸多的關心和專業(yè)指導,拓寬了我的視野,使我受益良多。此篇畢業(yè)設計就是在孫老師的指導下完畢的。她學識淵博,治學嚴謹,工作無私忘我。通過孫功勤老師的傳道、授業(yè)和解惑,我不僅掌握了必要的知識和技能,還樹立了自強和奮斗的人生觀。她的精神將始終激勵我不停邁進。在此,我向孫老師致以最誠摯、最衷心的感謝!另外還要感謝本文參考圖書和文獻的各位作者,他們?yōu)槲姨峁┝诉@方面的珍貴資料!最后,我要感謝父母和親人在生活和學習上對我的支持和關心,感謝全部關心和協(xié)助過我的朋友們! 參考文獻[1]楊艷.生物特性識別技術綜述[J].大眾科技(3):31-33.[2]柴曉光;岑寶熾.民用指紋識別技術[M].北京:人民郵電出版社.(5):7-9.[3]宋娟.生物識別技術中

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論