范鵬生,吳貴軍,陳浩辰
(重慶科技學(xué)院智能技術(shù)與工程學(xué)院,重慶 401331)
隨著中國(guó)逐漸步入老齡化社會(huì),留守老人單獨(dú)居家的安全成了廣泛討論的話題。 老人若在居家過程中因不慎跌倒昏迷,而未被人及時(shí)發(fā)現(xiàn),不但錯(cuò)過了搶救時(shí)間的最佳時(shí)機(jī),也直接威脅著老人的安全問題。 因此,提出一種能夠?qū)嶋H落地的跌倒檢測(cè)算法具有現(xiàn)實(shí)意義。 當(dāng)下檢測(cè)跌倒的算法主要分為兩種:一種為硬件類型檢測(cè)方式,主要通過外部設(shè)備,如佩戴傳感器來檢測(cè)人體數(shù)據(jù),再通過傳統(tǒng)算法對(duì)數(shù)據(jù)進(jìn)行分析檢測(cè)。另一種為運(yùn)用機(jī)器視覺的方法對(duì)視頻或圖像進(jìn)行特征的提取,再通過深度學(xué)習(xí)算法對(duì)特征進(jìn)行分類識(shí)別。硬件方式的應(yīng)用場(chǎng)景少,硬件帶來的成本高。 而機(jī)器視覺方法精度不高,且模型數(shù)據(jù)量大,多數(shù)無法實(shí)際落地。 因此,本研究采取了輕量化的Openpose+輕量化分類網(wǎng)絡(luò)MobileNet 針對(duì)跌倒進(jìn)行識(shí)別,在精度不降低太多的情況下,降低模型容量,以便于后續(xù)的硬件開發(fā)移植。
輕量級(jí) OpenPose(Lightweight OpenPose)是 Intel公司基于卡耐基梅隆大學(xué)發(fā)布的開源項(xiàng)目 OpenPose[1]框架進(jìn)行的改進(jìn)。 Openpose 主要采用 PAF (Part Affinity Fieilds)來進(jìn)行自下而上的人體姿態(tài)估計(jì)。 首先檢測(cè)出人關(guān)鍵點(diǎn)的位置,通過預(yù)測(cè)人體關(guān)鍵點(diǎn)的heatmap 得到檢測(cè)結(jié)果,這樣就可以看到每個(gè)人體關(guān)鍵點(diǎn)上都有一個(gè)高斯的峰值,代表網(wǎng)絡(luò)預(yù)測(cè)出這里是一個(gè)人體的關(guān)鍵點(diǎn),同樣對(duì)其他所有人的關(guān)鍵點(diǎn)進(jìn)行預(yù)測(cè),在得到檢測(cè)結(jié)果之后,對(duì)關(guān)鍵點(diǎn)加測(cè)結(jié)果進(jìn)行連接,最終生成骨骼圖像。 其原理如圖1 所示。
圖1 Openpose 骨骼識(shí)別流程
輕量級(jí)Openpose 針對(duì)初始模型進(jìn)行以下更改:
(1) 特征 提取方 面: Backone 由 VGG19 改 用mobilev1。 有效減少訓(xùn)練過程中生成的參數(shù)量,僅為原始OpenPose 參數(shù)量的15%,減輕了程序運(yùn)行時(shí)加載網(wǎng)絡(luò)參數(shù)的資源損耗,從而提升了檢測(cè)的速度。
(2)關(guān)節(jié)點(diǎn)預(yù)測(cè)方面:把生成keypoints 和PAFs 的兩個(gè)卷積網(wǎng)絡(luò)合并成一個(gè)。
(3)細(xì)化階段:把 7×7 的卷積換成 3×3 和 1×1 的卷積塊,并減少迭代次數(shù)。
當(dāng)前,主流的模型精度逐漸提高,但是模型量也隨著提高,在實(shí)際應(yīng)用場(chǎng)景或者嵌入式設(shè)備中難以應(yīng)用。針對(duì)跌倒場(chǎng)景需求延遲低、響應(yīng)快、需求快的特點(diǎn),復(fù)雜的模型難以勝任。 因此, 選擇較為輕量化的MobileNet 網(wǎng)絡(luò)對(duì)提取的骨骼圖像進(jìn)行分類操作。MobileNet[2]模型的構(gòu)成基本單元為深度可分離卷積,主要通過針對(duì)不同輸入通道分別卷積,后者再將前面分離卷積的輸出進(jìn)行再結(jié)合,以達(dá)到減少模型計(jì)算量和參數(shù)量的目標(biāo)。 圖2 為MobileNet 網(wǎng)絡(luò)深度分離卷積流程。
圖2 分離卷積流程
本算法過程區(qū)別于傳統(tǒng)的骨骼算法識(shí)別,采用分類的依據(jù)是人體骨骼姿態(tài)的圖像,而非關(guān)節(jié)點(diǎn)的信息。本研究通過對(duì)視頻流的人體姿態(tài)按照每幀輸出數(shù)十張姿態(tài)骨骼圖像,并人為對(duì)數(shù)據(jù)集進(jìn)行標(biāo)注,劃分訓(xùn)練集和測(cè)試集。 針對(duì)保存的圖像數(shù)據(jù)進(jìn)行分析,為圖像分類模型[3]選擇輸入?yún)?shù)、網(wǎng)絡(luò)結(jié)構(gòu)、激活函數(shù),最終通過自定義的MobileNet 網(wǎng)絡(luò)進(jìn)行二次分類,最終劃分為正常狀態(tài)(normal)和跌倒?fàn)顟B(tài)(fall)。 具體流程如圖3 所示。
圖3 算法總體流程
本次實(shí)驗(yàn)數(shù)據(jù)集采用網(wǎng)絡(luò)上下載的經(jīng)典的室內(nèi)跌倒數(shù)據(jù)集,一共48 段視頻。 本研究使用其中的32 段視頻作為測(cè)試集數(shù)據(jù),其余作為模型后續(xù)的驗(yàn)證視頻,訓(xùn)練集共輸出骨骼圖像近15 000 張骨骼圖像數(shù)據(jù)。 訓(xùn)練完后使用驗(yàn)證視頻驗(yàn)證,最終骨骼圖像分類模型測(cè)試集準(zhǔn)確率在90%左右。 本設(shè)計(jì)能夠?qū)υ搱?chǎng)景下的跌倒行為進(jìn)行較好的檢測(cè)。 跌倒骨骼圖像如圖4 所示,左邊為正常狀態(tài),右邊為跌倒?fàn)顟B(tài)。
圖4 跌倒檢測(cè)
本文通過采取兩種輕量化算法模型的結(jié)合,在準(zhǔn)確率保持在90%的情況下,大幅降低模型的計(jì)算量和模型參數(shù)容量。 這對(duì)算法的實(shí)際落地和嵌入式開發(fā)有實(shí)際意義。 后續(xù)預(yù)計(jì)將會(huì)對(duì)輕量化的模型進(jìn)行硬件移植,以達(dá)到實(shí)際落地的效果。