人工智能綜合項(xiàng)目開發(fā)- 課件 項(xiàng)目四 口罩佩戴檢測防控系統(tǒng)_第1頁
人工智能綜合項(xiàng)目開發(fā)- 課件 項(xiàng)目四 口罩佩戴檢測防控系統(tǒng)_第2頁
人工智能綜合項(xiàng)目開發(fā)- 課件 項(xiàng)目四 口罩佩戴檢測防控系統(tǒng)_第3頁
人工智能綜合項(xiàng)目開發(fā)- 課件 項(xiàng)目四 口罩佩戴檢測防控系統(tǒng)_第4頁
人工智能綜合項(xiàng)目開發(fā)- 課件 項(xiàng)目四 口罩佩戴檢測防控系統(tǒng)_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

人工智能綜合項(xiàng)目開發(fā)項(xiàng)目四口罩佩戴檢測防控系統(tǒng)成都職業(yè)技術(shù)學(xué)院項(xiàng)目分析01任務(wù)一口罩檢測模型部署02任務(wù)二報(bào)警系統(tǒng)構(gòu)建03任務(wù)三防控安檢系統(tǒng)開發(fā)04項(xiàng)目四

口罩佩戴檢測防控系統(tǒng)項(xiàng)目分析1.學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)數(shù)學(xué)模型基本概念;

2.了解神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)基本原理;

3.了解嵌入式人工智能基本概念;

4.掌握嵌入式人工智能開發(fā)流程;實(shí)驗(yàn)內(nèi)容疫情防控安檢系統(tǒng)主要由口罩檢測、疫情防控報(bào)警、數(shù)據(jù)可視化功能構(gòu)成。實(shí)現(xiàn)整

個(gè)系統(tǒng)需要采集口罩佩戴數(shù)據(jù)集進(jìn)行數(shù)據(jù)標(biāo)注,然后搭建神經(jīng)網(wǎng)絡(luò)訓(xùn)練口罩檢測模型實(shí)

現(xiàn)人臉口罩佩戴檢測,再搭建嵌入式系統(tǒng)實(shí)現(xiàn)報(bào)警功能,最后綜合口罩檢測和報(bào)警系統(tǒng)

實(shí)現(xiàn)疫情防控安檢系統(tǒng)。實(shí)驗(yàn)原理項(xiàng)目背景及功能分析新型冠狀病毒來襲,武漢封城、各省、市均拉響了防御警報(bào),各項(xiàng)防疫工作如同上

緊發(fā)條般,爭分奪秒地啟動(dòng)。廣大民眾時(shí)刻通過手機(jī)密切關(guān)注疫情,通過直播日夜了解

火神山、雷神山醫(yī)院的建設(shè),各個(gè)平臺(tái)也都熱切討論口罩的科學(xué)戴法、洗手的注意事

項(xiàng)……可以說,全社會(huì)都繃了緊這根防疫的弦。當(dāng)前疫情還未完全消除隱患,病毒傳播

速度快,易爆發(fā),因此做好疫情防控檢測工作不容懈怠。新冠疫情的出現(xiàn),不僅威脅著人們的健康,也給社會(huì)生活帶來了沖擊與變化。對于

維護(hù)社會(huì)公共安全的安檢行業(yè),則受到更大的關(guān)注。安檢的焦點(diǎn),從之前單純的重視違

禁品,轉(zhuǎn)變?yōu)榧闪巳?、物、車安檢以及衛(wèi)生消毒、溫度測控、口罩佩戴檢測等事項(xiàng)。

尤其在車站、地鐵、景區(qū)、小區(qū)出入口等一些人群密集的場所,需檢測是否佩戴口罩,

體溫是否異常,還需兼顧安全通信效率。而現(xiàn)有測溫設(shè)備多為測試人員近身探測,安檢員也多為使用儀器手檢,極易誘發(fā)交叉感染。因此目前大多升級(jí)傳統(tǒng)安檢方式,比如在

車站利用無接觸測溫、人臉檢測、自動(dòng)口罩檢測等技術(shù)實(shí)現(xiàn)智能安檢防控,如圖

0-1

示:圖

0-1

車站疫情安檢防控示例疫情防控安檢系統(tǒng)利用人工智能技術(shù)、物聯(lián)網(wǎng)傳感器設(shè)備等高技術(shù)手段實(shí)現(xiàn)智能安

檢、疫情防控報(bào)警等智能疫情防控系統(tǒng)。該系統(tǒng)在傳統(tǒng)安檢的同時(shí),增加了人體體溫檢

