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