韓錕,黃澤帆
(中南大學交通運輸工程學院,湖南長沙 410075)
意外跌倒是影響老年人健康安全和生活質量的重要因素[1-3],擴大化的人口老年化趨勢同時意味著將有更多老年人面臨意外跌倒致病的威脅.迅速及時地對跌倒后的老人進行干預救護,可以有效降低跌倒事故對人體造成的傷害.文獻[4]指出,跌倒事件發(fā)生后得到及時救助支援的老年人可以降低80%的死亡風險和26%的長期住院風險.由此可見,準確、迅速、及時地檢測到人體跌倒事件至關重要,可以有力保障老年人生命安全,提高日常生活質量,降低潛在醫(yī)療成本.
當前提出的跌倒識別方案按其工作方式可分為基于可穿戴傳感器,基于環(huán)境傳感器及基于計算機視覺三大類.文獻[5-7]是基于陀螺儀及加速度傳感器判斷跌倒事件,文獻[8]則在此之上引入了磁力計,文獻[9-10]等則引入了氣壓計.基于可穿戴傳感器的方法均需要隨身佩戴傳感器,普遍存在影響活動、容易遺忘等缺陷.基于環(huán)境傳感器的方案依賴于受眾所處環(huán)境安裝的傳感器進行檢測,文獻[11]提出使用超聲頻率偏移判斷跌倒,需要架設專用的外部傳感器,設備架設費用較高,監(jiān)控實施難度較大.基于計算機視覺的方法通過攝像頭采集視頻圖像,無需人體穿戴,對正常人體活動沒有影響.文獻[12-14]以Kinect 深度相機采集圖像獲取人體骨架進行跌倒判定,但深度相機體積較大且價格昂貴,不便于實際推廣,文獻[15-16]基于深度卷積神經網絡進行跌倒識別,需要高質量、大規(guī)模的視頻數據集及冗長耗時的訓練調參以確保模型的泛化能力,真實人體跌倒動作視頻難以大批量采集的特性限制了該方法的應用.
本文提出了基于人體姿態(tài)動態(tài)特征進行跌倒識別的新方法,相比于現有基于視覺的方法,具有如下特性:
1)提出了基于人體傾斜姿態(tài)動態(tài)特征的跌倒行為判斷方法,引入OpenPose 以提取人體姿態(tài)關鍵點,不受人體穿著衣物等外部因素影響,魯棒性較好,以線性SVM 完成跌倒行為與日常人體動作的區(qū)分,實時性良好;
2)聯合人體下降姿態(tài)動態(tài)特征閾值判斷確保了本方法具有較好的召回率,同時具有較高的跌倒事件識別準確率與精確率,具備良好的應用價值;
3)實現了基于單目RGB 攝像機的人體跌倒識別,無需借助Kinect 等專業(yè)深度相機,可應用于家用監(jiān)控攝像機,具備較高的性價比;
實驗結果表明,本方法適用于日常環(huán)境的人體跌倒識別,能夠有效區(qū)分站立、行走、下蹲等典型日?;顒有袨?,在跌倒識別的精確率、召回率等評價指標上獲得了較好的性能,具有較高的可信度和實用性.
本文提出一種以單目RGB 攝像機采集圖像信息,以人體骨骼關鍵點坐標表征人體姿態(tài)動態(tài)特征,以人體傾斜程度及下降程度作為跌倒判據的跌倒行為識別方法,其基本思想為:引入OpenPose[17-18]深度卷積神經網絡,從單目RGB 攝像機采集的視頻圖像中獲取人體姿態(tài)關鍵點;利用人體姿態(tài)關鍵點獲取人體主軀干相對于地面垂線的偏移角和腿部相對于地面垂線的偏移角,以此表征人體傾斜姿態(tài)動態(tài)特征,并通過支持向量機構建的分類器依據上述特征識別跌倒行為;為進一步提升算法性能,提出將基于人體下降姿態(tài)動態(tài)特征的閾值判斷作為判別人體跌倒的補充條件,以減少誤判,降低本文方法識別跌倒的召回率.算法流程圖如圖1 所示.
圖1 基于人體姿態(tài)動態(tài)特征的跌倒識別算法流程圖Fig.1 Flow chart of fall detection algorithm based on human action posture
本文以單目RGB 攝像頭作為傳感器采集圖像信息,基于采集視頻圖像分析人體姿態(tài)動態(tài)特征并檢測跌倒行為.為獲取人體姿態(tài)動態(tài)特征,本文基于OpenPose 提取人體姿態(tài)關鍵點.OpenPose 人體姿態(tài)識別項目是美國卡耐基梅隆大學以Caffe 為框架所開發(fā)的包含卷積神經網絡及監(jiān)督學習的開源庫,可以完成人體動作、面部表情、手指運動等姿態(tài)實時在線估計,實現從二維圖像中提取人體姿態(tài)關鍵點.
本文使用基于BODY_25 模型的OpenPose 神經網絡,自二維RGB 圖像中獲得25 個人體關鍵點及其在圖像坐標系的對應坐標,如圖2、圖3 所示:
圖2 BODY_25 人體姿態(tài)關鍵點模型[17]Fig.2 BODY_25 posture key point model[17]
圖3 在RBG 圖像上獲取人體姿態(tài)關鍵點Fig.3 Key points on RBG images
OpenPose 對于視頻圖像的像素值通道不敏感,在RGB 圖像或黑白圖像均有較好表現,可適用于紅外攝像頭在弱光或無光環(huán)境獲取的紅外圖像,不需要額外的深度信息,拓寬了本文跌倒識別方法的實際應用范圍.
人體傾斜姿態(tài)動態(tài)特征是指人體跌倒過程中軀干與地面垂線偏移較大的持續(xù)性行為.人體跌倒事件一般源于人體下肢不穩(wěn)定,在人體發(fā)生跌倒行為時人體相對于地面垂線的傾斜程度持續(xù)增大直至人體接觸地面,體現為人體主軀干及腿部與地面垂線存在較大偏移,產生有別于穩(wěn)定狀態(tài)下的擾動,對應的人體傾斜姿態(tài)動態(tài)特征可用于表征跌倒行為.圖4展現了典型的人體自座椅站立時發(fā)生跌落的視頻序列幀,圖5 展現了對應圖4 視頻序列幀的使用OpenPose 所提取部分姿態(tài)關鍵點拓撲結構的疊加可視化效果,其主軀干及腿部具有明顯的偏移特性.
圖4 典型的跌倒動作視頻圖像序列幀Fig.4 Typical video frames of fall
圖5 人體姿態(tài)關鍵點拓撲結構疊加圖Fig.5 Topological structure of key points of human action
基于OpenPose 取得的人體骨骼在圖像坐標系的關鍵點坐標,可構建代表人體主軀干及腿部的向量如式(1)(2)(3)所示.
式中:Xi為第i 處人體關鍵點的橫坐標,Yi為第i 處人體關鍵點的縱坐標.以圖像坐標系的垂向向量表征世界坐標系與地面垂直的垂線將人體主軀干相對于地面垂線的偏移角,角度值可以描述人體傾斜姿態(tài)動態(tài)特征的傾斜程度,如圖6 所示.
圖6 人體主軀干偏移角示意圖Fig.6 Schematic diagram of human spine deflection angle
人體主軀干偏移角計算如下式:
同理,可以獲得人體腿部相對于地面垂線的偏移角.人體主軀干與腿部偏移角隨視頻圖像序列幀的數值波動反映了人體與地面垂線的傾斜程度變化狀況,可以作為人體傾斜姿態(tài)動態(tài)特征以檢測人體跌倒行為.
人體主軀干與腿部偏移角是人體傾斜姿態(tài)動態(tài)特征在二維圖像的映射,反映人體平衡狀態(tài).人體處于如站立、行走等典型平衡狀態(tài)時,人體傾斜姿態(tài)動態(tài)特征沒有表現出跌倒傾向,此時對應偏移角數值較小且較為穩(wěn)定;當人體發(fā)生跌倒時,穩(wěn)定性平衡狀態(tài)被打破,此時偏移角會出現劇烈波動并伴隨較大數值.在人體動作視頻數據庫UR Fall Detection Dataset[19]分割典型人體動作視頻抽取RGB 圖像展開測試,跌倒、行走及坐下等典型動作試驗結果如圖7所示,圖中(a)、(b)、(c)為人體跌倒、行走、坐下動作關鍵幀;(a′)、(b′)、(c′)為人體跌倒、行走、坐下動作對應偏移角隨視頻幀變化情況.
圖7 人體傾斜姿態(tài)動態(tài)特征測試結果Fig.7 Test results of human body tilting motion posture feature
從實驗測試結果可觀察到,人體處于行走狀態(tài)或站立等穩(wěn)定狀態(tài)時,主軀干及腿部偏移角數值相對較小,且相鄰幀對應偏移角變化較小;人體處于不平衡的跌倒狀態(tài)時,主軀干及腿部偏移角數值明顯增大且伴隨較大波動,與穩(wěn)定狀態(tài)存在較大差異,以人體主軀干與腿部偏移角數值作為人體傾斜姿態(tài)動態(tài)特征,可以對跌倒行為與站立、行走等非跌倒行為進行區(qū)分.
依據人體傾斜姿態(tài)動態(tài)特征識別跌倒行為需要選擇合適的分類器.支持向量機[20]是基于統計學習理論及結構風險最小化原則建立的監(jiān)督式機器學習模型,最初針對二分類問題而提出,在小樣本模式識別中具有優(yōu)勢.在跌倒識別任務中,跌倒與非跌倒的關鍵序列幀樣本相對較少,且該任務要求能夠及時迅速地發(fā)現跌倒動作,分類速度要求較高,相對于需要大樣本的CNN 等深度卷積神經網絡方法,SVM 是較為適用的.
基于現有的公開跌倒視頻庫[19]抽選動作幀形成包含255 幀關鍵圖像的數據集,數據集對應的人體傾斜姿態(tài)特征可構成包含人體主軀干與腿部偏移角的特征向量,其屬性空間分析如圖8 所示,跌倒行為樣本以紅色散點表示,站立、坐下等非跌倒行為以綠色散點表示,以高斯核密度估計擬合特征向量各屬性值在跌倒行為及非跌倒行為的概率密度分布狀況.從圖中可見,特征向量的屬性空間重疊不顯著,線性可分性質明顯,適宜使用線性核SVM 進行跌倒識別二分類工作.
圖8 人體傾斜姿態(tài)特征向量多屬性關系圖(單位:°)Fig.8 Multi-attribute relationship graph of feature vectors(unit:°)
線型核支持向量機的模型公式如式(6)(7)所示:
一般取函數間隔γ′=1,引入松弛變量δi,則模型公式等價于式(8)(9):
式中:x 為包含主軀干、左右腿部偏移角的三維特征向量,y 為樣本類別即跌倒行為與非跌倒行為,C>0 為懲罰參數,w 及b 為所得分類超平面權重向量與偏置值;i 表示含有m 個樣本的數據集中的第i 個樣本.
以6 ∶4 比例從數據集中隨機抽取形成訓練集與測試集,硬件配置為Dell G33579,Intel i5-8300H 處理器.基于Python 的sklearn.Svm 工具包對采集的數據集進行訓練.多次訓練結果表明懲罰參數C 取值在0.5~1.5 即可獲得較好且相近的分類精確率,取C=1.0 時訓練及測試結果如圖9、圖10 所示.
圖9 訓練樣本集二分類效果Fig.9 Classification effect of training sample set
圖10 測試樣本集二分類效果Fig.10 Classification effect of testing sample set
圖9 為訓練樣本集二分類結果,圖10 為測試樣本集二分類結果,圖中星星標記代表非跌倒行為,圓形標記代表跌倒行為,灰色平面為訓練所得的分類平面,圖9 中的空心圓圈代表訓練所得的支持向量.由圖可見,非跌倒行為特征點較為集中,而跌倒行為特征點則較為發(fā)散,線性可分性質明顯,使用線性核可以較好地進行二分類工作,平均每幀耗時小于0.6 ms.支持向量機在訓練集及測試集的分類結果如表1、表2 所示,精確率、召回率及F1 分數定義見第三節(jié).
表1 訓練樣本集分類結果Tab.1 Classification result of training sample set
表2 測試樣本集分類結果Tab.2 Classification result of testing sample set
由分類結果可見,基于人體傾斜姿態(tài)動態(tài)特征的支持向量機二分類可以實現較好的跌倒識別效果,將跌倒行為與日?;顒有袨檫M行區(qū)分,精確率相比同屬基于視覺的文獻[21]有所提高,但仍存在將少數非跌倒行為錯誤歸類為跌倒行為的情形,致使召回率下降.為減少此類誤判,以基于人體下降姿態(tài)動態(tài)特征的閾值判斷作為跌倒檢測的補充.
為降低檢測人體跌倒的誤檢率,以基于人體下降姿態(tài)動態(tài)特征的閾值判斷作為跌倒識別算法的補充條件.在支持向量機將人體行為分類為跌倒后,若人體質心下降程度超過閾值則將其判定為跌倒行為,否則仍視為非跌倒行為.通過閾值判斷,可以將與跌倒行為類似、混淆性較大的日常活動行為從支持向量機二分類結果中排除,以保證算法準確率與召回率.
人體下降姿態(tài)動態(tài)特征指人體跌倒過程中主軀干垂向傾倒的持續(xù)性行為,跌倒期間人體質心迅速降低.文獻[22]指出,人體骨盆部位可視作穩(wěn)定性質心,多數基于佩戴傳感器的人體跌倒檢測方案都將骨盆作為傳感器佩戴部位.基于此,本文將OpenPose提取的對應于骨盆區(qū)域人體關鍵點8 視作人體穩(wěn)定性質心所在位置,以γ 值作為人體下降姿態(tài)動態(tài)特征,如式(10)所示.
式中:H 為軀體垂向長度,以人體頭部區(qū)域與骨盆區(qū)域關鍵點坐標的Y 方向差值得出,如式(11)所示.
閾值γH 受ε 取值與相機拍攝幀率影響,在相機幀率為30 fps 的數據集中選取5 組人體身高不等的連續(xù)視頻幀跌倒動作測試期間穩(wěn)定性質心下落變化情況,如圖11 所示.
圖11 γ-ε 關系圖Fig.11 Relationship diagram of γ-ε
圖11 中橫坐標為ε 值,即自支持向量機歸類為跌倒動作開始記錄的持續(xù)幀數;縱坐標為γ 值,表征人體穩(wěn)定性質心垂向變化情況.從測試中可以觀察到,γ 值最初大致保持持續(xù)下降趨勢,與人體跌倒初期身體保持一致的下降方向相符;ε 值處于18 幀到23 幀時,γ 值達到初始下降峰值,其后小幅波動振蕩,與人體跌倒觸底后身體抗拒性起伏動作相關聯.為使得γ 值對跌倒行為具有較好的敏感性與區(qū)分度,在測試集相機拍攝幀率條件下,取ε 值為20,γH閾值為0.6 是較為適宜的,當γ 值大于γH 閾值即判定人體發(fā)生跌倒.
本文基于人體動作相關視頻數據集[19,23-24]抽取75 個跌倒動作與站立、行走、下蹲等150 個日常活動動作,形成數據集對跌倒識別方法進行測試.文獻[4]指出,現階段沒有評估跌倒識別效果的共同標準,也難以基于通用程序執(zhí)行效果測試.基于此,本文參考圖像檢測相關評價指標,通過精確率、準確率及召回率評價測試效果.
將數據集中對應跌倒行為作為正例,站立、走路等日常生活行為作為反例,以TP(True Positive)標記真正,即檢測為跌倒的正樣本個數;TN(True Negative)標記真負,即檢測為非跌倒的負樣本個數;FP(False Positive)標記假正,即檢測為跌倒的負樣本個數;FN(False Negative)標記假負,即檢測為非跌倒的正樣本個數,則準確率(Accuracy)、精確率(Precision)、召回率(Recall)及F1 分數(F1 score)可以表示為:
數據集測試結果如表3、圖12 所示.
測試結果表明,本文提出的基于人體姿態(tài)動態(tài)特征的跌倒識別方法獲得了97.33%的準確率與94.80%的精確率,說明本方法對于跌倒行為具有較高敏感性,可以有效區(qū)分跌倒與非跌倒行為,能夠有效地識別人體跌倒事件;召回率與F1 分數分別為97.33%與96.05%,說明基于人體下降姿態(tài)動態(tài)特征的閾值判斷有效降低了非跌倒行為誤檢情況.
表3 跌倒識別算法測試結果Tab.3 Testing result of fall detection algorithm
圖12 跌倒識別評價指標測試結果Fig.12 Testing result of fall recognition
表4 展現了本文方法與其他方法的性能對比,本方法優(yōu)于使用深度卷積網絡等大部分基于深度相機或單目RGB 相機的現有方法,僅次于聯合Kinect深度相機與可佩帶式陀螺儀傳感器的方法[19],而該方法需要使用額外的傳感器以實現性能提升,成本較高,存在可佩帶式傳感器共有的影響活動、容易遺忘等缺陷,不利于長期日常使用.本文方法僅使用單目RGB 攝像頭已獲得較好的跌倒識別準確率,同時能確保較好的召回率與F1 分數,具有較為理想的識別效果,可以用于日常居家老人的意外跌倒事件檢測,就性能指標與設備易用綜合考慮,具備優(yōu)越性.
表4 本文方法與其他方法的性能對比Tab.4 Performance comparison of methods
本文提出了基于人體姿態(tài)動態(tài)特征的跌倒識別方法,結合基于人體傾斜姿態(tài)動態(tài)特征的跌倒行為二分類與基于人體下降姿態(tài)動態(tài)特征的閾值判斷進行跌倒判定,獲得了97.33%的準確率與94.80%的精確率,同時具有97.33%的召回率與96.05%的F1 分數.本方法通過采集圖像視頻進行跌倒識別,相比于基于可穿戴傳感器與環(huán)境傳感器的方法在便捷性上具備優(yōu)勢;使用常見的單目RGB 攝像頭作為傳感器,相比于使用Kinect 深度相機等方法具有更好的適用性,可應用于現有的居家單目RGB 攝像頭對老人跌倒事件進行及時檢測與報警,可為保障老年人跌倒后及時救治、提高生活質量提供一種簡便高效的解決方案.