查,適用于機(jī)場、鐵路、車站、海關(guān)等核心通道,以及學(xué)校、醫(yī)院、企業(yè)園區(qū)等室內(nèi)主要入口、大廳,設(shè)備可有效減輕人工檢查的繁重工序,降低人工檢查的失誤率。其主要

功能包括:1)無接觸式安檢系統(tǒng):行人在經(jīng)過安檢系統(tǒng)時(shí),通過紅外溫度傳感器自動(dòng)測量行人

體溫,出現(xiàn)異常時(shí)自動(dòng)報(bào)警。2)人臉檢測:人臉自動(dòng)檢測,有效排除非測溫目標(biāo)干擾;異常體溫報(bào)警結(jié)合人臉信

息,方便精準(zhǔn)跟蹤處置。3)口罩檢測:對檢測到的人臉進(jìn)行口罩佩戴檢測,當(dāng)視頻流中出現(xiàn)未戴口罩的人進(jìn)

行報(bào)警,提醒工作人員進(jìn)行干預(yù)。4)LCD

顯示:實(shí)時(shí)顯示口罩檢測圖像,以及口罩檢測結(jié)果。實(shí)現(xiàn)本次疫情防控安檢系統(tǒng)分為三個(gè)任務(wù),如圖

0

所示,任務(wù)一口罩檢測模型部署,

利用深度學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)算法實(shí)現(xiàn)人臉口罩檢測模型轉(zhuǎn)換及模型部署;任務(wù)二報(bào)警系統(tǒng)構(gòu)

建,主要實(shí)現(xiàn)報(bào)警功能;任務(wù)三疫情防控安檢系統(tǒng)開發(fā)主要實(shí)現(xiàn)整個(gè)系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)。圖

0

疫情防控安檢系統(tǒng)任務(wù)拆解任務(wù)一

口罩檢測模型部署本次實(shí)驗(yàn)主要是使用

TensorFlow

搭建

RFB-Net

模型訓(xùn)練標(biāo)記完成的口罩檢測數(shù)據(jù)集,

并將訓(xùn)練完成后的模型保存為

tflite

格式,最終部署在嵌入式硬件設(shè)備中實(shí)現(xiàn)人臉口罩

檢測任務(wù)。(1)數(shù)據(jù)集標(biāo)注在深度學(xué)習(xí)領(lǐng)域,訓(xùn)練數(shù)據(jù)對訓(xùn)練結(jié)果有種至關(guān)重要的影響,在計(jì)算機(jī)視覺領(lǐng)域,

除了公開的數(shù)據(jù)集之外,對很多應(yīng)用場景都需要專門的數(shù)據(jù)集做遷移學(xué)習(xí)或者端到端的

訓(xùn)練,這種情況需要大量的訓(xùn)練數(shù)據(jù),取得這些數(shù)據(jù)方法有:人工數(shù)據(jù)標(biāo)注、自動(dòng)數(shù)據(jù)

標(biāo)注、外包數(shù)據(jù)標(biāo)注。圖

4.0-1

數(shù)據(jù)集標(biāo)注軟件VoTT

是微軟發(fā)布的用于圖像目標(biāo)檢測的標(biāo)注工具,它是基于

javascript

開發(fā)的,因

此可以跨

Windows

Linux

平臺(tái)運(yùn)行,并且支持從圖片和視頻讀取。此外,其還提供了基

CNTK

訓(xùn)練的

faster-rcnn

模型進(jìn)行自動(dòng)標(biāo)注然后人工矯正的方式,這樣大大減輕了標(biāo)

注所需的工作量。本次口罩檢測項(xiàng)目訓(xùn)練模型時(shí),需要大量的已標(biāo)注的數(shù)據(jù)集進(jìn)行模型訓(xùn)練,這里對人臉口罩?jǐn)?shù)據(jù)集進(jìn)行標(biāo)注為兩類,即佩戴口罩和未佩戴口罩。(2)口罩檢測任務(wù)實(shí)現(xiàn)口罩檢測應(yīng)用案例主要分為如圖

4.0-2

所示的

5

個(gè)步驟。圖

4.0-2

口罩檢測應(yīng)用案例實(shí)現(xiàn)流程首先將對人臉口罩?jǐn)?shù)據(jù)集進(jìn)行標(biāo)注及格式轉(zhuǎn)換,然后搭建神經(jīng)網(wǎng)絡(luò)模型利用數(shù)據(jù)集

進(jìn)行模型訓(xùn)練,再將訓(xùn)練好的神經(jīng)網(wǎng)絡(luò)模型轉(zhuǎn)換成.tflite

