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

基于機器視覺的人臉口罩佩戴檢測裝置設計

2022-12-06 12:44:06林宛楊
應用技術學報 2022年4期
關鍵詞:檢測

林宛楊

(福建船政交通職業學院信息與智慧交通學院,福州 350007)

新冠病毒的防疫常態化需要強化公共衛生體系"軟件"和"硬件"建設[1]。目前,我國大多數主要公共場所和重要交通樞紐出入口的在線測溫技術已配備完善,但由于防控意識淡薄,仍然存在部分人員不帶口罩出入這些節點的情況。隨著機器視覺技術的不斷發展,基于機器視覺的目標檢測技術逐漸走進人們的視野。目標檢測作為機器視覺一個重要研究分支熱點,通過對目標場景對象進行分類和定位的應用十分廣泛[2-3]。基于深度學習的目標檢測技術的發展迅速[4],對人臉口罩檢測還主要集中在算法方面[5],為將基于機器視覺的目標檢測技術融入到疫情防控中,開發出實用成本低[6]的基于機器視覺的目標檢測測試裝置提供的基礎。該裝置以檢測人體有無佩戴口罩作為實施目標,為將基于機器視覺的目標檢測技術、圖像分類、圖像降噪和嵌入式應用技術和等專業融入到實際的工程項目中,將所學的知識在工程項目中實現,具有實際應用意義[7]。

1 檢測裝置組成和硬件模塊設計

1.1 檢測裝置的組成

本項目是基于機器視覺和嵌入式系統檢測人臉是否佩戴口罩的檢測裝置,該裝置由下位機和上位機2部分組成,如圖1所示。下位機的組成主要包括嵌入式主控單元(Exynos4412核心板)、LCD顯示、以太網通信和圖像采集4大模塊;上位機為1臺服務器,用于接收圖像和檢測目標。檢測裝置的下位機如圖2所示,首先通過USB攝像頭采集圖像,在LCD顯示屏上顯示圖像,并通過以太網將圖像傳輸到上位機中,上位機對圖像進行實時處理,檢測出人體是否佩戴口罩。

圖2 檢測裝置下位機圖Fig.2 Lower position machine system of the detection device

1.2 嵌入式主控單元模塊

本檢測裝置主控核心版的模塊組成如圖3所示。采用三星Exynos4412芯片作為CPU,Cortex-A9四核架構,運行主頻最大可高達1.6 GHz,配備2 GB的DDR3內存,8GB的EMMC閃存。Exynos4412內部集成了Mail-400 MP高性能圖形處理器,其主頻高達400 MHz,支持H.264/H.263、MPEG-4/MPEG2等視頻編解碼及支持2D、3D圖形加速[8-9]。采用低功耗電源管理芯片S5M8767,耗電量極小,續航時間長,高效節能。

圖3 檢測裝置核心板模塊Fig.3 Core board module of the detection device

1.3 LCD顯示模塊

本檢測裝置使用23.33 cm(7寸)的RGB高清屏作為顯示圖像的部分,具有1 024×600的分辨率,支持多點觸摸的電容屏,可用于顯示QT圖形界面。其接口電路圖如圖4所示。

圖4 檢測裝置的LCD模塊連接Fig.4 LCD module connection of the detection device

1.4 以太網通信模塊

檢測裝置的以太網模塊采用DM9621ANP芯片,該芯片具有USB接口、以太網、EEPROM接口、時鐘、電源輸入等功能[10],此外,具有超低功耗的特點。在作為以太網時,可支持IEEE802.3u及IEEE802.3標準的10/100 Mb·s-1以太網LAN功能,支持RMII接口或8PIN的GPIO,對鏈接狀態變更、喚醒幀及Magic包的支持,支持offload檢查和生成TCP/UDP/IP校驗碼,可用于網絡通信,本裝置使用以太網進行圖像傳輸。。

1.5 圖像采集模塊

檢測裝置的圖像采集模塊采用的是USB免驅攝像頭,使用的是130萬高清工業芯片,1 280×720的 分 辨 率,可 達30幀/s的 圖 像 輸 出,支 持MJPG、YUV22種國際標準UVC協議輸出,兼容Windows、Linux、Android等三大主流系統,可在這些系統上直接使用[11]。直接將該攝像頭接入嵌入式板的USB接口即可使用,支持USB2.0接口協議,不需要額外安裝驅動。其接口電路圖如圖5所示。

圖5 檢測裝置的USB接口引腳Fig.5 USBport pin of the detection device

2 檢測環境的搭建

2.1 安裝Linux系統到開發板

