本發(fā)明涉及通信領(lǐng)域,特別涉及一種移動終端計(jì)步的方法及移動終端。
背景技術(shù):
隨著移動終端技術(shù)的快速發(fā)展,移動終端的功能越來越多。例如,目前很多移動終端具有計(jì)步功能,移動終端中安裝有計(jì)步程序,通過控制計(jì)步程序統(tǒng)計(jì)用戶每天行走的步數(shù)并顯示給用戶,以讓用戶了解一天的行走情況。
移動終端包括運(yùn)動傳感器,移動終端通過運(yùn)動傳感器實(shí)時采集運(yùn)動數(shù)據(jù),該運(yùn)動數(shù)據(jù)是一種正弦波。目前移動終端控制計(jì)步程序開始計(jì)步時,計(jì)步程序?qū)崟r獲取該運(yùn)動數(shù)據(jù),當(dāng)該運(yùn)動數(shù)據(jù)中某個波形的幅度大于預(yù)設(shè)閾值時,計(jì)步程序確定用戶雙足行走并增加用戶行走的步數(shù)。
在實(shí)現(xiàn)本發(fā)明的過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)至少存在以下問題:
用戶在乘車或騎車時車輛的持續(xù)震動,會使運(yùn)動傳感器采集的波形的幅度變大且可能大于預(yù)設(shè)閾值,這樣情況下會被計(jì)步程序誤認(rèn)為用戶雙足行走,導(dǎo)致計(jì)步精度低。
技術(shù)實(shí)現(xiàn)要素:
為了提高計(jì)步的精度,本發(fā)明提供了一種移動終端計(jì)步的方法及移動終端。所述技術(shù)方案如下:
第一方面,本發(fā)明提供了一種移動終端計(jì)步的方法,所述方法包括:
獲取所述移動終端的運(yùn)動傳感器采集的數(shù)據(jù)和所述移動終端的定位模塊采集的速度信息;
根據(jù)所述數(shù)據(jù)計(jì)算所述移動終端的第一運(yùn)動參數(shù)和第二運(yùn)動參數(shù),所述第一運(yùn)動參數(shù)用于表征所述移動終端的振動幅度,所述第二運(yùn)動參數(shù)用于表征所述移動終端的振動頻率;
根據(jù)所述第一運(yùn)動參數(shù)、所述第二運(yùn)動參數(shù)和所述速度信息確定用戶的運(yùn)動狀態(tài);
當(dāng)所述運(yùn)動狀態(tài)為雙足行走狀態(tài)時,則統(tǒng)計(jì)所述用戶雙足行走的步數(shù)。
可選的,所述根據(jù)所述第一運(yùn)動參數(shù)、所述第二運(yùn)動參數(shù)和所述速度信息確定用戶的運(yùn)動狀態(tài),包括:
在所述第一運(yùn)動參數(shù)大于預(yù)設(shè)第一門限閾值時,確定所述終端對應(yīng)的用戶的運(yùn)動狀態(tài)為跑步狀態(tài);
在所述第一運(yùn)動參數(shù)大于預(yù)設(shè)第二門限閾值且小于或等于所述第一門限閾值時,根據(jù)所述第二運(yùn)動參數(shù)和所述速度信息確定所述用戶的運(yùn)動狀態(tài);
在所述第一運(yùn)動參數(shù)大于預(yù)設(shè)第三門限閾值且小于或等于所述第二門限閾值時,根據(jù)所述速度信息確定所述用戶的運(yùn)動狀態(tài);
在所述第一運(yùn)動參數(shù)小于所述第三門限閾值時,確定所述用戶的運(yùn)動狀態(tài)為靜止?fàn)顟B(tài)。
可選的,所述根據(jù)所述第二運(yùn)動參數(shù)和所述速度信息確定所述用戶的運(yùn)動狀態(tài),包括:
在所述第二運(yùn)動參數(shù)小于預(yù)設(shè)第四門限閾值時,確定所述用戶的運(yùn)動狀態(tài)為走步狀態(tài);
在所述第二運(yùn)動參數(shù)大于或等于所述第四門限閾值時,當(dāng)所述速度信息大于預(yù)設(shè)第五門限閾值,確定所述用戶的運(yùn)動狀態(tài)為騎行狀態(tài),當(dāng)所述速度信息小于或等于所述第五門限閾值,確定所述用戶的運(yùn)動狀態(tài)為走步狀態(tài)。
可選的,所述根據(jù)所述速度信息確定所述用戶的運(yùn)動狀態(tài),包括:
在所述速度信息大于預(yù)設(shè)第六門限閾值時,確定所述用戶的運(yùn)動狀態(tài)為車載狀態(tài);
在所述速度信息小于或等于所述第六門限閾值時,確定所述用戶的運(yùn)動狀態(tài)為靜止?fàn)顟B(tài)。
可選的,所述獲取所述移動終端的傳感器采集的數(shù)據(jù)之后,還包括:
根據(jù)所述數(shù)據(jù)計(jì)算所述移動終端的第三運(yùn)動參數(shù)和第四運(yùn)動參數(shù),所述第三運(yùn)動參數(shù)用于表征所述移動終端的穩(wěn)定程度,所述第四運(yùn)動參數(shù)用于表征所述移動終端的運(yùn)動狀態(tài)發(fā)生突變的程度;
所述根據(jù)所述第一運(yùn)動參數(shù)、所述第二運(yùn)動參數(shù)和所述速度信息確定用戶的運(yùn)動狀態(tài)之后,還包括:
在確定出所述用戶的運(yùn)動狀態(tài)為走步狀態(tài)時,根據(jù)最近上一次確定的所述用戶的運(yùn)動狀態(tài)、所述第三運(yùn)動參數(shù)和所述第四運(yùn)動參數(shù),驗(yàn)證當(dāng)前所述用戶的運(yùn)動狀態(tài)是否為所述確定的走步狀態(tài)。
可選的,所述根據(jù)最近上一次確定的所述用戶的運(yùn)動狀態(tài)、所述第三運(yùn)動參數(shù)和所述第四運(yùn)動參數(shù),驗(yàn)證當(dāng)前所述用戶的運(yùn)動狀態(tài)是否為所述確定的走步狀態(tài),包括:
在最近上一次確定的所述用戶的運(yùn)動狀態(tài)為車載狀態(tài)或騎行狀態(tài)時,根據(jù)所述第三運(yùn)動參數(shù)驗(yàn)證當(dāng)前所述用戶的運(yùn)動狀態(tài)是否為所述確定的走步狀態(tài);
在最近上一次確定的所述用戶的運(yùn)動狀態(tài)為靜止?fàn)顟B(tài)時,根據(jù)所述第四運(yùn)動參數(shù)驗(yàn)證當(dāng)前所述用戶的運(yùn)動狀態(tài)是否為所述確定的走步狀態(tài)。
可選的,所述根據(jù)所述第三運(yùn)動參數(shù)驗(yàn)證當(dāng)前所述用戶的運(yùn)動狀態(tài)是否為所述確定的走步狀態(tài),包括:
當(dāng)所述第三運(yùn)動參數(shù)大于預(yù)設(shè)第七門限閾值時,驗(yàn)證當(dāng)前所述用戶的運(yùn)動狀態(tài)為所述確定的走步狀態(tài);
當(dāng)所述第三運(yùn)動參數(shù)小于或等于所述第七門限閾值時,驗(yàn)證當(dāng)前所述用戶的運(yùn)動狀態(tài)為最近上一次確定的所述用戶的運(yùn)動狀態(tài)。
可選的,所述根據(jù)所述第四運(yùn)動參數(shù)驗(yàn)證當(dāng)前所述用戶的運(yùn)動狀態(tài)是否為所述確定的走步狀態(tài),包括:
當(dāng)所述第四運(yùn)動參數(shù)大于預(yù)設(shè)第八門限閾值時,驗(yàn)證當(dāng)前所述用戶的運(yùn)動狀態(tài)為所述確定的走步狀態(tài);
當(dāng)所述第四運(yùn)動參數(shù)小于或等于所述第八門限閾值時,驗(yàn)證所述用戶的運(yùn)動狀態(tài)為靜止?fàn)顟B(tài)。
可選的,所述統(tǒng)計(jì)所述用戶雙足行走的步數(shù),包括:
獲取所述用戶處于雙足行走狀態(tài)的起始時間和結(jié)束時間;
根據(jù)預(yù)設(shè)的時間偏移量、所述起始時間和所述結(jié)束時間確定有效時間段,所述時間偏移量為確定所述用戶的運(yùn)動狀態(tài)所消耗的時間;
觸發(fā)所述計(jì)步程序根據(jù)所述運(yùn)動傳感器在所述有效時間段內(nèi)采集的運(yùn)動數(shù)據(jù)統(tǒng)計(jì)所述用戶雙足行走的步數(shù)。
第二方面,本發(fā)明提供了一種移動終端,所述移動終端包括:
獲取模塊,用于獲取所述移動終端的運(yùn)動傳感器采集的數(shù)據(jù)和所述移動終端的定位模塊采集的速度信息;
計(jì)算模塊,用于根據(jù)所述數(shù)據(jù)計(jì)算所述移動終端的第一運(yùn)動參數(shù)和第二運(yùn)動參數(shù),所述第一運(yùn)動參數(shù)用于表征所述移動終端的振動幅度,所述第二運(yùn)動參數(shù)用于表征所述移動終端的振動頻率;
確定模塊,用于根據(jù)所述第一運(yùn)動參數(shù)、所述第二運(yùn)動參數(shù)和所述速度信息確定用戶的運(yùn)動狀態(tài);
觸發(fā)模塊,用于當(dāng)所述運(yùn)動狀態(tài)為雙足行走狀態(tài)時,則統(tǒng)計(jì)所述用戶雙足行走的步數(shù)。
可選的,所述確定模塊包括:
第一確定單元,用于在所述第一運(yùn)動參數(shù)大于預(yù)設(shè)第一門限閾值時,確定所述終端對應(yīng)的用戶的運(yùn)動狀態(tài)為跑步狀態(tài);
第二確定單元,用于在所述第一運(yùn)動參數(shù)大于預(yù)設(shè)第二門限閾值且小于或等于所述第一門限閾值時,根據(jù)所述第二運(yùn)動參數(shù)和所述速度信息確定所述用戶的運(yùn)動狀態(tài);
第三確定單元,用于在所述第一運(yùn)動參數(shù)大于預(yù)設(shè)第三門限閾值且小于或等于所述第二門限閾值時,根據(jù)所述速度信息確定所述用戶的運(yùn)動狀態(tài);
第四確定單元,用于在所述第一運(yùn)動參數(shù)小于所述第三門限閾值時,確定所述用戶的運(yùn)動狀態(tài)為靜止?fàn)顟B(tài)。
可選的,所述第二確定單元,用于:
在所述第二運(yùn)動參數(shù)小于預(yù)設(shè)第四門限閾值時,確定所述用戶的運(yùn)動狀態(tài)為走步狀態(tài);
在所述第二運(yùn)動參數(shù)大于或等于所述第四門限閾值時,當(dāng)所述速度信息大于預(yù)設(shè)第五門限閾值,確定所述用戶的運(yùn)動狀態(tài)為騎行狀態(tài),當(dāng)所述速度信息小于或等于所述第五門限閾值,確定所述用戶的運(yùn)動狀態(tài)為走步狀態(tài)。
可選的,所述第三確定單元,用于:
在所述速度信息大于預(yù)設(shè)第六門限閾值時,確定所述用戶的運(yùn)動狀態(tài)為車載狀態(tài);
在所述速度信息小于或等于所述第六門限閾值時,確定所述用戶的運(yùn)動狀態(tài)為靜止?fàn)顟B(tài)。
可選的,所述計(jì)算模塊,還用于根據(jù)所述數(shù)據(jù)計(jì)算所述移動終端的第三運(yùn)動參數(shù)和第四運(yùn)動參數(shù),所述第三運(yùn)動參數(shù)用于表征所述移動終端的穩(wěn)定程度,所述第四運(yùn)動參數(shù)用于表征所述移動終端的運(yùn)動狀態(tài)發(fā)生突變的程度
所述移動終端還包括:
驗(yàn)證模塊,用于在確定出所述用戶的運(yùn)動狀態(tài)為走步狀態(tài)時,根據(jù)最近上一次確定的所述用戶的運(yùn)動狀態(tài)、所述第三運(yùn)動參數(shù)和所述第四運(yùn)動參數(shù),驗(yàn)證當(dāng)前所述用戶的運(yùn)動狀態(tài)是否為所述確定的走步狀態(tài)。
可選的,所述驗(yàn)證模塊包括:
第一驗(yàn)證單元,用于在最近上一次確定的所述用戶的運(yùn)動狀態(tài)為車載狀態(tài)或騎行狀態(tài)時,根據(jù)所述第三運(yùn)動參數(shù)驗(yàn)證當(dāng)前所述用戶的運(yùn)動狀態(tài)是否為所述確定的走步狀態(tài);
第二驗(yàn)證單元,用于在最近上一次確定的所述用戶的運(yùn)動狀態(tài)為靜止?fàn)顟B(tài)時,根據(jù)所述第四運(yùn)動參數(shù)驗(yàn)證當(dāng)前所述用戶的運(yùn)動狀態(tài)是否為所述確定的走步狀態(tài)。
可選的,所述第一驗(yàn)證單元,用于:
當(dāng)所述第三運(yùn)動參數(shù)大于預(yù)設(shè)第七門限閾值時,驗(yàn)證當(dāng)前所述用戶的運(yùn)動狀態(tài)為所述確定的走步狀態(tài);
當(dāng)所述第三運(yùn)動參數(shù)小于或等于所述第七門限閾值時,驗(yàn)證當(dāng)前所述用戶的運(yùn)動狀態(tài)為最近上一次確定的所述用戶的運(yùn)動狀態(tài)。
可選的,所述第二驗(yàn)證單元,用于:
當(dāng)所述第四運(yùn)動參數(shù)大于預(yù)設(shè)第八門限閾值時,驗(yàn)證當(dāng)前所述用戶的運(yùn)動狀態(tài)為所述確定的走步狀態(tài);
當(dāng)所述第四運(yùn)動參數(shù)小于或等于所述第八門限閾值時,驗(yàn)證所述用戶的運(yùn)動狀態(tài)為靜止?fàn)顟B(tài)。
可選的,所述觸發(fā)模塊包括:
獲取單元,用于獲取所述用戶處于雙足行走狀態(tài)的起始時間和結(jié)束時間;
第五確定單元,用于根據(jù)預(yù)設(shè)的時間偏移量、所述起始時間和所述結(jié)束時間確定有效時間段,所述時間偏移量為確定所述用戶的運(yùn)動狀態(tài)所消耗的時間;
觸發(fā)單元,用于觸發(fā)所述計(jì)步程序根據(jù)所述運(yùn)動傳感器在所述有效時間段內(nèi)采集的運(yùn)動數(shù)據(jù)統(tǒng)計(jì)所述用戶雙足行走的步數(shù)。
第三方面,本發(fā)明提供了一種計(jì)算機(jī)可讀存儲介質(zhì),所述計(jì)算機(jī)可讀存儲介質(zhì)包括:
用于獲取移動終端的運(yùn)動傳感器采集的數(shù)據(jù)和所述移動終端的定位模塊采集的速度信息的指令;
用于根據(jù)所述數(shù)據(jù)計(jì)算所述移動終端的第一運(yùn)動參數(shù)和第二運(yùn)動參數(shù)的指令,所述第一運(yùn)動參數(shù)用于表征所述移動終端的振動幅度,所述第二運(yùn)動參數(shù)用于表征所述移動終端的振動頻率;
用于根據(jù)所述第一運(yùn)動參數(shù)、所述第二運(yùn)動參數(shù)和所述速度信息確定用戶的運(yùn)動狀態(tài)的指令;以及,
用于當(dāng)所述運(yùn)動狀態(tài)為雙足行走狀態(tài)時,則統(tǒng)計(jì)所述用戶雙足行走的步數(shù)的指令。
本發(fā)明提供的技術(shù)方案的有益效果是:
通過獲取移動終端的第一運(yùn)動參數(shù)和第二運(yùn)動參數(shù),由于所述第一運(yùn)動參數(shù)用于表征所述移動終端的振動幅度,所述第二運(yùn)動參數(shù)用于表征所述移動終端的振動頻率,所以根據(jù)移動終端的第一運(yùn)動參數(shù)。第二運(yùn)動參數(shù)和速度信息可以確定用戶的運(yùn)動狀態(tài),并只在用戶的運(yùn)動狀態(tài)為雙足行走狀態(tài)時,統(tǒng)計(jì)用戶雙足行走的步數(shù),提高了計(jì)步的精度。
附圖說明
圖1是本發(fā)明實(shí)施例提供的一種移動終端計(jì)步的方法流程圖;
圖2-1是本發(fā)明實(shí)施例提供的另一種移動終端計(jì)步的方法流程圖;
圖2-2是本發(fā)明實(shí)施例提供的一種確定運(yùn)動狀態(tài)的流程圖;
圖2-3是本發(fā)明實(shí)施例提供的一種驗(yàn)證走步狀態(tài)的流程圖;
圖3-1是本發(fā)明實(shí)施例提供的一種移動終端結(jié)構(gòu)示意圖;
圖3-2是本發(fā)明實(shí)施例提供的另一種移動終端結(jié)構(gòu)示意圖;
圖4是本發(fā)明實(shí)施例提供的另一種移動終端結(jié)構(gòu)示意圖。
具體實(shí)施方式
為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合附圖對本發(fā)明實(shí)施方式作進(jìn)一步地詳細(xì)描述。
參見圖1,本發(fā)明實(shí)施例提供了一種移動終端計(jì)步的方法,所述方法包括:
步驟101:獲取移動終端的運(yùn)動傳感器采集的數(shù)據(jù)和移動終端的定位模塊采集的速度信息。
步驟102:根據(jù)該數(shù)據(jù)計(jì)算移動終端的第一運(yùn)動參數(shù)和第二運(yùn)動參數(shù),第一運(yùn)動參數(shù)用于表征移動終端的振動幅度,第二運(yùn)動參數(shù)用于表征移動終端的振動頻率。
步驟103:根據(jù)第一運(yùn)動參數(shù)、第二運(yùn)動參數(shù)和該速度信息確定用戶的運(yùn)動狀態(tài)。
步驟104:當(dāng)該運(yùn)動狀態(tài)為雙足行走狀態(tài)時,則統(tǒng)計(jì)用戶雙足行走的步數(shù)。
其中,該運(yùn)動參數(shù)包括用于表征振動幅度的第一運(yùn)動參數(shù)和用于表征振動頻率的第二運(yùn)動參數(shù);
可選的,對于上述步驟103,可以包括:
1031:在第一運(yùn)動參數(shù)大于預(yù)設(shè)第一門限閾值時,確定移動終端對應(yīng)的用戶的運(yùn)動狀態(tài)為跑步狀態(tài)。
1032:在第一運(yùn)動參數(shù)大于預(yù)設(shè)第二門限閾值且小于或等于第一門限閾值時,根據(jù)第二運(yùn)動參數(shù)和該速度信息確定用戶的運(yùn)動狀態(tài);
1033:在第一運(yùn)動參數(shù)大于預(yù)設(shè)第三門限閾值且小于或等于第二門限閾值時,根據(jù)該速度信息確定用戶的運(yùn)動狀態(tài);
1034:在第一運(yùn)動參數(shù)小于第三門限閾值時,確定用戶的運(yùn)動狀態(tài)為靜止?fàn)顟B(tài)。
可選的,對于上述1032,可以包括:
在第二運(yùn)動參數(shù)小于預(yù)設(shè)第四門限閾值時,確定用戶的運(yùn)動狀態(tài)為走步狀態(tài);
在第二運(yùn)動參數(shù)大于或等于第四門限閾值時,當(dāng)該速度信息大于預(yù)設(shè)第五門限閾值,確定用戶的運(yùn)動狀態(tài)為騎行狀態(tài),當(dāng)該速度信息小于或等于第五門限閾值,確定用戶的運(yùn)動狀態(tài)為走步狀態(tài)。
可選的,對于上述1033,可以包括:
在該速度信息大于預(yù)設(shè)第六門限閾值時,確定用戶的運(yùn)動狀態(tài)為車載狀態(tài);
在該速度信息小于或等于第六門限閾值時,確定用戶的運(yùn)動狀態(tài)為靜止?fàn)顟B(tài)。
可選的,本實(shí)施例的方法還包括:
步驟105:根據(jù)該數(shù)據(jù)計(jì)算移動終端的第三運(yùn)動參數(shù)和第四運(yùn)動參數(shù),第三運(yùn)動參數(shù)用于表征移動終端的穩(wěn)定程度,第四運(yùn)動參數(shù)用于表征移動終端的運(yùn)動狀態(tài)發(fā)生突變的程度。
本實(shí)施例的方法,還包括:
步驟106:在確定出用戶的運(yùn)動狀態(tài)為走步狀態(tài)時,根據(jù)最近上一次確定的用戶的運(yùn)動狀態(tài)、第三運(yùn)動參數(shù)和第四運(yùn)動參數(shù),驗(yàn)證當(dāng)前用戶的運(yùn)動狀態(tài)是否為確定的走步狀態(tài)。
可選的,對于上述步驟106,可以包括:
1061:在最近上一次確定的用戶的運(yùn)動狀態(tài)為車載狀態(tài)或騎行狀態(tài)時,根據(jù)第三運(yùn)動參數(shù)驗(yàn)證當(dāng)前用戶的運(yùn)動狀態(tài)是否為確定的走步狀態(tài);
1062:在最近上一次確定的用戶的運(yùn)動狀態(tài)為靜止?fàn)顟B(tài)時,根據(jù)第四運(yùn)動參數(shù)驗(yàn)證當(dāng)前用戶的運(yùn)動狀態(tài)是否為確定的走步狀態(tài)。
可選的,對于上述1061,可以包括:
當(dāng)?shù)谌\(yùn)動參數(shù)大于預(yù)設(shè)第七門限閾值時,驗(yàn)證當(dāng)前用戶的運(yùn)動狀態(tài)為確定的走步狀態(tài);
當(dāng)?shù)谌\(yùn)動參數(shù)小于或等于所述第七門限閾值時,驗(yàn)證當(dāng)前用戶的運(yùn)動狀態(tài)為最近上一次確定的用戶的運(yùn)動狀態(tài)。
可選的,對于上述1062,可以包括:
當(dāng)?shù)谒倪\(yùn)動參數(shù)大于預(yù)設(shè)第八門限閾值時,驗(yàn)證當(dāng)前用戶的運(yùn)動狀態(tài)為確定的走步狀態(tài);
當(dāng)?shù)谒倪\(yùn)動參數(shù)小于或等于第八門限閾值時,驗(yàn)證用戶的運(yùn)動狀態(tài)為靜止?fàn)顟B(tài)。
可選的,對于上述步驟104,可以包括:
1041:獲取用戶處于雙足行走狀態(tài)的起始時間和結(jié)束時間;
1042:根據(jù)預(yù)設(shè)的時間偏移量、該起始時間和該結(jié)束時間確定有效時間段,該時間偏移量為確定用戶的運(yùn)動狀態(tài)所消耗的時間;
1043:觸發(fā)該計(jì)步程序根據(jù)所述運(yùn)動傳感器在該有效時間段內(nèi)采集的運(yùn)動數(shù)據(jù)統(tǒng)計(jì)用戶雙足行走的步數(shù)。
在本發(fā)明實(shí)施例中,由于獲取移動終端的運(yùn)動參數(shù),根據(jù)該移動終端的運(yùn)動參數(shù)確定用戶的運(yùn)動狀態(tài),只在用戶的運(yùn)動狀態(tài)為雙足行走狀態(tài)時,統(tǒng)計(jì)用戶雙足行走的步數(shù),提高了計(jì)步的精度。
參見圖2-1,本發(fā)明實(shí)施例提供了一種控制計(jì)步程序的方法,包括:
步驟201:獲取移動終端的運(yùn)動傳感器采集的n個數(shù)據(jù)和移動終端的定位模塊采集的速度信息,n為大于或等于1的整數(shù)。
移動終端可以為手機(jī)、平板電腦或穿戴設(shè)備等移動終端,其中,穿戴設(shè)備可以為智能手環(huán)、智能手表或智能項(xiàng)鏈等。移動終端中包括運(yùn)動傳感器和定位模塊。運(yùn)動傳感器用于實(shí)時采集移動終端的數(shù)據(jù),運(yùn)動傳感器可以包括加速度傳感器和陀螺儀等。在本步驟中,當(dāng)運(yùn)動傳感器每采集一段時間的數(shù)據(jù)時,從該一段間的數(shù)據(jù)中隨機(jī)挑選n個數(shù)據(jù)。
該一段時間的時長可以為2秒、3秒或4秒等。例如,每當(dāng)運(yùn)動傳感器采集到2秒長度的數(shù)據(jù)時,從該2秒長度的數(shù)據(jù)中隨機(jī)挑選n個數(shù)據(jù)。其中,運(yùn)動傳感器采集的數(shù)據(jù)是種波形數(shù)據(jù),采集的n個數(shù)據(jù)可以位于該波形數(shù)據(jù)的波峰、波谷以及位于波峰和波谷之間的任一位置。
定位模塊用于實(shí)時采集移動終端的速度信息。該速度信息可以為移動終端的運(yùn)動速度。定位模塊可以為gps(globalpositioningsystem,全球定位系統(tǒng))模塊或北斗導(dǎo)航模塊等。
步驟202:根據(jù)該n個數(shù)據(jù)計(jì)算移動終端的運(yùn)動參數(shù),該運(yùn)動參數(shù)包括第一運(yùn)動參數(shù)、第二運(yùn)動參數(shù)、第三運(yùn)動參數(shù)和第四運(yùn)動參數(shù)。
第一運(yùn)動參數(shù)可以為該n個數(shù)據(jù)的功率譜密度,用于表征移動終端做上下往復(fù)運(yùn)動的振動幅度。用戶在做走步運(yùn)動、跑步運(yùn)動、騎車運(yùn)動或乘座在車上時,用戶的身體都會做上下往復(fù)振動;通常情況下移動終端位于用戶身上,移動終端會隨著用戶一起做上下往復(fù)振動,第一運(yùn)動參數(shù)可以表征用戶的振動幅度。第一運(yùn)動參數(shù)越大,表示用戶做上下往復(fù)運(yùn)動的幅度越大。通常,用戶做跑步運(yùn)動時身體做上下往復(fù)振動的振動幅度最大,做走步運(yùn)動時身體做上下往復(fù)振動的振動幅度小于做跑步運(yùn)動時的振動幅度,做騎車運(yùn)動或乘座在車上時身體做上下往復(fù)振動的幅度小于做走步運(yùn)動時的振動幅度。
對于第一運(yùn)動參數(shù),可以通過如下方式計(jì)算第一運(yùn)動參數(shù),實(shí)現(xiàn)過程為:
分別對采集的n個數(shù)據(jù)中的每個數(shù)據(jù)進(jìn)行傅氏變換,得到n個功率值pi,i=1、2……n,第一運(yùn)動參數(shù)等于
第二運(yùn)動參數(shù)可以為該n個數(shù)據(jù)的中值頻率,用于表征移動終端的做上下往復(fù)振動的振動頻率,也可以表征用戶身體做上下往復(fù)振動的振動頻率。其中,通常用戶在做走步運(yùn)動時,由于運(yùn)動速度較低,身體做上下往復(fù)振動的振動頻率較低,小于用戶做跑步運(yùn)動或騎行運(yùn)動時身體做上下往復(fù)振動的振動頻率。
對于第二運(yùn)動參數(shù),可以通過如下方式計(jì)算第二運(yùn)動參數(shù),實(shí)現(xiàn)過程為:
對采集的n個數(shù)據(jù)進(jìn)行傅氏變換,得到n個功率值pi,i=1、2……n,計(jì)算總功率pa=p1+p2+……+pn;對于每個功率值pi,根據(jù)該功率值pi和計(jì)算的總功率pa,計(jì)算比例頻率fi=pi/pa*i*f/n,這樣計(jì)算出f1、f2……fn,其中f為采集數(shù)據(jù)的采樣頻率,第二運(yùn)動參數(shù)等于f1+f2+……+fn。
第三運(yùn)動參數(shù)可以為該n個數(shù)據(jù)的均方差,用于表征移動終端的狀態(tài)穩(wěn)定程度,即表示移動終端的狀態(tài)是否發(fā)生變化;用戶在做運(yùn)動時可能會發(fā)生運(yùn)動狀態(tài)的突變,例如由走步狀態(tài)變?yōu)榕懿綘顟B(tài)、由走步狀態(tài)變?yōu)轵T行狀態(tài)、由走步狀態(tài)變?yōu)檐囕d狀態(tài)、由車載狀態(tài)變?yōu)樽卟綘顟B(tài)或由跑步狀態(tài)變?yōu)樽卟綘顟B(tài)等。當(dāng)用戶的運(yùn)動狀態(tài)發(fā)生了突變,第三運(yùn)動參數(shù)會變大。
對于第三運(yùn)動參數(shù),可以通過如下方式計(jì)算第三運(yùn)動參數(shù),實(shí)現(xiàn)過程為:
采集的n個數(shù)據(jù)分別為a1、a2……an;計(jì)算該n個數(shù)據(jù)的總和值,該總和值等于a1+a2+……+an;根據(jù)該a個運(yùn)動數(shù)據(jù)和該總和值aa,計(jì)算出的第三運(yùn)動參數(shù)等于
第四運(yùn)動參數(shù)可以為該n個數(shù)據(jù)的過零點(diǎn)率,用于表征移動終端跟隨人體周期性運(yùn)動的特征。當(dāng)移動終端由靜止變化為跟隨用戶雙足運(yùn)動,那么第四運(yùn)動參數(shù)會變大。
對于第四運(yùn)動參數(shù),可以通過如下方式計(jì)算第四運(yùn)動參數(shù),實(shí)現(xiàn)過程為:
統(tǒng)計(jì)過零點(diǎn)數(shù)目n0,可以為:如果第i個數(shù)據(jù)大于0且第i+1個數(shù)據(jù)小于0,過零點(diǎn)計(jì)數(shù)n0加一;或者,如果第i個數(shù)據(jù)小于0且第i+1個數(shù)據(jù)大于0,過零點(diǎn)計(jì)數(shù)n0加一;根據(jù)過零點(diǎn)數(shù)目n0和采集的數(shù)據(jù)的數(shù)目n計(jì)算第四運(yùn)動參數(shù),即計(jì)算過零點(diǎn)率等于n0/n。
步驟203:根據(jù)第一運(yùn)動參數(shù)和第二運(yùn)動參數(shù),確定用戶當(dāng)前的運(yùn)動狀態(tài)。
參見圖2-2,本步驟可以通過如下11至21的過程來實(shí)現(xiàn),包括:
11、對第一運(yùn)動參數(shù)進(jìn)行判斷。
事先預(yù)設(shè)第一門限閾值、第二門限閾值和第三門限閾值,且第一門限閾值大于第二門限閾值,第二門限閾值大于第三門限閾值。且在圖2-2中,a為第一運(yùn)動參數(shù),b為第二運(yùn)動參數(shù),c為第三運(yùn)動參數(shù),d為第四運(yùn)動參數(shù);f1為第一門限閾值,f2為第二門限閾值,f3為第三門限閾值,且f1>f2>f3。
本步驟可以為:將第一運(yùn)動參數(shù)分別與第一門限閾值、第二門限閾值和第三門限閾值進(jìn)行比較,比較的結(jié)果有第一運(yùn)動參數(shù)大于第一門限閾值,第一運(yùn)動參數(shù)大于第二門限閾值且小于或等于第一門限閾值,第一運(yùn)動參數(shù)大于第三門限閾值且小于或等于第二門限閾值,以及第一運(yùn)動參數(shù)小于或等于第三門限閾值四種。即將a分別與f1、f2、f3進(jìn)行比較,比較的結(jié)果分別為a>f1、f2<a≤f1、f3<a≤f2、a≤f3。
12:如果第一運(yùn)動參數(shù)大于第一門限閾值,即a>f1時,確定用戶的運(yùn)動狀態(tài)為跑步狀態(tài),結(jié)束返回。
其中,通常用戶在做跑步運(yùn)動時,用戶身體做上下往復(fù)運(yùn)動的振動幅度較大,大于用戶做走步運(yùn)動、騎車運(yùn)動或乘座在車上時身體做上下往復(fù)運(yùn)動的振動幅度。所以當(dāng)?shù)谝惶厣鷧?shù)大于第一門限閾值時,表明用戶的身體做上下往復(fù)運(yùn)動的振動幅度較大,從而確定用戶的運(yùn)動狀態(tài)為跑步狀態(tài)。
13:如果第一運(yùn)動參數(shù)大于第二門限閾值且小于或等于第一門限閾值,即f2<a≤f1時,則對第二運(yùn)動參數(shù)進(jìn)行判斷。
預(yù)先設(shè)置第四門限閾值,可以將第二運(yùn)動參數(shù)與第四門限閾值進(jìn)行比較,比較的結(jié)果是第二運(yùn)動參數(shù)大于第四門限閾值或者第二運(yùn)動參數(shù)小于或等于第四門限閾值。在圖2-2中f4為第四門限閾值,即將b與f4進(jìn)行,比較的結(jié)果為a>f4或a≤f4。
當(dāng)?shù)谝贿\(yùn)動參數(shù)大于第二門限閾值且小于或等于第一門限閾值時,表明用戶身體做上下往復(fù)運(yùn)動的振動幅度仍較大,但該振動幅度小于在做跑步運(yùn)動時的振動幅度。在這種情況下,用戶可能做走步運(yùn)動或騎車運(yùn)動,所以可以根據(jù)第二運(yùn)動參數(shù)和該速度信息確定用戶的運(yùn)動狀態(tài)確定用戶的運(yùn)動狀態(tài),具體的確定過程可以通過13至17的步驟來實(shí)現(xiàn)。
14:如果第二運(yùn)動參數(shù)b小于或等于第四門限閾值f4,即b≤f4時,則確定用戶的運(yùn)動狀態(tài)為走步狀態(tài),結(jié)束返回。
由于第二運(yùn)動參數(shù)b小于或等于第四閾值值f4,表示用戶做上下往復(fù)振動的振動頻率較低,運(yùn)動速度較慢,從而可以確定用戶的運(yùn)動狀態(tài)為走步狀態(tài)。
15:如果第二運(yùn)動參數(shù)b大于第四門限閾值f4,即b>f4時,則對該速度信息進(jìn)行判斷。
由于第二運(yùn)動參數(shù)b大于第四閾值值f4,表示用戶做上下往復(fù)振動的振動頻率較大,運(yùn)動速度較快,從而需要根據(jù)該速度信息進(jìn)一步確定用戶的運(yùn)動狀態(tài)。
預(yù)先設(shè)置第五門限閾值,可以將該速度信息與預(yù)設(shè)的第五門限閾值進(jìn)行比較,比較的結(jié)果是該速度信息大于第五門限閾值或者該速度信息小于或等于第五門限閾值。在圖2-2中,f5為第五門限閾值,s為該速度信息,即將s和f5進(jìn)行比較,比較的結(jié)果為s>f5或s≤f5。
16:如果該速度信息大于第五門限閾值,即s>f5時,確定用戶的運(yùn)動狀態(tài)為騎行狀態(tài),結(jié)束返回。
由于該速度信息大于第五門限閾值,表明用戶的運(yùn)動的速度較大,因此可以確定用戶的運(yùn)動狀態(tài)為騎行狀態(tài)。
17:如果該速度信息小于或等于第五門限閾值,即s≤f5時,確定用戶的運(yùn)動狀態(tài)為走步狀態(tài),結(jié)束返回。
由于該速度信息大于第五門限閾值,表明用戶的運(yùn)動的速度小于處于騎行狀態(tài)時的運(yùn)動速度,用戶可能處于快走狀態(tài),因此可以確定用戶的運(yùn)動狀態(tài)為走步狀態(tài)。
18:如果第一運(yùn)動參數(shù)大于第三門限閾值且小于或等于第二門限閾值,即f3<a≤f2時,則對該速度信息s進(jìn)行判斷。
預(yù)先設(shè)置第六門限閾值,可以將該速度信息與預(yù)設(shè)的第六門限閾值進(jìn)行比較,比較的結(jié)果是該速度信息大于第六門限閾值或者該速度信息小于或等于第六門限閾值。在圖2-2中,f6為第六門限閾值,即將s與f6進(jìn)行比較,比較的結(jié)果為s>f6或s≤f6。
第一運(yùn)動參數(shù)大于第三門限閾值且小于或等于第二門限閾值,表示用戶的身體做上下往復(fù)的振動幅度較小,該振動幅度小于在做走步運(yùn)動或騎行運(yùn)動時的振動幅度。由于汽車在運(yùn)行時比較穩(wěn)定,在這種情況下,用戶可以座在汽車上或用戶處于靜止?fàn)顟B(tài),所以可以根據(jù)該速度信息確定用戶的運(yùn)動狀態(tài),具體的確定過程可以通過18至20的步驟來實(shí)現(xiàn)。
19:如果該速度信息大于第六門限閾值,即s>f6時,則確定用戶的運(yùn)動狀態(tài)為車載狀態(tài),結(jié)束返回。
該速度信息大于第六門限閾值,表明用戶運(yùn)動的速度較快,通常用戶座在汽車內(nèi)能做到身體的振動幅度小且運(yùn)動速度快的情況,所以可以確定用戶的運(yùn)動狀態(tài)為車載狀態(tài)。
20:如果該速度信息小于或等于第六門限閾值,即s≤f6時,則確定用戶的運(yùn)動狀態(tài)為為靜止?fàn)顟B(tài),結(jié)束返回。
該速度信息小于或等于第六門限閾值,表明用戶運(yùn)動的速度較小,通常用戶在靜止時能做到身體的振動幅度小且運(yùn)動速度慢的情況,所以可以確定用戶的運(yùn)動狀態(tài)為靜止?fàn)顟B(tài)。
21:如果第一運(yùn)動參數(shù)小于第三門限閾值,即a≤f3時,確定用戶的運(yùn)動狀態(tài)為為靜止?fàn)顟B(tài),結(jié)束返回。
第一運(yùn)動參數(shù)小于第三門限閾值,表示用戶的身體振動的振動頻率非常的小,通常用戶在靜止時能做到身體的振動幅度非常小的情況,所以可以確定用戶的運(yùn)動狀態(tài)為靜止?fàn)顟B(tài)。
步驟204:判斷確定出用戶的運(yùn)動狀態(tài)為走步狀態(tài),如果為走步狀態(tài),執(zhí)行步驟205,如果不是走步狀態(tài),執(zhí)行步驟206。
步驟205:根據(jù)最近上一次確定的用戶的運(yùn)動狀態(tài)、第三運(yùn)動參數(shù)和第四運(yùn)動參數(shù),驗(yàn)證當(dāng)前用戶的運(yùn)動狀態(tài)是否為確定的走步狀態(tài)。
參見圖2-3,本步驟可以通過如下31至21的過程來實(shí)現(xiàn),包括:
31:對最近上一次確定的用戶的運(yùn)動狀態(tài)進(jìn)行判斷。
當(dāng)最近上一次確定的用戶的運(yùn)動狀態(tài)為車載狀態(tài)或騎行狀態(tài),可以根據(jù)第三運(yùn)動參數(shù)驗(yàn)證當(dāng)前用戶的運(yùn)動狀態(tài)是否為確定的走步狀態(tài),詳細(xì)實(shí)現(xiàn)過程可以參見后續(xù)步驟32至34。
當(dāng)最近上一次確定的用戶的運(yùn)動狀態(tài)為靜止?fàn)顟B(tài),根據(jù)第四運(yùn)動參數(shù)驗(yàn)證當(dāng)前用戶的運(yùn)動狀態(tài)是否為確定的走步狀態(tài),詳細(xì)實(shí)現(xiàn)過程可以參見后續(xù)步驟35至37。
當(dāng)最近上一次確定的用戶的運(yùn)動狀態(tài)為走步狀態(tài)或跑步狀態(tài),則執(zhí)行步驟38。
32:如果為車載狀態(tài)或騎行狀態(tài),對第三運(yùn)動參數(shù)進(jìn)行判斷。
預(yù)設(shè)第七門限閾值,將第三運(yùn)動參數(shù)與第七門限閾值進(jìn)行比較,比較的結(jié)果為第三運(yùn)動參數(shù)大于第七門限閾值或第三運(yùn)動參數(shù)小于或等于第七門限閾值。f7為第七門限閾值,c為第三運(yùn)動參數(shù),即將c與f7進(jìn)行比較,比較的結(jié)果為c>f7或c≤f7。
33:如果第三運(yùn)動參數(shù)大于第七門限閾值,即c>f7時,驗(yàn)證當(dāng)前用戶的運(yùn)動狀態(tài)為走步狀態(tài),結(jié)束返回。
34:如果第三運(yùn)動參數(shù)小于或等于第七門限閾值,即c≤f7時,驗(yàn)證當(dāng)前用戶的運(yùn)動狀態(tài)為最近上一次確定的用戶的運(yùn)動狀態(tài),結(jié)束返回。
如果最近上一次確定的用戶的運(yùn)動狀態(tài)為車載狀態(tài),即將當(dāng)前用戶的運(yùn)動狀態(tài)由確定的走步狀態(tài)修改為車載狀態(tài)。如果最近上一次確定的用戶的運(yùn)動狀態(tài)騎行狀態(tài),即將當(dāng)前用戶的運(yùn)動狀態(tài)由確定的走步狀態(tài)修改為騎行狀態(tài)。
35:如果為靜止?fàn)顟B(tài),對第四運(yùn)動參數(shù)進(jìn)行判斷。
預(yù)設(shè)第八門限閾值,將第四運(yùn)動參數(shù)與第八門限閾值進(jìn)行比較,比較的結(jié)果為第四運(yùn)動參數(shù)大于第八門限閾值或第四運(yùn)動參數(shù)小于或等于第八門限閾值。f8為第七門限閾值,d為第四運(yùn)動參數(shù),即將d與f8進(jìn)行比較,比較的結(jié)果為d>f8或d≤f8。
36:如果第四運(yùn)動參數(shù)大于第八門限閾值,即d>f8時,驗(yàn)證當(dāng)前用戶的運(yùn)動狀態(tài)為走步狀態(tài),結(jié)束返回。
第四運(yùn)動參數(shù)大于第八門限閾值,表明設(shè)備跟隨用戶產(chǎn)生了周期性的運(yùn)動,即用戶有較大可能由靜止?fàn)顟B(tài)變?yōu)樽卟綘顟B(tài),因此驗(yàn)證當(dāng)前用戶的運(yùn)動狀態(tài)為走步狀態(tài)。
37:如果第四運(yùn)動參數(shù)小于或等于第八門限閾值,即d≤f8時,驗(yàn)證當(dāng)前用戶的運(yùn)動狀態(tài)為靜止?fàn)顟B(tài),結(jié)束返回。
即在本步驟將當(dāng)前用戶的運(yùn)動狀態(tài)由走步狀態(tài)修改為靜止?fàn)顟B(tài)。第四運(yùn)動參數(shù)小于或等于第八門限閾值,表明設(shè)備當(dāng)前沒有跟隨用戶產(chǎn)生周期性的運(yùn)動,即用戶的運(yùn)動狀態(tài)可能沒有變化,因此驗(yàn)證當(dāng)前用戶的運(yùn)動狀態(tài)為靜止?fàn)顟B(tài)。
38:如果為走步狀態(tài)或跑步狀態(tài),則驗(yàn)證當(dāng)前用戶的運(yùn)動狀態(tài)為走步狀態(tài),結(jié)束返回。
步驟206:當(dāng)該運(yùn)動狀態(tài)為雙足行走狀態(tài)時,則統(tǒng)計(jì)用戶雙足行走的步數(shù)。
雙足行走狀態(tài)可以為走步狀態(tài)或者為跑步狀態(tài)。計(jì)步程序也實(shí)時獲取并緩存移動終端的運(yùn)動傳感器采集的運(yùn)動數(shù)據(jù),且采集的每個運(yùn)動數(shù)據(jù)包括時間信息。
本步驟可以為:獲取用戶處于雙足行走狀態(tài)的起始時間和結(jié)束時間;根據(jù)預(yù)設(shè)的時間偏移量、該起始時間和該結(jié)束時間確定有效時間段,該時間偏移量為確定用戶的運(yùn)動狀態(tài)所消耗的時間;觸發(fā)計(jì)步程序根據(jù)該運(yùn)動傳感器在有效時間段內(nèi)采集的運(yùn)動數(shù)據(jù)統(tǒng)計(jì)用戶雙足行走的步數(shù)。
例如,獲取用戶處于雙足行走狀態(tài)的起始時間為t1以及結(jié)束時間為t2,假設(shè)執(zhí)行上述步驟201至205確定用戶的運(yùn)動狀態(tài)所消耗的時間為e,即時間偏移量為e,這樣根據(jù)預(yù)設(shè)的時間偏移量e、該起始時間t1和該結(jié)束時間t2確定有效時間段為從時間t1-e至?xí)r間t2-e。然后將時間t1-e至?xí)r間t2-e的有效時間段提供給計(jì)步程序,這樣計(jì)步程序可以從其緩存的運(yùn)動數(shù)據(jù)中獲取位于時間t1-e至?xí)r間t2-e內(nèi)的運(yùn)動數(shù)據(jù),根據(jù)位于時間t1-e至?xí)r間t2-e內(nèi)的運(yùn)動數(shù)據(jù)統(tǒng)計(jì)用戶雙足行走的步數(shù)。
在本發(fā)明實(shí)施例中,通過運(yùn)動傳感器獲取移動終端運(yùn)動的數(shù)據(jù),根據(jù)該數(shù)據(jù)獲取移動終端的運(yùn)動參數(shù),根據(jù)該移動終端的運(yùn)動參數(shù)確定用戶的運(yùn)動狀態(tài),只在用戶的運(yùn)動狀態(tài)為雙足行走狀態(tài)時,統(tǒng)計(jì)用戶雙足行走的步數(shù),提高了計(jì)步的精度。另外,在確定的運(yùn)動狀態(tài)為走步狀態(tài)時,還通過第三運(yùn)動參數(shù)和第四運(yùn)動參數(shù)進(jìn)一步驗(yàn)證用戶當(dāng)前的運(yùn)動狀態(tài)是否確定的走步狀態(tài),進(jìn)一步提高了計(jì)步的精度。
參見圖3-1,本發(fā)明實(shí)施例提供了一種移動終端300,所述移動終端300可以為圖2-1所示實(shí)施例中的移動終端,包括:
獲取模塊301,用于獲取移動終端的運(yùn)動傳感器采集的數(shù)據(jù)和所述移動終端的定位模塊采集的速度信息;
計(jì)算模塊302,用于根據(jù)所述數(shù)據(jù)計(jì)算所述移動終端的第一運(yùn)動參數(shù)和第二運(yùn)動參數(shù),所述第一運(yùn)動參數(shù)用于表征所述移動終端的振動幅度,所述第二運(yùn)動參數(shù)用于表征所述移動終端的振動頻率;
確定模塊303,用于根據(jù)所述第一運(yùn)動參數(shù)、所述第二運(yùn)動參數(shù)和所述速度信息確定用戶的運(yùn)動狀態(tài);
觸發(fā)模塊304,用于當(dāng)所述運(yùn)動狀態(tài)為雙足行走狀態(tài)時,則統(tǒng)計(jì)所述用戶雙足行走的步數(shù)。
可選的,所述確定模塊303包括:
第一確定單元,用于在所述第一運(yùn)動參數(shù)大于預(yù)設(shè)第一門限閾值時,確定所述移動終端對應(yīng)的用戶的運(yùn)動狀態(tài)為跑步狀態(tài);
第二確定單元,用于在所述第一運(yùn)動參數(shù)大于預(yù)設(shè)第二門限閾值且小于或等于所述第一門限閾值時,根據(jù)所述第二運(yùn)動參數(shù)和所述速度信息確定所述用戶的運(yùn)動狀態(tài);
第三確定單元,用于在所述第一運(yùn)動參數(shù)大于預(yù)設(shè)第三門限閾值且小于或等于所述第二門限閾值時,根據(jù)所述速度信息確定所述用戶的運(yùn)動狀態(tài);
第四確定單元,用于在所述第一運(yùn)動參數(shù)小于所述第三門限閾值時,確定所述用戶的運(yùn)動狀態(tài)為靜止?fàn)顟B(tài)。
可選的,所述第二確定單元,用于:
在所述第二運(yùn)動參數(shù)小于預(yù)設(shè)第四門限閾值時,確定所述用戶的運(yùn)動狀態(tài)為走步狀態(tài);
在所述第二運(yùn)動參數(shù)大于或等于所述第四門限閾值時,當(dāng)所述速度信息大于預(yù)設(shè)第五門限閾值,確定所述用戶的運(yùn)動狀態(tài)為騎行狀態(tài),當(dāng)所述速度信息小于或等于所述第五門限閾值,確定所述用戶的運(yùn)動狀態(tài)為走步狀態(tài)。
可選的,所述第三確定單元,用于:
在所述速度信息大于預(yù)設(shè)第六門限閾值時,確定所述用戶的運(yùn)動狀態(tài)為車載狀態(tài);
在所述速度信息小于或等于所述第六門限閾值時,確定所述用戶的運(yùn)動狀態(tài)為靜止?fàn)顟B(tài)。
可選的,所述計(jì)算模塊302,還用于根據(jù)所述數(shù)據(jù)計(jì)算所述移動終端的第三運(yùn)動參數(shù)和第四運(yùn)動參數(shù),所述第三運(yùn)動參數(shù)用于表征所述移動終端的穩(wěn)定程度,所述第四運(yùn)動參數(shù)用于表征所述移動終端的運(yùn)動狀態(tài)發(fā)生突變的程度;
參見圖3-2,所述移動終端300還包括:
驗(yàn)證模塊303,用于在確定出所述用戶的運(yùn)動狀態(tài)為走步狀態(tài)時,根據(jù)最近上一次確定的所述用戶的運(yùn)動狀態(tài)、所述第三運(yùn)動參數(shù)和所述第四運(yùn)動參數(shù),驗(yàn)證當(dāng)前所述用戶的運(yùn)動狀態(tài)是否為所述確定的走步狀態(tài)。
可選的,所述驗(yàn)證模塊303包括:
第一驗(yàn)證單元,用于在最近上一次確定的所述用戶的運(yùn)動狀態(tài)為車載狀態(tài)或騎行狀態(tài)時,根據(jù)所述第三運(yùn)動參數(shù)驗(yàn)證當(dāng)前所述用戶的運(yùn)動狀態(tài)是否為所述確定的走步狀態(tài);
第二驗(yàn)證單元,用于在最近上一次確定的所述用戶的運(yùn)動狀態(tài)為靜止?fàn)顟B(tài)時,根據(jù)所述第四運(yùn)動參數(shù)驗(yàn)證當(dāng)前所述用戶的運(yùn)動狀態(tài)是否為所述確定的走步狀態(tài)。
可選的,所述第一驗(yàn)證單元,用于:
當(dāng)所述第三運(yùn)動參數(shù)大于預(yù)設(shè)第七門限閾值時,驗(yàn)證當(dāng)前所述用戶的運(yùn)動狀態(tài)為所述確定的走步狀態(tài);
當(dāng)所述第三運(yùn)動參數(shù)小于或等于所述第七門限閾值時,驗(yàn)證當(dāng)前所述用戶的運(yùn)動狀態(tài)為最近上一次確定的所述用戶的運(yùn)動狀態(tài)。
可選的,所述第二驗(yàn)證單元,用于:
當(dāng)所述第四運(yùn)動參數(shù)大于預(yù)設(shè)第八門限閾值時,驗(yàn)證當(dāng)前所述用戶的運(yùn)動狀態(tài)為所述確定的走步狀態(tài);
當(dāng)所述第四運(yùn)動參數(shù)小于或等于所述第八門限閾值時,驗(yàn)證所述用戶的運(yùn)動狀態(tài)為靜止?fàn)顟B(tài)。
可選的,所述觸發(fā)模塊304包括:
獲取單元,用于獲取所述用戶處于雙足行走狀態(tài)的起始時間和結(jié)束時間;
第五確定單元,用于根據(jù)預(yù)設(shè)的時間偏移量、所述起始時間和所述結(jié)束時間確定有效時間段,所述時間偏移量為確定所述用戶的運(yùn)動狀態(tài)所消耗的時間;
觸發(fā)單元,用于觸發(fā)所述計(jì)步程序根據(jù)所述運(yùn)動傳感器在所述有效時間段內(nèi)采集的運(yùn)動數(shù)據(jù)統(tǒng)計(jì)所述用戶雙足行走的步數(shù)。
在本發(fā)明實(shí)施例中,通過獲取移動終端的第一運(yùn)動參數(shù)和第二運(yùn)動參數(shù),由于第一運(yùn)動參數(shù)用于表征移動終端的振動幅度,第二運(yùn)動參數(shù)用于表征移動終端的振動頻率,所以根據(jù)該移動終端的第一運(yùn)動參數(shù)和第二運(yùn)動參數(shù)可以確定用戶的運(yùn)動狀態(tài),只在用戶的運(yùn)動狀態(tài)為雙足行走狀態(tài)時,統(tǒng)計(jì)用戶雙足行走的步數(shù),提高了計(jì)步的精度。
圖4是根據(jù)一示例性實(shí)施例示出的一種移動終端400的框圖。例如,移動終端400可以是手機(jī)、平板電腦或穿戴設(shè)備等移動終端。
參照圖4,移動終端400可以包括以下一個或多個組件:處理組件402,存儲器404,電源組件406,多媒體組件408,音頻組件410,輸入/輸出(i/o)的接口412,傳感器組件414,以及通信組件416和定位模塊417,該傳感器件414可以為運(yùn)動傳感器,例如可以為加速度傳感器或陀螺儀等。
處理組件402通常控制移動終端400的整體操作,諸如與顯示,電話呼叫,數(shù)據(jù)通信,相機(jī)操作和記錄操作相關(guān)聯(lián)的操作。處理組件402可以包括一個或多個處理器420來執(zhí)行指令,以完成上述的方法的全部或部分步驟。此外,處理組件402可以包括一個或多個模塊,便于處理組件402和其他組件之間的交互。例如,處理組件402可以包括多媒體模塊,以方便多媒體組件408和處理組件402之間的交互。
存儲器404被配置為存儲各種類型的數(shù)據(jù)以支持在移動終端400的操作。這些數(shù)據(jù)的示例包括用于在移動終端400上操作的任何應(yīng)用程序或方法的指令,聯(lián)系人數(shù)據(jù),電話簿數(shù)據(jù),消息,圖片,視頻等。存儲器404可以由任何類型的易失性或非易失性存儲設(shè)備或者它們的組合實(shí)現(xiàn),如靜態(tài)隨機(jī)存取存儲器(sram),電可擦除可編程只讀存儲器(eeprom),可擦除可編程只讀存儲器(eprom),可編程只讀存儲器(prom),只讀存儲器(rom),磁存儲器,快閃存儲器,磁盤或光盤。
電源組件406為移動終端400的各種組件提供電力。電源組件406可以包括電源管理系統(tǒng),一個或多個電源,及其他與為移動終端400生成、管理和分配電力相關(guān)聯(lián)的組件。
多媒體組件408包括在所述移動終端400和用戶之間的提供一個輸出接口的屏幕。在一些實(shí)施例中,屏幕可以包括液晶顯示器(lcd)和觸摸面板(tp)。如果屏幕包括觸摸面板,屏幕可以被實(shí)現(xiàn)為觸摸屏,以接收來自用戶的輸入信號。觸摸面板包括一個或多個觸摸傳感器以感測觸摸、滑動和觸摸面板上的手勢。所述觸摸傳感器可以不僅感測觸摸或滑動動作的邊界,而且還檢測與所述觸摸或滑動操作相關(guān)的持續(xù)時間和壓力。在一些實(shí)施例中,多媒體組件408包括一個前置攝像頭和/或后置攝像頭。當(dāng)移動終端400處于操作模式,如拍攝模式或視頻模式時,前置攝像頭和/或后置攝像頭可以接收外部的多媒體數(shù)據(jù)。每個前置攝像頭和后置攝像頭可以是一個固定的光學(xué)透鏡系統(tǒng)或具有焦距和光學(xué)變焦能力。
音頻組件410被配置為輸出和/或輸入音頻信號。例如,音頻組件410包括一個麥克風(fēng)(mic),當(dāng)移動終端400處于操作模式,如呼叫模式、記錄模式和語音識別模式時,麥克風(fēng)被配置為接收外部音頻信號。所接收的音頻信號可以被進(jìn)一步存儲在存儲器404或經(jīng)由通信組件416發(fā)送。在一些實(shí)施例中,音頻組件410還包括一個揚(yáng)聲器,用于輸出音頻信號。
i/o接口412為處理組件402和外圍接口模塊之間提供接口,上述外圍接口模塊可以是鍵盤,點(diǎn)擊輪,按鈕等。這些按鈕可包括但不限于:主頁按鈕、音量按鈕、啟動按鈕和鎖定按鈕。
傳感器組件414包括一個或多個傳感器,用于為移動終端400提供各個方面的狀態(tài)評估。例如,傳感器組件414可以檢測到移動終端400的打開/關(guān)閉狀態(tài),組件的相對定位,例如所述組件為移動終端400的顯示器和小鍵盤,傳感器組件414還可以檢測移動終端400或移動終端400一個組件的位置改變,用戶與移動終端400接觸的存在或不存在,移動終端400方位或加速/減速和移動終端400的溫度變化。傳感器組件414可以包括接近傳感器,被配置用來在沒有任何的物理接觸時檢測附近物體的存在。傳感器組件414還可以包括光傳感器,如cmos或ccd圖像傳感器,用于在成像應(yīng)用中使用。在一些實(shí)施例中,該傳感器組件414還可以包括加速度傳感器,陀螺儀傳感器,磁傳感器,壓力傳感器或溫度傳感器。
通信組件416被配置為便于移動終端400和其他設(shè)備之間有線或無線方式的通信。移動終端400可以接入基于通信標(biāo)準(zhǔn)的無線網(wǎng)絡(luò),如wifi,2g或3g,或它們的組合。在一個示例性實(shí)施例中,通信組件416經(jīng)由廣播信道接收來自外部廣播管理系統(tǒng)的廣播信號或廣播相關(guān)信息。在一個示例性實(shí)施例中,所述通信組件416還包括近場通信(nfc)模塊,以促進(jìn)短程通信。例如,在nfc模塊可基于射頻識別(rfid)技術(shù),紅外數(shù)據(jù)協(xié)會(irda)技術(shù),超寬帶(uwb)技術(shù),藍(lán)牙(bt)技術(shù)和其他技術(shù)來實(shí)現(xiàn)。
在示例性實(shí)施例中,移動終端400可以被一個或多個應(yīng)用專用集成電路(asic)、數(shù)字信號處理器(dsp)、數(shù)字信號處理設(shè)備(dspd)、可編程邏輯器件(pld)、現(xiàn)場可編程門陣列(fpga)、控制器、微控制器、微處理器或其他電子元件實(shí)現(xiàn),用于執(zhí)行上述方法。
在示例性實(shí)施例中,還提供了一種包括指令的非臨時性計(jì)算機(jī)可讀存儲介質(zhì),例如包括指令的存儲器404,上述指令可由移動終端400的處理器420執(zhí)行以完成上述方法。例如,所述非臨時性計(jì)算機(jī)可讀存儲介質(zhì)可以是rom、隨機(jī)存取存儲器(ram)、cd-rom、磁帶、軟盤和光數(shù)據(jù)存儲設(shè)備等。
一種非臨時性計(jì)算機(jī)可讀存儲介質(zhì),當(dāng)所述存儲介質(zhì)中的指令由移動終端400的處理器執(zhí)行時,使得移動終端400能夠執(zhí)行一種控制計(jì)步程序的方法,所述方法包括:
獲取所述移動終端的運(yùn)動傳感器采集的數(shù)據(jù)和所述移動終端的定位模塊采集的速度信息;
根據(jù)所述數(shù)據(jù)計(jì)算所述移動終端的第一運(yùn)動參數(shù)和第二運(yùn)動參數(shù),所述第一運(yùn)動參數(shù)用于表征所述移動終端的振動幅度,所述第二運(yùn)動參數(shù)用于表征所述移動終端的振動頻率;
根據(jù)所述第一運(yùn)動參數(shù)、所述第二運(yùn)動參數(shù)和所述速度信息確定用戶的運(yùn)動狀態(tài);
當(dāng)所述運(yùn)動狀態(tài)為雙足行走狀態(tài)時,則統(tǒng)計(jì)所述用戶雙足行走的步數(shù)。
可選的,所述根據(jù)所述第一運(yùn)動參數(shù)、所述第二運(yùn)動參數(shù)和所述速度信息確定用戶的運(yùn)動狀態(tài),包括:
在所述第一運(yùn)動參數(shù)大于預(yù)設(shè)第一門限閾值時,確定所述移動終端對應(yīng)的用戶的運(yùn)動狀態(tài)為跑步狀態(tài);
在所述第一運(yùn)動參數(shù)大于預(yù)設(shè)第二門限閾值且小于或等于所述第一門限閾值時,根據(jù)所述第二運(yùn)動參數(shù)和所述速度信息確定所述用戶的運(yùn)動狀態(tài);
在所述第一運(yùn)動參數(shù)大于預(yù)設(shè)第三門限閾值且小于或等于所述第二門限閾值時,根據(jù)所述速度信息確定所述用戶的運(yùn)動狀態(tài);
在所述第一運(yùn)動參數(shù)小于所述第三門限閾值時,確定所述用戶的運(yùn)動狀態(tài)為靜止?fàn)顟B(tài)。
可選的,所述根據(jù)所述第二運(yùn)動參數(shù)和所述速度信息確定所述用戶的運(yùn)動狀態(tài),包括:
在所述第二運(yùn)動參數(shù)小于預(yù)設(shè)第四門限閾值時,確定所述用戶的運(yùn)動狀態(tài)為走步狀態(tài);
在所述第二運(yùn)動參數(shù)大于或等于所述第四門限閾值時,當(dāng)所述速度信息大于預(yù)設(shè)第五門限閾值,確定所述用戶的運(yùn)動狀態(tài)為騎行狀態(tài),當(dāng)所述速度信息小于或等于所述第五門限閾值,確定所述用戶的運(yùn)動狀態(tài)為走步狀態(tài)。
可選的,所述根據(jù)所述速度信息確定所述用戶的運(yùn)動狀態(tài),包括:
在所述速度信息大于預(yù)設(shè)第六門限閾值時,確定所述用戶的運(yùn)動狀態(tài)為車載狀態(tài);
在所述速度信息小于或等于所述第六門限閾值時,確定所述用戶的運(yùn)動狀態(tài)為靜止?fàn)顟B(tài)。
可選的,所述獲取所述移動終端的傳感器采集的數(shù)據(jù)之后,還包括:
根據(jù)所述數(shù)據(jù)計(jì)算所述移動終端的第三運(yùn)動參數(shù)和第四運(yùn)動參數(shù),所述第三運(yùn)動參數(shù)用于表征所述移動終端的穩(wěn)定程度,所述第四運(yùn)動參數(shù)用于表征所述移動終端的運(yùn)動狀態(tài)發(fā)生突變的程度;
所述根據(jù)所述第一運(yùn)動參數(shù)、所述第二運(yùn)動參數(shù)和所述速度信息確定用戶的運(yùn)動狀態(tài)之后,還包括:
在確定出所述用戶的運(yùn)動狀態(tài)為走步狀態(tài)時,根據(jù)最近上一次確定的所述用戶的運(yùn)動狀態(tài)、所述第三運(yùn)動參數(shù)和所述第四運(yùn)動參數(shù),驗(yàn)證當(dāng)前所述用戶的運(yùn)動狀態(tài)是否為所述確定的走步狀態(tài)。
可選的,所述根據(jù)最近上一次確定的所述用戶的運(yùn)動狀態(tài)、所述第三運(yùn)動參數(shù)和所述第四運(yùn)動參數(shù),驗(yàn)證當(dāng)前所述用戶的運(yùn)動狀態(tài)是否為所述確定的走步狀態(tài),包括:
在最近上一次確定的所述用戶的運(yùn)動狀態(tài)為車載狀態(tài)或騎行狀態(tài)時,根據(jù)所述第三運(yùn)動參數(shù)驗(yàn)證當(dāng)前所述用戶的運(yùn)動狀態(tài)是否為所述確定的走步狀態(tài);
在最近上一次確定的所述用戶的運(yùn)動狀態(tài)為靜止?fàn)顟B(tài)時,根據(jù)所述第四運(yùn)動參數(shù)驗(yàn)證當(dāng)前所述用戶的運(yùn)動狀態(tài)是否為所述確定的走步狀態(tài)。
可選的,所述根據(jù)所述第三運(yùn)動參數(shù)驗(yàn)證當(dāng)前所述用戶的運(yùn)動狀態(tài)是否為所述確定的走步狀態(tài),包括:
當(dāng)所述第三運(yùn)動參數(shù)大于預(yù)設(shè)第七門限閾值時,驗(yàn)證當(dāng)前所述用戶的運(yùn)動狀態(tài)為所述確定的走步狀態(tài);
當(dāng)所述第三運(yùn)動參數(shù)小于或等于所述第七門限閾值時,驗(yàn)證當(dāng)前所述用戶的運(yùn)動狀態(tài)為最近上一次確定的所述用戶的運(yùn)動狀態(tài)。
可選的,所述根據(jù)所述第四運(yùn)動參數(shù)驗(yàn)證當(dāng)前所述用戶的運(yùn)動狀態(tài)是否為所述確定的走步狀態(tài),包括:
當(dāng)所述第四運(yùn)動參數(shù)大于預(yù)設(shè)第八門限閾值時,驗(yàn)證當(dāng)前所述用戶的運(yùn)動狀態(tài)為所述確定的走步狀態(tài);
當(dāng)所述第四運(yùn)動參數(shù)小于或等于所述第八門限閾值時,驗(yàn)證所述用戶的運(yùn)動狀態(tài)為靜止?fàn)顟B(tài)。
可選的,所述統(tǒng)計(jì)所述用戶雙足行走的步數(shù),包括:
獲取所述用戶處于雙足行走狀態(tài)的起始時間和結(jié)束時間;
根據(jù)預(yù)設(shè)的時間偏移量、所述起始時間和所述結(jié)束時間確定有效時間段,所述時間偏移量為確定所述用戶的運(yùn)動狀態(tài)所消耗的時間;
觸發(fā)所述計(jì)步程序根據(jù)所述運(yùn)動傳感器在所述有效時間段內(nèi)采集的運(yùn)動數(shù)據(jù)統(tǒng)計(jì)所述用戶雙足行走的步數(shù)。
本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施例的全部或部分步驟可以通過硬件來完成,也可以通過程序來指令相關(guān)的硬件完成,所述的程序可以存儲于一種計(jì)算機(jī)可讀存儲介質(zhì)中,上述提到的存儲介質(zhì)可以是只讀存儲器,磁盤或光盤等。
以上所述僅為本發(fā)明的較佳實(shí)施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。