芒果视频下载

網站分類
登錄 |    

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

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

計步器算法是如何實現的

計(ji)步(bu)(bu)算法(fa)可(ke)以(yi)分為四大類,一(yi)是(shi)峰(feng)值檢(jian)測算法(fa),二是(shi)變換域算法(fa),三是(shi)濾波算法(fa),四是(shi)模(mo)式識別算法(fa)。根(gen)據所設(she)計(ji)的(de)計(ji)步(bu)(bu)器在人體上布放的(de)位置不(bu)同,如腕部、腰部、鞋(xie)底等,可(ke)以(yi)選擇不(bu)同的(de)計(ji)步(bu)(bu)算法(fa)。以(yi)應用(yong)最為廣泛的(de)峰(feng)值檢(jian)測算法(fa)為例:

1、運動軌跡

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

2、峰值檢測

我(wo)們記錄了上次矢(shi)量長度(du)和運(yun)動方向,通過矢(shi)量長度(du)的(de)(de)變(bian)化,可以判斷當前加(jia)速度(du)的(de)(de)方向,并和上一次保(bao)存的(de)(de)加(jia)速度(du)方向進行比較。如果是(shi)相反的(de)(de),即是(shi)剛過峰值狀態,則(ze)進入(ru)計(ji)步邏(luo)輯(ji)進行計(ji)步,否則(ze)就(jiu)舍棄這段。通過對(dui)峰值次數的(de)(de)累(lei)加(jia),那我(wo)們就(jiu)可得(de)計(ji)算得(de)到用戶(hu)步行的(de)(de)步數。

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