本檢測裝置的開發環境搭建是基于Ubuntu16.04系統下,先將所需要用到的文件在該系統下交叉編譯再移植到ARM板中。嵌入式Linux主要由內核引導程序Bootloader、內核參數區(Kernel parameters)、Linux內核、Linux根文件系統4部分組成。Bootloader是系統上電的后運行的第一個程序,主要用來初始化外設和處理器,依賴于硬件;Bootloader最后調用Linux內核,將Linux內核拷貝到RAM里面去,最后安裝目標文件系統。

2.2 移植OpenCV和QT庫

OpenCV是一個計算機視覺開源庫,可以運行在Linux、Windows、Android等系統上,OpenCV用C++語言編寫,但具有C++,Python,Java和MATLAB接口。該裝置在上位機對圖像進行處理,因此需要在上位機Ubuntu16.04系統下安裝OpenCV庫,本裝置安裝的版本為OpenCV3.4.1。在嵌入式Linux系統中,沒有類似于通用計算機的圖形用戶接口,不能直接使用OpenCV庫顯示圖像。在嵌入式系統端需引入可移植性高、高性能和高可靠性的圖形用戶界面。

QT是一種可跨平臺開發的C++圖形面向對象的框架,滿足嵌入式系統的要求,便于開發圖形用戶界面,QT編寫的程序可移植到不同的平臺而不需要修改代碼,移植性高[7]。可利用QT作為中間媒介,因此引入QT/E庫,顯示圖像信息。開發應用程序之前,需在宿主機配置QT的開發環境,再將QT庫進行交叉編譯并移植到開發板上,使用QT5.7版本開發應用程序。

2.3 Socket套接字

本裝置分為下位機和上位機2部分,由下位機采集實時圖像,通過以太網傳輸圖像視頻到上位機中。使用Socket套接字作為通信接口,這就需要用下位機作為客戶端,上位機作為服務端。Socket作為應用層與TCP/IP協議通信的中間軟件抽象層的一組接口,將復雜的TCP/IP協議隱藏在Socket接口后面,無需深入了解TCP/UDP協議,使用簡單的Socket接口編程,就可以傳輸圖像數據。

Socket的工作流程如圖6所示,在服務器端,先初始化Socket,再與端口綁定(bind),接著對端口進行監聽(listen),再調用accept阻塞,服務端等待客戶端連接。當客戶端初始化Socket時,客戶端連接服務端(connect),與服務器端建立連接,客戶端請求發送數據,服務端接收請求并處理,并回應數據給客戶端,客戶端讀取數據后關閉連接,一次交互結束。

圖6 Socket的工作流程圖Fig.6 Work flow chart of Socket

2.4 V4L2視頻驅動框架

V4L2是為Linux操作系統設計的編程接口,是Linux系統中關于視頻設備的內核驅動,通過V4L2視頻內核驅動,可以像訪問普通文件一樣訪問視頻設備。V4L2是針對UVC免驅USB設備的編程框架,主要用于采集USB攝像頭,可用于多媒體的開發,如音頻等。

V4L2有內存映射(mmap)和直接讀取(read)2種視頻采集的方式,前者主要用于對連續視頻數據的采集,后者主要用于靜態圖片數據的采集。在該裝置中,需要實時采集圖像信息,因此,在下位機中使用內存映射的方式采集圖像。利用V4L2接口采集視頻的流程圖如圖7所示,首先需打開攝像頭設備,設置幀率、制式(PAL或NTSC)、存儲格式(YUV或RGB)以及窗口大小(寬、高和橫縱坐標)等參數,向驅動申請幀緩沖,并將申請到的幀緩沖映射到用戶空間中(mmap),將緩沖區加入隊列中后開始視頻的采集,從隊列中取出獲得圖像的緩沖區[12],然后將緩沖區重新加入到隊列中實現連續循環采集,到最后關閉采集視頻的設備[13]。

圖7 V4L2接口采集視頻流程圖Fig.7 Flowchart for V4L2 interface video collection

2.5 級聯分類器

由于需要檢測人體有無佩戴口罩,屬于二分類的問題,可利用圖像的級聯分類器,對檢測對象進行檢測。基本原理:首先使用OpenCV的Haar,繪制人臉的區域,包括正臉或是側臉;其次在通過HSV閾值提取人臉的膚色;最終通過膚色輪廓面積與人臉ROI面積比值判斷是否佩戴口罩。

采用Haar基于通過大量人臉圖像樣本構造人臉模式空間的統計方法,將人臉作為一個整體模式的二維像素矩陣,根據相似度量來判斷人臉是否存在。由于這是一種基于樹的目標檢測技術,利用大量樣本的Haar特征進行分類器訓練。主要方式:將1個矩形放到人臉區域上,通過白色區域的像素和減去黑色區域的像素和,得到的值為人臉特征值,如果這個矩形放到1個非人臉區域,那么計算出的特征值應該和人臉特征值是不一樣的,通過方塊的目的就是把人臉特征量化,區分人臉和非人臉。由于人與攝像頭的遠近和人臉的大小問題,還需要適當改變初始化矩形框的大小及矩形框大小的合并。以同時為了增加區分度,采用Adaboost強分類算法級聯分類器。將若干個強分類器由簡單到復雜排列,通過訓練每層強分類器的檢測率值和誤識率值達到指定要求經過訓練使每個強分類器都有較高檢測率。最后采用積分圖

