芒果视频下载

網站分(fen)類
登錄 |    

計步器算法是如何實現的 智能計步器算法思想詳解

本文章由注冊用戶 壯志凌云 上傳提供 評論 發布 反饋 0
摘要:計步器是一種頗受歡迎的日常鍛煉進度監控器,可以激勵人們定期運動鍛煉,增強體質。計步器算法的實現方法主要有峰值檢測算法,變換域算法,,濾波算法和模式識別算法四種,常用的是峰值檢測算法,通過獲取用戶運動軌跡,監測峰值,去干擾,推算運動狀態的方法來完成計步。下面為大家介紹智能計步器的算法思想和算法程序,一起來了解一下吧!

計步器算法是如何實現的

計步(bu)算(suan)(suan)法(fa)可以分為四(si)大類,一是(shi)(shi)峰(feng)值檢測算(suan)(suan)法(fa),二是(shi)(shi)變換域(yu)算(suan)(suan)法(fa),三是(shi)(shi)濾波算(suan)(suan)法(fa),四(si)是(shi)(shi)模式識別算(suan)(suan)法(fa)。根據所設計的計步(bu)器在(zai)人體(ti)上布放的位置不同(tong),如(ru)腕部、腰(yao)部、鞋底(di)等,可以選擇不同(tong)的計步(bu)算(suan)(suan)法(fa)。以應用(yong)最(zui)為廣(guang)泛的峰(feng)值檢測算(suan)(suan)法(fa)為例:

1、運動軌跡

用戶(hu)在(zai)運動中(zhong),可能把設備放置(zhi)于口袋或(huo)者包中(zhong),亦(yi)或(huo)拿在(zai)手中(zhong),所以設備的放置(zhi)方(fang)向不確定。那么(me)首先,我們通過(guo)計算(suan)三個加(jia)速度(du)的矢量長度(du),可以獲得一條(tiao)步行(xing)運動的正(zheng)弦曲線(xian)軌跡。

2、峰值檢測

我們(men)(men)記(ji)錄了上(shang)次矢量長度(du)和運動方向(xiang),通過(guo)矢量長度(du)的(de)變化(hua),可(ke)以判斷當前加速(su)度(du)的(de)方向(xiang),并和上(shang)一(yi)次保存的(de)加速(su)度(du)方向(xiang)進行(xing)比較(jiao)。如果是相反的(de),即是剛(gang)過(guo)峰值狀態(tai),則(ze)(ze)進入計(ji)步(bu)邏輯進行(xing)計(ji)步(bu),否則(ze)(ze)就舍(she)棄這段。通過(guo)對(dui)峰值次數的(de)累加,那我們(men)(men)就可(ke)得(de)計(ji)算得(de)到(dao)用(yong)戶步(bu)行(xing)的(de)步(bu)數。

該圖片由注冊用戶"壯志凌云"提供,版權聲明反饋

