Android园区部队人脸识别源码门禁项目讲解
Android園區部隊人臉識別源碼門禁項目講解
這邊搞人臉識別相關項目有一段時間,今天抽時間講述一個經典的人臉識別項目:部隊人臉識別門禁系統。
大家都知道部隊對人員管理安全要求是相當高的,很多保密的技術保密的資料都是受到嚴格的管控,這個時候人臉識別結合門禁可以起到非常嚴密的保護作用。 首先人臉是不可盜用的,如果用之前的刷卡門禁,發現事情可以推脫說卡丟失了! 人臉是不可能丟的,如果丟了就是人命啊~。??
本項目運行界面:分為考勤,人臉登記,考勤記錄。人臉管理。設置。
項目源碼 Demo地址:https://pan.baidu.com/s/1i5oXoJ7
?
接下來將一下概述,讓大家了解一下這個技術:
國內外人臉識別技術已經成熟,我們探討將簽到(考勤或者門禁)與人臉識別有效地結合成一種新型的簽到方式,即人臉識別簽到系統,這將極大地加快簽到速度并且減少人力成本,縮短簽到時間。讓簽到更加的方便快捷和安全有效。
本人通過從概述到原理再到源碼講述,請耐心看完哦。
對于人臉識別技術,目前算法分為2種,
一種是在線人臉識別,比如face++ 百度AI等,通過傳遞人臉圖片給服務器處理返回接口。
這種方式優點:服務器算法強大,識別準確率高一些,支持大規模人臉數據,比如能支持10萬人對比。
這種方式缺點:慢,需要良好網絡環境,我們知道相機預覽幀率一般都在30fps 以上,而目前5G時代還未到來,所以一般用戶使用網絡下,處理一張圖片都需要至少1s以上,那么如果需要在手機上實時展示處理結果幾乎不太可能。
另外一種是離線人臉識別,?人臉對比算法在本地,人臉數據也在本地,完全是離線環境都可以正常運行。隨著安卓手機運算性能提高,算法已經足夠有效,處理一張人臉圖片速度可以做到100ms以下,一個字就是快。對于應用上,完全的離線人臉簽到考勤適合小公司,類似以前那種指紋機,需要通過SD卡導出,但是一般安卓手機也有網絡,實際上可以通過網絡同步方式同步到服務器。
這種方式優點: 識別快,體驗好,無網絡可以正常使用。
這種方式缺點:由于移動設備性能優先,目前建議最大人臉數量在5000人左右,無法達到在線大規模計算10萬數量級別。因為人員多人臉匹配算法需要挨個匹配那么時間花費就不少了。雖然可以開多線程匹配但是移動CPU性能畢竟有限,長時間運算可能發熱發燙最終宕機。另外如果是完全離線話換一臺設備就需要重新錄入人臉,無法將這一臺人臉數據同步到另外一臺上面。
由于上述2中方式都存在各種各樣問題,這里面提到一種新方式可以解決上面中存在的部分問題,一般項目都是采取?在線數據+離線識別?這種方式,這種方式太機智了,將員工人臉數據保存在服務器,在考勤機上面同步下服務器中的人臉數據,在考勤機上面進行人臉識別,最終將人臉考勤記錄上傳到服務器。
了解到了項目的需求,我們先設計好數據庫:
| ? | |||
| 表名 | 字段信息 | ||
| 學生信息表 | jy_st_info | 學生姓名 | jy_st_name |
| 性別 | jy_st_sex | ||
| 學籍號 | jy_st_num_id | ||
| 照片 | jy_st_photo | ||
| 人臉特征數據 | jy_st_feature | ||
| 人員類型 | jy_st_type | ||
| 人員有效期 | jy_st_endtime | ||
| 備注 | jy_st_remarks | ||
| 表名 | 字段信息 | ||
| 考勤信息 | jy_att_info | 考勤設備編號 | jy_equip_id |
| 學生學籍號 | jy_st_num_id | ||
| 考勤記錄時間 | jy_att_rec_time | ||
| 備注 | jy_att_remarks | ||
| 表名 | 字段信息 | ||
| 考勤設備信息 | jy_equip_info | 設備名稱 | jy_equip_name |
| 設備編號 | jy_equip_id | ||
| 設備創建時間 | jy_equip_create_time | ||
| 設備是否有效 | jy_equip_copyright | ||
| 設備上次訪問時間 | jy_equip_lastrequest_time | ||
| 備注 | jy_equip_remarks | ||
| ? | ? | ? | ? |
| 表名 | 字段信息 | ||
| 分組表 | jy_group_info | 分組名 | jy_group_name |
| 分組編號 | jy_group_no | ||
| 分組id | jy_group_id | ||
| 父級分組id | jy_group_pid | ||
| 備注 | jy_group_remarks | ||
| ? | ? | ? | ? |
| 表名 | 字段信息 | ||
| 分組 X 設備信息? 關聯表 | jy_group_equip | 分組ID | jy_group_id |
| 設備ID | jy_equip_id | ||
| 下發版本 | jy_group_equip_version | ||
| ? | ? | ? | ? |
| 表名 | 字段信息 | ||
| 分組 X 人員? 關聯表 | jy_group_st | 分組ID | jy_group_id |
| 人員ID | jy_st_num_id | ||
| ? | ? | ? | ? |
| 表名 | 字段信息 | ||
| 廣告表 | jy_ad_info | 廣告名稱 | jy_ad_name |
| 廣告ID | jy_ad_id | ||
| 廣告類型 | jy_ad_type | ||
| 廣告標題 | jy_ad_title | ||
| 廣告內容鏈接 | jy_ad_content | ||
| ? | ? | 廣告播放時間單位s | jy_ad_showtime |
| 表名 | 字段信息 | ||
| 廣告表X分組 關聯表 | jy_group_ad | 分組ID | jy_group_id |
| 廣告ID | jy_ad_id | ||
?
接著根據需求開發后臺,后臺無法是數據記錄,接口處理。
接下來開始部署系統,部署系統后,這樣就可以開發app。
人臉識別考勤系統部署教程
Window系統教程,其他系統類似。
1:服務器部署,
紅色部分為必要環境或者版本。
?? java1.8
mysql-5.7.26-winx64
?????????? apache-tomcat-8.5.41
???? ?
推薦:Navicat Premium 12 用于數據庫操作。
成功后如下圖:
找到上面文件并打開,配置數據庫和賬戶密碼,這里也可以配置服務器端口。
配置完成后重啟Tomcat服務。
?
用瀏覽器打開URL: http://localhost:8080/JyFrontService/hi
發現訪問正常,如下圖。
到這里服務器配置完成。
?
?
客戶端APP配置
?
?
這里可以輸入服務器地址,輸入完成后,點擊設置服務器 按鈕用于保持服務器地址。
?
?
點擊更新人臉數據庫可以更新設備對應分組人員。
?
?
如果是新設備,訪問成功后設備的IMEI號會保存到數據庫,請前往給設備下發分組。
如下圖 。
設備首次訪問后會出現在設備表里面。
給設備分組,設備綁定 groupid= 5 的分組,
?
?這樣部署完成后就可以測試APP。APP見網盤,前面已經有寫,這里不重復。
未完待續!
轉載于:https://www.cnblogs.com/softboys/p/11054518.html
總結
以上是生活随笔為你收集整理的Android园区部队人脸识别源码门禁项目讲解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: js将字符串中所有反斜杠\替换成正斜杠/
- 下一篇: android 微信浮窗实现_Andro