就達到只遍歷一次圖像就可以求出圖像中所有區域像素和的快速算法,加快識別的速度。

當有部分人臉遮擋和側臉情況,需要進一步識別人臉位置,建議使用OpenCV自帶的opencv_face_detector_uint8.pb改進。

同理采用Haar的Adaboost算法獲得人臉的膚色HSV值、膚色輪廓面積、臉ROI面積。訓練出數據樣本。當準備好需準備正負樣本,設置好相關內容,利用OpenCV的訓練文件即可訓練特征,結果得出一個.xml的分類器,加載此文件,就可以在程序中檢測對象。

該檢測裝置需使用2個級聯分類器,先使用人臉分類器,判斷圖像有無人臉,當檢測到人臉時,再使用口罩的分類器,判斷有無佩戴口罩。

2.6 軟件設計

整體軟件設計如圖8所示,首先,在下位機部分(客戶端),使用USB攝像頭作為采集視頻的設備,通過V4L2接口采集圖像信息,并且利用QT圖形用戶程序,將圖像顯示在LCD屏上,接著下位機使用Socket套接字對視頻進行傳輸到上位機中。上位機接收到視頻,使用已經訓練好的人臉檢測器和口罩檢測器對視頻進行檢測,并把檢測結果通過Socket通信返回到下位機中。

圖8 系統工作流程圖Fig.8 Flowchart for thesystem

服務器端(上位機)程序流程圖如圖9所示,先初始化Socket通信,然后對端口進行監聽,并判斷與客戶端(下位機)是否已連接,若未連接,需繼續監聽。

圖9 上位機程序設計流程圖Fig.9 Flowchart for upper position machine system program design

當已連接到客戶端,則接收從客戶端發送的視頻數據;接收到圖像數據后,進行機器視覺的識別。利用人臉檢測器對圖像進行檢測,為輸入圖片輸出大量的子窗口圖像,這些子窗口圖像經過篩選式級聯分類器會不斷地被每一個節點篩選,拋棄或通過。OpenCV的分類算法判斷人臉或是非人臉,判斷有無人臉,若圖像中未出現人臉,則產生結果輸出:“NO People!!!”;若圖像中可檢測到人臉。

進入下一級分類器,再利用口罩檢測器檢測有無佩戴口罩,即通過膚色輪廓面積與人臉ROI面積比值的訓練樣本進行測試,若檢測到有佩戴口罩,則結果輸出:“YES!!Please Access!!”,代表已戴口罩,可以通行;若人臉中未檢測到口罩,則結果輸出:“NO Mask!!NO Way”,代表未佩戴口罩,不能通行。

最后把結果返回到客戶端中,在下位機中,當返 回 的 結 果 為“NO People!!!”和“YES!!Please Access!!”,蜂鳴器不報警,可以通行,當返回的結果為“NO Mask!!NO Way”,則蜂鳴器報警,提示需佩戴好口罩。如果有特殊情況未正確標注則進行人工干預及將錯誤樣本標注存檔,以便進行下一次產品升級。

3 實驗測試

上位機界面如圖10所示,左邊是用于接收圖像的顯示框,右邊可設置端口號,下方有個顯示框,可顯示識別檢測后的信息。在上位機點擊“偵聽”按鈕,表示正在等待客戶端的連接,當客戶端連接成功之后,上位機即可接收到圖像,并顯示在QT的界面上,并不斷識別檢測人臉有無佩戴口罩。

圖10 上位機界面Fig.10 Upper computer interface

(1)未佩戴口罩。圖11所示為下位機顯示部分。在上位機中,當界面有人臉出現時,但未佩戴口罩,會在人臉的位置出現一個紅色的矩形框,另外右邊下方的消息框中顯示:“NO,Mask!!NO Way”,表示未佩戴口罩。在下位機中,消息框也會顯示同樣的消息:“NO Mask!!NO Way”,并且在下位機中蜂鳴器報警。

圖11 檢測到未佩戴口罩時Fig.11 When no mask is detected

(2)已佩戴口罩。如圖12所示,當人體佩戴好口罩時,在上位機中繪制一個藍色的矩形框,并在右邊的消息框中顯示:“YES!!Please Access!!”,表示已佩戴好口罩,可以進入施工現場。在下位機部分的消息框中,也顯示:“YES!!Please Access!!”,同上位機同步,并且蜂鳴器不報警。

