




下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
PAGE5人臉識別程序總體設計案例概述1.1程序設計的總體思想人臉識別程序總體設計中模塊化分調用極為重要,因其核心思想是調用封裝好的各個模塊來實現(xiàn)人臉識別功能。該系統(tǒng)在概要設計中采用了結構化的設計,將整個程序經(jīng)過劃分為四個模塊后,在這基礎上繼續(xù)添加細節(jié)。程序整體設計的目標和任務主要是通過設計軟件系統(tǒng)的人臉識別模塊的層次結構,設計應用程序采集人臉數(shù)據(jù)庫和設計應用程序各個模塊的調用效果,其設計目的明確了軟件系統(tǒng)預期將實現(xiàn)的人臉識別功能以及運行過程。因此,該程序設計在滿足軟件工程的一般原則的基礎之上,為了實現(xiàn)人臉識別的各項指標和功能,將主要從以下幾個方面考慮:程序設計應充分利用現(xiàn)有的開發(fā)環(huán)境,軟件要求采用先進的技術,硬件可以使用電腦自帶的攝像頭,并采用合理的系統(tǒng)開發(fā)方案。程序設計應該符合對不同身份的使用對象都可以滿足信息采集、人臉檢測、人臉識別的需要,并且在操作過程中整個系統(tǒng)可實現(xiàn)簡單直觀性、實用性、效率高等基本需求。程序設計應該從簡單且具有實用性出發(fā),能夠符合實際的需求,因此為了設計完善滿足不同應用對象的需求,需要開發(fā)出可以識別多張人臉的系統(tǒng),用戶操作界面要做到界面友好美觀,操作簡便容易入手,易于維護、使用,能解決用戶的實際問題。為了使人臉識別程序系統(tǒng)將來日益完善,本程序設計應具有良好的可擴展性和可維護性。人臉識別程序設計應注重信息安全可靠性,必須具備對使用者的信息進行嚴格可靠的權限管理。技術上應采用嚴格的安全保密措施來保證系統(tǒng)的可靠保密,防止非法用戶的不當操作。1.2開發(fā)環(huán)境的搭建1.2.1開發(fā)軟件簡介該程序設計采用Python語言,在PyCharm開發(fā)環(huán)境下進行編碼。其中Python是一種易學、嚴謹、開源、免費、靈活的跨平臺的計算機程序設計語言。PyCharm是一款由JetBrains設計的PythonIDE,IDE是集成開發(fā)環(huán)境的意思。在PyCharm開發(fā)環(huán)境使用Python語言開發(fā)時,它還可以實現(xiàn)程序調試、模塊測試。PyCharm軟件程序編寫界面如圖4-1所示圖4-1PyCharm編程界面1.2.2軟件及擴展包的安裝首先進行Python解釋器的下載及安裝:第一步:打開Python的官方網(wǎng)站,/;第二步:在標題欄菜單下選擇Downloads項,進入子類Windows下載界面選擇Python3.9.4版本;第三步:選擇Python3.9.4版本點擊Windowsinstaller(64-bit)進行下載;第四步:進入指導安裝界面后,選擇為所有用戶安裝啟動器和添加Python3.9到環(huán)境中的選項,選擇自定義安裝;第五步:點擊安裝自定義文件、pip、IDLE、測試套件;第六步:點擊為所有用戶安裝Python解釋器并自定義安裝目錄進行安裝。在成功安裝完Python3.9.4版本解釋器后,開始進行PyCharm軟件的下載及安裝:第一步:打開PyCharm的官方網(wǎng)站,/pycharm/;第二步:在標題欄菜單下選擇DeveloperTools選擇PyCharm后點擊DOWNLOAD;第三步:進入到下載頁面后可以選擇Windows操作系統(tǒng)下Community社區(qū)版本進行下載;第四步:進入安裝向導后自定義安裝目錄,點擊添加環(huán)境變量,點擊下一步進行安裝。在成功安裝PyCharm開發(fā)環(huán)境后,進行OpenCV庫的下載及安裝,因為使用pip是最簡單的安裝方式,所以我們使用pip進行安裝:第一步:按Windows+R組合鍵,打開運行窗口,輸入命令cmd,自動彈出命令窗口;第二步:在命令窗口下輸入代碼pipinstallopencv-contrib-python,電腦將自動安裝OpenCV。1.3系統(tǒng)的功能模塊程序設計(1)總程序設計本文設計的人臉識別系統(tǒng)的程序流程圖如圖4-2所示。圖4-2系統(tǒng)程序流程圖(2)登錄模塊程序設計首先為了創(chuàng)建一個登錄顯示窗口,導入PyQt5.QtWidgets模塊中的類:QWidget、QApplication、QPushButton、QLineEdit、QLabel。各個類的功能如表4-1所示。表4-1PyQt5.QtWidgets模塊中的類功能表PyQt5.QtWidgets模塊中的類作用QWidget類默認的窗口控件是所有用戶界面的基類。任何窗口或控件都直接或間接繼承此類,如果使用此類,則可以直接使用它,也可以繼承并使用它。QApplication類可以實現(xiàn)對應用程序的初始化和結束性的工作,可以在其中針對系統(tǒng)和應用程序的功能進行了設置。QPushButton類用戶單擊以完成特定任務的控件,可以用作登錄、注冊、關閉等其他功能按鈕。QlineEdit類單行文本編輯控件,可以通過該類輸入和編輯單行文本。QLabel類它可以通過顯示照片、GIF、動畫,文本等形式,顯示提供給用戶的相關提示信息。所顯示的內容不會在界面中與用戶交互,只能顯示并且不能進行編輯。導入類后開始創(chuàng)建登錄窗口模塊,首先實例化一個應用對象,創(chuàng)建窗口界面的基本控件,設置窗口界面的大小并為窗口設置名為人臉識別系統(tǒng)登錄窗口的標題,在窗口內顯示請輸入管理員信息。部分程序代碼如下:app=QApplication(sys.argv)shibie_w=QWidget()shibie_w.resize(400,300)shibie_w.setWindowTitle("人臉識別系統(tǒng)登錄窗口")usr_label1=QLabel("請輸入管理員信息",shibie_w)在登錄窗口創(chuàng)建一個命名為的登錄的按鍵并設置按鍵的大小:login_bin=QPushButton("登錄",shibie_w)login_bin.setGeometry(150,150,80,40)login_bin.clicked.connect(do_login)在登錄窗口創(chuàng)建兩個編輯框用來輸入管理員的用戶名和密碼,并在程序內設置具體的用戶名和密碼,如果信息輸入成功則隱藏編輯框及登錄按鈕,顯示采集照片、訓練、開始識別三個按鍵,并分別設置三個按鍵的大小。(3)人臉檢測模塊程序設計人臉測試部分采用Haar級聯(lián)分類器法,在編寫人臉檢測模塊時要引入加載臉的加載臉的xml特征文件:faceCascade=cv2.CascadeClassifier('./haarcascade_frontalface_default.xml')為了檢測有效人臉,要將采集到的彩色圖片轉化為灰度圖片,因為灰度圖片比彩色圖片識別效果更加精準:gray=cv2.cvtColor(data,cv2.COLOR_BGR2GRAY)再調用加載器,設置圖像中的尺度參數(shù)、檢測人臉次數(shù)以及最小像素點。如果檢測到人臉,則人臉部畫出矩形框圈起來從而達到人臉檢測的效果:faces=faceCascade.detectMultiScale(gray,scaleFactor=1.5,minNeighbors=5,minSize=(32,32))for(x,y,w,h)infaces:cv2.rectangle(data,(x,y),(x+w,y+h),(255,0,0),3)對采集好的照片進行訓練,要使用LBPH法創(chuàng)建一個訓練器。(4)人臉識別模塊程序設計創(chuàng)建LBPH訓練器的程序代碼如下:recognizer=cv2.face.LBPHFaceRecognizer_create()將用戶賬號和圖片特征數(shù)據(jù)分別用兩組數(shù)組存放起來。把圖片轉換為進行訓練所需要的格式數(shù)據(jù),把讀到的照片轉成PIL灰度數(shù)據(jù),把圖片數(shù)據(jù)進行格式長度轉換,檢測轉換后的數(shù)據(jù)矩陣里面有沒有人臉,如果有人臉則把人臉的數(shù)據(jù)放在數(shù)組里,最后將訓練好的數(shù)據(jù)放在命名為trains的xml文件中。加載訓練好的文件用來做人臉識別,打開攝像頭,使用LBPH法判斷圖像內的人臉是否與采集照片的人臉信
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 建筑施工材料現(xiàn)場驗收方案
- 宿舍樓內部通道與防火設計方案
- 建筑工程項目機電設備調試與運行方案
- 影視藝術綜論學習材料12課件
- 水電基本知識培訓總結課件
- 二零二五年彩鋼構件加工及施工總承包協(xié)議
- 二零二五年度商業(yè)地產(chǎn)融資居間服務專項合同
- 二零二五年度抵債協(xié)議書(債權重組)專業(yè)版
- 2025版電梯設備采購與安全監(jiān)管協(xié)議
- 二零二五年度建筑鋼筋焊接技術指導與施工合同
- 地基基礎工程施工方法及基礎知識課件
- 金風15兆瓦機組變流部分培訓課件
- 2017年9月國家公共英語(三級)筆試真題試卷(題后含答案及解析)
- 膀胱鏡檢查記錄
- 2021年西安陜鼓動力股份有限公司校園招聘筆試試題及答案解析
- 化工裝置靜設備基本知識
- 電腦節(jié)能環(huán)保證書
- 江西師范大學研究生院非事業(yè)編制聘用人員公開招聘1人(專業(yè)學位培養(yǎng)辦公室助理)(必考題)模擬卷
- 2021社會保險法知識競賽試題庫及答案
- 罐頭食品加工工藝課件
- 《排課高手》用戶手冊
評論
0/150
提交評論