鬼佬大哥大
  • / 14
  • 下載費用:30 金幣  

一種基于加速度傳感器的實時步長估計方法.pdf

摘要
申請專利號:

CN201410179119.X

申請日:

2014.04.29

公開號:

CN103983273A

公開日:

2014.08.13

當前法律狀態:

授權

有效性:

有權

法律詳情: 授權|||實質審查的生效IPC(主分類):G01C 22/00申請日:20140429|||公開
IPC分類號: G01C22/00 主分類號: G01C22/00
申請人: 華南理工大學
發明人: 薛洋; 劉龍坡; 金連文
地址: 510640 廣東省廣州市天河區五山路381號
優先權:
專利代理機構: 廣州市華學知識產權代理有限公司 44245 代理人: 蔡茂略
PDF完整版下載: PDF下載
法律狀態
申請(專利)號:

CN201410179119.X

授權公告號:

103983273B||||||

法律狀態公告日:

2017.06.06|||2014.09.10|||2014.08.13

法律狀態類型:

授權|||實質審查的生效|||公開

摘要

本發明提供了一種基于加速度傳感器的實時步長估計方法,包括如下步驟:1、基于斜率運算及加速度值的檢峰方法;2、步頻計算,通過計算并存儲相鄰兩個峰值點之間的采樣點數,對其進行排序,然后從中間往兩邊各取四分之一的數據算平均值作為走一步的時間內的采樣點數,由該采樣點數結合加速度傳感器的采樣頻率可以算出步頻;3、基于多變量回歸的模型估計。具有估算簡單和估算方便等優點。

權利要求書

權利要求書
1.  一種基于加速度傳感器的實時步長估計方法,通過用戶的身高、體重和實時走路步頻來估計用戶的實時走路步長,其特征在于,包括如下步驟:
(1)基于斜率運算及加速度值的檢峰方法,通過確定加速度數據當前點和下一點的斜率正負以及加速度值來確定峰值點;
(2)步頻計算,通過計算并存儲相鄰兩個峰值點之間的采樣點數,對其進行排序,然后從中間往兩邊各取四分之一的數據算平均值作為走一步的時間內的采樣點數,由該采樣點數結合加速度傳感器的采樣頻率可以算出步頻;
(3)基于多變量回歸的模型估計,首先建立走路步長關于身高、體重和步頻的多變量回歸模型,再對步長、身高、體重、步頻等數據進行特征歸一化處理,對處理后的數據運用梯度下降算法求解多變量回歸模型,通過調節學習率和迭代次數,最后得到最優的實時步長估計模型。

2.  根據權利要求1所述的基于加速度傳感器的實時步長估計方法,其特征在于,所述步驟(1)中,基于斜率運算及加速度值的檢峰方法,對于用戶走路時加速度傳感器采集到的實時加速度信號a(i),定義:m=a(i+1)-a(i),n=a(i+2)-a(i+1),i表示第i個時刻,則m和n均為有正負值的標量,當m或n為正時,表示i時刻或i+1時刻的斜率為正,i時刻或i+1時刻加速度數據呈現上升趨勢,當m或n為負時,表示當前i時刻或i+1時刻的斜率為負,當前i時刻或i+1時刻的加速度數據呈現下降趨勢;因此,當i時刻有m≥0且n≤0時,表示i時刻處于加速度數據的轉折點;由于歸一化后的加速度數據均分布于區間[0,1]之間,為了消除前面數據預處理階段由于人的抖動因素而導致的加速度數據在非波峰階段呈現的抖動的現象,定義變量y1=0.6A作為峰值點附近加速度值必須滿足的 條件,其中,A為歸一化后所有加速度數據的最大值,該條件是由計算機上檢峰處理效果的經驗值,即:需滿足i時刻有a(i)>y1,i+2時刻有a(i+2)>y1,i-2時刻有a(i-2)>y1,這是為了消除由于人的抖動而出現的加速度呈現上下抖動的現象,同時滿足i-2時刻有a(i-1)>a(i-3),i+2時刻有a(i+1)>a(i+3),這是為了消除加速度數據上升或下降階段未到達峰值時出現的加速度數據暫時下降或上升而出現轉折點的想象,由此得到峰值判斷步驟如下:
步驟11、判斷當前i時刻是否滿足m≥0且n≤0,若滿足,則可確定當前i時刻為加速度轉折點,繼續步驟(2);
步驟12、判斷當前i時刻能否同時滿足a(i)>y1a(i+2)>y1a(i-2)>y1a(i-1)>a(i-3)a(i+1)>a(i+3),]]>若滿足,則確定當前i時刻為峰值點,若不滿足,則可確定當前i時刻加速度轉折點為抖動數據,繼續步驟(1)。

