章兆豐,周籮魚
(長江大學 電子信息學院,湖北荊州,434023)
基于智慧教育、智慧校園的理念和未來發展趨勢,可以預見實驗室作為實踐育人的重要場所,是將來需要提高信息化、數字化、智能化水平的重要場景。在人工智能、大數據、物聯網、數字孿生等技術蓬勃發展,并持續引領驅動各行業領域向著智能化目標穩步推進的背景下,將這些技術應用于實驗室場景成為當前的研究熱點[1~3]。
本文以實驗室為場景,提出了一種基于深度學習的實驗室學生行為檢測方法,通過建立學生實驗室行為數據集,訓練生成基于目標檢測算法YOLOv5 的實驗室行為檢測模型,并以此為基礎,結合數字孿生技術,構建了一套實驗室數字孿生智能監控系統。該系統可以實現對實驗室學生行為的實時智能檢測,并可通過三維數字化模型對行為檢測結果進行直觀的可視化表達;另外,系統生成的歷史行為數據可用于學生實驗行為狀態的分析、教學質量評估、實驗教學過程的優化以及提高實驗室管理水平和實驗室資源利用率。
本文首先采集實驗室監控數據,并定義實驗行為類別,考慮到行為的一般性,本文定義三種實驗室行為(正常實驗行為,玩手機行為,睡覺行為)。在此基礎之上,對采集到的大量監控數據進行篩選和截取,并對選取到的實驗室行為圖像進行標注,生成實驗室行為數據集。共有524 張圖像輸入到網絡中學習。
實驗采用深度學習框架PyTorch 進行搭建,操作平臺為Windows 10。具體配置如表1 所示。

表1 訓練平臺配置
為了評估算法效果,采用精確率(Precision)、召回率(Recall)、平均精度均值(mAP)來評估訓練結果。模型采用YOLOV5 檢測模型[4]。該模型相比以前的版本,有一些關鍵改進,提高了檢測的性能。
(1)馬賽克數據增強。YOLOv5 采用了馬賽克數據增強來豐富數據集。這種數據增強方式是把4 張圖片通過隨機縮放、隨機裁減、隨機排布的方式進行拼接。這種方法可以很好地豐富數據集,并且豐富了檢測物體的背景和小目標。
(2)Focus 結構。YOLOv5 引入了一種Foucs 結構在進入主干網絡之前對圖像進行切片操作,Focus 結構的引入使得在下采樣的過程中保持圖像的信息。
(3)CSP 結構。CSPnet 在[14]中被提出。它能夠有效解決卷積神經網絡主干中的梯度信息重復問題,并將梯度變化從頭到尾融入特征圖中。CSP 結構的引入不僅降低了計算量,還提高了精度。在YOLOv5 中,設計了兩種不同的CSP 結構被分別應用于主干網絡BackBone 和特征增強Neck 中。
(4)PAN 結構。YOLOv5 借鑒了PANet[15],在特征增強Neck 模塊中采用了FPN+PAN 結構,FPN 從上往下傳遞特征,PAN 則從下往上傳遞特征。這種組合結構主要提高了特征提取的能力。
實驗訓練參數設置如下:輸入的圖像像素為640×640,初始學習率為0.01,權重衰減正則系數為0.0005,最大迭代次數設置為300。模型的精確率、召回率以及平均精度均值如圖1 所示。可以看到,當迭代次數大約達到100 次時,各指標數值趨近于1。最終Precision 為0.919,Recall 為0.887,mAP@0.5 為0.932。實驗結果表明,該模型能夠很好地適應實驗室行為數據集的數據特征,其精確率和召回率都能夠滿足本文應用需求。此外,每幀圖像的平均檢測時間為30ms,也可以滿足本文實時檢測的需求。

圖1 訓練結果
目前,數字孿生技術在工業領域已經有一些嘗試應用,陶飛等人提出了數字孿生車間的概念并闡述了其系統組成和實現方法[5]。同時針對數字孿生車間的信息物理融合進行了系統性的理論解釋并給出了框架設計[6]。王尚剛等人提出了一種數字孿生智慧燃氣系統[7],將數字孿生與燃氣運營中各種復雜對象、場景相結合,以實現數據一體化;并基于一些實踐工作,證明了其數字孿生系統的可行性。然而,教育領域的實際應用還較少,大部分的相關研究仍處于理論探索階段[8-9]。基于此,本文開展了實驗室數字孿生智能監控系統的設計及開發,以推動實驗室的智能化建設。
本文的數字孿生系統設計如圖2 所示,分為物理層、感知層、數據分析層、數據中轉層、驅動及應用層、數據傳輸層。

