邵欣桐 劉省賢
第一作者簡介:邵欣桐(1985-),男,碩士,副教授。研究方向為飛行器狀態(tài)監(jiān)控與故障診斷。
DOI:10.19981/j.CN23-1581/G3.2024.16.012
摘? 要:飛機維修人員的施工現(xiàn)場是整個機場運行環(huán)境的重要組成,需要在施工作業(yè)過程中監(jiān)管維修人員是否遵守安全生產(chǎn)規(guī)定,其中最為重要的一點就是檢查維修人員的著裝是否符合生產(chǎn)規(guī)范;對進入機艙重點區(qū)域的維修人員著裝提出更高的要求,傳統(tǒng)人工的安全監(jiān)管需要人工監(jiān)控施工現(xiàn)場,但由于維修現(xiàn)場數(shù)量眾多,人工巡檢缺少實時性,造成違規(guī)現(xiàn)象不能得到及時糾正,難以實現(xiàn)有效監(jiān)管。該文根據(jù)應(yīng)用場景特點,提出一種基于OpenVINO平臺的智能機務(wù)人員著裝檢測方法,可以實時對維修人員的著裝要求進行分析和識別,對不符合安全規(guī)范的著裝情況及時警告;在樣本的訓(xùn)練中,使用最新迭代的YOLOv8算法對現(xiàn)有的模型進行機器學(xué)習(xí),能夠快速準確地發(fā)現(xiàn)飛機維修現(xiàn)場出現(xiàn)的不規(guī)范穿戴的相關(guān)問題。
關(guān)鍵詞:OpenVINO;機務(wù)維修;YOLOv8;著裝檢測;智能穿戴
中圖分類號:TP391.4? ? ? 文獻標志碼:A? ? ? ? ? 文章編號:2095-2945(2024)16-0054-04
Abstract: The construction site of aircraft maintenance personnel is an important part of the operating environment of the whole airport. Therefore, it is necessary to supervise whether the maintenance personnel comply with the safety production regulations in the course of construction operation. The most important point is to check whether the clothes of the maintenance personnel are in line with the production dress code. We have higher requirements for the dress of maintenance personnel entering key areas of the engine room. Traditional manual safety supervision requires manual monitoring of the construction site, but due to the large number of maintenance sites and the lack of real-time manual inspection, the violations can not be corrected in time, and it is difficult to achieve effective supervision. According to the characteristics of the application scene, this paper puts forward a check method for wearable smart devicesof maintenance personnel based on OpenVINO platform, which can analyze and identify the dress of maintenance personnel in real time, and warn against the dress situation that does not conform to the safety code in time. In the sample training, the latest iterative YOLOv8 algorithm is used for machine learning of the existing model, which can quickly and accurately find the problems related to irregular wear in the aircraft maintenance site.
Keywords: OpenVINO; locomotive maintenance; YOLOv8; dresscheck; wearable smart device
飛機維修人員的著裝正確與否是進入維修區(qū)域的重要前提,總結(jié)以往維修事故案例中,維修人員在維護過程受到意外傷害的原因多集中于:未按施工要求佩戴安全帽、進入特定區(qū)域未佩戴護目鏡、未穿著反光背心等;針對可能會對人身造成潛在危害的區(qū)域,更是對機務(wù)人員的規(guī)范穿戴提出了更高的要求,比如進入飛機油箱區(qū)域需要穿防護服裝,佩戴全面式口罩;進入飛機電子設(shè)備艙需要佩戴防靜電手環(huán)等。傳統(tǒng)的安全監(jiān)管往往需要人工進行現(xiàn)場巡檢,難以做到全面的、實時的監(jiān)督,這就造成一些維修人員在進行作業(yè)時存在僥幸心理,從而造成重大安全事故?;谝陨锨闆r,可以發(fā)現(xiàn)機器視覺非常適合引入到飛機維修區(qū)域的安全著裝檢測中,一方面可以動態(tài)地、實時地監(jiān)測維修人員工作過程中是否存在不規(guī)范的穿戴行為;另一方面可以減少大量的人員巡檢時間,尤其是在一些空間有限、進入困難的機上區(qū)域,使得監(jiān)管效率大大提升,降低安全事故發(fā)生的可能。因此設(shè)計一套系統(tǒng),通過手持式攝像頭進行圖像的實時采集,傳遞到電腦端;通過Intel提供的OpenVINO平臺對施工現(xiàn)場人員異常穿戴進行智能識別和診斷,及時予以提醒和警告。
1? 系統(tǒng)平臺的搭建
機器視覺是人工智能正在快速發(fā)展的一個分支,簡單說來,就是用機器代替人眼對具體的物體作出測量和判斷。機器視覺系統(tǒng)是通過機器視覺產(chǎn)品將被攝取目標轉(zhuǎn)換成圖像信號,傳送給專用的圖像處理系統(tǒng),得到被攝目標的形態(tài)信息,根據(jù)像素分布和亮度、顏色等信息,轉(zhuǎn)換成數(shù)字化信號;圖像系統(tǒng)對這些信號進行各種運算來抽取目標的特征,進而根據(jù)判別的結(jié)果來控制現(xiàn)場的設(shè)備動作。
由于本系統(tǒng)基于RaspberryPi平臺開發(fā),故視頻采集設(shè)備選擇和平臺相搭配的RaspberryPi Camera Module 3相機模塊,基于索尼IMX708 CMOS圖像傳感器,提供自動對焦、HDR拍攝功能。Camera Module 3兼容帶CSI連接器的樹莓派主機,可滿足更大尺寸的CIS,更高像素、更大光圈的拍攝需求。
目前機器視覺的平臺主要有NVIDIA VisionWorks、Rekognition、OpenVINO等,基于考慮硬件成本及平臺接口操作難易,選擇OpenVINO作為計算機視覺的開發(fā)包完成采集圖像的處理工作[1],其對系統(tǒng)平臺的要求相比于其他計算機視覺工具包來說較低;由于對維修現(xiàn)場的檢測需要一定的實效性,需要及時發(fā)現(xiàn)異常穿戴行為,因此本次選取最新版本的YOLOv8作為目標檢測模型,為了讓算法快速高效地識別不同的穿戴物品,并能夠運行在諸如樹莓派之類的小型系統(tǒng)上,添加INTEL的NCS2第二代神經(jīng)棒加速樹莓派的YOLOv8進行推理(圖1)。
圖1? NCS2加速樹莓派進行推理
2? 基于OpenVINO的目標檢測模型研究
2.1? YOLOv8介紹
YOLO是一種基于圖像全局信息進行預(yù)測的目標檢測系統(tǒng)。自2015年Joseph Redmon、Ali Farhadi等提出初代模型以來,領(lǐng)域內(nèi)的研究者已經(jīng)對YOLO進行了多次更新迭代,模型性能越來越強大。相比于前幾個版本,YOLOv8模型更快、更準確,同時為訓(xùn)練模型提供統(tǒng)一框架,以用來執(zhí)行目標檢測、實例分割、圖像分類的基本任務(wù)。
YOLOv8目標檢測模型在兼具速度與精度的同時,模型體積輕便,適合部署到嵌入式設(shè)備。YOLOv8目標檢測模型是基于卷積神經(jīng)網(wǎng)絡(luò)實現(xiàn)的深度學(xué)習(xí)網(wǎng)絡(luò),主要由Backbone、Neck、Head 三部分組成。Backbone結(jié)構(gòu)為跨階段局部網(wǎng)(CSPnet),由5個CSP模塊組成,共包括72層卷積核,為3×3的卷積層,用于提取特征。CSP模塊將特征劃分為2部分,再通過跨階段層次結(jié)構(gòu)將其合并,保證了準確率的同時減少了計算量,將608×608×3的圖像輸入,經(jīng)過5個CSP模塊后會輸出19×19的特征圖,如圖2所示。
圖2? Backbone結(jié)構(gòu)特征圖變化過程
Neck結(jié)構(gòu)為路徑聚合網(wǎng)絡(luò)(PANET),主要用于生成特征金字塔,特征金字塔可以使模型識別不同尺度的對象,從而對同一對象進行多尺度識別,Neck結(jié)構(gòu)在采用FPN結(jié)構(gòu)的基礎(chǔ)上添加了PAN結(jié)構(gòu),PAN結(jié)構(gòu)使得Neck結(jié)構(gòu)的特征金字塔自底向上生成,如圖3 所示。輸出76×76特征圖深度、38×38特征圖深度、19×19特征圖深度3個特征圖,特征圖深度公式為3×(5+C),其中5由預(yù)測框的寬度、高度、中心點橫縱坐標和網(wǎng)格置信度決定,C為識別類別個數(shù),因為探測的對象只有1個類別,所以將輸出76×76×18、38×38×18、19×19×18大小的3個特征圖。
圖3? Neck結(jié)構(gòu)特征金字塔
YOLOv8通用檢測層用于最終檢測,對被檢測到的對象進行描框并顯示概率。YOLOv8目標檢測模型采用GIOU_Loss作為損失函數(shù),其公式見式(1),A為預(yù)測框,B為真實框, C為包含預(yù)測框A與真實框B的最小區(qū)域,IIOU為預(yù)測框A與真實框B的交并比,見式(2),GIOU_Loss損失函數(shù)使得預(yù)測框的描繪速度和精度一定程度的提高。
YOLOv8目標檢測模型使用Sigmoid函數(shù)作為網(wǎng)絡(luò)的激活函數(shù),Leaky ReLU 函數(shù)的公式見式(3),Sigmoid函數(shù)的公式見式(4),LeakyReLU函數(shù)的使用可以解決深度學(xué)習(xí)網(wǎng)絡(luò)當中梯度消失的問題,且可以加快收斂速度。
, (3)
2.2? YOLOv8的數(shù)據(jù)采集
在進行訓(xùn)練之前,必須進行服裝和佩戴物品的圖片數(shù)據(jù)采集,采集圖片的質(zhì)量會顯著地影響訓(xùn)練結(jié)果,從而導(dǎo)致最終使用時的識別速度與精度。通過實地到航空公司維修間走訪,獲取信息,利用手機進行多角度不同方位對不同服裝和佩戴物拍攝采集數(shù)據(jù),便于機器學(xué)習(xí),數(shù)據(jù)采集的多樣化、共性化可以提高后續(xù)識別精度,所以在采集數(shù)據(jù)過程中要注意訓(xùn)練樣本的數(shù)量和品質(zhì)。
深度學(xué)習(xí)模型輸入圖片的尺寸為正方形,而數(shù)據(jù)集中的圖片一般為長方形,通過resize會使得圖片失真,采用letterbox可以較好地解決這個問題,該方法可以保持圖片的長寬比例,剩下的部分采用灰色填充(圖4)。
2.3? 基于YOLOv8完成樣本模型的訓(xùn)練
YOLOv8模型訓(xùn)練可以分成以下幾個步驟。
1)獲取YOLOv8網(wǎng)絡(luò)輸出。
det=model.module.model[-1]
ifis_parallel(model)else model.model[-1]//加
載訓(xùn)練的圖片庫
2)對所有的文件數(shù)據(jù)集進行遍歷, 對所有的圖片文件進行解析和轉(zhuǎn)化,將其對應(yīng)的bundingbox及類別的信息全部解析寫到label文件中去, 最后再通過直接讀取文件,就能找到對應(yīng)的label信息。
image_ids =open('./data/ImageSets/%s.txt' %
(image_set)).read().strip().split()
list_file = open(txt_name, 'w')
for image_id in image_ids:
list_file.write('data/images/%s%s\n' %
(image_id, style))
convert_annotation(image_id)
3)使用選擇softmax及adam優(yōu)化器計算隱層特征和真實label的差距,并更新數(shù)據(jù)。
self.fc8 = fc(dropout7, 4096,
self.NUM_CLASSES, relu=False,
name='fc8')//最后softmax函數(shù)輸出的分類標簽
def predict(data, model_path,
labels_dictest_result, , sample_num=None): //
加載模型,對測試數(shù)據(jù)進行分類
2.4? OpenVINO的部署
新建一個虛擬環(huán)境,激活后安裝OpenVINO使用pip為虛擬環(huán)境導(dǎo)入所有所需庫,在此期間由于所需庫數(shù)量龐大,因此會導(dǎo)致一部分起沖突,需要找到合適的版本來導(dǎo)入,完成后配置OpenVINO中的OpenCV,而后將官方的pytorch的權(quán)重轉(zhuǎn)換為ONNX模型,再將ONNX模型轉(zhuǎn)換為IR模型,成功后,生成xml和bin文件(圖5)。
2.5? 樹莓派部署
1)拷貝IR模型到樹莓派,使用樹莓派3B板做推理工作。代碼和權(quán)重放:\\mxlw7svrvbx\mxlinput\yuzeyang\YOLO_V5+樹莓派\,文件夾內(nèi)有2個壓縮包,分別針對coco數(shù)據(jù)集和mooc數(shù)據(jù)集。
2)ji_RPI.py單張圖片測試推理初讀,插上加速棒,在裝有openvino2020R4的樹莓派上運行。
3)ji2_RPI.py攝像頭推理演示程序,插上加速棒、攝像頭,在裝有OpenVINO的樹莓派上運行。
3? 基于YOLOv8的智能著裝檢測系統(tǒng)的實現(xiàn)
本系統(tǒng)的實現(xiàn)過程如下:①建立人員著裝和佩戴物的圖片庫,將實際工作場景進行分類,分別錄入穿戴要求,目前系統(tǒng)已錄入9個常見的工作場景。②將圖像攝入系統(tǒng)置于需要檢測的區(qū)域。③使用已經(jīng)建立的樣本模型對現(xiàn)場人員進行服裝和佩戴物的識別。④對發(fā)現(xiàn)的異常行為進行警告提示,并以圖片的形式記錄在不安全施工手冊中。
3.1? 系統(tǒng)對工作區(qū)域不規(guī)范穿戴情況的識別
系統(tǒng)通過嵌入式攝像機對進入工作區(qū)域的人員進行服裝的識別,讀取現(xiàn)場區(qū)域的人員服飾信息,與已經(jīng)錄入的信息完成比對,對于異常穿戴進行實時警告,在顯示端將異常穿戴進行標記。
圖6為對維修區(qū)域發(fā)現(xiàn)的不規(guī)范穿戴行為進行識別。
3.2? 系統(tǒng)針對異常穿戴行為給予記錄
系統(tǒng)對不規(guī)范穿戴行為進行識別,給予提醒和警告并記錄在維修施工手冊中,系統(tǒng)界面如圖7所示。
圖5? OpenVINO部署流程
圖6? 對反光背心穿戴識別
圖7? 智能穿戴檢測系統(tǒng)
4? 結(jié)論
本文利用YOLOv8算法訓(xùn)練神經(jīng)網(wǎng)絡(luò)模型,研究基于YOLOv8算法的智能著裝檢測系統(tǒng),相比于傳統(tǒng)的人工巡檢方法,節(jié)省了較多的人工成本,提高了施工現(xiàn)場監(jiān)督的效率和實效性。此外本系統(tǒng)可以在樹莓派上用神經(jīng)棒二代進行加速檢測,使得檢測效率大大提升,取得較為滿意的識別效果。
參考文獻:
[1] 英特爾工具包OpenVINO為創(chuàng)新智能視覺提供更多可能[J].中國信息化,2018(8):51.
[2] 姚群力,胡顯,雷宏.深度卷積神經(jīng)網(wǎng)絡(luò)在目標檢測中的研究進展[J].計算機工程與應(yīng)用,2018,54(17):1-9.
[3] 邵欣桐,劉省賢.基于機器視覺的飛機輪胎檢查技術(shù)研究[J].科學(xué)技術(shù)創(chuàng)新,2020(35):18-20.
[4] ENZWEILER M,GAVRILA D M. Monocular pedestrian detectionsurvey andexperiments[J].IEEE TPAMI,2009,31(12):2179-2195.
[5] 閔鵬升.基于圖像識別的課堂效率監(jiān)測技術(shù)設(shè)想[J].中國新通信,2019(18):180-181.
[6] 董進華,鄭力新.基于OpenVINO加速CNN分類[J].科技視界,2019(29):78-79.