目前,跌倒檢測(cè)方法最常見的是視頻圖像分析法和穿戴式裝置檢測(cè)法。前者使用視頻攝像頭,不能保證用戶隱私安全;后者是傳感器裝置,需要基站來服務(wù),外出時(shí)易忘記佩戴。
現(xiàn)在,國(guó)內(nèi)外已有利用手機(jī)進(jìn)行跌倒檢測(cè)的相關(guān)理論研究,都是使用移動(dòng)手機(jī)內(nèi)置的加速度傳感器和基于人體運(yùn)動(dòng)加速度特征的不同算法來檢測(cè)跌倒的。然而一些較高強(qiáng)度日?;顒?dòng)如慢跑、快速坐下等也會(huì)產(chǎn)生一個(gè)類似跌倒的大加速度值特征。因此,單獨(dú)使用加速度傳感器進(jìn)行跌倒檢測(cè),采集的數(shù)據(jù)比較單一,不足以完全反應(yīng)人體姿態(tài)變化,會(huì)給跌倒檢測(cè)帶來許多假警報(bào)。針對(duì)以上問題,本文提出了基于信號(hào)向量模和特征量W 相結(jié)合的跌倒檢測(cè)算法。該檢測(cè)算法同時(shí)利用加速度傳感器和陀螺儀監(jiān)測(cè)人體姿態(tài)變化,有效減少了跌倒檢測(cè)結(jié)果的假陽(yáng)性和假陰性。
1 跌倒檢測(cè)方法設(shè)計(jì)
加速度傳感器和陀螺儀分別能夠測(cè)量三軸方向運(yùn)動(dòng)加速度和角速度大小信息,本文利用智能手機(jī)內(nèi)置的這兩種傳感器來采集反映人體主要運(yùn)動(dòng)姿態(tài)變化的信號(hào)數(shù)據(jù)。通過使用信號(hào)向量模(magnitude of signal vector,SVM)閾值法來識(shí)別區(qū)分低強(qiáng)度日常生活活動(dòng)(activities of daily living,ADL)與跌倒,對(duì)于閾值法不能識(shí)別的較高強(qiáng)度ADL,則通過對(duì)角速度信號(hào)向量模數(shù)據(jù)進(jìn)一步處理得到的新特征量來判別。
1.1 信號(hào)數(shù)據(jù)
人體活動(dòng)主要分為以下幾種:躺下、步行、坐下—起立、上樓梯、下樓梯、慢跑、蹲下—起立以及跌倒等。人體攜帶的智能手機(jī),其內(nèi)置的加速度傳感器和陀螺儀輸出的信號(hào)數(shù)據(jù)可以反映出人體日常運(yùn)動(dòng)姿態(tài)變化。圖1為智能手機(jī)在x、y和z三軸的加速度方向及角速度方向。
傳感器輸出信號(hào)中摻雜了大量的脈沖噪聲,中值濾波是傳統(tǒng)的消除脈沖噪聲的方法。中值濾波器是一個(gè)非線性信號(hào)處理技術(shù),它使用一個(gè)給定長(zhǎng)度的窗依次滑過原始信號(hào)序列,然后將窗內(nèi)居中的樣本值用該窗所包含信號(hào)序列的中值替代,這里濾波器窗口大小n設(shè)為3。圖2為加速度傳感器輸出信號(hào)數(shù)據(jù)經(jīng)中值濾波后曲線圖。
圖2
1.2 信號(hào)向量模(SVM)
跌倒發(fā)生時(shí)的加速度及角速度變化主要體現(xiàn)在某空間方向,因?yàn)榈故录袩o法預(yù)知跌倒的方向,所以不宜用某一軸的加速度或角速度數(shù)據(jù)去判斷跌倒的發(fā)生,采用信號(hào)向量模SVM 特征量可以將空間的加速度或角速度變化集合為一矢量。加速度信號(hào)向量模(SVMA )及角速度信號(hào)向量模(SVMW )其定義分別如式(1)和式(2)
其中,ax ,ay ,az分別為加速度傳感器x、y、z三軸方向輸出經(jīng)中值濾波后信號(hào);wx ,wy ,wz分別為陀螺儀x、y、z三軸方向輸出經(jīng)中值濾波后的信號(hào)。
圖3 和圖4 為人體處于不同運(yùn)動(dòng)狀態(tài)時(shí)SVMA及SVMW變化曲線。
如圖3、圖4所示,跌倒具有大加速度和角速度峰值特征,這是因?yàn)樗さ惯^程中由于和低勢(shì)物體碰撞產(chǎn)生的SVM峰值比日?;顒?dòng)中步行、上樓梯等大多數(shù)一般過程要大。然而人體運(yùn)動(dòng)行為過程具有復(fù)雜性和隨機(jī)性,使用單一的加速度相關(guān)信息判斷人體摔倒行為的發(fā)生會(huì)帶來很大的誤判。本文使用SVMA及SVMW相結(jié)合的信息閾值法可以區(qū)分跌倒與產(chǎn)生SVM 峰值較小的低強(qiáng)度運(yùn)動(dòng)。通過對(duì)人體摔倒過程及其它日常生活行為過程中實(shí)驗(yàn)結(jié)果數(shù)據(jù)SVMA和SVMW進(jìn)行分析,本文識(shí)別跌倒的加速度信號(hào)向量模閾值取SVMAT =20m/s2 和角速度信號(hào)向量模閾值取SVMWT =4rad/s。
但是慢跑等動(dòng)作也具有大加速度和角速度峰值的特征,單獨(dú)的SVM 特征量并不能區(qū)分摔倒過程與慢跑或手機(jī)日用等較高強(qiáng)度運(yùn)動(dòng)過程。
[page]
1.3 SVMW數(shù)據(jù)曲線處理
根據(jù)人體運(yùn)動(dòng)學(xué)特征,跌倒過程與慢跑等運(yùn)動(dòng)過程的人體俯仰角或者側(cè)翻角變化有很大不同,然而采集人體運(yùn)動(dòng)姿態(tài)變化信號(hào)數(shù)據(jù)的智能手機(jī)在口袋中的放置方位具有隨意性,因此無法直接使用陀螺儀單軸方向輸出得到的角度變化信息作為跌倒判斷的一個(gè)特征量。本文對(duì)角速度信號(hào)向量模數(shù)據(jù)作進(jìn)一步處理,來尋找新的特征量。
這里定義一個(gè)人體跌倒時(shí)軀干傾斜的合角度θ,它是通過對(duì)角速度信號(hào)向量模數(shù)據(jù)進(jìn)行積分得到的,如下式
式中:SVMW ———人體運(yùn)動(dòng)角速度信號(hào)向量模。下面以慢跑為例,分析跌倒與慢跑等較高強(qiáng)度運(yùn)動(dòng)的合角度曲線變化的不同,圖5為跌倒和慢跑兩種運(yùn)動(dòng)過程合角度變化曲線,從圖5中可以看出:跌倒曲線有明顯的拐點(diǎn)(圖中圓圈所示),而慢跑曲線變化比較均勻平緩。這是因?yàn)榈惯^程中人體會(huì)和低勢(shì)物體產(chǎn)生碰撞,短時(shí)間內(nèi)會(huì)產(chǎn)生較大的SVM 數(shù)據(jù)值,體現(xiàn)在數(shù)據(jù)曲線上則有突變的增量點(diǎn);而慢跑每次動(dòng)作基本一致,隨時(shí)間產(chǎn)生的數(shù)據(jù)曲線點(diǎn)增量也基本一樣,數(shù)據(jù)曲線近似一條直線。
應(yīng)用智能手機(jī)作為跌倒檢測(cè)系統(tǒng),易于對(duì)數(shù)據(jù)進(jìn)行公式化處理,本文中采用數(shù)據(jù)擬合的方法對(duì)合角度曲線數(shù)據(jù)公式化處理。前面分析中得知,兩種運(yùn)動(dòng)過程合角度曲線變化趨勢(shì)有很大不同,且慢跑運(yùn)動(dòng)合角度變化曲線近似一條直線,因此使用直線擬合模型可以突出兩種曲線與各自擬合曲線相似度的不同。這里使用計(jì)算簡(jiǎn)單的最小二乘法線性擬合,擬合直線表達(dá)式為
y=ax+b (4)
式中:a,b———擬合直線的斜率和截距。圖6和圖7分別為跌倒和慢跑兩種運(yùn)動(dòng)的合角度變化曲線及使用Matlab線性擬合變化曲線。
為了反映出兩種曲線與各自線性擬合曲線的相似度,這里我們定義一個(gè)無量綱量W,也是本文算法的跌倒判斷特征量,其計(jì)算過程如下式
其中,i=1,2,3,…,500,(處理10s內(nèi)數(shù)據(jù)樣本點(diǎn)),Ci為合角度數(shù)據(jù)樣本點(diǎn),Ni為合角度線性擬合數(shù)據(jù)樣本點(diǎn)。特征量W 反映的是合角度曲線與其擬合曲線之間的相似度,W 值越小相似度越高。
由前面的分析得知,跌倒合角度曲線有拐點(diǎn),慢跑合角度曲線變化平緩,而使用的擬合曲線為一條直線,故跌倒時(shí)得到的W 值較大,而慢跑時(shí)得到的W 值會(huì)較小。表1所示為一組實(shí)驗(yàn)結(jié)果的特征值,觀察特征值數(shù)據(jù)可知容易通過設(shè)置一個(gè)閾值WT來區(qū)分這兩種運(yùn)動(dòng)過程,本文通過對(duì)跌倒過程和慢跑等較高強(qiáng)度運(yùn)動(dòng)過程中W 值的分析取WT =25。
2 系統(tǒng)實(shí)現(xiàn)
2.1 系統(tǒng)應(yīng)用程序
Android是一個(gè)開源移動(dòng)操作系統(tǒng),它有一個(gè)強(qiáng)大的基于java框架的軟件開發(fā)工具包(SDK),還有SQLite數(shù)據(jù)庫(kù)管理系統(tǒng),本文在Android智能手機(jī)平臺(tái)開發(fā)實(shí)現(xiàn)了跌倒檢測(cè)應(yīng)用程序。跌倒應(yīng)用程序由4大部分組成:
(1)FallDetectionService:Android后臺(tái)服務(wù)應(yīng)用進(jìn)程,它長(zhǎng)時(shí)間運(yùn)行在手機(jī)應(yīng)用程序進(jìn)程的主線程內(nèi),不會(huì)干擾其他組件或用戶界面。
(2)FallAlertActivity:與用戶交互的Activity組件,該Activity可以被創(chuàng)建、啟動(dòng)、恢復(fù)、暫停和銷毀,它是應(yīng)用程序的可見部分。
(3)SensorManager:”SensorManager”允許應(yīng)用程序使用手機(jī)傳感器,使用它來讀取手機(jī)加速度傳感器和陀螺儀的讀數(shù)。
(4)UserLocationManager:使用UserLocationManager可以允許應(yīng)用程序使用GPS獲取定位數(shù)據(jù),緊急情況下可以確定用戶地理位置。
2.2 系統(tǒng)檢測(cè)流程
本系統(tǒng)跌倒檢測(cè)算法是基于人體運(yùn)動(dòng)加速度和角速度信號(hào)設(shè)計(jì)的,通過分析人體主要運(yùn)動(dòng)過程與跌倒過程的SVMA和SVMW數(shù)據(jù),以及對(duì)SVMW數(shù)據(jù)的進(jìn)一步處理來區(qū)分日常生活活動(dòng)與跌倒。圖8為跌倒檢測(cè)算法流程圖:①后臺(tái)服務(wù)監(jiān)測(cè)SVMA數(shù)值的變化,如果SVMA大于SVMAT ,進(jìn)入下一步;②等待SVMA數(shù)值恢復(fù)到正常范圍內(nèi),再設(shè)置延時(shí)10s,等待用戶穩(wěn)定,進(jìn)入下一步;③角速度數(shù)據(jù)分析,如果SVMW大于SVMWT ,進(jìn)入下一步;④對(duì)SVMW數(shù)據(jù)公式化處理得到特征值W,如果W 大于WT ,確認(rèn)發(fā)生跌倒,觸發(fā)報(bào)警處理。
2.3 系統(tǒng)主要內(nèi)容
系統(tǒng)集成了智能手機(jī)的傳感功能和信號(hào)處理技術(shù),它的主要功能是檢測(cè)意外情況下跌倒,然后與用戶的緊急聯(lián)系人通過電話和SMS信息進(jìn)行聯(lián)系。該應(yīng)用程序還可以獲得用戶的地理位置,此外它有一個(gè)一鍵緊急救助按鈕和緊急警報(bào)取消機(jī)制,可防止假警報(bào)。
當(dāng)系統(tǒng)檢測(cè)到一個(gè)跌倒,會(huì)彈出通知窗口并且有聲音警報(bào),用戶可以在一個(gè)可設(shè)置的特定時(shí)間范圍內(nèi)取消警報(bào)請(qǐng)求。如果沒有發(fā)生真正的跌倒,用戶可以在報(bào)警等待時(shí)間范圍內(nèi)簡(jiǎn)單取消請(qǐng)求。如果是一個(gè)真正的跌倒,則用戶的救助聯(lián)系人將會(huì)立即收到SMS報(bào)警信息。
圖9為應(yīng)用程序屏幕截圖,主界面有7個(gè)主要按鈕,“ON/OFF”滑動(dòng)開關(guān)按鈕,來控制開始后臺(tái)跌倒檢測(cè)服務(wù)和停止服務(wù);“緊急聯(lián)系電話”按鈕,可以添加3個(gè)緊急救助聯(lián)系人號(hào)碼;“緊急聯(lián)系信息”按鈕,用來編輯發(fā)送的緊急信息內(nèi)容;“報(bào)警等待時(shí)間”按鈕,用來設(shè)置檢測(cè)到跌倒發(fā)生與發(fā)送報(bào)警信息之間的等待時(shí)間;“一鍵快速求救”按鈕,直接觸發(fā)跌倒報(bào)警事件,當(dāng)用戶發(fā)生跌倒而手機(jī)未檢測(cè)到時(shí)的手動(dòng)求救按鈕; “設(shè)置”按鈕用來設(shè)置開啟GPS服務(wù)、設(shè)置傳感器工作模式以及報(bào)警方式、聲音選擇等;“退出”按鈕,則是完全退出應(yīng)用程序。
3 實(shí)驗(yàn)與結(jié)果分析
3.1 實(shí)驗(yàn)裝置及設(shè)計(jì)
跌倒檢測(cè)算法測(cè)試手機(jī)為L(zhǎng)GP970,其配置有Android2.3操作系統(tǒng)、德州儀器1GHz的CPU、主屏尺寸4.0英寸。日常生活主要活動(dòng)動(dòng)作頻率都低于20HZ,設(shè)置手機(jī)內(nèi)置加速度傳感器和陀螺儀的信號(hào)采樣頻率皆為50HZ,以滿足實(shí)驗(yàn)的需求。本系統(tǒng)為使實(shí)驗(yàn)結(jié)果符合人們?nèi)粘y帶手機(jī)的方式,選擇胸部口袋作為實(shí)驗(yàn)過程中手機(jī)在人體的佩戴位置。檢測(cè)算法是對(duì)傳感器輸出數(shù)據(jù)的信號(hào)向量模進(jìn)行處理,故實(shí)驗(yàn)中對(duì)手機(jī)在口袋中的放置方位沒有要求。
實(shí)驗(yàn)者為20名青年學(xué)生:10男10女,年齡在22-30歲,身高155-185CM,體重40-80KG。出于安全考慮未請(qǐng)老年人參與,實(shí)驗(yàn)者模擬老年人日常生活中步行、上下樓梯、慢跑、快速坐下、快速躺下、坐下起立、躺下起立和跌倒等活動(dòng)動(dòng)作。實(shí)驗(yàn)在不同時(shí)間段完成,實(shí)驗(yàn)過程中地上放置有厚海綿墊,每個(gè)實(shí)驗(yàn)者被要求重復(fù)實(shí)驗(yàn)動(dòng)作2次,且每個(gè)動(dòng)作要求在10s內(nèi)完成。實(shí)驗(yàn)者的動(dòng)作描述見表2。
3.2 結(jié)果分析
為評(píng)估檢測(cè)算法的性能,通常定義以下評(píng)估方式:跌倒檢測(cè)中可能出現(xiàn)的4種情況:真陽(yáng)性(TP):跌倒發(fā)生,設(shè)備檢測(cè)到。假陽(yáng)性(FP):設(shè)備檢測(cè)到跌倒,但實(shí)際并未發(fā)生。真陰性(TN):正?;顒?dòng),設(shè)備并未檢測(cè)到跌倒發(fā)生。假陰性(FN):跌倒發(fā)生,但設(shè)備并未檢測(cè)到。敏感性體現(xiàn)了算法識(shí)別跌倒的能力,測(cè)量真實(shí)的摔倒被檢測(cè)到的概率
特異性是日常生活活動(dòng)被檢測(cè)到的概率
圖10 (a)顯示了本文系統(tǒng)算法檢測(cè)結(jié)果敏感性的表現(xiàn),算法能精確地檢測(cè)到后向跌倒、左側(cè)跌倒和右側(cè)跌倒,前向跌倒假陰性較高是因?yàn)橄蚯暗箷r(shí)人們下意識(shí)彎曲膝蓋,兩手掌去支地緩沖,所以產(chǎn)生的SVM 峰值較小,但這種情況一般損傷不嚴(yán)重,跌倒者大多數(shù)保持清醒,如需救助仍可通過應(yīng)用程序的“一鍵救助按鈕”??繅徛惯^程動(dòng)作緩慢且比較隨意復(fù)雜,算法檢測(cè)結(jié)果假陰性較高,然而這種跌倒給跌倒者帶來的傷害是有限的。從100例記錄中得到算法的敏感性是88%。圖10 (b)顯示了本文算法檢測(cè)結(jié)果特異性的表現(xiàn),算法可以區(qū)分出大多數(shù)日?;顒?dòng),然而快速坐下時(shí)帶有后仰動(dòng)作、以較快速度躺下和手機(jī)日用有時(shí)候會(huì)觸發(fā)假陽(yáng)性,從180例記錄中得到算法特異性為92%。