圖12 檢測到已佩戴口罩時Fig.12 When a mask is detected

(3)無人通過時。如圖13所示,當沒有人通過時,下位機的消息框會顯示:“NO People!!!”,表示無人通過,蜂鳴器不報警。

圖13 無人通過時Fig.13 When no one passes

4 測試裝置的創新拓展

該裝置的底層平臺是基于嵌入式Linux搭建而成的,操作人員只需燒寫相應的內核文件即可配置完成底層環境。該裝置的程序設計是基于QT實現的,該圖形用戶界面具有良好的移植性和閱讀性,操作人員可輕松上手該編程環境,不僅可以在該平臺上實現圖像識別,還可利用其實現音頻播放、云服務器智能家居及智能網關等功能,利用LCD屏作為可視界面。

該測試裝置上位機引入了OpenCV機器視覺開源庫,可做更多有關圖像處理的項目[14]。在此裝置的基礎上,可以實現更多有關目標檢測技術,例如行人檢測、人體口罩佩戴檢測等;此外,還可實現其他與圖像處理有關的實踐項目,例如人臉識別門禁系統,提取人臉特征進行識別;還可以利用其作為視頻監控、停車場車牌識別門禁系統等[15]。該測試裝置為操作人員提供了可以發揮創新力和實踐能力的平臺。

5 結語

本測試裝置是結合機器視覺及嵌入式應用技術,開發了基于機器視覺檢測人體有無佩戴口罩的檢測系統,下位機完成了對圖像的采集和傳輸,上位機完成了檢測有佩戴口罩、無佩戴口罩及無人的3種結果,并把該結果返回給下位機。在智能制造等產業中,基于機器視覺的檢測技術具有準確度高、實效性好的優點,在實際生活中應用十分廣泛。

猜你喜歡
檢測
QC 檢測
“不等式”檢測題
“一元一次不等式”檢測題
“一元一次不等式組”檢測題
“幾何圖形”檢測題
“角”檢測題
“有理數的乘除法”檢測題
“有理數”檢測題
“角”檢測題
“幾何圖形”檢測題
主站蜘蛛池模板: 国产精品妖精视频| 亚洲va在线∨a天堂va欧美va| 国产情侣一区二区三区| 婷婷综合亚洲| 日韩不卡高清视频| 国产精品v欧美| 婷婷色一二三区波多野衣| 婷婷激情亚洲| 精品欧美视频| 欧美天天干| 国产剧情无码视频在线观看| 国产91精品最新在线播放| 亚洲天堂啪啪| 日韩在线播放欧美字幕| a级毛片免费看| 国产精品9| 国产精品yjizz视频网一二区| 免费看美女毛片| 国产一线在线| 伊人久久婷婷五月综合97色| 亚洲最猛黑人xxxx黑人猛交 | 国产福利观看| 国产日本一区二区三区| 中文字幕亚洲无线码一区女同| 国产在线视频欧美亚综合| 国产又大又粗又猛又爽的视频| 久草中文网| www.狠狠| 国产91色在线| 九九这里只有精品视频| 欧美综合成人| 国产h视频免费观看| 亚洲综合二区| 亚洲无码精彩视频在线观看| 亚洲欧美激情小说另类| 国产精品va| 日韩av在线直播| 99久久这里只精品麻豆| 亚洲精品国产成人7777| 国产大片喷水在线在线视频 | 91九色视频网| 国产男人的天堂| 久草视频福利在线观看| 国产偷倩视频| 婷婷成人综合| 无码AV高清毛片中国一级毛片| 在线国产欧美| 这里只有精品在线播放| 无码'专区第一页| 色婷婷成人网| 日韩在线成年视频人网站观看| 日韩中文字幕免费在线观看| 亚洲午夜福利在线| 国产成人福利在线视老湿机| 色丁丁毛片在线观看| 九九久久99精品| 一区二区三区四区在线| 日本道综合一本久久久88| 91精品国产91久无码网站| 亚洲国产精品无码AV| 久久亚洲黄色视频| 国产福利在线观看精品| 欧美色视频日本| 国产幂在线无码精品| 国产精品香蕉在线| 色噜噜在线观看| 性视频一区| www亚洲精品| 激情午夜婷婷| 五月天综合婷婷| 国产亚洲欧美在线人成aaaa| 国产欧美日韩va另类在线播放| 九九热在线视频| 四虎永久免费网站| 精品国产福利在线| 亚洲综合18p| 久久精品人妻中文系列| 亚洲精品午夜无码电影网| 谁有在线观看日韩亚洲最新视频 | 美女无遮挡免费视频网站| 伊人精品视频免费在线| 免费中文字幕一级毛片|