3、去噪音(干擾

手(shou)機或智能手(shou)表等手(shou)持設備會有一些(xie)低幅(fu)度和快速的(de)抽動(dong)狀態,即我們俗稱的(de)手(shou)抖,或者(zhe)某個用戶想通過短時快速反復搖動(dong)設備來模擬人走路,這些(xie)干擾(rao)數據如果不剔除(chu),會影(ying)響(xiang)記步的(de)準確值(zhi),對于(yu)這種干擾(rao),我們可以通過給檢測加(jia)上(shang)閾值(zhi)和步頻判(pan)斷來過濾。

目前人(ren)類(lei)最快的(de)(de)(de)跑步(bu)(bu)(bu)頻(pin)率為5HZ(當然不(bu)(bu)排(pai)除(chu)人(ren)類(lei)借助其它設備跑步(bu)(bu)(bu)頻(pin)率超(chao)過(guo)(guo)這個頻(pin)率),也就是說相鄰兩步(bu)(bu)(bu)的(de)(de)(de)時(shi)間間隔的(de)(de)(de)至少大于(yu)0.2秒,如圖中(zhong)的(de)(de)(de)計步(bu)(bu)(bu)時(shi)間,若兩次計步(bu)(bu)(bu)之(zhi)間的(de)(de)(de)時(shi)間間隔小于(yu)0.2秒,則不(bu)(bu)計步(bu)(bu)(bu)。這樣(yang)我(wo)(wo)們(men)就過(guo)(guo)濾了高(gao)頻(pin)噪聲,即步(bu)(bu)(bu)頻(pin)過(guo)(guo)快的(de)(de)(de)情況。同(tong)時(shi)我(wo)(wo)們(men)通過(guo)(guo)和(he)上次加速度大小進行(xing)比較,設置一(yi)定的(de)(de)(de)閾值Threshold來判斷運動(dong)是否屬于(yu)有(you)效(xiao)(如圖中(zhong)的(de)(de)(de)綠線),有(you)效(xiao)運動(dong)才可進行(xing)記(ji)步(bu)(bu)(bu)。

4、推算運動狀態

如果已知(zhi)步(bu)(bu)(bu)行(xing)(xing)和(he)跑步(bu)(bu)(bu)的步(bu)(bu)(bu)數,那么(me)再通(tong)過(guo)人體(ti)(ti)身(shen)高,體(ti)(ti)重及(ji)(ji)性別就(jiu)可(ke)以(yi)大致知(zhi)道(dao)此(ci)人的步(bu)(bu)(bu)長,改進后即(ji)可(ke)變成一個測距離及(ji)(ji)測速(su)計。通(tong)過(guo)三軸(zhou)加速(su)度傳感器(qi),我們可(ke)以(yi)知(zhi)道(dao)用(yong)戶的運動狀態。除了計步(bu)(bu)(bu),還可(ke)以(yi)利用(yong)加速(su)度傳感器(qi)與陀螺儀及(ji)(ji)磁傳感器(qi)融合進行(xing)(xing)步(bu)(bu)(bu)行(xing)(xing)航跡推算,防止出現(xian)誤計步(bu)(bu)(bu)的現(xian)象。

智能計步器算法思想詳解

1、閾值

運(yun)動(dong)加(jia)速(su)度一(yi)般呈現正弦變化,當運(yun)動(dong)速(su)度提升,最(zui)大值(zhi)(zhi)(zhi)與最(zui)小值(zhi)(zhi)(zhi)抬高時(shi)候,平均(jun)值(zhi)(zhi)(zhi)也應當跟著軌跡變化。因(yin)此,運(yun)動(dong)閾值(zhi)(zhi)(zhi)是一(yi)個動(dong)態值(zhi)(zhi)(zhi),具(ju)有自適應性(xing),并且足夠快。

加速度(du)計不斷的更新三軸數據,采(cai)集濾波,判斷最大值(zhi)(zhi)與最小(xiao)值(zhi)(zhi)。我們以采(cai)樣50次(ci)為一組更新一次(ci)閾(yu)值(zhi)(zhi)。平均值(zhi)(zhi)(max+min)/2做為“運動(dong)閾(yu)值(zhi)(zhi)”。動(dong)態精度(du)由自己劃分,把運動(dong)變化量劃分等級,隨著運動(dong)閾(yu)值(zhi)(zhi)大小(xiao)判定當前(qian)精度(du)值(zhi)(zhi)。

2、邁判斷

(1)步(bu)伐邁出的條件定義:當加速(su)度曲(qu)(qu)線(xian)跨過(guo)動態閥值上方(fang)時或者(zhe)當加速(su)度曲(qu)(qu)線(xian)跨過(guo)動態閥值下方(fang)時加速(su)度的變(bian)化為正值或者(zhe)為負值。

(2)利用線(xian)性(xing)位移(yi)(yi)(yi)寄(ji)(ji)(ji)(ji)存(cun)(cun)器(qi)和(he)(he)動態閥值和(he)(he)動態精(jing)度(du)一起判(pan)(pan)斷(duan)個體是否(fou)邁(mai)出(chu)有(you)效的(de)一步(bu)。建立兩(liang)個寄(ji)(ji)(ji)(ji)存(cun)(cun),new寄(ji)(ji)(ji)(ji)存(cun)(cun)器(qi)和(he)(he)old寄(ji)(ji)(ji)(ji)存(cun)(cun)器(qi);當(dang)(dang)前數據(ju)采(cai)集到后判(pan)(pan)斷(duan)是否(fou)移(yi)(yi)(yi)入(ru)new寄(ji)(ji)(ji)(ji)存(cun)(cun)器(qi),滿足(zu)移(yi)(yi)(yi)入(ru)條件:加速度(du)變化量大(da)于(yu)當(dang)(dang)前的(de)動態精(jing)度(du)。就把(ba)當(dang)(dang)前采(cai)集的(de)數據(ju)移(yi)(yi)(yi)入(ru)new寄(ji)(ji)(ji)(ji)存(cun)(cun)器(qi),否(fou)則new保持不(bu)變。每當(dang)(dang)新數據(ju)到來時(shi)候,new寄(ji)(ji)(ji)(ji)存(cun)(cun)器(qi)的(de)值無條件移(yi)(yi)(yi)入(ru)old寄(ji)(ji)(ji)(ji)存(cun)(cun)器(qi)。這樣(yang),就能(neng)夠避(bi)免高頻噪聲的(de)影(ying)響,提高判(pan)(pan)斷(duan)精(jing)度(du)。

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

3、具體程序

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

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

(3)計算精度(du)。

(4)對采(cai)樣濾波的平均值(zhi)進(jin)(jin)行(xing)處理然后將其與精度進(jin)(jin)行(xing)比較(jiao)(通過(guo)移位寄存(cun)器來消除高頻噪聲,使值(zhi)更精確)。

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

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

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