• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于計算機視覺的室內(nèi)防盜聯(lián)動系統(tǒng)研究

      2021-08-24 12:20:20范希喆魏季坤王睿哲王儒成湯孟祺
      科技視界 2021年21期
      關(guān)鍵詞:測試者人臉識別人臉

      范希喆 魏季坤 王睿哲 王儒成 湯孟祺

      (蘇州科技大學(xué)機械工程學(xué)院,江蘇 蘇州215009)

      0 引言

      現(xiàn)代社會中,普通家庭對于安防系統(tǒng)的需求不斷上漲。但傳統(tǒng)家庭安防系統(tǒng)往往具有以下幾個缺點:

      (1)響應(yīng)被動:以攝像頭為例,傳統(tǒng)安防設(shè)備傾向記錄證據(jù),缺乏對于狀況主動響應(yīng)的能力,這可能造成事故處理不及時。

      (2)檢測機制單一:傳統(tǒng)安防設(shè)備往往采用單一的信息獲取手段,如監(jiān)控探頭獲取視覺信息,動作傳感器判斷室內(nèi)有無物體移動等。傳統(tǒng)安防設(shè)備的信息獲取方式之間缺少相互的信息交流與決策,單一的決策方式可能會造成穩(wěn)定性差,精準度差,容易破壞等后果。

      (3)價格昂貴:市面上現(xiàn)有的利用人臉識別技術(shù),即一種通過對生物個體特征進行識別[1]的技術(shù)的監(jiān)控系統(tǒng),其定位多針對大型場合。為保證系統(tǒng)在人流量大,環(huán)境復(fù)雜的場合中具有一定的精準度與穩(wěn)定性,往往需要依靠高性能硬件以支持其巨大的信息處理量,且配套軟件往往復(fù)雜且精密,因此這類針對大型場合的安防設(shè)備往往體量巨大價格昂貴。針對家庭安防相對簡單且人流量小的場合,大型安防設(shè)備不僅價格不菲,且浪費軟硬件性能。

      目前,安防設(shè)備的發(fā)展已經(jīng)有了一定規(guī)模,并逐漸由傳統(tǒng)的安防設(shè)備向智能安防設(shè)備進行轉(zhuǎn)型。智能安防系統(tǒng)可以理解為圖像的傳輸和存儲、數(shù)據(jù)的存儲和處理準確而選擇性操作的技術(shù)系統(tǒng)[2]。目前的智能安防系統(tǒng)多采用人臉識別技術(shù),國內(nèi)互聯(lián)網(wǎng)廠家諸如商湯、虹軟、阿里等都先后開發(fā)并推出了商用人臉識別安防解決方案,并有了廣泛應(yīng)用。但由這些大型安防設(shè)備存在上文提及的缺陷,并不適合使用在家庭環(huán)境中使用。

      針對以上原因,本文提出一種針對家用場合的聯(lián)動家庭安防系統(tǒng)。該系統(tǒng)不需要依靠專用設(shè)備運行,具有多種偵測手段,并可進行一定主動響應(yīng)。

      1 系統(tǒng)結(jié)構(gòu)

      1.1 硬件架構(gòu)

      在本項目中,我們采用了樹莓派(RaspberryPi)開發(fā)平臺。硬件配置信息為:樹莓派4B(RaspberryPi 4B)開發(fā)板,內(nèi)存容量8G。其操作系統(tǒng)為Linux基于樹莓派平臺開發(fā)的發(fā)行版本。為了保證更好的程序運行效果,本文采用了具有紅外夜視功能的樹莓派攝像頭作為監(jiān)控攝像頭。但考慮到開發(fā)工作的便捷性,本文采用個人電腦作為開發(fā)平臺,當程序開發(fā)完成后再將其移植到樹莓派平臺。

      CPU Intel Core i7 9700顯示適配器 Nvidia Geforce GTX1660Ti Max-Q內(nèi)存 16G

      進行開發(fā)與調(diào)試工作的電腦硬件配置如下:

      1.2 硬件系統(tǒng)工作流程

      硬件工作流程可以分為以下幾個步驟:

      (1)環(huán)境信息獲?。罕疚牟捎眉t外攝像頭作為視頻信息的獲取來源。后續(xù)開發(fā)中,將嘗試增加不同的傳感器(如動作傳感器)獲取更多環(huán)境信息。

      (2)報警信息決策:這一步驟的目的是基于傳感器傳入的信息來判斷是否有入侵者,進行報警決策。目前本系統(tǒng)只依靠攝像頭傳入的視頻數(shù)據(jù)進行決策。若識別到當前環(huán)境中所有出現(xiàn)的人臉均為已登記的人臉,或當前環(huán)境中沒有出現(xiàn)人臉,系統(tǒng)將判斷環(huán)境為安全,不采取行動;若該程序識別到當前環(huán)境中出現(xiàn)了陌生人臉,則系統(tǒng)將判定環(huán)境危險,并采取行動。

      (3)采取主動響應(yīng)措施:這一步驟的目的是讓系統(tǒng)在遭遇諸如非法入室等特殊情況時,能夠及時采取一些措施減少損失,如傳送報警信息及錄像留證。

      1.3 軟件系統(tǒng)架構(gòu)

      軟件算法的主要實現(xiàn)小型的人臉比對。該算法具有以下特征:

      (1)適用于人流量相對小,周圍環(huán)境不太復(fù)雜的場合。

      (2)兼容大部分家用硬件,如個人電腦,且運行在常用的操作系統(tǒng)(如Windows與Linux)中。

      (3)具備一定的主動響應(yīng)能力。當識別到家庭中有陌生面孔進入時,程序?qū)l(fā)送警報信息,并自動錄像留證。與此同時,程序計劃實現(xiàn)聯(lián)網(wǎng)報警,操作門窗落鎖等功能。

      基于以上特征,我們采用了Python語言[3]并在Linux操作系統(tǒng)(發(fā)行版本Ubuntu 20.04)中進行開發(fā)。

      人臉識別及比對功能的實現(xiàn)依賴于函數(shù)庫face_recognition。組員通過優(yōu)化函數(shù)效果,以及設(shè)計程序邏輯與結(jié)構(gòu)以實現(xiàn)所期望的功能。

      程序主要使用的函數(shù)庫如下:視覺及人臉處理OpenCV[4];face_recognition;PIL;numpy;math;sklearn。本文軟件系統(tǒng)流程如圖1所示。

      圖1 軟件系統(tǒng)流程圖

      1.4 軟件算法步驟

      (1)信息收集:OpenCV庫中VideoCapture方法調(diào)用攝像頭的畫面。程序讀取畫面后,將圖像轉(zhuǎn)化為程序所能處理的RGB格式,并按比例縮小畫面至原四分之一以加快處理速度。只有當偵測到陌生人臉時,程序才會進行保存錄像的工作,以節(jié)省磁盤空間。運行時,程序?qū)棾鲆粋€窗口以實時顯示監(jiān)控畫面捕捉的畫面。

      (2)人臉存儲與樣本訓(xùn)練:這一步驟的目的是為了登記人臉信息,當被登記過的人臉進入監(jiān)控時,系統(tǒng)不會觸發(fā)警報。本算法利用face_recognition基于KNN算法的擴展函數(shù)庫knn_clf中的train函數(shù)進行訓(xùn)練工作,這一訓(xùn)練步驟需要提供將被登記的人臉的若干張照片。訓(xùn)練后的人臉數(shù)據(jù)庫模型將以txt格式存儲在程序路徑下的train_model文件夾中,被登記人臉將以向量形式存儲在該文件中。當程序運行時,它將首先檢查train_model文件夾下是否存有已訓(xùn)練好的人臉數(shù)據(jù)庫。倘若已有人臉數(shù)據(jù),將跳過訓(xùn)練進程;倘若沒有人臉數(shù)據(jù)模型,程序?qū)⒆x取程序路徑下的known_face文件夾中的人臉照片進行訓(xùn)練進程。當訓(xùn)練完成后,程序才會進行下一步的進程。train函數(shù)對于訓(xùn)練照片中人臉的識別基于face_recognition庫中的face_locations函數(shù)。在實際使用中,可能因為照片中人臉角度或光照等因素導(dǎo)致無法找尋到人臉,此時程序?qū)⒎祷匦畔ⅰ癗o face found in”+“出錯照片的文件名”,為保證訓(xùn)練效果,應(yīng)替換出錯照片并重新訓(xùn)練。

      (3)人臉識別與抓?。簩τ赩ideoCapture方法所讀入的視頻信息利用while循環(huán)逐幀讀取,將靜態(tài)幀當作靜態(tài)圖像進行處理。predict函數(shù)能夠讀取圖像信息,找到圖片中的人臉,并將其坐標信息存儲在X_face_locations中。本程序通過讀取這些人臉坐標信息,利用OpenCV實現(xiàn)繪制綠框標注識別結(jié)果。predict函數(shù)對于視頻畫面中人臉的抓取基于face_recognition庫中的face_locations函數(shù)。在實際使用中,我們發(fā)現(xiàn)該函數(shù)對于視頻人臉的抓取效率較低,經(jīng)常無法準確識別。因此我們更改了該函數(shù)的源碼,利用OpenCV庫中的HaarCascade人臉級聯(lián)分類器替換了face_locations函數(shù),在抓取效率上獲得了一定的提升。

      (4)人臉比對:這一步驟的目的是為了比對監(jiān)控抓取人臉與已登記人臉。本程序利用knn_clf函數(shù)庫中的predict函數(shù)進行人臉比對的工作。predict函數(shù)既可進行人臉定位也可進行人臉比對。這一功能的實現(xiàn)基于KNN(KNearestNeighbor,即K最鄰近)算法,這是一種分類算法,廣泛應(yīng)用于人臉識別等領(lǐng)域。其基本原理如下:首先利用face_recognition庫中的face_encodings函數(shù)將predict函數(shù)傳入的待比對的人臉編碼成向量。隨后,根據(jù)公式計算待比對人臉向量與已登記人臉每一個向量的歐式距離ρ。然后函數(shù)將選取K個與待比對向量歐氏距離最近的已登記人臉向量,統(tǒng)計K個已登記人臉向量中哪一組別的向量占據(jù)多數(shù),并將待比對人臉劃入該占最大比重的組別。與此同時,設(shè)置一個歐氏距離的最大閾值ρmax,當所有ρ距離均大于ρmax時,程序?qū)⒄J定待比對人臉為陌生人臉,并返回一條“unknown”信息。在實驗過程中,我們發(fā)現(xiàn)由于predict函數(shù)抓取人臉的范圍過大,導(dǎo)致背景被抓取干擾結(jié)果,于是我們修改了predict函數(shù)源碼,將人臉范圍按比例縮小至原先的75%再進行比對工作。

      2 實驗結(jié)果

      2.1 實驗準備

      利用5人各15張人臉照片以作為訓(xùn)練樣本以訓(xùn)練已登記人臉的數(shù)據(jù)庫。并選用了電腦原配前置攝像頭(400萬像素)作為視頻信息的獲取來源。

      2.2 實驗內(nèi)容

      開啟程序,待程序完成訓(xùn)練過程,彈出實時視頻畫面顯示框后,進行如下實驗:

      2.2.1 測試單人情況下程序的識別情況

      令5人依次進入攝像頭的捕捉范圍內(nèi),進行時長30 s的人臉檢測與比對,通過觀察實時視頻畫面顯示框以確定程序當前的識別狀態(tài)。再令未進行人臉登記的實驗者進入攝像頭的捕捉范圍內(nèi),觀察程序的識別狀態(tài)。通過統(tǒng)計各位同學(xué)在30 s內(nèi)程序正確識別其人臉的時間來衡量程序的識別準確率。

      2.2.2 測量不同距離下單人情況下程序的識別情況

      令5人依次進入攝像頭的捕捉范圍內(nèi),進行時長30 s的人臉檢測與比對,在前10 s中,測試者距離攝像頭保持20 cm的距離,隨后以每10 s 20 cm的距離遠離攝像頭。通過觀察各位測試者在不同距離下被程序正確識別的情況來衡量程序在不同距離下的識別能力。

      2.2.3 測試多人情況下程序的識別情況

      令5人以及若干(1~3名)未進行人臉登記的實驗者全部進入攝像頭的捕捉范圍,進行30 s的實時人臉檢測與識別,保持各個測試者人臉距離與攝像頭保持在20~40 cm這個區(qū)間中,觀察程序在人員混雜情況下的識別情況與準確率。

      2.3 實驗結(jié)果

      2.3.1 單人情況下程序的識別情況

      在實時人臉檢測與比對環(huán)節(jié)中,五位已登記測試者在30 s的識別時長中,分別被程序正確識別了19 s、20 s、22 s、18 s、15 s。識別結(jié)果如圖2所示。

      圖2 識別結(jié)果

      在對于未登記人臉的識別時,程序曾將幾幀畫面錯誤的識別成為了已登記人臉,但由于錯誤識別的時間較短,后期可以通過更改程序決策方面的代碼來防止誤報警情況的產(chǎn)生。

      2.3.2 不同距離情況下程序的識別情況

      在實時人臉檢測與比對環(huán)節(jié)中,五位測試者在距離攝像頭20~40 cm時均獲得了較為準確的識別結(jié)果,但當測試者距離攝像頭的距離大于或等于50 cm時,程序幾乎無法將測試者從背景中準確地識別出來。為了進一步優(yōu)化程序效果,計劃減少視頻畫面處理階段對于視頻畫面的裁剪與壓縮,并采用像素更高的攝像頭。

      2.3.3 多人情況下程序的識別情況

      此環(huán)節(jié)的識別結(jié)果與單人情況下識別情況下基本一致,五位已登記測試者在實驗中分別被程序正確識別了18 s、21 s、22 s、18 s、17 s(數(shù)據(jù)順序與單人情況下順序一致)。而未登記人臉的誤識別情況也同樣可以忽略。但值得注意的是,程序運行速率在多人識別的情況下存在明顯的下降。

      3 結(jié)語

      本文提出了一個能夠兼容運行在多種設(shè)備與操作系統(tǒng)中的輕量化人臉識別與比對程序,為家庭安防提供了一種新的、更為廉價的解決思路。利用本文提出的方法,用戶可以實現(xiàn)簡單的人臉識別比對安防系統(tǒng),而不需要購買昂貴的專用安防器材。

      在未來的開發(fā)與研究中,將進一步提升人臉識別與比對的精準度并完善程序邏輯從而減少錯誤報警的產(chǎn)生。與此同時,我們還將進一步優(yōu)化程序的運行效率與速率,減少程序?qū)τ诟咝阅苡布囊蕾嚒N覀冞€將繼續(xù)開發(fā)更多的信息獲取與主動響應(yīng)方法,使得本項目所開發(fā)的安防系統(tǒng)更具有聯(lián)動性、穩(wěn)定性與主動性。

      猜你喜歡
      測試者人臉識別人臉
      人臉識別 等
      有特點的人臉
      揭開人臉識別的神秘面紗
      搜救犬幼犬挑選測試
      三國漫——人臉解鎖
      動漫星空(2018年9期)2018-10-26 01:17:14
      指紋收集器
      可監(jiān)測腦電波的智能燈
      基于類獨立核稀疏表示的魯棒人臉識別
      計算機工程(2015年8期)2015-07-03 12:19:07
      馬面部與人臉相似度驚人
      很多英國人不會拼常用詞
      柳林县| 淄博市| 灌阳县| 西乡县| 浮山县| 平和县| 五华县| 泰来县| 甘孜县| 呼图壁县| 花垣县| 桑植县| 宁乡县| 大悟县| 枣强县| 乌海市| 项城市| 浮山县| 巴塘县| 闽侯县| 五指山市| 富民县| 南宁市| 安多县| 桂东县| 连南| 涪陵区| 凌源市| 石屏县| 德安县| 肃宁县| 张家界市| 花莲市| 齐齐哈尔市| 吉木萨尔县| 司法| 文登市| 南开区| 射阳县| 恭城| 彭水|