999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于人臉識別的高校寢室安全管理系統的智能設計與實現

2020-11-20 02:33:30賀東芹胡世長位磊
裝備維修技術 2020年6期
關鍵詞:數據采集人臉識別

賀東芹 胡世長 位磊

摘要:結合互聯網與人臉識別功能以及智能鎖應用,對于學生寢室的安全防盜、考勤打卡都有極大的幫助。該系統分為面部采集、存儲,面部識別打卡、面部解鎖寢室門以及數據管理終端服務。學生通過人臉采集端實現考勤打卡功能,服務器識別人臉并且記錄學生身份以及當前時間,通過STM32單片機技術、繼電器以及電磁鎖實現面部解鎖寢室門的功能。

關鍵詞:STM32單片機、終端服務器、數據采集、人臉識別、繼電器、電磁鎖

通信作者: 位磊 stones2004@163.com

基金項目:文華學院大學生創新基金項目 (項目編號:J0200570118)

1 背景

人臉識別技術是生物特征識別領域的研究熱點之一, 近年來, 隨著模式識別和人工智能技術的發展, 該技術受到諸多學者的關注[1]。結合高校學生宿舍的安全管理,基于互聯網與單片機技術的面部識別與系統設計出一系列適用于大學寢室安全管理系統及其智能化的應用。由面部采集存儲端、終端服務、 面部智能鎖及網絡通信等四大部分組成。

2 總體設計

本系統主要分為三個模塊,即面部數據采集存儲對比端、終端服務與網絡通信、面部智能鎖。

2.1 面部數據采集存儲對比端

面部識別系統采用Python語言作為編程語言[2],通過程序出編寫具有圖像采集系統,接受紅外感應發出的信號以及LED燈源模塊。

在設定的圖像窗口大小為92×112像素內,被拍攝者盡量讓自己的面部均勻的分布在窗口內這樣才能降低人為因素造成的數據差,通過面部特征值記錄下被拍攝者的數據進行存檔方便下次查詢或者對比時提取數據文件。

2.2終端服務與網絡通信

通過網絡將被拍攝者的面部特征數據傳輸至終端服務器上,并存儲該數據[3]。

檢測時,采用PCA和LBP算法提取人臉圖像的特征[4],對比數據庫中特征值的大小來檢驗此人是否預先存儲了自己的面部信息或者是不是本人的情況。而數據庫中需要存儲學生的個人信息,以及各個時刻的考勤打卡記錄方便輔導員進行查詢或者統計工作。

該技術的難度較大,因為受到人體面部表情特征以及環境因素,受到光線的強弱,采集設備的像素度等因素。因此我們通過OPENMV的人臉檢測來進行識別,充分利用此模塊辨識度高,工作速度快的優點。

指示燈設定四種狀態:白色表示通電成功、紅色表示考勤打卡失敗或則查無此人、綠色表示考勤打卡成功、燈常滅表示處于待機狀態。

2.3面部智能鎖

在面部識別之后利用此模塊的其他IO口輸出當前信號的指令給繼電器,然后繼電器控制電磁鎖的開關。此人是該寢室成員就通過信號電平給予一個信號指令打開寢室門鎖。若不是則不打開寢室門鎖。

3 硬件設計

該系統電路原理圖如圖2所示,面部識別的運算速度快,工作的效率要求十分的高,要求能夠快速識別面部特征并且發出指令。對此我們采用OPENMV因為它搭載了STM32H743的32位單片機用此芯片作為處理器。

對于電磁鎖的需要用到12V的電源,因此通過電源模塊AD-DC模塊,將電源穩定在12V[6]。控制繼電器的程序不太難,只需要對繼電器輸入一個初值高電平即可,當需要打開電磁鎖的時候就對繼電器輸入一個低電平信號。同時對于單片機的供電5V,我們通過DC-DC電源降壓模塊使得12V的電源降壓到5V之后對單片機供電。但是OPENMV的工作電壓為3.3V,我們需要對5V電壓繼續降壓,使得OPENMV能正常工作[5]。

4 ?軟件設計

在接通電源之后,整個系統完成初始化之后。開始有序的執行一系列的工作,從最開始的拍攝人臉開始,存儲人臉照片至數據庫,服務器會根據學生的照片導入學生的基本信息進行存檔后續工作開展的快捷;用戶端就可以開始執行余下的,考勤打卡,面部解鎖寢室門等一些列操作。

本系統采用python語言程序設計,主要由初始化程序,面部采集程序,采樣信號對比程序組成。

4.1初始化程序及面部采樣程序

import sensor, image, pyb

RED_LED_PIN = 1