格式,最后將模型部署到硬件

平臺(tái)上就可以實(shí)現(xiàn)人臉口罩檢測。1)人臉口罩?jǐn)?shù)據(jù)集標(biāo)注及預(yù)處理首先對人臉口罩?jǐn)?shù)據(jù)集進(jìn)行標(biāo)注,需要將標(biāo)注完成之后的數(shù)據(jù)集格式入出為

VOC

數(shù)據(jù)集格式,目前的深度學(xué)習(xí)很多框架都使用

VOC

數(shù)據(jù)集格式。VOC

數(shù)據(jù)集包含如下圖所

示幾個(gè)文件,

Annotations

存放

xml

格式的標(biāo)簽文件,每個(gè)

xml

對應(yīng)

JPEGImage

中的一張圖片;ImageSets

存放數(shù)據(jù)集圖像名稱;JPEGImages

存儲(chǔ)所有的圖片,其中包括訓(xùn)練

圖片,測試圖片,然后將數(shù)據(jù)集存儲(chǔ)為

TFrecord

文件。圖

4.0-3

VOC

數(shù)據(jù)集格式2)神經(jīng)網(wǎng)絡(luò)模型搭建根據(jù)

RFB-Net

的模型結(jié)構(gòu),使用

TensorFlow

完成

RFB-Net

網(wǎng)絡(luò)結(jié)構(gòu)的模型搭建。

3)神經(jīng)網(wǎng)絡(luò)模型訓(xùn)練配置好模型訓(xùn)練的超參數(shù)后,加載人臉口罩?jǐn)?shù)據(jù)集進(jìn)行模型訓(xùn)練。訓(xùn)練完成的模型

保存在./checkpoints/face_mask_model.h5

中。4)神經(jīng)網(wǎng)絡(luò)模型轉(zhuǎn)換使用

tf.lite

API

將模型文件轉(zhuǎn)換為

tflit

格式,參考代碼如下所示,加載模型文件

時(shí)要注意模型文件的路徑是否正確。import

tensorflow

as

tf#

加載模型model

=

tf.keras.models.load_model('./face_mask_model.h5',

compile=False)#

模型轉(zhuǎn)換converter

=

tf.lite.TFLiteConverter.from_keras_model(model)tflite_quant_model

=

converter.convert()open("face_mask_model.tflite",

"wb").write(tflite_quant_model)5)模型加載加載.tflite

模型實(shí)現(xiàn)口罩檢測,模型加載和推理參考代碼如下:#

加載

tflite

模型

,model_name:

模型名稱,model_path:

模型路徑class

TfliteRun:def

init

(self,

model_name="fruit_detection",

model_path=POSENET_MODEL):erpreter

=

tflite.Interpreter(model_path=model_path)

#

讀取模型self.interpreter.allocate_tensors()

self.model_name

=

model_name

#

獲取輸入層和輸出層維度#

分配張量self.input_details

=

erpreter.get_input_details()

self.output_details

=

erpreter.get_output_details()def

inference(self,

img):

self.interpreter.set_tensor(self.input_details[0]['index'],

img)

erpreter.invoke()

#

模型推理output_data1

=

erpreter.get_tensor(self.output_details[0]['index'])

#

獲取輸出層數(shù)據(jù)

return

output_data16)結(jié)果繪制根據(jù)口罩檢測模型返回值,包括人臉口罩位置,人臉口罩檢測類別,置信度。根據(jù)返回結(jié)果進(jìn)行繪制,返回繪制好的人臉口罩檢測圖像。def

recImgDis(img,

predictions):if

predictions:boxes,

classes,

scores

=

predictionsfor

prior_index

in

range(len(classes)):img

=

showImageZH(img,

boxes,

classes,

scores,cfg["cam_height"],

cfg["cam_width"],prior_index,

cfg['labels_list'])return

img7)模型部署將訓(xùn)練好的模型程序拷貝至嵌入式硬件平臺(tái)中,并在硬件平臺(tái)上搭建好程序運(yùn)行環(huán)境,即可在終端運(yùn)行程序進(jìn)行人臉口罩檢測。任務(wù)二

報(bào)警系統(tǒng)構(gòu)建(1)系統(tǒng)概述疫情防控報(bào)警系統(tǒng)通過獲取口罩檢測結(jié)果,如果發(fā)現(xiàn)未佩戴口罩,則通過串口立即

向智能節(jié)點(diǎn)核心控制板發(fā)送控制指令,發(fā)出報(bào)警聲;當(dāng)紅外測溫傳感器檢測到體溫超過

