曹 靜, 龔俊杰*, 山下陽太郎, TAN Joo Kooi
(1. 揚州大學機械工程學院, 江蘇 揚州 225127; 2. 九州工業(yè)大學, 日本 北九州 804-8550)
近年來, 隨著中國人口老齡化趨勢日益加劇,我國關(guān)于老年人的監(jiān)護研究及老齡產(chǎn)業(yè)的運行機制完善成為民生熱點問題, 故老年人的健康智能監(jiān)護系統(tǒng)開發(fā)尤為重要,其中老年人的人體運動圖像動作識別方法研究備受關(guān)注.Bobick等[1]將一段時間內(nèi)人體區(qū)域的運動軌跡表示單個歷史圖像,提出運動歷史圖像(motion history image, MHI)動作識別方法,但該方法假定運動是在垂直于相機光軸的平面上進行的, 故難以表現(xiàn)朝向或遠離相機光軸方向的運動; Tan等[2]通過反向MHI表現(xiàn)方法實現(xiàn)了對相機光軸方向(即深度方向)的運動識別; Chang等[3]將3D-MHI與極限學習機[4]相結(jié)合, 實現(xiàn)了人體運動軌跡的識別; Ru等[5]提出一種雙目視覺算法以獲取深度圖像; Ahad等[6]采用基于視覺的時空模板匹配方法進行動作檢測和分類.然而,上述算法存在計算成本高和處理時間長等問題.此外, 在老年人異常行為的判斷中, Chua[7], Rougier[8]等利用人體輪廓的形狀變化進行跌倒行為判斷; Wu等[9]基于可穿戴設(shè)備開發(fā)了一種采用四元數(shù)算法的新型跌倒檢測系統(tǒng); Evelien等[10]基于跌落的物理模型與聲音幅度特征進行跌倒自動檢測, 此類方法計算成本較低,但判據(jù)過于簡單、判斷動作局限及傳感器穿戴不便,致使異常行為檢測的精度難以得到保證.本文擬在傳統(tǒng)MHI的基礎(chǔ)上引入前景重疊度和深度運動2種運動歷史信息來表現(xiàn)深度方向的動作,提出一種三重運動表現(xiàn)圖像(triplet motion representation images, TMRI)識別算法,以期通過檢測人體運動來識別異?;顒?達到監(jiān)護老年人日常生活的目的.
首先提取人體區(qū)域,通過追蹤在人體區(qū)域輪廓線上設(shè)置的特征點計算光流;然后利用光流投票結(jié)果檢測消失點, 判斷動作是否為深度方向的運動,從而創(chuàng)建包含時間序列信息、前景出現(xiàn)頻度信息和深度信息的歷史圖像,分別稱之為時間序列圖像、重疊度圖像和深度圖像;最后提取3種歷史圖像的特征,利用圖像特征對人體動作進行識別.
為降低外部環(huán)境(如光照變化、家具移動等周期性背景變化)的影響, 采用高斯混合模型[11]對構(gòu)成圖像的每個像素進行連續(xù)背景圖像估計,該模型中通過概率密度函數(shù)
(1)
為了使消失點的檢測保持穩(wěn)定, 在提取的人體區(qū)域輪廓表面等距分布特征點, 并采用Lucas-Kanada(LK)光流跟蹤算法[12]計算連續(xù)幀之間的光流和評估特征點位置的相似性.圖2(a)給出了向前行走時人體運動的光流示例.將該光流所在的直線在投票平面上進行延伸,通過尋找相交點來檢測消失點是否存在,結(jié)果如圖2(b)所示.
由于投票偏差可能會導致消失點的錯誤檢測, 故賦予光流所在直線一定寬度, 并采用如圖3所示的加權(quán)投票線進行投票,靠近加權(quán)投票線中心的像素權(quán)重分配較高,而遠離中心的像素則權(quán)重較低.若最終投票結(jié)果大于預(yù)定閾值(本文設(shè)為2),則視為存在消失點.
基于僅包含時間序列圖像的原始MHI, 提出包含前景出現(xiàn)頻度和深度信息的運動圖像,具體動作描述如下:
(2)
式中Hτ(x,y,t)為過去τ幀時間序列圖像中在t時刻下像素(x,y)處的灰度值;D為前景區(qū)域的二值圖像.
(3)
(4)
(5)
式中Nlayer(t)為t時刻下根據(jù)消失點檢出與否所確定的需要重疊的層數(shù),Vmax為投票結(jié)果的最大值,Tvote為投票閾值,γ為根據(jù)光流大小確定Nlayer值所需的常數(shù)(本文γ=0.64),Lave為光流的平均長度.
當目標向右或向后行走時, 根據(jù)三重運動表現(xiàn)圖像進行動作描述的結(jié)果如圖4~5所示.
由于圖像的Hu矩對于圖像的縮放、旋轉(zhuǎn)和翻轉(zhuǎn)具有不變性[13], 相較其他特征如Zernike矩和小波矩等, Hu矩不僅具有更多的不變性,還能更好地針對前景中的動作提取其形狀特征, 因此本文選用Hu矩描述三重運動表現(xiàn)圖像的形狀特征.Hu矩由7個不變特征vi(i=1,2,…,7)組成,由于各特征的比例差異很大, 故可以通過si=log(sgn(vi)·vi)更改為對數(shù)值, 然后定義特征向量s=(s1,s2,…,s7).
由于三重運動表現(xiàn)圖像包含3個運動歷史圖像, 并且每個圖像都由上述Hu矩描述, 因此本文將圖像的形狀特征表現(xiàn)為如下21維Hu矩矢量:
VTMRI=(smhi,sove,sdep).
(6)
(7)
式中majl{S}為返回至集合S中出現(xiàn)最多的類,kmin{T}為集合T中的n個最小數(shù),I為向量之間的相異性.由等式I(v,w)=‖v-w‖定義.
計算機環(huán)境: OS: Windows 10 Home; CPU: Intel(R) Core(TM) i7-3770 CPU @ 3.40 GHz; 內(nèi)存: 8.00 GB.開發(fā)環(huán)境: Microsoft Visual Studio Community 2017.
為了驗證三重運動表現(xiàn)圖像的性能,對其識別準確性進行實驗, 通過單個相機拍攝13種異常動作視頻,分別由4人執(zhí)行,每人執(zhí)行1次.為保證識別的準確性且盡量減少識別所需時間,于每段視頻圖像創(chuàng)建的三重運動表現(xiàn)圖像中各取80組進行實驗, 共52段視頻和4 160組三重運動表現(xiàn)圖像.采用留一法進行驗證以評估運動識別的準確性.動作識別準確率
(8)
其中NALL為測試數(shù)據(jù)的圖像總數(shù),NT為被正確識別的未知輸入動作的數(shù)據(jù)總數(shù).實驗表明,k-近鄰法中當k=3時識別效果最佳, 故本文將k設(shè)為3.為表現(xiàn)三重運動表現(xiàn)圖像中各圖像的有效性, 針對二重運動表現(xiàn)圖像, 即時間序列圖像+重疊度圖像(記為DMRI-1)以及時間序列圖像+深度圖像(記為DMRI-2)分別進行動作識別, 并與傳統(tǒng)MHI方法進行對比分析, 結(jié)果如表1所示.
表1 動作識別準確率
由表1可知, 由于三重運動表現(xiàn)圖像中增加了重疊度圖像和深度圖像的信息,所以每個動作的識別率都明顯高于傳統(tǒng)MHI的;三重運動表現(xiàn)圖像的平均識別率高達84.35%, 比MHI高28.92%;二重運動表現(xiàn)圖像的平均動作識別率均低于三重運動表現(xiàn)圖像的, 這是由于TMRI中深度圖像包含動作的深度信息,故大多數(shù)深度方向的動作能夠得到更高的識別準確率.
MHI方法與三重運動表現(xiàn)圖像識別方法在各階段的平均處理時間如表2所示.由表2可見, 三重運動表現(xiàn)圖像的處理速度略低于只有一種歷史表現(xiàn)圖像的MHI方法, 總平均延遲約8.89 ms, 尤其是動作表現(xiàn)階段的處理時間慢于MHI方法6.57 ms.綜上, 三重運動表現(xiàn)圖像因動作識別率更高且處理時間差異相對變化較小, 故利用三重運動表現(xiàn)圖像方法進行動作識別具有更高的優(yōu)越性.
表2 處理時間
本文首先創(chuàng)建包含時間序列、重疊度以及深度信息的三重運動表現(xiàn)圖像, 然后將圖像的形狀特征表現(xiàn)為21維Hu矩矢量, 并使用k-近鄰法在21維特征空間中識別動作, 最后通過實驗驗證所提方法的運動識別精度,取得滿意的結(jié)果.盡管三重運動表現(xiàn)圖像的識別精度較傳統(tǒng)MHI方法有很大改善,但該方法在處理時間及性能穩(wěn)定性等方面仍須進一步改進.