BLUE_LED_PIN = 3

sensor.reset() # 使傳感器初始化

sensor.set_pixformat(sensor.GRAYSCALE) # 設置相片格式為灰度圖

sensor.set_framesize(sensor.B128X128) # 設置分辨率大小128*128

sensor.set_windowing((92,112)) ? #設置圖像窗口大小為92*112

sensor.skip_frames(10) # 使新的設置生效

sensor.skip_frames(time = 2000)

num = 1 #設置被拍攝者序號,第一個人的圖片保存到s1文件夾,第二個人的圖片保存到s2文件夾,以此類推。每次更換拍攝者時,修改num值。

n = 10 #設置每個人拍照圖片數量。

#連續拍攝n張照片,每間隔3s拍攝一次。

while(n): #循環次數為設置的照片數量

#紅燈亮

pyb.LED(RED_LED_PIN).on()

sensor.skip_frames(time = 3000) # 等待3s

#紅燈滅,藍燈亮

pyb.LED(RED_LED_PIN).off() pyb.LED(BLUE_LED_PIN).on()

print(n) sensor.snapshot().save("faceid/s%s/%s.pgm" % (num, n) ) # 將照片保存到SD卡文件夾中

n -= 1 ?#每次拍攝一張照片就把設置照片的數量減1

pyb.LED(BLUE_LED_PIN).off()

print("Done! Reset the camera to see the saved image.")

4.2信號采樣對比程序

import sensor, time, image, pyb

from pyb import Pin

RED_LED_PIN = 1

GREEN_LED_PIN = 2

BLUE_LED_PIN = 3

sensor.reset() # 使傳感器初始化

sensor.set_pixformat(sensor.GRAYSCALE) # 設置相片格式為灰度圖

sensor.set_framesize(sensor.B128X128) # 設置分辨率大小為128*128

sensor.set_windowing((92,112)) ? ? ? ?#設置圖像窗口大小為92*112

sensor.skip_frames(10) # 使新的設置生效

sensor.skip_frames(time = 5000) #等待5s

p_in = Pin('P1',Pin.IN,Pin.PULL_DOWN) ? #設置P1口為接受信號端

preson = p_in.value()

#SUB = "s1"

NUM_SUBJECTS = 6 #圖像庫中不同人數,一共6人

NUM_SUBJECTS_IMGS = 10 #每人有10張樣本圖片

print("檢測到電平:%s"%p_in.value()) ?#當紅外人體傳感器檢測到人體時,就發送一個高電平給攝像頭,使它開始工作