3.  根據權利要求1所述的基于加速度傳感器的實時步長估計方法,其特征在于,所述步驟(2)中步頻計算的計算方法為:在步驟(1)確定峰值點的同時獲取該峰值點在所有數據中的位置i,定義kj為第j個峰值點與第j-1個峰值點之間加速度采樣點數,在所有峰值點確定之后,即得到矩陣K=[k1,k2…kN],其中,kj為第j個峰值點與第j-1個峰值點之間加速度采樣點數,且1≤j≤N,N為峰值點的總數減1;由于人的運動頻率基本在20Hz以內,為減小誤差,先對矩陣K進行排序,然后除去兩邊kj≥75和kj≤10的數據,剩下的矩陣K的數據長度
記為N0,則從敵陣K的中間起向左右兩邊各取N0個數據,總共N0個數據, 再把所述的N0個數據算平均值作為該次加速度傳感器采樣得到的走一步時間內加速度的采樣點數NS,則步頻計算公式如下:
f=fsNS,]]>
其中,f為步頻,即用戶1秒的時間內走路的步數,fs為加速度傳感器的采樣頻率。

4.  根據權利要求1所述的基于加速度傳感器的實時步長估計方法,其特征在于,所述步驟(3)中,在基于多變量回歸的模型估計時,由于正常人的步長與身高呈正相關關系,與體重呈現線性關系,與人的走路速度呈現正相關關系,用步頻來表征走路速度的快慢為:步頻越高,表示速度越快,步頻越低,表示速度越慢,由此,建立步長與身高、體重和步頻的數學模型如下:
y=ah+βw+λf+μ,
其中,h為身高,w為體重,f為步頻,μ為懲罰項;
由該模型的特點可建立多變量回歸假設如下:
hθ(x)=θ0+θ1x1+θ2x2+...+θnxn,
其中,x為特征矩陣[x0x1……xn],其中x0=1,n為特征的總數,θl為待求解參數,其中0≤l≤n,由此,多變量回歸函數表示為:
hθ(x)=θTx,
其中,x=[x0 x1 x2……xn]T,θ=[θ0 θ1 θ2……θn]T,
求解模型時先對身高、體重、步頻三個特征進行歸一化處理,身高的歸一化步驟如下:
步驟31、求解均值μh和標準差σh,其中hmax為所有身高數據的最大值,hmin為所有身高數據的最小值;
步驟32、歸一化特征,其中,0≤i≤n,n為身高特征的總數量;
對體重和步頻兩個特征進行歸一化處理:
特征歸一化后再用梯度下降算法求解模型,具體算法如下:
定義變量xj(i)表示第i組數組的第j維輸入,y(i)表示第i組輸出,θj表示第j維系數,則定義誤差函數為:
J=12mΣ1n(hθ(xi)-yi)2,]]>
對誤差函數進行求導并整理得到:
θj:=θj-α1mΣ1m(hθ(xi)-yi)xj(i),]]>
其中,0≤j≤n,n為特征的個數,α為學習率,即每一步更新θj的速度,m表示第m次迭代,定義迭代總次數為M,則得到梯度下降過程的每一次迭代為:
for(n≥1)
repeat{
θj:=θj-α1mΣ1m(hθ(xi)-yi)xj(i)]]>
}simultaneouslyupdateθjforj=0……n,
調節迭代總次數M和學習率α,最終得到誤差J的步長模型:
y=0.004292h+0.000641w+0.000334f+0.000182,
其中,y為步長,h為身高,w為體重,f為步頻。