37℃,同樣發(fā)出警報(bào)。任務(wù)三

防控安檢系統(tǒng)開發(fā)(1)防控安檢系統(tǒng)開發(fā)概述防控安檢系統(tǒng)主要利用人工智能算法和嵌入式硬件設(shè)備實(shí)現(xiàn)人臉口罩檢測,無結(jié)果

分析預(yù)警等功能,輔助疫情防控工作人員實(shí)現(xiàn)自動(dòng)化、智能化、數(shù)字化疫情防控工作。結(jié)合口罩檢測系統(tǒng)和報(bào)警系統(tǒng)實(shí)現(xiàn)整個(gè)疫情防控安檢系統(tǒng),首先利用攝像頭采集人

臉圖像,利用神經(jīng)網(wǎng)絡(luò)模型實(shí)現(xiàn)人臉口罩檢測,檢測是否佩戴口罩;然后通過口罩檢測

結(jié)果控制蜂鳴器進(jìn)行預(yù)警。實(shí)現(xiàn)疫情防控安檢系統(tǒng)開發(fā)分別實(shí)現(xiàn)圖像獲取插件、模型推理插件、嵌入式數(shù)據(jù)交

互插件。如圖

4.6

所示,其中圖像獲取插件主要實(shí)現(xiàn)攝像頭獲取,圖像消息隊(duì)列傳遞及圖像識(shí)別結(jié)果可視化等功能;模型推理插件主要實(shí)現(xiàn)圖像數(shù)據(jù)預(yù)處理,口罩檢測模型推

理,解析口罩檢測識(shí)別結(jié)果啟動(dòng)報(bào)警裝置,以及傳遞口罩檢測結(jié)果。嵌入式數(shù)據(jù)交互插

件主要實(shí)現(xiàn)根據(jù)口罩檢測結(jié)果觸發(fā)報(bào)警系統(tǒng)進(jìn)行報(bào)警。圖

4.6

防控安檢系統(tǒng)開發(fā)功能插件(2)口罩檢測功能插件構(gòu)建在項(xiàng)目開發(fā)中實(shí)現(xiàn)口罩檢測模型功能插件主要目的是實(shí)現(xiàn)輸入人臉圖像,然后根據(jù)

人臉口罩檢測模型輸出檢測結(jié)果。模型推理過程詳見任務(wù)一口罩檢測模型部署。1)人臉口罩圖像獲取插件實(shí)現(xiàn)。打開攝像頭獲取人臉口罩圖像,將圖像傳遞到待檢測消息隊(duì)列。從人臉口罩檢測模

型推理結(jié)果消息隊(duì)列獲取檢測結(jié)果,并調(diào)用結(jié)果繪制函數(shù)將檢測結(jié)果繪制到原圖像中。class

VideoThread(threading.Thread):def

init

(self,

camera="0",

q_flask:Queue=None,

q_img:Queue=None,

q_rec:Queue=None):threading.Thread.

init

(self)self.cap

=

setCamera(camera)

#

網(wǎng)絡(luò)攝像頭def

run(self):

face_mask_pricet

=

[]

while

True:if

self.cap

!=

"":ret,

frame

=

self.cap.read()

#

打開攝像頭,獲取人臉口罩圖像幀

frame

=

cv2.resize(frame,

(ai_cfg["cam_width"],

ai_cfg["cam_height"]))

if

not

self.q_img.full()

and

not

frame

is

None:self.q_flask

=

q_flask

self.q_img

=

q_img

self.q_rec

=

q_rec#

消息隊(duì)列傳遞#

消息隊(duì)列傳遞

原始圖像到識(shí)別插件#

消息隊(duì)列傳遞

AI

模型的推理結(jié)果self.q_img.put(bytearray(frame))

#

原始圖像傳遞if

not

self.q_rec.empty():face_mask_pricet

=

self.q_rec.get()

#

獲取人臉口罩檢測結(jié)果frame

=

recImgDis(frame,

face_mask_pricet)

#

結(jié)果繪制#

傳遞圖像if

not

self.q_flask.full()

and

not

frame

is

None:self.q_flask.put(bytearray(frame))2)人臉口罩檢測模型推理插件實(shí)現(xiàn)獲取待檢測的人臉口罩圖像,調(diào)用口罩檢測模型進(jìn)行推理,返回人臉口罩位置、類別、置信度,并將返回結(jié)果傳入模型推理結(jié)果消息隊(duì)列。class

FaceMaskRecThread(threading.Thread):def

init

(self,

q_img:Queue=None,

q_rec:Queue=None,

model_path=cfg["model_path"]):threading.T

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論