while(p_in.value():

# 拍攝當前人臉。

preson_flat = False

img = sensor.snapshot()

d0 = img.find_lbp((0, 0, img.width(), img.height()))#對比照片的寬度與長度

for s in range(1, NUM_SUBJECTS+1):

dist = 0

for i in range(2, NUM_SUBJECTS_IMGS+1):

img = image.Image("faceid/s%d/%d.pgm"%(s, i))

d1 = img.find_lbp((0, 0, img.width(), img.height())) ?#調用find_lbp函數來提取當前的人臉特征值

#d1為第s文件夾中的第i張圖片的lbp特征

dist += image.match_descriptor(d0, d1)#計算d0 d1即樣本圖像與被檢測人臉的特征差異度。

#print("Average dist for subject %d: %d"%(s, dist/NUM_SUBJECTS_IMGS))

print("人臉檢測得分:%s"%(dist/NUM_SUBJECTS_IMGS))

if dist/NUM_SUBJECTS_IMGS < 7500:

preson_flat = True ? #如果特征值<7500那么此人存在于圖庫中,檢測為合格

break

else:

preson_flat = False #特征值>7500,則檢測為不合格

#print("檢測到第%s個人"%num)

if preson_flat:

print("檢測到sd卡中的人臉")

pyb.LED(GREEN_LED_PIN).on() ? ? ? ?#如何檢測到SD卡中的人臉,就綠燈顯示5S,表示合格

sensor.skip_frames(time = 5000)

pyb.LED(GREEN_LED_PIN).off()

else:

print("沒有檢測到人臉")

pyb.LED(RED_LED_PIN).on() ?#如果沒有檢測到SD卡中的人臉,就紅燈顯示5S,表示不合格

sensor.skip_frames(time = 5000)

pyb.LED(RED_LED_PIN).off()

#print(num) # num為當前最匹配的人的編號。

5 仿真或實驗結果

人臉拍攝并存檔,完成定義的每個人十張的照片的拍攝,如圖5所示。對比當前的人臉以及結果顯示,自定義人臉對比比值在7500以下的為正確,存在此人并且亮綠燈。反之則不存在亮紅燈,如圖6所示。

6 總結

本文采用了面部識別技術以及單片機應用、網絡通信等技術。通過對模塊和網絡的結合,實現了互聯網的應用。對于在校大學生的寢室管理設計出有效合理的系統。通過面部采集,人臉識別,面部解鎖以及網絡通信等功能相結合,對于在校大學生的寢室安全以及管理工作有了很大的提升。

參考文獻

[1] 霍焰焰.基于PCA和LBP改進算法的人臉識別研究[D].哈爾濱:哈爾濱理工大學, 2015.

[2] Luciano Ramalho .流暢的Python[M].,2017.5.15

[3] 武奇生、王秋才、閻茂德.計算機網絡與通信[M]. 2009年1月1日

[4] 楊艷 郭振鐸 徐慶偉.基于PCA和LBP的自適應加權融合人臉識別算法[J].中原工學院學報.2018,29(06).75-80

[5]康華光.電子技術基礎[M]. 模擬部分,2013(6):481-488.

[6] 郭向星 田斐.智能人臉識別門鎖控制系統設計[J].電子技術與軟件工程.2019,(17),115-116

猜你喜歡
數據采集人臉識別
人臉識別 等
作文中學版(2022年1期)2022-04-14 08:00:34
揭開人臉識別的神秘面紗
學生天地(2020年31期)2020-06-01 02:32:06
基于(2D)2PCA-LBP 的人臉識別方法的研究
電子制作(2017年17期)2017-12-18 06:40:55
人臉識別在高校安全防范中的應用
電子制作(2017年1期)2017-05-17 03:54:46
CS5463在植栽用電子鎮流器老化監控系統中的應用
大數據時代高校數據管理的思考
科技視界(2016年18期)2016-11-03 22:51:40
鐵路客流時空分布研究綜述
基于廣播模式的數據實時采集與處理系統
軟件工程(2016年8期)2016-10-25 15:54:18
通用Web表單數據采集系統的設計與實現
軟件工程(2016年8期)2016-10-25 15:52:53
基于開源系統的綜合業務數據采集系統的開發研究
主站蜘蛛池模板: 国产黄在线免费观看| 国产精品亚洲va在线观看| 国产精品亚洲精品爽爽| 91色在线视频| AV不卡国产在线观看| 国产一级视频在线观看网站| 免费无码AV片在线观看国产| 日本手机在线视频| 99激情网| 亚洲国产精品一区二区第一页免| 无码中文字幕乱码免费2| 中文精品久久久久国产网址 | 色婷婷亚洲十月十月色天| 久久情精品国产品免费| 国产在线观看99| 男人天堂伊人网| 日本午夜影院| 国产成人福利在线| 乱人伦99久久| 91精品啪在线观看国产91九色| 午夜精品区| 99re精彩视频| 免费 国产 无码久久久| 欧美综合成人| 亚洲第一黄色网址| 国产视频久久久久| 最新精品久久精品| 日韩欧美一区在线观看| 人与鲁专区| 国产福利不卡视频| 国产高清在线丝袜精品一区| 久久婷婷色综合老司机| 国产91丝袜在线播放动漫 | 亚国产欧美在线人成| 久热这里只有精品6| 综1合AV在线播放| 美女免费精品高清毛片在线视| 国产精品2| 亚洲成人动漫在线| 欧美一级夜夜爽www| 97超级碰碰碰碰精品| 亚洲综合欧美在线一区在线播放| 国产在线91在线电影| 伊人久久大香线蕉影院| 青青青国产精品国产精品美女| 成年女人a毛片免费视频| 国产成人免费高清AⅤ| 国产青榴视频| 91成人精品视频| 国产在线97| 国产swag在线观看| 538国产视频| 精品福利国产| 国产在线一区二区视频| 国产一级在线播放| 丝袜无码一区二区三区| 久久国产亚洲欧美日韩精品| 欧美日韩国产在线播放| a毛片在线免费观看| 在线日韩一区二区| 久久先锋资源| A级全黄试看30分钟小视频| 欧美日一级片| 女人18毛片一级毛片在线| 亚洲最大综合网| 亚洲精品另类| 天天综合亚洲| 国产午夜福利亚洲第一| 亚洲人妖在线| 广东一级毛片| 黄色网页在线播放| 欧美激情福利| 激情综合图区| 人妻21p大胆| 91视频日本| 欧美成一级| 天堂在线视频精品| 日本欧美一二三区色视频| 日本亚洲成高清一区二区三区| 91成人在线免费视频| 久久亚洲天堂| 视频国产精品丝袜第一页 |