圖2 實驗室數字孿生監控系統設計
(1)物理層。客觀存在的物理實體,孿生的目標對象。本設計中指真實世界實驗室場景以及實驗室學生。
(2)感知層。采集物理實體實時數據的各種傳感器或設備。本設計由實驗室內監控攝像頭采集實時圖像數據。
(3)數據分析層。數據分析層負責對感知層采集到的數據進行解析和處理以獲取主要孿生數據。孿生數據是數字孿生系統的核心驅動,而要實現虛擬世界對物理層的映射,需要合適的孿生數據作為基礎。本設計中,監控攝像頭采集到的視頻數據無法直接作為系統的孿生數據使用,這里由本地服務器作為處理中心,接收攝像頭采集到的視頻數據,并通過算法對接收到的視頻數據進行相應的處理,算法處理主要分為兩個方面:一方面是使用目標檢測算法YOLOv5 實現實驗室人員的實驗室行為檢測,輸出目標框和對應的行為類別;另一方面是將目標檢測算法的輸出進行有效性篩選以及完成虛實的定位映射。最終圖像數據在該層被處理為Json 數據傳輸到數據中轉層,這里的Json數據就是該數字孿生系統的主要孿生數據,主要包括實驗室人員的位置信息和對應的行為狀態等信息。
(4)數據中轉層。負責數據的管理、存儲、共享。本設計采用云服務器作為數據中轉站,以實現廣域網的數據傳輸,并可基于云服務器部署Web 端。在云服務器的數據庫上存儲的數據,一部分是作為實時數據傳輸到客戶端,另一部分則作為持久化數據以供歷史查詢或統計分析。
(5)驅動及應用層。驅動及應用層是數字孿生系統的具體體現和最終目的,用戶通過其與系統進行交互,獲取信息。該層需構建三維可視化虛擬場景,通過孿生數據驅動虛擬模型,完成數據的實時映射和可視化。
(6)數據傳輸層。指基于有線網以及無線網的網絡通信,包括通信協議,數據傳輸層分布于各層之間,將各層連接為一個有機的整體。本設計采用的TCP/IP 協議。另外,網絡傳輸的數據除了監控攝像頭到本地服務器局域網傳輸的數據為視頻數據以外,其余廣域網中傳輸的數據皆為輕量的Json 數據。
虛擬場景需要盡量還原物理層,且重點在于體現出物理層的主要特征,在本文中,主要特征包括實驗室場景環境的靜態特征和實驗室學生行為的動態特征。本文以Unity 引擎為核心實現數字孿生虛擬場景的搭建。Unity 是一個2D/3D引擎和框架,提供設計2D、3D 應用場景的系統,且具有十分豐富和強大的功能,所以非常適合用于搭建虛擬世界。
2.2.1 虛擬模型三維建模、動畫、貼圖
虛擬模型是數字孿生的核心部分,是虛擬場景可視化的基礎。本文主要采用三維建模軟件3dsmax 進行實驗室場景中環境、各種物品和實驗室學生的虛擬模型的建模,并根據本文定義的實驗室行為類別進行相關人物模型行為動畫的制作,實現人物行為動態特征的可視化表達。另采用Substance Painter、PS 等軟件進行模型貼圖相關操作,賦予模型紋理及材質,以提升模型的觀感。
2.2.2 UI 界面制作
在虛擬場景中除了要顯示實驗室本身的場景,還需要有UI界面提供用戶友好便捷的交互功能和數據可視化面板等。本文主要使用Unity 引擎自帶的UGUI 系統制作UI 界面。
2.2.3 腳本編寫
在Unity 中主要使用C#語言編寫腳本來進行應用開發,如響應用戶輸入、控制虛擬世界中發生的事件和對象行為。本文中腳本需要實現的功能主要有三個部分,一是實現應用通信功能以獲取孿生數據;二是編寫虛擬模型控制腳本,根據獲取的孿生數據控制和驅動虛擬人物模型行為動畫;最后是UI 界面數據顯示和交互式控件邏輯控制腳本。
2.2.4 基于Unity 整合
最終需要在Unity 引擎上將上述所有虛擬模型、動畫、腳本等進行整合,從而請求、接收數據、驅動虛擬模型,完成真實數據與虛擬模型的虛實融合,實現物理層面到虛擬層面的實時映射。
在Unity 上開發完成的項目,可以發布到多種平臺作為客戶端,如安卓、Windows、Web端等主流平臺。現以Windows 平臺的客戶端為例,介紹和展示該系統的客戶端。
圖3 為實際整體測試中客戶端虛擬場景畫面與本地服務器端正在處理的視頻監控畫面的對照。測試結果表明,虛擬模型行為狀態與實驗人員行為狀態基本同步,且本地服務器端的處理速度能達到45ms每幀左右,滿足實時性要求。

圖3 測試及對照效果展示
圖4 為數據統計界面。實驗數據表明,用戶可以通過該系統查詢某一天各種行為狀態在不同時間段內的占比以及當天的實驗室設備使用率,滿足現場應用需求。

圖4 客戶端界面—數據統計界面
本文首先以實現實驗室監控智能化為出發點,基于深度學習算法提出了一種實驗室行為檢測方法,并經過實驗表明了構建的檢測算法模型能夠在監控下對定義的學生實驗行為進行實時、準確的識別,基本實現對實驗室行為的智能監控。另外,結合數字孿生技術設計并實現了一種實驗室數字孿生智能監控系統,為此搭建了本地服務器和云服務器用于系統數據的分析、存儲、共享;基于Unity 搭建了實驗室三維數字化空間實現了虛實映射。系統測試結果表明,該系統的交互性、實時性、虛實同步性以及可視化效果基本達到了預期效果。
該實驗室數字孿生智能監控系統,不僅能夠對實驗室學生行為進行有效的智能監測,還可以在保護個人隱私和不需要終端接收大量視頻數據的條件下,仍然通過系統客戶端實時直觀地反映實驗室學生狀態和實驗室資源利用情況。此外,該系統還可為用戶提供歷史數據,以用于學生實驗行為的分析、實驗教學過程的優化、教學質量評估等。綜上,該系統可用于提高實驗室教學和管理水平,大量減少人力消耗,進而推動實驗室的智能化管理和教學。