智能門鎖系統(tǒng)
《智能門鎖系統(tǒng)》由會(huì)員分享,可在線閱讀,更多相關(guān)《智能門鎖系統(tǒng)(35頁珍藏版)》請?jiān)谘b配圖網(wǎng)上搜索。
1、 成績 本科畢業(yè)論文(設(shè)計(jì)) h 學(xué) 題目:智能I 鎖系統(tǒng) 學(xué)生姓名 趙澤輝 學(xué) 號(hào) 2015117301 指導(dǎo)教師 張濤 院 系信息科學(xué)與技術(shù)學(xué)院 專 業(yè) 電子信息工程 年 級(jí) 2015 教務(wù)處制 二。一九年六月誤(如人臉不匹配、密碼格式錯(cuò)誤、指紋圖像模糊等),蜂鳴器將發(fā)出錯(cuò)誤提示 音,系統(tǒng)退回到接收解鎖方式的步驟;如果成功解鎖,系統(tǒng)也將退回到接收解 鎖方式的步驟,準(zhǔn)備下一次解鎖。 2. 2系統(tǒng)相關(guān)技術(shù) 2. 2. 1 OpenCV 簡介 本設(shè)計(jì)使用OpenCV來實(shí)現(xiàn)人臉識(shí)別的功能。 OpenCV是計(jì)算機(jī)視覺領(lǐng)域一個(gè)通用的
2、基礎(chǔ)環(huán)境,提供多種編程語言的接口, 可以在各種主流操作系統(tǒng)上運(yùn)行⑶。軟件庫包含超過2500種優(yōu)化后的算法,運(yùn) 行效率很高,適用于要求實(shí)時(shí)性的應(yīng)用場合。這些算法中,既有計(jì)算機(jī)視覺和 機(jī)器學(xué)習(xí)領(lǐng)域的經(jīng)典算法也有最新提出的高級(jí)算法,可以被用來完成人臉識(shí)別、 物體識(shí)別、動(dòng)作跟蹤、圖像拼接等眾多任務(wù)。本設(shè)計(jì)即利用OpenCV官方的face 模塊來進(jìn)行人臉識(shí)別。 2. 2. 2 Haar特征簡介 要想實(shí)現(xiàn)人臉識(shí)別,首先需要從攝像頭拍攝到的圖像中找出人臉。本設(shè)計(jì) 選擇Haar特征來找到人臉輪廓。 Haar特征是圖像處理領(lǐng)域中用于識(shí)別任務(wù)的一種常用特征。如果按照傳統(tǒng) 的方法使用圖像中每一個(gè)
3、像素的強(qiáng)度來進(jìn)行特征計(jì)算,計(jì)算量會(huì)非常大。1998 年,帕帕喬爾喬等人提出了一種方法,使用Haar小波集來代替?zhèn)鹘y(tǒng)的基于像素 強(qiáng)度的特征集⑷。維奧拉和瓊斯根據(jù)帕帕喬爾喬的思路,于2001年正式提出了 Haar特征的概念⑸。 圖2. 2 Haar特征模板示例 Haar特征采用矩形模板,模板分為正系數(shù)和負(fù)系數(shù)兩部分,正系數(shù)部分像 素總數(shù)與負(fù)系數(shù)部分像素總數(shù)的差,就是該模板的特征值。之后,將該特征值 與預(yù)先學(xué)習(xí)得的閾值進(jìn)行比較,以識(shí)別出不同的物體。但是僅根據(jù)單一 Haar模板特征值來分類的效果很差,往往需要大量的模板來共同識(shí)別一個(gè)物體,這樣 才能保證一定的識(shí)別準(zhǔn)確率。將這些大量
4、的模板組織在一起得到一個(gè)級(jí)聯(lián)分類 器。本設(shè)計(jì)即調(diào)用預(yù)先訓(xùn)練好的人臉級(jí)聯(lián)分類器來完成提取人臉輪廓的工作。 Haar特征相對于其他特征的優(yōu)點(diǎn)在于可以使用積分圖來加快運(yùn)算速度,因 此十分適用于要求實(shí)時(shí)性的場合。 2. 2. 3 HOG特征簡介 在明確了人臉輪廓后,需要提取人臉圖像的特征,以分辨出不同的人臉。 HOG意為方向梯度直方圖,常用于物體檢測工作。1982年麥康奈爾第一次 解釋了 HOG背后的原理,但是并沒有使用HOG 一詞⑹。直到2005年達(dá)拉爾和特 里格斯在計(jì)算機(jī)視覺與模式識(shí)別會(huì)議上展示了他們關(guān)于HOG特征的補(bǔ)充工作后, 其才被大量使用⑺。 由于梯度可以較為準(zhǔn)確地反映出
5、圖像某一范圍內(nèi)的性質(zhì),HOG選用該范圍內(nèi) 梯度方向出現(xiàn)的次數(shù)作為特征值。此外,在密集網(wǎng)格上計(jì)算,并且使用局部對 比度歸一化的方法,使得HOG特征對于光照的變化以及人臉表情的細(xì)微變化都 具有很高的容忍性。 2. 2.4 LBP特征簡介 除了 HOG特征以外,LBP特征也是本設(shè)計(jì)用于提取人臉特征的一個(gè)依據(jù)。 LBP意為局部二值模式,可以用來反映圖像中某一部分的紋理,于1994年 首次被提出⑻。它將某一矩形模板內(nèi)所有像素的強(qiáng)度相互比較,以0和1的形式 反應(yīng)出比較結(jié)果,用這樣的矩陣來描述該模板的紋理特征。LBP特征簡單卻又非 常有效,同時(shí)對于光照的變化也具有魯棒性,適用于進(jìn)行實(shí)時(shí)的人
6、臉識(shí)別⑼。實(shí) 驗(yàn)表明,如果將LBP特征與HOG特征相結(jié)合,可以在一些數(shù)據(jù)集上極大地提升 識(shí)別效果質(zhì)。 2. 2.5 UART技術(shù)簡介 本設(shè)計(jì)中選用的指紋模塊使用UART技術(shù)與主控制器進(jìn)行數(shù)據(jù)交換。 UART代表著通用異步收發(fā)傳輸器,是一種用于異步通信的計(jì)算機(jī)硬件設(shè)備。 它可以將數(shù)據(jù)在并行通信和串行通信之間相互轉(zhuǎn)換,傳輸數(shù)據(jù)的格式與傳輸速 度都是可以配置的數(shù)據(jù)傳輸共使用三根電線:Tx負(fù)責(zé)發(fā)送數(shù)據(jù),Rx負(fù)責(zé)接 收數(shù)據(jù),GND負(fù)責(zé)提供參考電平,連接方法如圖2. 3所示。傳輸時(shí),數(shù)據(jù)由設(shè)備 1的Tx端口串行發(fā)出;設(shè)備2檢測到Rx端口上有信號(hào)時(shí),先將數(shù)據(jù)緩存,然后 以并行方式一并讀
7、出,反之亦然。 圖2. 3 UART連接方法 2. 2.6 CSI接口簡介 本設(shè)計(jì)中攝像頭通過CSI接口與主控制器相連。 CSI意為攝像頭串行接口,是移動(dòng)產(chǎn)業(yè)處理器接口聯(lián)盟所設(shè)立的一個(gè)接口標(biāo) 準(zhǔn)皿。它定義了攝像頭與處理器之間的接口,主要由應(yīng)用層、協(xié)議層和物理層 組成,單線傳輸速度可達(dá)IGb/so 3系統(tǒng)硬件設(shè)計(jì) 3. 1系統(tǒng)硬件總體設(shè)計(jì) 本智能門鎖系統(tǒng)以樹莓派3B+為核心,外設(shè)包括4*4矩陣鍵盤、AS608光學(xué) 指紋模塊、樹莓派官方CSI接口攝像頭、蜂鳴器、電機(jī)鎖、電機(jī)鎖驅(qū)動(dòng)電路。 系統(tǒng)由一個(gè)雙組輸出的開關(guān)電源供電,將5V輸出提供給樹莓派和電機(jī)鎖驅(qū)動(dòng)電 路,將12V
8、輸出提供給電機(jī)鎖。系統(tǒng)各部分的連接方式如圖3.1所示。 圖3. 1系統(tǒng)各部分連接方式 3.2主控制器的選型 主控制器作為系統(tǒng)的核心,在選型時(shí)必須全方位考慮。本設(shè)計(jì)最終選擇了樹莓派3B+作為系統(tǒng)的主控制器,主要出于以下幾點(diǎn)考慮:①本系統(tǒng)使用OpenCV 來實(shí)現(xiàn)人臉識(shí)別功能,為了能夠使用OpenCV,需要選擇可以運(yùn)行完整操作系統(tǒng) 的控制器。②實(shí)時(shí)人臉識(shí)別要求主控制器具有足夠強(qiáng)大的計(jì)算能力,樹莓派的 最新型號(hào)3B+搭載了主頻為1.2GHz的四核64位CPU——ARM Cortex-A53,其計(jì) 算能力達(dá)到了要求。③本系統(tǒng)接入了眾多外設(shè),需要大量的接口,而樹莓派3B+ 包含了
9、 29個(gè)GPIO接口、1個(gè)CSI接口、1組UART接口和4個(gè)電源引腳,足以 滿足外設(shè)的需求。④樹莓派體積小、重量輕。 3.3鍵盤模塊電路設(shè)計(jì) 系統(tǒng)使用的鍵盤模塊是一個(gè)4*4矩陣鍵盤,圖3. 2展示了其內(nèi)部連接方式。 鍵盤共包含8根導(dǎo)線,4根負(fù)責(zé)確定按鍵所在的列,4根負(fù)責(zé)確定按鍵所在的行, 另一端與樹莓派的GPIO引腳相連。按鍵按下后,與其相連的兩根導(dǎo)線短接到了 一起,樹莓派通過讀取高低電平的變化來確定所按下的鍵。 圖3. 2 4*4矩陣鍵盤內(nèi)部結(jié)構(gòu) 3.4指紋模塊電路設(shè)計(jì) 本設(shè)計(jì)采用AS608光學(xué)指紋模塊來實(shí)現(xiàn)指紋識(shí)別的功能。AS608可以容納 300枚指紋,搜索時(shí)
10、間小于0.3秒,拒真率小于1%,認(rèn)假率小于0. 001%,內(nèi)部 包含專用的DSP芯片,可以快速完成對指紋數(shù)據(jù)的處理工作。其引腳定義如表 3. 1所示。 表3.1 AS608引腳定義 序號(hào) 名稱 說明 1 Vi 模塊電源輸入端(5V) 2 Tx 串行數(shù)據(jù)輸出 3 Rx 串行數(shù)據(jù)輸入 4 GND 信號(hào)地,內(nèi)部與電源地連接 5 WAK 觸摸感應(yīng)信號(hào)輸出,高電平有效 6 Vt 觸摸感應(yīng)電源輸入端(3. 3V) 7 U+ USB D+ 8 u- USB D- AS608使用UART接口與樹莓派連接,故不使用7號(hào)和8號(hào)USB引腳,具體
11、連接方式如圖3. 3。指紋模塊內(nèi)置觸摸感應(yīng)電路,當(dāng)有手指置于傳感器上方時(shí), 5號(hào)引腳輸出高電平。 1 2 3 4 5 6 7 8 Vi Tx Rx GND WAK Vt TT AS608 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 5V 3.3V Raspberry Pi Tx Rx GPI
12、O GND 圖3. 3指紋模塊與樹莓派的接線方法 3.5攝像頭模塊電路設(shè)計(jì) 圖3. 4展示了樹莓派與攝像頭的連接方式。由于樹莓派的主板上包含一個(gè) CSI接口,故可以直接用排線將兩者連接到一起。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 GND CAM1 DNO CAM1 DPO GND CAM1 DN1 CAM1 DPI GND CAM1 CN CAM1 CP ? GND CAM GPIO6 CAM GPIO「 SCLO ? SDAO ? ~33V 1 2 3 4 5 6 7
13、 8 9 10 11 12 13 14 15 C amera Raspberry Pi 圖3.4攝像頭與樹莓派的連接方式 3.6蜂鳴器模塊電路設(shè)計(jì) 蜂鳴器模塊的作用是向用戶發(fā)出提示音,只有2個(gè)引腳,可直接通過GPIO 接口與樹莓派相連,如圖3. 5所示。 圖3. 5蜂鳴器與樹莓派的連接方式 3.7門鎖模塊電路設(shè)計(jì) 本設(shè)計(jì)所選用的電機(jī)鎖包含電機(jī)電路和門磁檢測電路,由12V直流電源供 電,支持正極信號(hào)開鎖和負(fù)極信號(hào)開鎖。電機(jī)鎖向外引出4個(gè)引腳,分別為電 源輸入端V+、電源地GND、正極信號(hào)輸入端L+和負(fù)極信號(hào)輸入端L-。本系統(tǒng)選 擇正極信號(hào)開鎖的方式
14、(此時(shí)須將L-和GND短接),當(dāng)L+輸入12V的正電壓時(shí), 電機(jī)電路工作,鎖舌收回。 這里選擇使用繼電器來控制L+上12V電壓的有無。樹莓派的GPIO輸出能力 有限,不足以直接控制繼電器的開關(guān)。因此需要使用三極管來搭建驅(qū)動(dòng)電路。 門鎖模塊整體的電路如圖3. 6所示。 當(dāng)需要開門時(shí),樹莓派的GPIO引腳輸出高電平,三極管導(dǎo)通,繼電器的下 端與地接通,開關(guān)電源輸出的5V電壓加到了繼電器兩端使繼電器動(dòng)作,L+接上 T 12V電壓,電機(jī)工作,鎖舌收回。門被打開后GPIO改為輸出低電平,三極管 截止,繼電器兩端因?yàn)闆]有5V電壓而恢復(fù)到斷電時(shí)的狀態(tài),L+上的12V電壓消 失,開門信號(hào)消失
15、,模塊等待下一次開門指令的到來。 Switch Mode Power Supply 圖3.6門鎖模塊整體電路 4系統(tǒng)軟件設(shè)計(jì) 在系統(tǒng)的硬件設(shè)計(jì)完成以后,需要根據(jù)需求來編寫軟件程序。本系統(tǒng)使用 Python語言編寫。 4.1鍵盤功能軟件設(shè)計(jì) 在本設(shè)計(jì)中,4*4矩陣鍵盤需要實(shí)現(xiàn)兩個(gè)功能:選擇解鎖方式和輸入密碼。 但是無論實(shí)現(xiàn)什么功能,其基礎(chǔ)都是主控制器能夠判斷出究竟是哪個(gè)鍵被按下。 可以按照以下方法來實(shí)現(xiàn): 首先令4根列導(dǎo)線所連接的GPIO引腳輸出低電平,然后以軟件的方式在4 根行導(dǎo)線所連接的引腳上配置上拉電阻,再讀取這4個(gè)引腳的電平狀態(tài)。如果 有按鍵被按下,該按
16、鍵所對應(yīng)的列導(dǎo)線和行導(dǎo)線將會(huì)短接,此時(shí)讀取該行導(dǎo)線 的狀態(tài)會(huì)得到低電平的結(jié)果(其他行導(dǎo)線會(huì)被上拉為高電平)。這樣就得到了該 按鍵所在的行數(shù)。 之后令4根行導(dǎo)線所連接的GPIO引腳輸出高電平,然后以軟件的方式在4 根列導(dǎo)線所連接的引腳上配置下拉電阻,再讀取這4個(gè)引腳的電平狀態(tài)。如果 有按鍵被按下,該按鍵所對應(yīng)的列導(dǎo)線和行導(dǎo)線將會(huì)短接,此時(shí)讀取該列導(dǎo)線 的狀態(tài)會(huì)得到高電平的結(jié)果(其他列導(dǎo)線會(huì)被下拉為低電平)。這樣就得到了該 按鍵所在的列數(shù)。知道了行數(shù)和列數(shù),就可以唯一確定出按鍵的位置,進(jìn)而就 可以從碼表中讀出該按鍵所代表的值。 在能夠確定按鍵所表示的值后,主控制器就可以判斷出用
17、戶所選擇的解鎖 方式或讀取到用戶所輸入的密碼了。 4.2指紋功能軟件設(shè)計(jì) 本系統(tǒng)中指紋功能分為錄入指紋和識(shí)別指紋兩個(gè)部分oAS608內(nèi)部包含錄入 指紋圖像、提取指紋特征、比對指紋特征、存儲(chǔ)指紋模型等功能的算法,只需 要主控制器通過UART接口向其發(fā)送相應(yīng)的命令包即可,AS608在執(zhí)行完相應(yīng)的 功能以后也會(huì)回發(fā)給主控制器一個(gè)應(yīng)答包,告知功能的執(zhí)行結(jié)果。表4. 1和4. 2 分別解釋了命令包和應(yīng)答包每一位的含義。 表4.1命令包格式 字節(jié)數(shù) 2 4 1 2 1 N 2 內(nèi)容 OxEFOl 芯片地址 0x01 包長度 指令碼 參數(shù) 校驗(yàn)和 表4.2應(yīng)答包
18、格式 字節(jié)數(shù) 2 4 1 2 1 N 2 內(nèi)容 OxEFOl 芯片地址 0x07 包長度 確認(rèn)碼 返回參數(shù) 校驗(yàn)和 使用樹莓派向AS608發(fā)送命令包的Python程序如下: ser = serial.Serial(7dev/ttyAMA0', 57600) #配置串口,波特率設(shè)置為 57600 AS608_GetImage = [OxEF, 0x01, OxFF, OxFF, OxFF, OxFF, 0x01, 0x00, 0x03, 0x01, 0x00, 0x05] #錄入指紋圖像功能對應(yīng)的命令包 ? ? ? defByteToString(byte
19、): #將數(shù)字轉(zhuǎn)為字符串的子程序 return struct.pack('@B', byte) ? ? ? for i in range(0,12): #12字節(jié)的命令包一次發(fā)送1字節(jié) stringToWrite = ByteToString(AS608_GetImage[i]) # 將數(shù)字轉(zhuǎn)為字符串 ser.write(stringToWrite) # 發(fā)送字符串 i+= 1 以上程序僅以錄入指紋圖像為例,根據(jù)所需要完成的功能將命令包中的指 令碼替換為相應(yīng)內(nèi)容。本設(shè)計(jì)中用到的主要功能及其對應(yīng)的指令碼如表4.3所 zj\ O 表4.3 AS608主要功能的指令碼 指令功
20、能 指令碼 錄入圖像 0x01 提取特征 0x02 比對特征 0x03 搜索指紋 0x04 合并模型 0x05 存儲(chǔ)模型 0x06 圖4.1展示了指紋功能實(shí)現(xiàn)流程。錄入指紋時(shí),首先用戶將手指置于傳感 器上方,AS608開始錄入指紋圖像,并提取出指紋特征保存至Bufferl緩存區(qū)。 然后用戶抬起手指,重復(fù)此過程一次,將第二次提取出的指紋特征保存至 Buffer2緩存區(qū)。最后將兩個(gè)緩存區(qū)內(nèi)的指紋特征進(jìn)行比對,判斷是否屬于同一 根手指。若兩次提取的特征相同,則將它們合并為一個(gè)模型,并將模型存儲(chǔ)至 紋 或指紋 圖4. 1指紋功能實(shí)現(xiàn)流程 命令包中制定的編
21、號(hào)位置;反之則提示錯(cuò)誤,結(jié)束程序。錄入兩次指紋圖像并 合并特征的目的在于減小誤差,提高指紋庫中指紋的準(zhǔn)確性。 識(shí)別指紋時(shí),AS608錄入置于傳感器上方手指的指紋圖像,提取特征并保存 至Bufferl緩存區(qū),遍歷整個(gè)指紋庫來搜索是否有己知指紋的特征與Bufferl 中的特征相同。若存在,則識(shí)別成功;反之識(shí)別失敗,提示錯(cuò)誤信息后結(jié)束程 序。 4.3人臉識(shí)別功能軟件設(shè)計(jì) 本設(shè)計(jì)實(shí)現(xiàn)人臉識(shí)別功能需要三個(gè)步驟:采集人臉數(shù)據(jù)、訓(xùn)練識(shí)別器和識(shí) 別人臉。 4. 3.1采集人臉數(shù)據(jù) 無論是采集人臉數(shù)據(jù),還是在第三步中識(shí)別人臉,都需要先檢測到人臉。 本設(shè)計(jì)所使用的就是維奧拉和瓊斯在2001年
22、提出的Haar級(jí)聯(lián)分類器。OpenCV 中包含了多種預(yù)先訓(xùn)練好的分類器,這里直接調(diào)用文件 haarcascade_frontalface_default. xml來對人臉進(jìn)行檢測。具體實(shí)現(xiàn)程序如 下: faceCascade=cv2.CascadeClassifier('Cascades/haarcascade_frontalface_default.xmr) faces = faceCascade.detectMultiScale( #按以下參數(shù)尋找人臉 gray, #灰度圖模式 scaleFactor=1.2, #比例因子 minNeighbors=5, #鄰近數(shù)
23、 minSize=(20, 20) ) #人臉最小尺寸 運(yùn)行后,檢測到的所有人臉會(huì)被矩形框圍住,矩形框的坐標(biāo)信息保存于 faces 內(nèi) o 在能夠找到人臉輪廓后,便可以進(jìn)行采集工作了,操作方法如圖4. 2所示。 程序以幀為單位,首先將拍攝到的圖像變成灰度圖,然后應(yīng)用Haar級(jí)聯(lián)分類器, 將檢測到的人臉裁剪下來并保存,以“ User. ID.張數(shù).jpg”的方式命名,例如 “User. 1. 28. jpg”。對于每一個(gè)用戶保存30張樣本照片,以供下一步進(jìn)行訓(xùn)練。 誠信聲明 本人鄭重聲明:本人所呈交的畢業(yè)論文(設(shè)計(jì)),是在導(dǎo)師的指 導(dǎo)下獨(dú)立進(jìn)行研究所取得的成果。畢業(yè)論文(
24、設(shè)計(jì))中凡引用他人 已經(jīng)發(fā)表或未發(fā)表的成果、數(shù)據(jù)、觀點(diǎn)等,均已明確注明出處。 除文中已經(jīng)注明引用的內(nèi)容外,不包含任何其他個(gè)人或集體已經(jīng)發(fā) 表或在網(wǎng)上發(fā)表的論文。 特此聲明。 指導(dǎo)教師簽名: 論文作者簽名: 日期: 年 月 日 日期: 年 月 日 圖4.2采集人臉數(shù)據(jù)流程圖 4. 3.2訓(xùn)練識(shí)別器 接下來將所有用戶的照片輸入到識(shí)別器進(jìn)行訓(xùn)練。這里選用OpenCV提供的 LBPH (Local binary patterns Histogram)識(shí)別器,使用方法為: recognizer = cv2.face.LBPHFaceRecognizer_create()
25、 #新建 LBPH 識(shí)別器 recognizer.train(faces, ids) #提取人臉照片的LBP和HOG特征并訓(xùn)練 recognizer.writeC^rainer/trainer.ymr) #保存訓(xùn)練所得的 yml 文件 4. 3. 3識(shí)別人臉 圖4. 3展示了最后一步的實(shí)現(xiàn)流程。 圖4. 3識(shí)別人臉流程 首先新建LBPH識(shí)別器并載入包含訓(xùn)練信息的yml文件,然后調(diào)用Haar級(jí) 聯(lián)分類器從攝像頭拍攝的畫面中尋找人臉。最后識(shí)別器對找到的人臉進(jìn)行預(yù)測, 提取人臉照片中的LBP和HOG特征并與yml文件中的數(shù)據(jù)比對,返回預(yù)測出的最有可能的用戶ID以及不確定度。當(dāng)不
26、確定度低于某閾值時(shí),即認(rèn)定此人臉屬 于該用戶。 4.4開鎖功能軟件設(shè)計(jì) 在使用了電機(jī)鎖驅(qū)動(dòng)電路之后,只需令GPIO引腳輸出高電平即可開鎖。延 遲一段時(shí)間后(給用戶一定的開門時(shí)間),再改為輸出低電平即可恢復(fù)狀態(tài),等 待下次開鎖指令的到來。實(shí)現(xiàn)程序如下: GPIO.output(MOTOR, GPIO.HIGH) time.sleep(l) GPIO.output(MOTOR, GPIO.LOW) 4.5系統(tǒng)主程序設(shè)計(jì) 系統(tǒng)主程序按照圖4.4所展示的流程運(yùn)行。 0^0 初始化GPIO弓腳 和串口 十一 /輸入識(shí)別. 模式代碼/ 否 是 B 弋碼合法 朋」模
27、式 A 是 否 人臉正確 輸入密碼 否 是 蜜碼格式合法 棗碼正確 否 是 指紋頗 是 開鎖 否 指如確 清空變量 圖4.4系統(tǒng)主程序流程圖 主程序啟動(dòng)后,首先進(jìn)行GPIO引腳和串口的初始化設(shè)置。接著用戶通過鍵 盤選擇識(shí)別模式,“A”為人臉識(shí)別,“B”為密碼識(shí)別加指紋識(shí)別。若用戶按下 的鍵不是“A”或“B”,則需要重新輸入。 若選擇人臉識(shí)別,則攝像頭啟動(dòng)開始拍攝。識(shí)別正確的話將執(zhí)行開鎖操作, 待人員進(jìn)入后清空過程中產(chǎn)生的變量,回到輸入識(shí)別模式的步驟,等待下一次 開鎖任務(wù)。識(shí)別錯(cuò)誤或一段時(shí)間內(nèi)沒有檢測到有效人臉也將導(dǎo)致回到初始步驟。 若選擇
28、密碼識(shí)別加指紋識(shí)別,用戶需通過矩陣鍵盤輸入密碼。如果輸入格 式錯(cuò)誤(輸入了非數(shù)字字符)或與預(yù)設(shè)密碼不符,將退回到輸入識(shí)別模式的步 驟。如果密碼正確,則開始進(jìn)行指紋識(shí)別。指紋識(shí)別正確后將執(zhí)行開鎖操作, 待人員進(jìn)入后清空過程中產(chǎn)生的變量,回到初始步驟。如果在指紋庫中搜索不 到與該指紋特征相同的指紋,也將退回到輸入識(shí)別模式的步驟。 4.6程序自啟動(dòng)軟件設(shè)計(jì) 由于停電等意外狀況的客觀存在,系統(tǒng)必須考慮如何實(shí)現(xiàn)自啟動(dòng)的問題。 樹莓派運(yùn)行Linux系統(tǒng),目錄“/etc/profile.d/”下的腳本會(huì)在每次登入賬 戶時(shí)自動(dòng)執(zhí)行。因此可以在該目錄下新建sh腳本文件,來實(shí)現(xiàn)系統(tǒng)主程序的自 啟
29、動(dòng)。sh腳本文件內(nèi)容如下: #!/bin/bash cd /home/pi/Project #進(jìn)入存放主程序的文件夾 sudo modprobe bcm2835-v412 #加載樹莓派攝像頭的驅(qū)動(dòng) python Main.py #運(yùn)行主程序 5系統(tǒng)測試 5. 1系統(tǒng)硬件連接測試 本設(shè)計(jì)使用了眾多硬件設(shè)備,因此必須仔細(xì)按照原理圖進(jìn)行檢查。檢查接 線是否存在錯(cuò)接、漏接的情況,導(dǎo)線是否存在裸露的部分導(dǎo)致相互短接,以及 電源正負(fù)極是否接反。一切檢測完畢后,接通電源,觀察各指示燈狀態(tài)是否正 常,各模塊是否溫度過高,有無異味。系統(tǒng)硬件連接如圖5.1所示。 圖5. 1系統(tǒng)連接效果
30、 5.2系統(tǒng)軟件功能測試 5. 2. 1鍵盤功能軟件測試 鍵盤功能的軟件測試主要檢查樹莓派能否判斷出究竟是哪個(gè)鍵被按下,故 編寫測試程序,通過屏幕來顯示所按下的按鍵對應(yīng)的字符。依次按下4*4矩陣 鍵盤的16個(gè)按鍵,樹莓派均能正確讀取。效果如圖5. 2所示。 1234567890 S python Keypad.py 圖5. 2鍵盤功能軟件測試結(jié)果 5.2.2指紋功能軟件測試 指紋功能分為錄入和識(shí)別兩部分。 指紋錄入功能的測試結(jié)果如圖5.3所示。程序可以按照設(shè)定依次進(jìn)行第一 次錄入指紋圖像、提取特征、第二次錄入指紋圖像、提取特征、比對特征、合并模型、存儲(chǔ)模型
31、的步驟,且中途無報(bào)錯(cuò)。 pi@raspberrypi:-/Project/Fingerprint S python FP Add.py First Scan: Please place your finger on the sensor. Scanning... Scanning complete. You can release your finger now. Generating FP characters... FP characters generated. Saved to Bufferl. Second Scan: Please place the same f
32、inger on the sensor again. Scanning... Scanning complete. You can release your finger now. Generating FP characters... FP characters generated. Saved to Buffer2. Now comparing 2 FP to check if they belong to a same finger... The 2 FP match. Now combining 2 FP characters... Combining complete
33、. Now storing the FP character... Storing complete. The FP index number is 1. 圖5.3指紋錄入功能的測試結(jié)果 圖5. 4和圖5. 5分別為指紋識(shí)別成功與失敗的輸出效果oAS608錄入指紋圖 像并提取特征,然后將該特征在整個(gè)指紋庫中搜索,返回搜索結(jié)果。 pi@raspberrypi:--/Project/Fingerprint S python FP_Search.py Please place your finger on the sensor. Scanning... Scanning compl
34、ete. You can release your finger now. Generating FP characters... FP characters generated. Saved to Bufferl. Searching... FP match. 圖5.4指紋識(shí)別成功的輸出效果 pi@raspberrypi:--/Project/Fingerprint S python FP_Search.py Please place your finger on the sensor. Scanning... Scanning complete. You can rele
35、ase your finger now. Generating FP characters... FP characters generated. Saved to Bufferl. Searching... FP do not match. 圖5.5指紋識(shí)別失敗的輸出效果 5. 2. 3人臉識(shí)別功能軟件測試 人臉識(shí)別功能包括三個(gè)步驟,對其依次進(jìn)行測試。 首先檢查采集到的人臉數(shù)據(jù)的情況。找到程序所保存的照片并打開,發(fā)現(xiàn) 只有人臉部分被保留,拍攝到的其他部分被刪去,且圖片變成了灰度圖,符合 預(yù)計(jì)的結(jié)果。人臉數(shù)據(jù)圖片如圖5. 6所示。 圖5.6人臉數(shù)據(jù)圖片 接下來檢查
36、能否正確生成LBPH識(shí)別器的yml訓(xùn)練文件。圖5. 7為文件部分 內(nèi)容。 %YAML:L0 opencv_lbphfaces: threshold: 1.79769313486231o7e+308 radius: 1 neighbors: 8 grid_x: 8 grid_y: 8 histograms: 一 !!opencv-matrix rows: 1 cols: 16384 dt: f data: [ 3. 47222239e-02, o. 20833349e-03, 0., 1. 73611112e-03, 1.56250000e_02, 3. 4722
37、2225e-03, 1.736U112e-03, 1. 21527780e-02, 1. 736U112e-03, 1. 7361U12e-03, 8. 68055597e-03, 2. 08333340e-02, 0., 0., 0., 2. 08333340e-02, 0., 1.73611112e-03, 1. 90972220e-02, 1.73611112e-03, 1.73611U2e-03, 1.73611112e-03, 1. 56250000e-02, 3. 99305560e-02, 0., 0., 0., 0., 1.73611112e-0
38、3, 0., 3. 47222225e-03, 0., 1. 73611112e-03, 1.73611U2e-03, 0., 6. 94444450e-03, 0., 0., 0., 5. 20833349e_03, 1. 73611112e-03, 0., 0., 0., 8. 68055597e-03, 0., 0., 0., 0., 1. 73611112e-03, 8. 68055597e-03, 1.7361U12e-03, 0., 0., 0., 0., 0., 0., 0., 0., 2. 77777780e-02, 1. 73611112e-0
39、3, 圖5. 7 yml訓(xùn)練文件的部分內(nèi)容 最后一步,判斷程序能否正確識(shí)別出數(shù)據(jù)庫內(nèi)的人臉。圖5.8和圖5.9分 別為人臉識(shí)別成功和失敗的效果。如果識(shí)別成功,人臉上將會(huì)出現(xiàn)識(shí)別器預(yù)測 的用戶ID標(biāo)簽,并且識(shí)別不確定度小于閾值。本設(shè)計(jì)將該閾值設(shè)定為40,低于 40即認(rèn)為人臉匹配,開鎖信號(hào)才能發(fā)出。不確定度越小,表明識(shí)別越有把握, 等于0時(shí)為完美識(shí)別。而對于不在人臉數(shù)據(jù)庫中的人臉,其不確定度將大于40o 圖5.8人臉識(shí)別成功的效果 圖5.9人臉識(shí)別失敗的效果 5. 2.4開鎖功能軟件測試 本設(shè)計(jì)中只需設(shè)置GPIO引腳的輸出電平即可實(shí)現(xiàn)開鎖功能。圖5. 10
40、為門 鎖的初始狀態(tài),鎖舌是伸出的。GPI0引腳輸出高電平后,鎖舌收回,如圖5. 11 所示。 關(guān)門時(shí),GPI0引腳改為輸出低電平。當(dāng)電機(jī)鎖中的門磁電路感應(yīng)到門的位 置處于關(guān)閉狀態(tài)時(shí),自動(dòng)控制電機(jī)使鎖舌伸出。 當(dāng)停電等意外情況發(fā)生時(shí),電控開鎖以及自動(dòng)上鎖的功能均受到影響而無 法使用。這時(shí)屋內(nèi)和屋外的人可以分別使用電機(jī)鎖上的旋鈕和鑰匙完成開鎖和 上鎖的任務(wù),保證人員的出入和財(cái)產(chǎn)的保護(hù)不受影響。 圖5. 10門鎖的初始狀態(tài)(鎖舌伸出) 圖5. 11解鎖后的門鎖(鎖舌收回) 5. 2. 5系統(tǒng)主程序及自啟動(dòng)軟件測試 在關(guān)機(jī)狀態(tài)下將系統(tǒng)接上電源,待開機(jī)完畢后發(fā)出提
41、示音,表明已進(jìn)入主 程序。 進(jìn)入主程序后,按下鍵盤上的“A”鍵進(jìn)入人臉識(shí)別模式,成功后鎖舌將收 回,門鎖打開。若人臉不匹配,系統(tǒng)將通過蜂鳴器發(fā)出提示音,需要用戶重新 選擇識(shí)別模式。若10秒內(nèi)沒有檢測到有效人臉,系統(tǒng)也將報(bào)錯(cuò),并退回到初始 狀態(tài)。按下“B”鍵進(jìn)入密碼識(shí)別加指紋識(shí)別的模式,依次輸入正確的密碼和正 確的指紋后,門鎖將打開。若任意一個(gè)環(huán)節(jié)出現(xiàn)錯(cuò)誤,系統(tǒng)將發(fā)出錯(cuò)誤提示音 并返回到輸入識(shí)別模式的步驟。 6總結(jié)與展望 6. 1工作總結(jié) 目前市場上的智能門鎖產(chǎn)品在安全性和便捷性方面仍存在或多或少的不 足,本文設(shè)計(jì)了一種基于生物特征的智能門鎖系統(tǒng),旨在從以上兩方面提供給
42、用戶一個(gè)更好的門鎖使用體驗(yàn)。本文完成的主要工作內(nèi)容如下:分析了智能門鎖系統(tǒng)的意義以及國內(nèi)外市場上現(xiàn)有產(chǎn)品的優(yōu)缺點(diǎn)并提出了改進(jìn)的方法、介紹 了本設(shè)計(jì)中所使用和依賴的技術(shù)、介紹了主控制器的選型過程以及給出了各硬 件模塊的電路連接方法、設(shè)計(jì)出了各模塊和系統(tǒng)整體實(shí)現(xiàn)相應(yīng)功能的軟件程序、 對系統(tǒng)進(jìn)行測試并且測試結(jié)果達(dá)到了預(yù)先設(shè)想的目標(biāo)。 6. 2未來展望 本設(shè)計(jì)仍存在可以進(jìn)一步改進(jìn)的地方,作為下一步研究的重點(diǎn)方向。 首先是提高人臉識(shí)別的準(zhǔn)確率。目前系統(tǒng)將不確定度小于40判定為識(shí)別成 功,而某些情況下不在數(shù)據(jù)庫中的人臉的不確定度最低可到50,與閾值的差距 不大。此外,照片可以代替人臉來進(jìn)
43、行識(shí)別,雖然不確定度高于閾值(50至70 之間)而不足以解鎖,但是仍屬于一個(gè)安全隱患。解決方法為增加紅外測距設(shè) 備,判斷攝像頭捕捉到的人臉是立體的還是平面的。使用紅外測距設(shè)備的另一 個(gè)好處是,可以得到人臉在垂直于攝像頭方向的參數(shù)信息,建模后將豐富人臉 識(shí)別所使用的數(shù)據(jù),提高識(shí)別準(zhǔn)確率。 其次就是可以進(jìn)一步豐富系統(tǒng)的功能,如增加物聯(lián)網(wǎng)功能、向用戶手機(jī)匯 報(bào)解鎖歷史等。 參考文獻(xiàn) [1] 彭鴻烈.物聯(lián)網(wǎng)時(shí)代智能鎖行業(yè)將迎來爆發(fā)式增長口].中國安防,2017, 2017(11):43-46. [2] 漆琴.探討智能鎖的民用化與發(fā)展趨勢[J].中國公共安全,2014, 2014(
44、24):112-113. [3] Adrian Kaehler, Gary Bradski. Learning OpenCV 3: Computer Vision in C++ with the OpenCV Library[M]. 1.美國:O'Reilly Media, 2017:1. [4] Constantine Papageorgiou, Michael Oren, Tomaso Poggio. A General Framework for Object Detection [A]. ICCV[C],美國:IEEE, 1998:555-562. [5] Paul Viol
45、a, Michael Jones. Rapid Object Detection Using a Boosted Cascade of Simple Features [A]. CVPR[C],美國:IEEE, 2001:511-518. [6] Robert McConnell. Method of and Apparatus for Pattern Recognition: 美國,US4567610AEP]. 1982. 人們對門鎖的主要要求在于開鎖方式安全以及使用過程方便。然而目前市 面上的傳統(tǒng)門鎖和近年來新出現(xiàn)的智能門鎖都并沒有真正的滿足這兩點(diǎn)需求, 仍存在很多不足之處,
46、可以進(jìn)行進(jìn)一步的改進(jìn)。因此,本文設(shè)計(jì)了一種使用生 物特征進(jìn)行解鎖的智能門鎖系統(tǒng),以達(dá)到上述要求。系統(tǒng)以樹莓派為主控制器, 支持解鎖方式的自由選擇,可以通過人臉匹配和密碼指紋同時(shí)匹配這兩條途徑 來完成解鎖。同時(shí)針對停電等特殊情況也具有相應(yīng)的解決方法,不影響人員的 出入以及財(cái)產(chǎn)的保護(hù)。 關(guān)鍵詞:智能門鎖;樹莓派;人臉識(shí)別;指紋識(shí)別;嵌入式系統(tǒng) [7] Navneet Dalal, Bill Triggs. Histograms of Oriented Gradients for Human Detection[A]. CVPR[C],美國:IEEE, 2005:886-893. [
47、8] Timo Ojala, Matti Pietikainen, David Harwood. Performance Evaluation of Texture Measures with Classification Based on Kullback Discrimination of Distributions [A]. ICPR[C],美國:IEEE, 1994:582-585. [9] Timo Ahonen, Abdenour Hadid, Matti Pietikainen. Face Recognition with Local Binary Patterns [A
48、]. ECCV[C],德國:Springer, 2004:469-481. [10] Xiaoyu Wang, Tony Han, Shuicheng Yan. An IIOG-LBP Human Detector with Partial Occlusion Handling [A]. ICCV[C],美國:IEEE, 2009:32-39. [11] Adam Osborne. An Introduction to Microcomputers Vol 1: Basic Concepts[M]. 2.美國:McGraw-Hill, 1980:116-126. [12] Rick
49、Merritt. Mobile Chip Interface Gets Real[N]. EE Times, 2006 年2月13日. Abstract The key requirements for a door lock are the safety of the unlocking method and the convenience during use. However, both the traditional door locks and the newly emerged smart locks on the market do not really meet th
50、ose two needs. There are still many drawbacks which can be improved. Therefore, this paper designs a smart lock system which uses biometric features to unlock, to achieve the requirements mentioned above. The system uses a Raspberry Pi as the main controller and supports the free choice of which
51、 unlocking method to use. Face matching is one way of unlocking, while fingerprint and password matching simultaneously is the other. For power failure and other similar circumstances, the system also has corresponding solutions to make sure the access of personnel and the function of property p
52、rotection are not affected. Keywords : Smart Lock; Raspberry Pi; Face Recognition; Fingerprint Recognition; Embedded System 1 緒論 1 1.1本文研究的背景和意義 1 1.2國內(nèi)外應(yīng)用現(xiàn)狀 1 2系統(tǒng)總體設(shè)計(jì)與相關(guān)技術(shù) 3 2.1系統(tǒng)總體設(shè)計(jì) 3 2.2系統(tǒng)相關(guān)技術(shù) 4 2.2.1 OpenCV簡介 4 2.2.2 Haar特征簡介 4 2.2.3 HOG特征簡介 5 2.2.4 LBP特征簡介 5 2.2.5 UART技術(shù)簡介 5 2.2.
53、6 CSI 接口簡介 6 3系統(tǒng)硬件設(shè)計(jì) 6 3.1系統(tǒng)硬件總體設(shè)計(jì) 6 3.2主控制器的選型 6 3.3鍵盤模塊電路設(shè)計(jì) 7 3.4指紋模塊電路設(shè)計(jì) 7 3.5攝像頭模塊電路設(shè)計(jì) 8 3.6蜂鳴器模塊電路設(shè)計(jì) 9 3.7門鎖模塊電路設(shè)計(jì) 9 4系統(tǒng)軟件設(shè)計(jì) 10 4.1鍵盤功能軟件設(shè)計(jì) 10 4.2指紋功能軟件設(shè)計(jì) 11 4.3人臉識(shí)別功能軟件設(shè)計(jì) 13 4.3.1采集人臉數(shù)據(jù) 13 4.3.2訓(xùn)練識(shí)別器 14 4.3.3識(shí)別人臉 15 4.4開鎖功能軟件設(shè)計(jì) 16 4.5系統(tǒng)主程序設(shè)計(jì) 16 4.6程序自啟動(dòng)軟件設(shè)計(jì) 17 5 系統(tǒng)測試 17 5.
54、1系統(tǒng)硬件連接測試 17 5.2系統(tǒng)軟件功能測試 18 5.2.1鍵盤功能軟件測試 18 5.2.2指紋功能軟件測試 18 5.2.3人臉識(shí)別功能軟件測試 19 5.2.4開鎖功能軟件測試 21 5.2.5系統(tǒng)主程序及自啟動(dòng)軟件測試 22 6總結(jié)與展望 22 6.1 工作總結(jié) 22 6.2未來展望 23 參考文獻(xiàn) 23 1緒論 1.1本文研究的背景和意義 門鎖可以保障人們的財(cái)產(chǎn)和人身安全,是日常生活中不可或缺的一個(gè)物品。 傳統(tǒng)的門鎖使用鑰匙進(jìn)行操作,存在丟失、被盜以及忘帶等可能性。一旦發(fā)生, 不僅主人無法有效使用門鎖,還存在被他人非法入侵的風(fēng)險(xiǎn)。即便是正常使用
55、門鎖的過程中,也具有掏鑰匙和隨身多攜帶一個(gè)物件的不便利性。 隨著智能家居概念的興起,智能門鎖在最近幾年出現(xiàn)在了市場上,部分產(chǎn) 品選擇了 NFC磁卡和手機(jī)藍(lán)牙的解鎖方式。但是這只是將金屬的鑰匙換成了另 一種形式的“鑰匙”,依然存在著上述不足,同時(shí)又增加了易偽造和易破解的缺 點(diǎn)。除此之外,大部分產(chǎn)品允許僅憑密碼完成解鎖,存在較大的安全隱患。因 此,開發(fā)一款不依賴實(shí)體“鑰匙”、基于生物特征進(jìn)行解鎖的智能門鎖系統(tǒng)很有 必要。 1.2國內(nèi)外應(yīng)用現(xiàn)狀 國內(nèi)市場中,智能門鎖在酒店、公司、學(xué)校、小區(qū)等公共場所的應(yīng)用很廣, 其中的絕大部分都是使用NFC磁卡。但是NFC磁卡的安全性并不高,不法分
56、子 僅憑支持NFC功能的安卓手機(jī)和相應(yīng)的讀卡器,就可以入侵到磁卡的扇區(qū)中, 隨意進(jìn)行讀寫操作。一些知名廠商(NXP、Broadcom)的磁卡產(chǎn)品,即便無法獲 取完整的權(quán)限,也可以較為容易地復(fù)制一張新卡出來。即使NFC磁卡的安全性 不存在任何問題,也會(huì)面臨無法保證持卡人就是用戶的難題。 而在國內(nèi)的家用市場中,智能門鎖的應(yīng)用率極低,大部分家庭依然使用傳 統(tǒng)的機(jī)械門鎖⑴。智能家居概念的火熱,也讓智能門鎖產(chǎn)品進(jìn)入了一般家庭的視 野。圖1. 1列舉了目前各大電商網(wǎng)站上口碑和銷量不錯(cuò)的幾款產(chǎn)品??梢钥吹? 幾款智能門鎖均采用了指紋和密碼的解鎖方式,一些產(chǎn)品還增加了磁卡和手機(jī) 藍(lán)牙作為選項(xiàng)
57、。然而它們的普遍缺點(diǎn)在于價(jià)格過高,且選擇了 NFC磁卡和手機(jī) 藍(lán)牙這種相對來說更容易破解和偽造,又增加了攜帶負(fù)擔(dān)的解鎖方式。 智能門鎖在國外市場的應(yīng)用則要比國內(nèi)好很多。盡管在公共場所中應(yīng)用的 規(guī)模和解鎖方式與國內(nèi)無太大差別,但是智能門鎖在日韓和歐美的家用市場中 普及很廣泛,尤以韓國突出。韓國的房地產(chǎn)開發(fā)商會(huì)直接將智能門鎖安裝在新 房內(nèi),此外在超市中也能夠很方便地購買到智能門鎖⑵。除了應(yīng)用規(guī)模的差別, 圖1.1國內(nèi)電商網(wǎng)站上的典型智能門鎖 國外的產(chǎn)品在解鎖方式的選擇上也與國內(nèi)智能門鎖不太一樣。圖1.2為國外電 商網(wǎng)站上的幾款典型產(chǎn)品。由圖可以看到,國外的智能門鎖往往采用單一
58、的解 鎖方式,最多為兩種,像國內(nèi)產(chǎn)品那樣三種或四種解鎖方式并存的產(chǎn)品幾乎沒 有。密碼和指紋依然是主流解鎖方式,少部分門鎖選擇了藍(lán)牙作為附加選項(xiàng), 且沒有品牌使用NFC磁卡來解鎖。 圖1.2國外電商網(wǎng)站上的典型智能門鎖 綜合來看,無論是國內(nèi)品牌還是國外品牌,它們多數(shù)都選擇了指紋作為解 鎖依據(jù),這點(diǎn)符合人們對于安全性的要求。但是它們普遍又允許只通過密碼來 進(jìn)行解鎖,由于密碼容易被偷窺以及復(fù)雜度通常不高,因此產(chǎn)品在安全性方面 存在一定的隱患。少部分選擇了 NFC磁卡和手機(jī)藍(lán)牙完成解鎖功能的產(chǎn)品,也 違背了便攜性的需要。此外,價(jià)格普遍較高也成為了阻礙智能門鎖普及的另一 個(gè)因素。
59、 2系統(tǒng)總體設(shè)計(jì)與相關(guān)技術(shù) 2.1系統(tǒng)總體設(shè)計(jì) 本設(shè)計(jì)將完成一個(gè)支持人臉匹配以及密碼和指紋同時(shí)匹配兩條解鎖途徑的 智能門鎖系統(tǒng),按照模塊劃分,可分為主控制器、鍵盤模塊、指紋模塊、攝像 頭模塊、蜂鳴器模塊以及門鎖模塊六部分。主控制器通過接口與各個(gè)模塊相連, 控制各外設(shè),并完成數(shù)據(jù)的通信和處理。鍵盤模塊負(fù)責(zé)完成識(shí)別方式選擇以及 密碼輸入的任務(wù)。指紋模塊內(nèi)部包含處理器與寄存器,可以完成錄入指紋圖像、 提取指紋特征、比對指紋特征、存儲(chǔ)指紋模型等操作,并能向主控制器發(fā)送每 一步操作的結(jié)果。攝像頭模塊負(fù)責(zé)捕捉畫面,同時(shí)通過燈光的方式向用戶提示 系統(tǒng)的工作狀態(tài)。蜂鳴器模塊負(fù)責(zé)發(fā)出提示音
60、,向用戶告知系統(tǒng)運(yùn)行情況。門 鎖模塊可以受到電信號(hào)的控制來完成開關(guān)的動(dòng)作。系統(tǒng)總體框架如圖2. 1所示。 圖2. 1系統(tǒng)總體框架 系統(tǒng)的工作原理為:系統(tǒng)上電,時(shí)鐘、串口等啟動(dòng)完畢,程序加載完成后, 用戶通過鍵盤模塊選擇解鎖方式。主控制器讀取到鍵盤模塊發(fā)來的數(shù)據(jù)后,判 斷用戶所選擇的解鎖方式。①若選擇人臉匹配的解鎖方式,則控制攝像頭模塊 啟動(dòng),開始拍攝。攝像頭將捕捉到的每一幀圖像發(fā)送回主控制器,主控制器進(jìn) 行相應(yīng)的圖像處理運(yùn)算。從圖像中識(shí)別出人臉且人臉屬于主人時(shí),控制門鎖模 塊開鎖,并發(fā)出提示音。②若選擇密碼和指紋同時(shí)匹配的解鎖方式,主控制器 開始接收鍵盤模塊傳來的密碼數(shù)據(jù)。當(dāng)用戶輸入的密碼格式正確且與預(yù)設(shè)密碼 相同時(shí),主控制器向指紋模塊發(fā)送控制指令,命令指紋模塊進(jìn)行讀取指紋圖像、 提取指紋特征、比對指紋特征等一系列操作。當(dāng)指紋特征與指紋庫中的某指紋 的特征相同時(shí),指紋模塊向主控制器發(fā)送代表指紋正確的應(yīng)答碼,主控制器收 到后控制門鎖模塊開鎖,并發(fā)出提示音。在上述過程中,如果任意一步出現(xiàn)錯(cuò)
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2023年六年級(jí)數(shù)學(xué)下冊6整理和復(fù)習(xí)2圖形與幾何第7課時(shí)圖形的位置練習(xí)課件新人教版
- 2023年六年級(jí)數(shù)學(xué)下冊6整理和復(fù)習(xí)2圖形與幾何第1課時(shí)圖形的認(rèn)識(shí)與測量1平面圖形的認(rèn)識(shí)練習(xí)課件新人教版
- 2023年六年級(jí)數(shù)學(xué)下冊6整理和復(fù)習(xí)1數(shù)與代數(shù)第10課時(shí)比和比例2作業(yè)課件新人教版
- 2023年六年級(jí)數(shù)學(xué)下冊4比例1比例的意義和基本性質(zhì)第3課時(shí)解比例練習(xí)課件新人教版
- 2023年六年級(jí)數(shù)學(xué)下冊3圓柱與圓錐1圓柱第7課時(shí)圓柱的體積3作業(yè)課件新人教版
- 2023年六年級(jí)數(shù)學(xué)下冊3圓柱與圓錐1圓柱第1節(jié)圓柱的認(rèn)識(shí)作業(yè)課件新人教版
- 2023年六年級(jí)數(shù)學(xué)下冊2百分?jǐn)?shù)(二)第1節(jié)折扣和成數(shù)作業(yè)課件新人教版
- 2023年六年級(jí)數(shù)學(xué)下冊1負(fù)數(shù)第1課時(shí)負(fù)數(shù)的初步認(rèn)識(shí)作業(yè)課件新人教版
- 2023年六年級(jí)數(shù)學(xué)上冊期末復(fù)習(xí)考前模擬期末模擬訓(xùn)練二作業(yè)課件蘇教版
- 2023年六年級(jí)數(shù)學(xué)上冊期末豐收園作業(yè)課件蘇教版
- 2023年六年級(jí)數(shù)學(xué)上冊易錯(cuò)清單十二課件新人教版
- 標(biāo)準(zhǔn)工時(shí)講義
- 2021年一年級(jí)語文上冊第六單元知識(shí)要點(diǎn)習(xí)題課件新人教版
- 2022春一年級(jí)語文下冊課文5識(shí)字測評(píng)習(xí)題課件新人教版
- 2023年六年級(jí)數(shù)學(xué)下冊6整理和復(fù)習(xí)4數(shù)學(xué)思考第1課時(shí)數(shù)學(xué)思考1練習(xí)課件新人教版