說明書

說明書一種基于加速度傳感器的實時步長估計方法
技術領域
本發明涉及一種估算實時步長技術,特別涉及一種基于加速度傳感器的實時步長估計方法。
背景技術
美國全球定位系統GPS自20世紀70年代開始研制并于1994年全面建成以來,在民用市場,軍事和政府部門的導航服務中起到了無法估計的作用。作為當前民用導航定位的重要手段,其廣泛應用于大地勘測、應急救援、物流業、智能交通、個人導航定位等領域。然而,雖說GPS是獲取位置信息最常用的方式,但由于衛星信號容易受障礙物的遮擋,故GPS不適合用于室內場合以及一些有較高遮擋物的室外場合。在智能手機普及的今天,利用手機里面集成的多種傳感器開發各種應用軟件已經屢見不鮮。目前,關于慣性導航的室內定位和走路計算的研究已經有了一定的成果,然而,這些研究成果主要針對高精度的傳感單元,對于利用智能手機完成實時步長計算的方案還比較少。因此,通過智能手機內置加速度傳感器獲取人體走路時的加速度信號,分析人體走路時的步態,計算實時走路步頻,結合用戶的身高,體重信息建立數學模型,從而求解出用戶行走時的步長,具有其實際意義。
發明內容
本發明的目的在于克服現有技術的缺點與不足,提供一種基于加速度傳感器的實時步長估計方法,該估計方法是一種有效的,簡便的室內外定位方案。
本發明的目的通過下述技術方案實現:一種基于加速度傳感器的實時步長估計方法,通過用戶的身高、體重和實時走路步頻來估計用戶的實時走路步長,包括如下步驟:
(1)基于斜率運算及加速度值的檢峰方法,通過確定加速度數據當前點和下一點的斜率正負以及加速度值來確定峰值點;
(2)步頻計算,通過計算并存儲相鄰兩個峰值點之間的采樣點數,對其進行排序,再除去不滿足人體走路頻率的數據,然后從中間往兩邊各取四分之一的數據算平均值作為走一步的時間內的采樣點數,由該采樣點數結合加速度傳感器的采樣頻率可以算出步頻;
(3)基于多變量回歸的模型估計,首先建立走路步長關于身高、體重和步頻的多變量回歸模型,再對步長、身高、體重、步頻等數據進行特征歸一化處理,對處理后的數據運用梯度下降算法求解多變量回歸模型,通過多次調節學習率和迭代次數,最后得到最優的實時步長估計模型。
所述步驟(1)中,基于斜率運算及加速度值的檢峰方法,對于用戶走路時加速度傳感器采集到的實時加速度信號a(i),定義:m=a(i+1)-a(i),n=a(i+2)-a(i+1),i表示第i個時刻,則m和n均為有正負值的標量,當m或n為正時,表示i時刻或i+1時刻的斜率為正,i時刻或i+1時刻加速度數據呈現上升趨勢,當m或n為負時,表示當前i時刻或i+1時刻的斜率為負,當前i時刻或i+1時刻的加速度數據呈現下降趨勢;因此,當i時刻有m≥0且n≤0時,表示i時刻處于加速度數據的轉折點;由于歸一化后的加速度數據均分布于區間[0,1]之間,為了消除前面數據預處理階段未能完全消除的、由于人的抖動因素而導致的加速度數據在非波峰階段呈現的抖動的現象,定義變量y1=0.6A作為峰值點附近加速度值必須滿足的條件,其中,A為歸一化后所有加速度數據的最大值,該條件是由多次在計算機上檢峰處理效果較好得到的經驗值,即:需滿足i時刻有a(i)>y1,i+2時刻有a(i+2)>y1,i-2時刻有a(i-2)>y1,這是為了消除由于人的抖動而出現的加速度呈現上下抖動的現象,此外還需同時滿足i-2時刻有a(i-1)>a(i-3),i+2時刻有a(i+1)>a(i+3),這是為了消除加速度數據上升或下降階段未到達峰值時出現的加速度數據暫時下降或上升而出現轉折點的想象,由 此得到峰值判斷步驟如下:
步驟11、判斷當前i時刻是否滿足m≥0且n≤0,若滿足,則可確定當前i時刻為加速度轉折點,繼續步驟(2);
步驟12、判斷當前i時刻能否同時滿足a(i)>y1a(i+2)>y1a(i-2)>y1a(i-1)>a(i-3)a(i+1)>a(i+3),]]>若滿足,則確定當前i時刻為峰值點,若不滿足,則可確定當前i時刻加速度轉折點為抖動數據,繼續步驟(1)。
所述步驟(2)中步頻計算的計算方法為:在步驟(1)確定峰值點的同時也可以獲取該峰值點在所有數據中的位置i,定義kj為第j個峰值點與第j-1個峰值點之間加速度采樣點數,在所有峰值點確定之后,即可得到矩陣K=[k1,k2…kN],其中,kj為第j個峰值點與第j-1個峰值點之間加速度采樣點數,且1≤j≤N,N為峰值點的總數減1;由于人的運動頻率基本在20Hz以內,為減小誤差,先對矩陣K進行排序,然后除去兩邊kj≥75和kj≤10的數據,剩下的矩陣K的數據長度記為N0,則從矩陣K的中間起向左右兩邊各取N0個數據,總共N0個數據,再把所述的N0個數據算平均值作為該次加速度傳感器采樣得到的走一步時間內加速度的采樣點數NS,則步頻計算公式如下:
f=fsNS,]]>
其中,f為步頻,即用戶1秒的時間內走路的步數,fs為加速度傳感器的采樣頻率。
所述步驟(3)中,在基于多變量回歸的模型估計時,由于正常人的步長與 身高呈正相關關系,與體重也大概呈現線性關系,與人的走路速度呈現正相關關系,用步頻來表征走路速度的快慢為:步頻越高,表示速度越快,步頻越低,表示速度越慢,由此,建立步長與身高,體重,步頻的數學模型如下:
y=ah+βw+λf+μ,
其中,h為身高,w為體重,f為步頻,μ為懲罰項;
由該模型的特點可建立多變量回歸假設如下:
hθ(x)=θ0+θ1x1+θ2x2+...+θnxn,
其中,x為特征矩陣[x0x1……xn],其中x0=1,n為特征的總數,θl為待求解參數,其中0≤l≤n,由此,多變量回歸函數表示為:
hθ(x)=θTx,
其中,x=[x0 x1 x2……xn]T,θ=[θ0 θ1 θ2……θn]T,
求解模型需先對身高、體重、步頻三個特征進行歸一化處理,身高的歸一化步驟如下:
步驟31、求解均值μh和標準差σh,其中hmax為所有身高數據的最大值,hmin為所有身高數據的最小值;
步驟32、歸一化特征,其中,0≤i≤n,n為身高特征的總數量;
以同樣的方式對體重和步頻兩個特征進行歸一化處理;
特征歸一化后再用梯度下降算法求解模型,具體算法如下:
定義變量xj(i)表示第i組數組的第j維輸入,y(i)表示第i組輸出,θj表示第j維系數,則可定義誤差函數為:
J=12mΣ1n(hθ(xi)-yi)2,]]>
對誤差函數進行求導并整理得到:
θj:=θj-α1mΣ1m(hθ(xi)-yi)xj(i),]]>
其中,0≤j≤n,n為特征的個數,α為學習率,即每一步更新θj的速度,m表示第m次迭代,定義迭代總次數為M,則可得到梯度下降過程的每一次迭代為:
for(n≥1)
repeat{
θj:=θj-α1mΣ1m(hθ(xi)-yi)xj(i)]]>
}simultaneouslyupdateθjforj=0……n,
調節迭代總次數M和學習率α,最終得到使誤差J最小的步長模型:
y=0.004292h+0.000641w+0.000334f+0.000182,
其中,y為步長,h為身高,w為體重,f為步頻。
本發明是一種基于斜率運算和加速度信號的檢峰方法,步頻計算,基于多變量回歸的實時步長模型估計,具體如下:
1、基于斜率運算和加速度信號的檢峰方法;
本發明采用基于斜率運算和加速度信號的檢峰方法,檢測峰值點是進行步頻計算的預處理工作,為了能夠準確地計算步頻,對用戶的加速度信號進行分析,得到的一般人的走路加速度信號分布圖如附圖1所示。
根據人走路的加速度信號可以看出,人在走路的時候加速度信號一般會有兩個峰值點,其中較高的峰值點的加速度信號是人全腳掌著地時產生的,較低一點的峰值點的加速度信號是人腳跟著地時產生的,兩個峰值點組成人走路的一個時間周期。
但由于人走路的時候的周期性并不良好,經常伴隨著一些無意識的人為抖 動,導致加速度信號總是伴隨著許多轉折點,這對提取峰值點造成了一定的干擾。因此,本發明設計了一種基于斜率運算和加速度信號的檢峰方法。
在用戶走路時,手機內置加速度傳感器采集到的實時加速度信號記為a(i)定義m=a(i+1)-a(i),n=a(i+2)-a(i+1),其中i表示第i個時刻,則m和n均為有正負值的標量,當m或n為正時,表示i時刻或i+1時刻的斜率為正時,i時刻或i+1時刻加速度數據呈現上升趨勢,當m或n為負時,表示當前i時刻或i+1時刻的斜率為負,當前i時刻或i+1時刻的加速度數據呈現下降趨勢。因此,當i時刻有m≥0且n≤0時,表示i時刻處于加速度數據的轉折點。由于歸一化后的加速度數據均分布于區間[0,1]之間,為了完全消除前面數據預處理階段未能完全消除的,由于人的抖動等因素而導致的加速度數據在非波峰階段呈現的抖動的現象,定義變量y1=0.6A作為峰值點附近加速度值必須滿足的條件,其中A為歸一化后所有加速度數據的最大值,該條件是由多次在計算機上檢峰處理效果較好得到的經驗值,即需滿足i時刻有a(i)>y1,i+2時刻有a(i+2)>y1,i-2時刻有a(i-2)>y1,這是為了消除由于人的抖動而出現的加速度呈現上下抖動的現象。此外還需同時滿足i-2時刻有a(i-1)>a(i-3),i+2時刻有a(i+1)>a(i+3),這是為了消除加速度數據上升或下降階段未到達峰值時出現的加速度數據暫時下降或上升而出現轉折點的想象,由此可得峰值判斷步驟如下:
(1)判斷當前i時刻是否滿足m≥0且n≤0,若滿足則可確定當前i時刻為加速度轉折點,繼續步驟(2);
(2)判斷當前i時刻能否同時滿足a(i)>y1a(i+2)>y1a(i-2)>y1a(i-1)>a(i-3)a(i+1)>a(i+3),]]>若滿足則可確定當前i 時刻為峰值點,若不滿足則可確定當前i時刻加速度轉折點為抖動數據,繼續步驟(1)。
2、步頻計算;
人走路時的步長跟走路的速度是呈正相關關系,但是要從人走路的加速度信號中抽取出人走路的速度,需要對加速度信號進行積分運算,運算量比較大。為了更方便地表征人走路時的速度大小,本發明引入步頻f這一物理量來表征用戶走路的速度大小,其定義為1秒時間內人走路的步數,為了求出人走路時的步頻,本發明設計了一種步頻計算方法。
在上述檢峰過程中,確定峰值點的同時也可以獲取該峰值點在所有數據中的位置i,定義kj為第j個峰值點與第j-1個峰值點之間加速度采樣點數,在所有峰值點確定之后,即可得到矩陣K=[k1,k2…kN],其中kj為第j個峰值點與第j-1個峰值點之間加速度采樣點數,且1≤j≤N,N為峰值點的總數減1;由于人的運動頻率基本在20Hz以內,為減小誤差,先對矩陣K進行排序,然后除去兩邊kj≥75和kj≤10的數據,剩下的矩陣K的數據長度記為N0,則從矩陣K的中間起向左右兩邊各取N0個數據,總共N0個數據,再對這N0個數據算平均值作為該次加速度傳感器采樣得到的走一步時間內加速度的采樣點數NS,則步頻計算公式如下:
f=fsNS,---(1)]]>
其中f為步頻,即用戶1秒的時間內走路的步數,fs為加速度傳感器的采樣頻率。
3、基于多變量回歸的實時步長模型估計;
在獲取用戶的身高、體重信息并求出用戶實時走路的步頻后,為了求出用戶走路的實時步長,本發明設計了一種基于多變量回歸實時步長模型估計方法。
在這一方法中,首先建立步長與身高、體重和步頻的數學模型。由于正常人的步長與身高呈正相關關系,與體重也大概呈現線性關系,與人的走路速度呈現正相關關系,用步頻來表征走路速度的快慢為:步頻越高,表示速度越快,步頻越低,表示速度越慢,由此可以建立步長與身高,體重,步頻的數學模型如下:
y=ah+βw+λf+μ,     (2)
其中h為身高,w為體重,f為步頻,μ為懲罰項;
由該模型的特點可建立多變量回歸假設如下:
hθ(x)=θ0+θ1x1+θ2x2+...+θnxn,                 (3)
其中x為特征矩陣[x0x1……xn],其中x0=1,n為特征的總數,θl為待求解參數,其中0≤l≤n,由此,多變量回歸函數可以表示為:
hθ(x)=θTx,               (4)
其中,x=[x0 x1 x2……xn]T,θ=[θ0 θ1 θ2……θn]T,
求解模型需先對身高、體重、步頻三個特征進行歸一化處理,身高的歸一化處步驟如下:
(1)求解均值μh和標準差σh,其中其中hmax為所有身高數據的最大值,hmin為所有身高數據的最小值;
(2)歸一化特征,其中0≤i≤n,n為身高特征的總數量。
以同樣的方式對體重和步頻兩個特征進行歸一化處理。
特征歸一化后便可用梯度下降算法求解模型,算法流程如下:
定義變量xj(i)表示第i組數組的第j維輸入,y(i)表示第i組輸出,θj表示第j維系數,則可定義誤差函數為
J=12mΣ1n(hθ(xi)-yi)2,---(5)]]>
對誤差函數進行求導并整理得到:
θj:=θj-α1mΣ1m(hθ(xi)-yi)xj(i),---(6)]]>
其中0≤j≤n,n為特征的個數,α為學習率,即每一步更新θj的速度,m表示第m次迭代,定義迭代總次數為M,,則可得梯度下降過程的每一次迭代為:
for(n≥1)
repeat{
θj:=θj-α1mΣ1m(hθ(xi)-yi)xj(i)---(7)]]>
}simultaneouslyupdateθjforj=0……n,
調節迭代次數M和學習率α,最終可以得到使誤差J最小的步長模型:
y=0.004292h+0.000641w+0.000334f+0.000182,(8)
其中y為步長,h為身高,w為體重,f為步頻。
求解該模型的數據采集自華南理工大學的學生,總共采集到數據54套,除去一些存在異常的數據剩下45套,其中31套用于訓練學習模型,剩下14套用于預測步長檢驗學習效果。采集到的數據身高分布在1.58-1.84m范圍內,體重分布在44-90kg范圍內,步長分布在0.6981-0.8777m范圍內,跨度分布較大,比較有說服力。
得到最優實時走路步長估計模型后,為了驗證該模型的可靠性,用沒有參與訓練的14套數據進行預測,預測結果如下:
平均誤差最大誤差最小誤差誤差率準確率0.0364m0.0761m0.0008m4.8510%95.1490%
由于得到的模型的預測準確率已經很高,故可以認為步長與身高、體重和步頻的關系為上述曲線,可以忽略其他因素。
本發明相對于現有技術具有如下的優點及效果:
1、本發明只需填入數據,每隔一段時間計算步頻帶入模型便可以求出實時步長,可以利用任何擁有加速度傳感器的手機進行實時步長計算,適應范圍非常廣。
2、本發明在獲取用戶的身高、體重和走路時加速度信號的基礎上,對用戶的實時走路步長進行估計的方法;本發明利用智能手機內置的加速度傳感器采集到的用戶實時走路的加速度信號,對其進行檢峰、步頻計算,并結合用戶的身高,體重信息運用多變量回歸模型估計出用戶實時走路的步長。本發明是一種簡便的估計實時步長的方法,彌補了GPS不適合用于室內場合以及一些有較高遮擋物的室外場合的缺點。
附圖說明
圖1是本發明的走路時加速度信號的分析圖。
圖2是本發明的模型求解流程圖。
圖3時本發明的系統流程圖。
具體實施方式
下面結合實施例及附圖對本發明作進一步詳細的描述,但本發明的實施方式不限于此。
實施例
如圖3所示,為對于用戶步長的實時計算系統流程圖,具體步驟包括:
一、數據預處理;
對于加速度傳感器采集到的用戶的實時走路加速度信息,為了是實現自動處理,預處理程序中自動選取了采集到的加速度數據中間的第2800到第4500個點,避免了開頭和后面可能出現誤差的數據。由于單個加速度軸的加速度數據不能保證每次都有比較好的周期性質,故采用三周合力檢峰的處理辦法。此外,由于人走路時的加速度的周期效果非常差,故需要先對數據進行濾波平滑 處理,處理步驟為:
(1)用高斯濾波器去除額外噪聲干擾;
(2)用16點滑動濾波器平滑數據,使數據的分布圖較為光滑,提高檢峰效果。
數據預處理方程如下:
ax=ax-128
ax=ax/Nx
ay=ay-128
ay=ay/Ny        (9)
az=az-128
az=az/Nz,
其中,ax,ay,az分別為x軸,y軸,z軸的加速度,Nx,Ny,Nz分別為ax,ay,az的奇異范數。
三軸加速度合并方程如下:
a=ax2+ay2+az2,---(10)]]>
其中a為三軸合并加速度。
數據預處理后周期性質體現得比較清楚。每一個周期可以看做是走了一步。每個周期的峰值都已經獲取并畫出來。由圖可以分析實驗者走路時加速度數據的走向。如圖1所示,人的加速度數據呈現周期特性,每個周期都有兩個峰值,一個比較矮的是實驗者腳跟著地的瞬間,隨后加速度下降,然后加速度再次上升,直到整個腳掌都著地的時候加速度達到最大值。這就是每走一步期間的加速度分布狀態。
二、基于斜率運算和加速度信號的檢峰;
在采集了用戶走路的實時加速度信息并進行預處理后,可以檢峰的步驟如下:
(1)判斷當前i時刻是否滿足m≥0且n≤0,若滿足則可確定當前i時刻加 速度轉折點,繼續步驟(2);
(2)判斷當前i時刻能否同時滿足a(i)>y1a(i+2)>y1a(i-2)>y1a(i-1)>a(i-3)a(i+1)>a(i+3),]]>若滿足則可確定當前i時刻為峰值點,若不滿足則可確定當前i時刻加速度轉折點為抖動數據,繼續步驟(1)。
其中,a(i)為手機內置加速度傳感器采集到的實時加速度信號,i表示第i個時刻,m和n的定義分別為m=a(i+1)-a(i),n=a(i+2)-a(i+1),則m和n均為有正負值的標量,當m或n為正時,表示i時刻或i+1時刻的斜率為正時,i時刻或i+1時刻加速度數據呈現上升趨勢,當m或n為負時,表示當前i時刻或i+1時刻的斜率為負,當前i時刻或i+1時刻的加速度數據呈現下降趨勢。因此,當i時刻有m≥0且n≤0時,表示i時刻處于加速度數據的轉折點。定義變量y1=0.6A作為峰值點附近加速度值必須滿足的條件,其中A為歸一化后所有加速度數據的最大值,該條件是由多次在計算機上檢峰處理效果較好得到的經驗值,即需滿足i時刻有a(i)>y1,i+2時刻有a(i+2)>y1,i-2時刻有a(i-2)>y1,這是為了消除由于人的抖動而出現的加速度呈現上下抖動的現象。此外還需同時滿足i-2時刻有a(i-1)>a(i-3),i+2時刻有a(i+1)>a(i+3),這是為了消除加速度數據上升或下降階段未到達峰值時出現的加速度數據暫時下降或上升而出現轉折點的想象。
三、步頻計算;
如圖2所示,在上述檢峰確定峰值點的同時也可以獲取該峰值點在所有數據中的位置i,定義kj為第j個峰值點與第j-1個峰值點之間加速度采樣點數,在所有峰值點確定之后,即可得到矩陣K=[k1,k2…kN],其中kj為第j個峰值點與 第j-1個峰值點之間加速度采樣點數,且1≤j≤N,N為峰值點的總數。然后再對矩陣K進行排序,然后除去兩邊kj≥75和kj≤10的數據,并從矩陣K的中間起向左右兩邊各取N0個數據,總共N0個數據,再對這N0個數據算平均值作為該次加速度傳感器采樣得到的走一步時間內加速度的采樣點數NS,則步頻計算公式如下:
f=fsNS,---(11)]]>
其中f為步頻,即用戶1秒的時間內走路的步數,fs為加速度傳感器的采樣頻率。
四、代入模型求解用戶實時步長;
在獲取了用戶的身高、體重和實時走路步頻之后,帶入本發明的模型即可得到用戶的實時步長,模型的方程如下:
y=0.004292h+0.000641w+0.000334f+0.000182,(12)
其中,y為步長,h為身高,w為體重,f為步頻,每隔一段時間采集用戶走路的加速度數據并預處理計算實時步頻后帶入該模型即可得到用戶的實時步長,該模型具有很高的精確度和廣泛的步頻適應范圍,適合用于定位以及走路距離預測。
上述實施例為本發明較佳的實施方式,但本發明的實施方式并不受上述實施例的限制,其他的任何未背離本發明的精神實質與原理下所作的改變、修飾、替代、組合、簡化,均應為等效的置換方式,都包含在本發明的保護范圍之內。

關 鍵 詞:
一種 基于 加速度 傳感器 實時 步長 估計 方法
  專利查詢網所有資源均是用戶自行上傳分享,僅供網友學習交流,未經上傳用戶書面授權,請勿作他用。
關于本文
本文標題:一種基于加速度傳感器的實時步長估計方法.pdf
鏈接地址:http://www.wwszu.club/p-6140849.html
關于我們 - 網站聲明 - 網站地圖 - 資源地圖 - 友情鏈接 - 網站客服客服 - 聯系我們

[email protected] 2017-2018 zhuanlichaxun.net網站版權所有
經營許可證編號:粵ICP備17046363號-1 
 


收起
展開
鬼佬大哥大