3、去噪音(干擾

手(shou)機或(huo)(huo)智能手(shou)表等手(shou)持(chi)設備(bei)(bei)會有一些(xie)低幅度和快(kuai)(kuai)速的(de)抽(chou)動狀態,即我們俗稱的(de)手(shou)抖,或(huo)(huo)者某個(ge)用戶想通過短時快(kuai)(kuai)速反復搖動設備(bei)(bei)來(lai)(lai)模擬(ni)人(ren)走路,這些(xie)干(gan)擾(rao)數(shu)據(ju)如(ru)果不剔除,會影響記步(bu)的(de)準(zhun)確值,對于(yu)這種(zhong)干(gan)擾(rao),我們可以通過給檢測加上閾值和步(bu)頻判斷來(lai)(lai)過濾(lv)。

目(mu)前人類(lei)最快的(de)(de)跑步(bu)頻率(lv)為(wei)5HZ(當然(ran)不排除人類(lei)借助其(qi)它(ta)設備跑步(bu)頻率(lv)超過(guo)(guo)這(zhe)個頻率(lv)),也就(jiu)是說(shuo)相鄰兩(liang)步(bu)的(de)(de)時(shi)(shi)(shi)間間隔(ge)的(de)(de)至少(shao)大于(yu)0.2秒(miao),如圖中的(de)(de)計步(bu)時(shi)(shi)(shi)間,若兩(liang)次計步(bu)之間的(de)(de)時(shi)(shi)(shi)間間隔(ge)小于(yu)0.2秒(miao),則不計步(bu)。這(zhe)樣我(wo)們(men)就(jiu)過(guo)(guo)濾了高頻噪聲(sheng),即步(bu)頻過(guo)(guo)快的(de)(de)情況(kuang)。同時(shi)(shi)(shi)我(wo)們(men)通過(guo)(guo)和上次加速(su)度大小進行比較,設置一定的(de)(de)閾(yu)值Threshold來判(pan)斷運動是否屬于(yu)有效(xiao)(如圖中的(de)(de)綠線),有效(xiao)運動才可(ke)進行記步(bu)。

4、推算運動狀態

如果已(yi)知(zhi)步行(xing)和跑步的(de)步數(shu),那(nei)么再通過(guo)人體身(shen)高(gao),體重及(ji)性(xing)別就可(ke)(ke)(ke)以(yi)大致知(zhi)道(dao)此人的(de)步長,改進后即(ji)可(ke)(ke)(ke)變(bian)成一個(ge)測(ce)(ce)距離及(ji)測(ce)(ce)速(su)計。通過(guo)三軸加速(su)度傳感器(qi),我們可(ke)(ke)(ke)以(yi)知(zhi)道(dao)用戶的(de)運動(dong)狀(zhuang)態。除(chu)了計步,還(huan)可(ke)(ke)(ke)以(yi)利用加速(su)度傳感器(qi)與(yu)陀螺儀(yi)及(ji)磁傳感器(qi)融(rong)合進行(xing)步行(xing)航跡(ji)推算,防止(zhi)出現誤計步的(de)現象(xiang)。

智能計步器算法思想詳解

1、閾值

運動(dong)加速度一般呈現正弦變化,當運動(dong)速度提升,最大值(zhi)與最小(xiao)值(zhi)抬高時候(hou),平均值(zhi)也(ye)應當跟(gen)著軌跡變化。因此,運動(dong)閾值(zhi)是一個(ge)動(dong)態值(zhi),具有自適應性,并且足夠快。

加速度計不斷的更新三(san)軸數據,采集濾波,判(pan)斷最大(da)(da)值(zhi)(zhi)與最小值(zhi)(zhi)。我們(men)以采樣50次為一組更新一次閾值(zhi)(zhi)。平(ping)均值(zhi)(zhi)(max+min)/2做為“運(yun)動閾值(zhi)(zhi)”。動態(tai)精(jing)度由自己(ji)劃(hua)分,把運(yun)動變化量劃(hua)分等級(ji),隨(sui)著運(yun)動閾值(zhi)(zhi)大(da)(da)小判(pan)定當前精(jing)度值(zhi)(zhi)。

2、邁判斷

(1)步伐邁出的條件定義:當(dang)(dang)加(jia)速度曲(qu)線跨過(guo)動(dong)態(tai)閥值上方時(shi)或者當(dang)(dang)加(jia)速度曲(qu)線跨過(guo)動(dong)態(tai)閥值下方時(shi)加(jia)速度的變化為(wei)正值或者為(wei)負值。

(2)利用線性位移(yi)(yi)寄(ji)(ji)(ji)存(cun)器(qi)和動(dong)態閥值(zhi)和動(dong)態精(jing)度(du)一(yi)起判斷個(ge)(ge)體是(shi)否(fou)邁出(chu)有效(xiao)的一(yi)步。建立兩個(ge)(ge)寄(ji)(ji)(ji)存(cun),new寄(ji)(ji)(ji)存(cun)器(qi)和old寄(ji)(ji)(ji)存(cun)器(qi);當(dang)前數(shu)(shu)據采(cai)集到后判斷是(shi)否(fou)移(yi)(yi)入(ru)new寄(ji)(ji)(ji)存(cun)器(qi),滿足移(yi)(yi)入(ru)條件(jian):加速度(du)變化(hua)量大于當(dang)前的動(dong)態精(jing)度(du)。就(jiu)把當(dang)前采(cai)集的數(shu)(shu)據移(yi)(yi)入(ru)new寄(ji)(ji)(ji)存(cun)器(qi),否(fou)則new保持不變。每當(dang)新(xin)數(shu)(shu)據到來時(shi)候(hou),new寄(ji)(ji)(ji)存(cun)器(qi)的值(zhi)無條件(jian)移(yi)(yi)入(ru)old寄(ji)(ji)(ji)存(cun)器(qi)。這樣,就(jiu)能夠避(bi)免高頻噪聲的影響,提高判斷精(jing)度(du)。

(3)三軸加速度同(tong)時檢(jian)測,可以但是只要一個(ge)軸的加速度變化最大,可以利用該軸當為運動方向,其(qi)他軸忽(hu)略不(bu)計。

3、具體程序

(1)采樣濾波,求(qiu)出3軸的平(ping)均值(zhi),求(qiu)出加速度的最大,最小值(zhi)。

(2)每采(cai)樣50次,求出峰(feng)值(zhi),然后設置(zhi)門(men)限。

(3)計(ji)算(suan)精度(du)。

(4)對采樣濾(lv)波的平均值進行處理然后將其(qi)與精度進行比較(jiao)(通過移(yi)位寄存器來消(xiao)除(chu)高頻噪聲,使值更精確(que))。

(5)動態門限判定,對數值進行比較,然(ran)后將步數加(jia)1。

申明:以上方法源于程序系統索引或網民分享提供,僅供您參考使用,不代表本網站的研究觀點,證明有效,請注意甄別內容來源的真實性和權威性。

網站提醒和聲明
本站為注冊用(yong)(yong)戶(hu)提(ti)供信息存儲空(kong)間服務,非“MAIGOO編輯上傳(chuan)提(ti)供”的(de)文章/文字均是注冊用(yong)(yong)戶(hu)自主發布上傳(chuan),不(bu)代(dai)表本站觀點,更(geng)不(bu)表示本站支持購買和(he)交易,本站對網頁中內容的(de)合(he)法性(xing)、準確性(xing)、真實性(xing)、適(shi)用(yong)(yong)性(xing)、安全性(xing)等(deng)概不(bu)負責(ze)。版權(quan)(quan)歸原作(zuo)者所有,如有侵權(quan)(quan)、虛假(jia)信息、錯誤信息或任何問題,請及(ji)時聯系(xi)我們,我們將在(zai)第一時間刪除或更(geng)正。 申請刪除>> 糾錯>> 投訴侵權>>
提交說明: 快速提交發布>> 查看提交幫助>> 注冊登錄>>
發表評論
您還未登錄,依《網絡安全法》相關要求,請您登錄賬戶后再提交發布信息。點擊登錄>>如您還未注冊,可,感謝您的理解及支持!
最新評論
暫無評論
頁面相關分類
熱門模塊
已有4078233個品牌入駐 更新519244個招商信息 已發布1590547個代理需求 已有1356339條品牌點贊