芒果视频下载

網站(zhan)分類
登錄 |    

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

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

計步器算法是如何實現的

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

1、運動軌跡

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

2、峰值檢測

我們(men)記錄(lu)了上(shang)(shang)次矢量(liang)長度(du)(du)和運動方(fang)(fang)向(xiang)(xiang),通(tong)(tong)過矢量(liang)長度(du)(du)的變化,可以判斷當前加(jia)速(su)度(du)(du)的方(fang)(fang)向(xiang)(xiang),并和上(shang)(shang)一次保存的加(jia)速(su)度(du)(du)方(fang)(fang)向(xiang)(xiang)進行比較。如果是(shi)相反的,即是(shi)剛過峰值(zhi)狀態,則進入計(ji)步(bu)(bu)(bu)邏輯進行計(ji)步(bu)(bu)(bu),否則就舍(she)棄這(zhe)段。通(tong)(tong)過對峰值(zhi)次數的累加(jia),那(nei)我們(men)就可得計(ji)算得到用(yong)戶步(bu)(bu)(bu)行的步(bu)(bu)(bu)數。

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

3、去噪音(干擾

手(shou)機(ji)或(huo)智能手(shou)表(biao)等手(shou)持設備(bei)會有一(yi)些低幅度和(he)快(kuai)(kuai)速(su)的(de)抽動(dong)狀態,即我們(men)俗(su)稱的(de)手(shou)抖,或(huo)者某個(ge)用戶想通(tong)過(guo)短時快(kuai)(kuai)速(su)反(fan)復搖動(dong)設備(bei)來模擬人走路,這些干(gan)擾數據(ju)如果不剔除,會影響記(ji)步(bu)的(de)準確(que)值(zhi),對于這種干(gan)擾,我們(men)可以通(tong)過(guo)給檢測加上(shang)閾值(zhi)和(he)步(bu)頻判斷(duan)來過(guo)濾。

目前人類最(zui)快的(de)跑(pao)步(bu)(bu)頻(pin)率(lv)為5HZ(當然(ran)不排除人類借助其(qi)它設備(bei)跑(pao)步(bu)(bu)頻(pin)率(lv)超過這個頻(pin)率(lv)),也(ye)就(jiu)是說相鄰(lin)兩(liang)(liang)步(bu)(bu)的(de)時間(jian)間(jian)隔的(de)至少大(da)于(yu)0.2秒,如圖中的(de)計步(bu)(bu)時間(jian),若兩(liang)(liang)次(ci)計步(bu)(bu)之間(jian)的(de)時間(jian)間(jian)隔小(xiao)于(yu)0.2秒,則(ze)不計步(bu)(bu)。這樣我(wo)們(men)就(jiu)過濾了(le)高(gao)頻(pin)噪(zao)聲(sheng),即步(bu)(bu)頻(pin)過快的(de)情況。同時我(wo)們(men)通過和上次(ci)加(jia)速(su)度大(da)小(xiao)進行比較(jiao),設置一定的(de)閾值Threshold來判斷運動是否屬于(yu)有(you)效(xiao)(如圖中的(de)綠線),有(you)效(xiao)運動才(cai)可(ke)進行記步(bu)(bu)。

4、推算運動狀態

如果已知步(bu)(bu)行(xing)和跑(pao)步(bu)(bu)的(de)(de)步(bu)(bu)數,那么再通(tong)過人(ren)體身(shen)高,體重(zhong)及性別就可(ke)(ke)以大致(zhi)知道此人(ren)的(de)(de)步(bu)(bu)長(chang),改(gai)進后即可(ke)(ke)變成一個測(ce)(ce)距離(li)及測(ce)(ce)速(su)計(ji)。通(tong)過三軸加(jia)速(su)度(du)傳(chuan)感器,我們可(ke)(ke)以知道用戶的(de)(de)運動(dong)狀態。除了計(ji)步(bu)(bu),還可(ke)(ke)以利(li)用加(jia)速(su)度(du)傳(chuan)感器與陀螺儀及磁(ci)傳(chuan)感器融合進行(xing)步(bu)(bu)行(xing)航跡推算,防止出現誤計(ji)步(bu)(bu)的(de)(de)現象(xiang)。

智能計步器算法思想詳解

1、閾值

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

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

2、邁判斷

(1)步伐邁出(chu)的(de)條件定義:當(dang)加速(su)度曲線跨過動態閥(fa)值(zhi)上方(fang)時(shi)或者(zhe)當(dang)加速(su)度曲線跨過動態閥(fa)值(zhi)下方(fang)時(shi)加速(su)度的(de)變(bian)化為正(zheng)值(zhi)或者(zhe)為負值(zhi)。

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

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

3、具體程序

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

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

(3)計(ji)算精度。

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

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

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

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