本發(fā)明實(shí)施例涉及計(jì)算機(jī)軟件技術(shù),尤其涉及一種運(yùn)動(dòng)狀態(tài)監(jiān)測(cè)方法及裝置。
背景技術(shù):
隨著技術(shù)的提高,運(yùn)動(dòng)狀態(tài)的監(jiān)測(cè)技術(shù)也迅速發(fā)展,越來越多的用戶在運(yùn)動(dòng)時(shí)喜歡佩戴相應(yīng)終端(如智能手機(jī)、智能手環(huán)、智能手表等)來監(jiān)測(cè)運(yùn)動(dòng)時(shí)的狀態(tài)參數(shù)。
現(xiàn)有技術(shù)中對(duì)運(yùn)動(dòng)狀態(tài)進(jìn)行監(jiān)測(cè)的方案一般都是通過重力傳感器和GPS來采集相應(yīng)數(shù)據(jù),并轉(zhuǎn)換成用戶運(yùn)動(dòng)的狀態(tài)參數(shù)。
現(xiàn)有技術(shù)的缺陷是:一方面,使用GPS成本較高;另一方面,受GPS定位的限制,只能監(jiān)測(cè)與地面發(fā)生實(shí)際位移的運(yùn)動(dòng)狀況,因此會(huì)有使用限制,例如在跑步機(jī)上就無法監(jiān)測(cè)運(yùn)動(dòng)狀態(tài);再一方面,GPS本身就有誤差,在計(jì)算距離時(shí)誤差累積會(huì)使得誤差更大。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明實(shí)施例提供一種運(yùn)動(dòng)狀態(tài)監(jiān)測(cè)方法及裝置,以實(shí)現(xiàn)降低成本,提高使用通用性以及減小誤差的目的。
第一方面,本發(fā)明實(shí)施例提供了一種運(yùn)動(dòng)狀態(tài)監(jiān)測(cè)方法,包括:
檢測(cè)到監(jiān)測(cè)指令時(shí),根據(jù)傳感器采集數(shù)據(jù)確定終端在水平方向上的實(shí)時(shí)水平速度以及重力方向上的實(shí)時(shí)垂直速度;
實(shí)時(shí)獲取垂直速度為0時(shí)對(duì)應(yīng)的當(dāng)前水平速度和當(dāng)前時(shí)間戳;
實(shí)時(shí)計(jì)算并顯示運(yùn)動(dòng)狀態(tài)參數(shù),所述運(yùn)動(dòng)狀態(tài)參數(shù)包括實(shí)時(shí)步長(zhǎng),所述實(shí)時(shí)步長(zhǎng)為垂直速度為0時(shí)對(duì)應(yīng)的當(dāng)前水平速度和單位間隔時(shí)間的乘積,所述單位間隔時(shí)間為垂直速度為0時(shí)對(duì)應(yīng)的當(dāng)前時(shí)間戳和下一時(shí)間戳的差值。
第二方面,本發(fā)明實(shí)施例還提供了一種運(yùn)動(dòng)狀態(tài)監(jiān)測(cè)裝置,包括:
確定模塊,用于檢測(cè)到監(jiān)測(cè)指令時(shí),根據(jù)傳感器采集數(shù)據(jù)確定終端在水平方向上的實(shí)時(shí)水平速度以及重力方向上的實(shí)時(shí)垂直速度;
獲取模塊,用于實(shí)時(shí)獲取垂直速度為0時(shí)對(duì)應(yīng)的當(dāng)前水平速度和當(dāng)前時(shí)間戳;
計(jì)算顯示模塊,用于實(shí)時(shí)計(jì)算并顯示運(yùn)動(dòng)狀態(tài)參數(shù),所述運(yùn)動(dòng)狀態(tài)參數(shù)包括實(shí)時(shí)步長(zhǎng),所述實(shí)時(shí)步長(zhǎng)為垂直速度為0時(shí)對(duì)應(yīng)的當(dāng)前水平速度和單位間隔時(shí)間的乘積,所述單位間隔時(shí)間為垂直速度為0時(shí)對(duì)應(yīng)的當(dāng)前時(shí)間戳和下一時(shí)間戳的差值。
本發(fā)明實(shí)施例通過傳感器采集數(shù)據(jù)確定終端在水平方向上的實(shí)時(shí)水平速度以及重力方向上的實(shí)時(shí)垂直速度,實(shí)時(shí)獲取垂直速度為0時(shí)對(duì)應(yīng)的當(dāng)前水平速度和當(dāng)前時(shí)間戳,實(shí)時(shí)計(jì)算并顯示運(yùn)動(dòng)狀態(tài)參數(shù)實(shí)時(shí)步長(zhǎng),該實(shí)時(shí)步長(zhǎng)由垂直速度為0時(shí)對(duì)應(yīng)的當(dāng)前水平速度和單位間隔時(shí)間的相乘得出,擺脫了對(duì)GPS的依賴,降低了成本、提高了使用通用性,同時(shí)也減小了誤差,并實(shí)現(xiàn)了對(duì)實(shí)時(shí)步長(zhǎng)的計(jì)算和顯示,優(yōu)化了用戶體驗(yàn)。
附圖說明
圖1為本發(fā)明實(shí)施例一提供的一種運(yùn)動(dòng)狀態(tài)監(jiān)測(cè)方法的流程示意圖;
圖1a為本發(fā)明實(shí)施例一提供的去除人運(yùn)動(dòng)速度后分解出的終端速度的示意圖;
圖2為本發(fā)明實(shí)施例二提供的一種運(yùn)動(dòng)狀態(tài)監(jiān)測(cè)方法的流程示意圖;
圖3為本發(fā)明實(shí)施例三提供的一種運(yùn)動(dòng)狀態(tài)監(jiān)測(cè)方法的流程示意圖;
圖3a為本發(fā)明實(shí)施例三提供的終端在三維坐標(biāo)系中的狀態(tài)示意圖;
圖3b為本發(fā)明實(shí)施例三提供的終端在直角坐標(biāo)系中的狀態(tài)示意圖;
圖4為本發(fā)明實(shí)施例四提供的一種運(yùn)動(dòng)狀態(tài)監(jiān)測(cè)方法的流程示意圖;
圖5為本發(fā)明實(shí)施例五提供的一種運(yùn)動(dòng)狀態(tài)監(jiān)測(cè)方法的流程示意圖;
圖6為本發(fā)明實(shí)施例六提供的一種運(yùn)動(dòng)狀態(tài)監(jiān)測(cè)方法的流程示意圖;
圖7為本發(fā)明實(shí)施例七提供的一種運(yùn)動(dòng)狀態(tài)監(jiān)測(cè)裝置的結(jié)構(gòu)示意圖。
具體實(shí)施方式
下面結(jié)合附圖和實(shí)施例對(duì)本發(fā)明作進(jìn)一步的詳細(xì)說明??梢岳斫獾氖牵颂幩枋龅木唧w實(shí)施例僅僅用于解釋本發(fā)明,而非對(duì)本發(fā)明的限定。另外還需要說明的是,為了便于描述,附圖中僅示出了與本發(fā)明相關(guān)的部分而非全部結(jié)構(gòu)。
實(shí)施例一
圖1為本發(fā)明實(shí)施例一提供的一種運(yùn)動(dòng)狀態(tài)監(jiān)測(cè)方法的流程示意圖,本實(shí)施例可適用于對(duì)運(yùn)動(dòng)狀態(tài)進(jìn)行監(jiān)測(cè)的情況,該方法可以由運(yùn)動(dòng)狀態(tài)監(jiān)測(cè)裝置來執(zhí)行,該裝置可由硬件和/或軟件組成,并一般可集成于終端中,該終端可以是智能手機(jī)、穿戴設(shè)備(如智能手環(huán)、智能手表)等,還可以是智能手機(jī)和穿戴設(shè)備的結(jié)合,即由穿戴設(shè)備中的傳感器采集相應(yīng)數(shù)據(jù)并進(jìn)行簡(jiǎn)單計(jì)算,由智能手機(jī)進(jìn)行較為復(fù)雜的計(jì)算并進(jìn)行顯示。
其中,該方法的應(yīng)用原理是,用戶在佩戴終端進(jìn)行運(yùn)動(dòng)時(shí),通常是將終端戴在手上或者放在口袋中,而不管終端是戴在手上還是放在口袋中,在跑步或者行走跑步時(shí)終端都會(huì)遵循一個(gè)規(guī)律,即做鐘擺運(yùn)動(dòng)或者是類鐘擺運(yùn)動(dòng),如此,終端的運(yùn)動(dòng)速度就包括兩部分,一部分是用戶跑步的速度,另一部分是終端相對(duì)于用戶進(jìn)行擺動(dòng)的速度,而經(jīng)過大量實(shí)驗(yàn)發(fā)現(xiàn),用戶在跑步或者行走跑步時(shí)的加速是在于蹬的時(shí)候,所以邁出的時(shí)候在水平方向上基本是勻速的,因此,如果可以根據(jù)終端的實(shí)時(shí)速度求得人運(yùn)動(dòng)的實(shí)時(shí)速度,就能得知人在這一步中的速度。如圖1a所示的去除人運(yùn)動(dòng)速度后分解出的終端速度的示意圖,去除人運(yùn)動(dòng)時(shí)的速度后,可以看到終端在擺手最低點(diǎn)T1、T3和擺手最高點(diǎn)T2的速度均為0,擺手最高點(diǎn)和擺手最低點(diǎn)即人跑步時(shí)手臂前后擺動(dòng)的兩個(gè)頓點(diǎn),此時(shí)終端與人保持相對(duì)靜止,終端在垂直方向上的實(shí)際速度為0,在水平方向上的實(shí)際速度即為人的運(yùn)動(dòng)速度,而人邁出的時(shí)候在水平方向上基本是勻速的,因此結(jié)合相鄰兩次垂直方向上速度為0的間隔時(shí)間(即手?jǐn)[一次即走一步的時(shí)間),即可得到人運(yùn)動(dòng)時(shí)的實(shí)時(shí)步長(zhǎng)。該方法具體包括如下:
S110、檢測(cè)到監(jiān)測(cè)指令時(shí),根據(jù)傳感器采集數(shù)據(jù)確定終端在水平方向上的實(shí)時(shí)水平速度以及重力方向上的實(shí)時(shí)垂直速度。
其中,對(duì)于觸發(fā)生成監(jiān)測(cè)指令的觸發(fā)方式可以有多種,對(duì)于類似手環(huán)的穿戴設(shè)備,可以是對(duì)手環(huán)中相應(yīng)按鍵的按壓操作,對(duì)于帶有觸控屏的智能手機(jī),可以是對(duì)虛擬按鍵的點(diǎn)選操作或者是按照預(yù)設(shè)方式進(jìn)行滑動(dòng)操作,在此不做限定。
其中,使用的傳感器可以包括檢測(cè)實(shí)時(shí)加速度分量的三軸加速度傳感器、感知重力方向的傳感器(如陀螺儀等),終端可以根據(jù)傳感器實(shí)時(shí)采集的數(shù)據(jù)進(jìn)行相應(yīng)轉(zhuǎn)換和積分計(jì)算后,得到終端在水平方向和重力方向的實(shí)時(shí)速度。
S120、實(shí)時(shí)獲取垂直速度為0時(shí)對(duì)應(yīng)的當(dāng)前水平速度和當(dāng)前時(shí)間戳。
示例性地,用戶將終端設(shè)備戴在手腕上并開始運(yùn)動(dòng)后,終端做鐘擺運(yùn)動(dòng)或者類鐘擺運(yùn)動(dòng),用戶擺手的兩個(gè)端點(diǎn)即終端垂直速度為0的點(diǎn),則當(dāng)?shù)谝淮未怪彼俣葹?時(shí),獲取當(dāng)前水平速度V1以及當(dāng)前時(shí)間戳T1,當(dāng)?shù)诙未怪彼俣葹?時(shí),獲取當(dāng)前水平速度V2以及當(dāng)前時(shí)間戳T2,當(dāng)?shù)谌未怪彼俣葹?時(shí),獲取當(dāng)前水平速度V3以及當(dāng)前時(shí)間戳T3……當(dāng)?shù)趎次垂直速度為0時(shí),獲取當(dāng)前水平速度Vn以及當(dāng)前時(shí)間戳Tn。
S130、實(shí)時(shí)計(jì)算并顯示運(yùn)動(dòng)狀態(tài)參數(shù),所述運(yùn)動(dòng)狀態(tài)參數(shù)包括實(shí)時(shí)步長(zhǎng)。所述實(shí)時(shí)步長(zhǎng)為垂直速度為0時(shí)對(duì)應(yīng)的當(dāng)前水平速度和單位間隔時(shí)間的乘積,所述單位間隔時(shí)間為垂直速度為0時(shí)對(duì)應(yīng)的當(dāng)前時(shí)間戳和下一時(shí)間戳的差值。
具體地,對(duì)于首次獲取的垂直速度為0時(shí)的對(duì)應(yīng)的時(shí)間戳和水平速度,由于這是第一步的開始,還沒有完全邁出去,因此終端可以僅進(jìn)行記錄數(shù)據(jù),當(dāng)?shù)诙潍@取到垂直速度為0時(shí)對(duì)應(yīng)的時(shí)間戳和水平速度時(shí),說明第一步已經(jīng)完全邁出,此時(shí)終端可計(jì)算第一步邁出的步長(zhǎng),并顯示第一步步長(zhǎng);當(dāng)?shù)谌潍@取到垂直速度為0時(shí)的時(shí)間戳和水平速度時(shí),終端可同時(shí)計(jì)算第二步邁出的步長(zhǎng),并將第一步步長(zhǎng)更新為第二步步長(zhǎng);……當(dāng)?shù)趎次獲取到垂直速度為0時(shí)的時(shí)間戳和水平速度時(shí),終端可同時(shí)計(jì)算第n-1步邁出的步長(zhǎng),并將第n-2步步長(zhǎng)更新為第n-1步步長(zhǎng)。
示例性地,針對(duì)上述S120中的示例,當(dāng)?shù)诙未怪彼俣葹?時(shí),計(jì)算第一步步長(zhǎng)S1=V1×(T2-T1),并顯示S1,當(dāng)?shù)谌未怪彼俣葹?時(shí),計(jì)算第二步步長(zhǎng)S2=V2×(T3-T2),并將S1更新為S2,當(dāng)?shù)趎次垂直速度為0時(shí),計(jì)算第n-1步步長(zhǎng)Sn-1=Vn-1×(Tn-Tn-1),并將Sn-2更新為Sn-1。
本實(shí)施例的技術(shù)方案,通過傳感器采集數(shù)據(jù)確定終端在水平方向上的實(shí)時(shí)水平速度以及重力方向上的實(shí)時(shí)垂直速度,實(shí)時(shí)獲取垂直速度為0時(shí)對(duì)應(yīng)的當(dāng)前水平速度和當(dāng)前時(shí)間戳,實(shí)時(shí)計(jì)算并顯示運(yùn)動(dòng)狀態(tài)參數(shù)實(shí)時(shí)步長(zhǎng),該實(shí)時(shí)步長(zhǎng)由垂直速度為0時(shí)對(duì)應(yīng)的當(dāng)前水平速度和單位間隔時(shí)間的相乘得出,相對(duì)于現(xiàn)有技術(shù)中必須使用GPS來測(cè)得距離的方案,本實(shí)施例擺脫了對(duì)GPS的依賴,降低了成本、提高了使用通用性,同時(shí)也減小了誤差,且現(xiàn)有技術(shù)中并沒有能夠顯示實(shí)時(shí)步長(zhǎng)的方案,本實(shí)施例實(shí)現(xiàn)了對(duì)實(shí)時(shí)步長(zhǎng)的計(jì)算和顯示,優(yōu)化了用戶體驗(yàn)。
在上述技術(shù)方案的基礎(chǔ)上,優(yōu)選是對(duì)運(yùn)動(dòng)狀態(tài)參數(shù)進(jìn)一步優(yōu)化,具體是,所述運(yùn)動(dòng)狀態(tài)參數(shù)還包括:實(shí)時(shí)水平速度、實(shí)時(shí)垂直速度、垂直速度為0時(shí)對(duì)應(yīng)的水平速度、當(dāng)前已跑時(shí)間、當(dāng)前總步數(shù)、當(dāng)前已跑距離以及平均步長(zhǎng)中的任意一種或者其任意組合;
其中,所述當(dāng)前總步數(shù)與單位間隔時(shí)間的總數(shù)量相對(duì)應(yīng),一個(gè)單位時(shí)間間隔記為一步,所述已跑距離是對(duì)所有實(shí)時(shí)步長(zhǎng)求和得出。
具體地,實(shí)時(shí)水平速度即終端在水平面上的實(shí)際速度;實(shí)時(shí)垂直速即終端在垂直方向上的實(shí)際速度;垂直速度為0時(shí)對(duì)應(yīng)的水平速度即用戶運(yùn)動(dòng)時(shí)每一步的速度;當(dāng)前已跑時(shí)間可以由終端自身的計(jì)時(shí)器來獲得;當(dāng)前總步數(shù)可以通過對(duì)所有單位間隔時(shí)間求和得出,平均步長(zhǎng)可以由當(dāng)前已跑距離除以當(dāng)前總步數(shù)得出。進(jìn)一步,終端可將運(yùn)動(dòng)狀態(tài)參數(shù)實(shí)時(shí)顯示在顯示界面中。
優(yōu)選的,終端還可實(shí)際情況確定實(shí)時(shí)現(xiàn)實(shí)的運(yùn)動(dòng)狀態(tài)參數(shù)和在監(jiān)測(cè)結(jié)束后顯示的運(yùn)動(dòng)狀態(tài)參數(shù),例如,實(shí)時(shí)顯示的運(yùn)動(dòng)狀態(tài)參數(shù)可以是:實(shí)時(shí)水平速度、實(shí)時(shí)垂直速度、垂直速度為0時(shí)對(duì)應(yīng)的水平速度以及實(shí)時(shí)步長(zhǎng)中的任意一種或者其任意組合;監(jiān)測(cè)結(jié)束后顯示的運(yùn)動(dòng)狀態(tài)參數(shù)可以是:當(dāng)前已跑時(shí)間、當(dāng)前總步數(shù)、當(dāng)前已跑距離以及平均步長(zhǎng)中的任意一種或者其任意組合。進(jìn)一步,還可將運(yùn)動(dòng)狀態(tài)參數(shù)上傳或者分享,并對(duì)用戶與其好友的各項(xiàng)運(yùn)動(dòng)狀態(tài)參數(shù)進(jìn)行排名等。
實(shí)施例二
圖2為本發(fā)明實(shí)施例二提供的一種運(yùn)動(dòng)狀態(tài)監(jiān)測(cè)方法的流程示意圖,本實(shí)施例在上述實(shí)施例的基礎(chǔ)上,優(yōu)選是對(duì)所述檢測(cè)到監(jiān)測(cè)指令時(shí),根據(jù)傳感器采集數(shù)據(jù)確定終端在水平方向上的實(shí)時(shí)水平速度以及重力方向上的實(shí)時(shí)垂直速度進(jìn)一步優(yōu)化,具體包括:
S210、檢測(cè)到監(jiān)測(cè)指令時(shí),根據(jù)傳感器采集數(shù)據(jù)確定終端在垂直坐標(biāo)系中X軸上的第一加速度、Y軸上的第二加速度以及Z軸上的第三加速度,所述垂直坐標(biāo)系以終端中心為原點(diǎn),Z軸指向重力方向。
具體地,可以根據(jù)傳感器的采集數(shù)據(jù)確定終端在三維空間上的實(shí)時(shí)的加速度分量,再進(jìn)行坐標(biāo)系轉(zhuǎn)換,將實(shí)時(shí)的三軸加速度分量轉(zhuǎn)換到垂直坐標(biāo)系中,如此得到終端在垂直坐標(biāo)系中的三個(gè)軸向上的第一加速度、第二加速度以及第三加速度。
S220、根據(jù)第一加速度和第二加速度計(jì)算水平方向上的實(shí)時(shí)水平速度,根據(jù)第三加速度計(jì)算垂直方向上的實(shí)時(shí)垂直速度。
具體地,第一加速度、第二加速度以及第三加速度都是實(shí)時(shí)的,因此通過對(duì)其進(jìn)行積分運(yùn)算后可以求得相應(yīng)的實(shí)時(shí)水平速度或?qū)崟r(shí)垂直速度。
本實(shí)施例的技術(shù)方案,通過傳感器采集數(shù)據(jù)確定終端在垂直坐標(biāo)系三軸上的加速度分量,并進(jìn)行相應(yīng)運(yùn)算后得到終端在水平方向上的實(shí)時(shí)水平速度以及垂直方向上的實(shí)時(shí)垂直速度,相對(duì)于現(xiàn)有技術(shù)中必須使用GPS來測(cè)得距離的方案,本實(shí)施例擺脫了對(duì)GPS的依賴,降低了成本、提高了使用通用性,同時(shí)也減小了誤差,且現(xiàn)有技術(shù)中并沒有能夠在運(yùn)動(dòng)監(jiān)測(cè)過程中獲得實(shí)時(shí)垂直速度和實(shí)時(shí)水平速度的方案,本實(shí)施例中獲得實(shí)時(shí)垂直速度和實(shí)時(shí)水平速度可以實(shí)現(xiàn)對(duì)實(shí)時(shí)步長(zhǎng)的計(jì)算和顯示,優(yōu)化了用戶體驗(yàn)。
實(shí)施例三
圖3為本發(fā)明實(shí)施例三提供的一種運(yùn)動(dòng)狀態(tài)監(jiān)測(cè)方法的流程示意圖,本實(shí)施例在上述各實(shí)施例的基礎(chǔ)上,優(yōu)選是對(duì)檢測(cè)到監(jiān)測(cè)指令時(shí),根據(jù)傳感器采集數(shù)據(jù)確定終端在垂直坐標(biāo)系中X軸上的第一加速度、Y軸上的第二加速度以及Z軸上的第三加速度進(jìn)一步優(yōu)化,具體包括:
S310、檢測(cè)到監(jiān)測(cè)指令時(shí),根據(jù)三軸加速度傳感器采集終端在自身三維坐標(biāo)系中三個(gè)軸向上的實(shí)時(shí)加速度分量,并根據(jù)陀螺儀傳感器的采集數(shù)據(jù)確定重力方向。
其中,三軸加速度傳感器三軸加速度傳感器是基于加速度的基本原理去實(shí)現(xiàn)工作,具有體積小和重量輕特點(diǎn)。加速度是個(gè)空間矢量,一方面,要準(zhǔn)確了解物體的運(yùn)動(dòng)狀態(tài),必須測(cè)得其三個(gè)坐標(biāo)軸上的分量;另一方面,在預(yù)先不知道物體運(yùn)動(dòng)方向的場(chǎng)合下,可以使用三軸加速度傳感器來檢測(cè)加速度信號(hào)。
其中,陀螺儀傳感器是用高速回轉(zhuǎn)體的動(dòng)量矩敏感殼體相對(duì)慣性空間繞正交于自轉(zhuǎn)軸的一個(gè)或二個(gè)軸的角運(yùn)動(dòng)檢測(cè)裝置,利用其他原理制成的角運(yùn)動(dòng)檢測(cè)裝置起同樣功能的也稱陀螺儀。其工作原理是:對(duì)于高速旋轉(zhuǎn)的物體的旋轉(zhuǎn)軸,對(duì)于改變其方向的外力作用有趨向于垂直方向的傾向,而且,旋轉(zhuǎn)物體在橫向傾斜時(shí),重力會(huì)向增加傾斜的方向作用,而軸則向垂直方向運(yùn)動(dòng),就產(chǎn)生了搖頭的運(yùn)動(dòng)(歲差運(yùn)動(dòng))。因此,根據(jù)陀螺儀傳感器的采集數(shù)據(jù),可以得到重力方向,再結(jié)合終端中心的位置,由此可以確定Z軸指向重力方向的垂直坐標(biāo)系。
S320、將獲取的三個(gè)軸向的實(shí)時(shí)加速度分量合并為實(shí)時(shí)加速度,并根據(jù)重力方向確定垂直坐標(biāo)系。
其中,三軸加速度傳感器的三維坐標(biāo)系中,Z軸垂直于終端平面,X軸和Y軸位于終端所在平面內(nèi)。在確定重力方向后,可分別計(jì)算三軸和重力方向的夾角,將三軸加速度傳感器的三維坐標(biāo)系轉(zhuǎn)換為重力坐標(biāo)系。示例性的,終端在三軸加速度傳感器的三維坐標(biāo)系中的狀態(tài)如圖3a所示,其中,g是重力方向,α是重力方向與X軸的夾角,β是重力方向與Y軸的夾角,γ是重力方向與Z軸的夾角,轉(zhuǎn)換后的垂直坐標(biāo)系如圖3b所示。
S330、將實(shí)時(shí)加速度分解到垂直坐標(biāo)系中,得到終端在垂直坐標(biāo)系中X軸上的第一加速度、Y軸上的第二加速度以及Z軸上的第三加速度。
本實(shí)施例的技術(shù)方案,通過三軸加速度傳感器采集終端三軸上的實(shí)時(shí)加速度分量,并根據(jù)陀螺儀傳感器的采集數(shù)據(jù)確定重力方向,再獲取的三個(gè)軸向的實(shí)時(shí)加速度分量合并為實(shí)時(shí)加速度,并根據(jù)重力方向確定垂直坐標(biāo)系實(shí)現(xiàn)坐標(biāo)系的轉(zhuǎn)換,將實(shí)時(shí)加速度分解到垂直坐標(biāo)系中,得到終端在垂直坐標(biāo)系中X軸上的第一加速度、Y軸上的第二加速度以及Z軸上的第三加速度。相對(duì)于現(xiàn)有技術(shù)中必須使用GPS來測(cè)得距離的方案,本實(shí)施例擺脫了對(duì)GPS的依賴,降低了成本、提高了使用通用性,同時(shí)也減小了誤差,計(jì)算的第一加速度、第二加速度以及第三加速度用于后續(xù)進(jìn)行實(shí)時(shí)步長(zhǎng)計(jì)算的方案,優(yōu)化了用戶體驗(yàn)。
實(shí)施例四
圖4為本發(fā)明實(shí)施例四提供的一種運(yùn)動(dòng)狀態(tài)監(jiān)測(cè)方法的流程示意圖,本實(shí)施例在上述各實(shí)施例的基礎(chǔ)上,優(yōu)選是對(duì)根據(jù)第一加速度和第二加速度計(jì)算水平方向上的實(shí)時(shí)水平速度,根據(jù)第三加速度計(jì)算垂直方向上的實(shí)時(shí)垂直速度進(jìn)一步優(yōu)化,具體包括:
S410、將第一加速度和第二加速度合并,得到水平方向上的水平加速度。
S420、對(duì)水平加速度進(jìn)行積分運(yùn)算得到水平方向上的實(shí)時(shí)水平速度,對(duì)第三加速度進(jìn)行積分運(yùn)算得到垂直方向上的實(shí)時(shí)垂直速度。
具體地,可以根據(jù)公式來計(jì)算實(shí)時(shí)水平速度/實(shí)時(shí)垂直速度,其中,V0為初始速度,tn至t(n+1)為速度從V0到V的時(shí)間,a為實(shí)時(shí)加速度,t1和t2的值可以是終端根據(jù)計(jì)算精度或者是更新實(shí)時(shí)速度的頻率來設(shè)定。
示例性的,假設(shè)三軸加速度傳感器的采集頻路是1秒鐘采集1000次實(shí)時(shí)的三軸加速度分量,則相應(yīng)的可以計(jì)算得到1000個(gè)水平加速度a1、a2……a1000,和1000個(gè)垂直加速度(即上述第三加速度)a′1、a′2……a′1000,tn至t(n+1)的時(shí)間為1毫秒,對(duì)應(yīng)的水平速度依次為:
……
對(duì)應(yīng)的垂直速度依次為:
……
本實(shí)施例的技術(shù)方案,通過將第一加速度和第二加速度合并,得到水平方向上的水平加速度,再對(duì)水平加速度進(jìn)行積分運(yùn)算得到水平方向上的實(shí)時(shí)水平速度,對(duì)第三加速度進(jìn)行積分運(yùn)算得到垂直方向上的實(shí)時(shí)垂直速度,相對(duì)于現(xiàn)有技術(shù)中必須使用GPS來測(cè)得距離的方案,本實(shí)施例擺脫了對(duì)GPS的依賴,降低了成本、提高了使用通用性,同時(shí)也減小了誤差,計(jì)算的實(shí)時(shí)垂直速度和實(shí)時(shí)水平速度用于后續(xù)進(jìn)行實(shí)時(shí)步長(zhǎng)計(jì)算的方案,優(yōu)化了用戶體驗(yàn)。
實(shí)施例五
圖5為本發(fā)明實(shí)施例五提供的一種運(yùn)動(dòng)狀態(tài)監(jiān)測(cè)方法的流程示意圖,本實(shí)施例在上述各實(shí)施例的基礎(chǔ)上,優(yōu)選是在檢測(cè)到監(jiān)測(cè)指令之前,進(jìn)一步增加了:
S510、發(fā)出第一提示信息,所述第一提示信息用于提示用戶在靜止時(shí)開啟監(jiān)測(cè)運(yùn)動(dòng)狀態(tài)的功能。
具體地,用戶在打開終端后,終端發(fā)出第一提示信息,發(fā)出第一提示信息的形式可以是以文字、圖片、動(dòng)態(tài)畫面、特定音樂或者語音。
S520、判斷預(yù)設(shè)時(shí)間內(nèi)三軸加速度傳感器采集數(shù)據(jù)的變化量是否小于預(yù)設(shè)閾值。
其中,可以根據(jù)三軸加速度傳感器的采集數(shù)據(jù)計(jì)算出預(yù)設(shè)時(shí)間內(nèi)實(shí)時(shí)的三軸加速度分量,并判斷其變化量是否小于預(yù)設(shè)閾值,小于預(yù)設(shè)閾值時(shí)說明用戶基本處于靜止?fàn)顟B(tài),大于預(yù)設(shè)閾值時(shí),說明用戶沒有處于靜止?fàn)顟B(tài)。
進(jìn)一步,由于在計(jì)算實(shí)時(shí)速度時(shí),需要用到初始速度V0,如果用戶不是從靜止?fàn)顟B(tài)開始運(yùn)動(dòng)的,可能會(huì)有一些誤差,因此,為了提高監(jiān)測(cè)運(yùn)動(dòng)狀態(tài)的準(zhǔn)確性,在正式開始監(jiān)測(cè)運(yùn)動(dòng)狀態(tài)之前,可以顯示提示信息以提示用戶從靜止?fàn)顟B(tài)開始。
S530、如果是,則發(fā)出第二提示信息,所述第二提示信息用于提示用戶可以開啟監(jiān)測(cè)運(yùn)動(dòng)狀態(tài)的功能。
其中,發(fā)出第二提示信息的形式可以是以文字、圖片、動(dòng)態(tài)畫面、特定音樂或者語音。在確定用戶基本處于靜止?fàn)顟B(tài)后,可以提示發(fā)出第二提示信息以提示用戶當(dāng)前狀態(tài)可以開啟監(jiān)測(cè)運(yùn)動(dòng)狀態(tài)的功能。之后,用戶可以進(jìn)行相應(yīng)操作來觸發(fā)生成監(jiān)測(cè)指令,觸發(fā)生產(chǎn)檢測(cè)指令的方式可以參考實(shí)施例一,在此不再贅述。
本實(shí)施例的技術(shù)方案,通過在檢測(cè)到監(jiān)測(cè)指令之前發(fā)出第一提示信息并判斷預(yù)設(shè)時(shí)間內(nèi)位移的變化量是否小于預(yù)設(shè)閾值以檢測(cè)用戶當(dāng)前狀態(tài)是否適合開始監(jiān)測(cè),在小于預(yù)設(shè)閾值時(shí)確定可以開始檢測(cè)并發(fā)出第二提示信息已提示用戶當(dāng)前狀態(tài)可以開始監(jiān)測(cè),如此提高對(duì)監(jiān)測(cè)運(yùn)動(dòng)狀態(tài)的準(zhǔn)確定,也提高了用戶體驗(yàn)。
實(shí)施例六
圖6為本發(fā)明實(shí)施例六提供的一種運(yùn)動(dòng)狀態(tài)監(jiān)測(cè)方法的流程示意圖,本實(shí)施例在上述各實(shí)施例的基礎(chǔ)上,提供一個(gè)優(yōu)選實(shí)施例,具體包括:
S601、發(fā)出第一提示信息,所述第一提示信息用于提示用戶在靜止時(shí)開啟監(jiān)測(cè)運(yùn)動(dòng)狀態(tài)的功能。
示例性的,顯示文字信息“請(qǐng)?jiān)陟o止時(shí)開啟測(cè)試”。
S602、判斷預(yù)設(shè)時(shí)間內(nèi)三軸加速度傳感器采集數(shù)據(jù)的變化量是否小于預(yù)設(shè)閾值。
示例性的,判斷2S內(nèi)三軸加速度傳感器XYZ軸的變化量是否小于預(yù)設(shè)閾值。
S603、如果是,則發(fā)出第二提示信息,所述第二提示信息用于提示用戶可以開啟監(jiān)測(cè)運(yùn)動(dòng)狀態(tài)的功能。
示例性的,顯示文字信息“可以開啟測(cè)試”。
S604、檢測(cè)到監(jiān)測(cè)指令時(shí),根據(jù)三軸加速度傳感器采集終端在自身三維坐標(biāo)系中三個(gè)軸向上的實(shí)時(shí)加速度分量,并根據(jù)陀螺儀傳感器的采集數(shù)據(jù)確定重力方向。
S605、將獲取的三個(gè)軸向的實(shí)時(shí)加速度分量合并為實(shí)時(shí)加速度,并根據(jù)重力方向確定垂直坐標(biāo)系。
S606、將實(shí)時(shí)加速度分解到垂直坐標(biāo)系中,得到終端在垂直坐標(biāo)系中X軸上的第一加速度、Y軸上的第二加速度以及Z軸上的第三加速度。
S607、將第一加速度和第二加速度合并,得到水平方向上的水平加速度。
S608、對(duì)水平加速度進(jìn)行積分運(yùn)算得到水平方向上的實(shí)時(shí)水平速度,對(duì)第三加速度進(jìn)行積分運(yùn)算得到垂直方向上的實(shí)時(shí)垂直速度。
S609、實(shí)時(shí)獲取垂直速度為0時(shí)對(duì)應(yīng)的當(dāng)前水平速度和當(dāng)前時(shí)間戳。
S610、計(jì)算并顯示實(shí)時(shí)運(yùn)動(dòng)狀態(tài)參數(shù)。
其中,運(yùn)動(dòng)狀態(tài)參數(shù)包括實(shí)時(shí)步長(zhǎng),所述實(shí)時(shí)步長(zhǎng)為垂直速度為0時(shí)對(duì)應(yīng)的當(dāng)前水平速度和單位間隔時(shí)間的乘積,所述單位間隔時(shí)間為垂直速度為0時(shí)對(duì)應(yīng)的當(dāng)前時(shí)間戳和下一時(shí)間戳的差值。
進(jìn)一步,實(shí)時(shí)顯示的運(yùn)動(dòng)狀態(tài)參數(shù)可以是:實(shí)時(shí)水平速度、實(shí)時(shí)垂直速度、垂直速度為0時(shí)對(duì)應(yīng)的水平速度以及實(shí)時(shí)步長(zhǎng)中的任意一種或者其任意組合;
S611、檢測(cè)到結(jié)束監(jiān)測(cè)運(yùn)動(dòng)狀態(tài)的指令時(shí),計(jì)算并顯示最終運(yùn)動(dòng)狀態(tài)參數(shù)。
監(jiān)測(cè)結(jié)束后顯示的運(yùn)動(dòng)狀態(tài)參數(shù)可以是:當(dāng)前已跑時(shí)間、當(dāng)前總步數(shù)、當(dāng)前已跑距離以及平均步長(zhǎng)中的任意一種或者其任意組合。
實(shí)施例七
圖7為本發(fā)明實(shí)施例七提供的一種運(yùn)動(dòng)狀態(tài)監(jiān)測(cè)裝置的結(jié)構(gòu)示意圖,本實(shí)施例可適用于對(duì)運(yùn)動(dòng)狀態(tài)進(jìn)行監(jiān)測(cè)的情況,該裝置可由硬件和/或軟件組成,并一般可集成于終端中,該終端可以是智能手機(jī)、穿戴設(shè)備(如智能手環(huán)、智能手表)等,還可以是智能手機(jī)和穿戴設(shè)備的結(jié)合,即由穿戴設(shè)備中的傳感器采集相應(yīng)數(shù)據(jù)并進(jìn)行簡(jiǎn)單計(jì)算,由智能手機(jī)進(jìn)行較為復(fù)雜的計(jì)算并進(jìn)行顯示。如圖7所示,該裝置具體包括:
確定模塊710,用于檢測(cè)到監(jiān)測(cè)指令時(shí),根據(jù)傳感器采集數(shù)據(jù)確定終端在水平方向上的實(shí)時(shí)水平速度以及重力方向上的實(shí)時(shí)垂直速度;
獲取模塊720,用于實(shí)時(shí)獲取垂直速度為0時(shí)對(duì)應(yīng)的當(dāng)前水平速度和當(dāng)前時(shí)間戳;
計(jì)算顯示模塊730,用于實(shí)時(shí)計(jì)算并顯示運(yùn)動(dòng)狀態(tài)參數(shù),所述運(yùn)動(dòng)狀態(tài)參數(shù)包括實(shí)時(shí)步長(zhǎng),所述實(shí)時(shí)步長(zhǎng)為垂直速度為0時(shí)對(duì)應(yīng)的當(dāng)前水平速度和單位間隔時(shí)間的乘積,所述單位間隔時(shí)間為垂直速度為0時(shí)對(duì)應(yīng)的當(dāng)前時(shí)間戳和下一時(shí)間戳的差值。
在本實(shí)施例中,所述確定模塊具體包括:
確定單元,用于檢測(cè)到監(jiān)測(cè)指令時(shí),根據(jù)傳感器采集數(shù)據(jù)確定終端在垂直坐標(biāo)系中X軸上的第一加速度、Y軸上的第二加速度以及Z軸上的第三加速度,所述垂直坐標(biāo)系以終端中心為原點(diǎn),Z軸指向重力方向;
計(jì)算單元,用于根據(jù)第一加速度和第二加速度計(jì)算水平方向上的實(shí)時(shí)水平速度,根據(jù)第三加速度計(jì)算垂直方向上的實(shí)時(shí)垂直速度。
在本實(shí)施例中,所述確定單元具體可以包括:
采集子單元,用于檢測(cè)到監(jiān)測(cè)指令時(shí),根據(jù)三軸加速度傳感器采集終端在自身三維坐標(biāo)系中三個(gè)軸向上的實(shí)時(shí)加速度分量,并根據(jù)陀螺儀傳感器的采集數(shù)據(jù)確定重力方向;
第一合并子單元,用于將獲取的三個(gè)軸向的實(shí)時(shí)加速度分量合并為實(shí)時(shí)加速度,并根據(jù)重力方向確定垂直坐標(biāo)系;
分解子單元,用于將實(shí)時(shí)加速度分解到垂直坐標(biāo)系中,得到終端在垂直坐標(biāo)系中X軸上的第一加速度、Y軸上的第二加速度以及Z軸上的第三加速度。
在本實(shí)施例中,所述計(jì)算單元具體可以包括:
第二合并子單元,用于將第一加速度和第二加速度合并,得到水平方向上的水平加速度;
運(yùn)算子單元,用于對(duì)水平加速度進(jìn)行積分運(yùn)算得到水平方向上的實(shí)時(shí)水平速度,對(duì)第三加速度進(jìn)行積分運(yùn)算得到垂直方向上的實(shí)時(shí)垂直速度。
在本實(shí)施例中,還可以包括:
第一提示模塊,用于在檢測(cè)到監(jiān)測(cè)指令之前,發(fā)出第一提示信息,所述第一提示信息用于提示用戶在靜止時(shí)開啟監(jiān)測(cè)運(yùn)動(dòng)狀態(tài)的功能;
判斷模塊,用于判斷預(yù)設(shè)時(shí)間內(nèi)三軸加速度傳感器采集數(shù)據(jù)的變化量是否小于預(yù)設(shè)閾值;
第二提示模塊,用于在預(yù)設(shè)時(shí)間內(nèi)三軸加速度傳感器采集數(shù)據(jù)的變化量小于預(yù)設(shè)閾值時(shí),發(fā)出第二提示信息,所述第二提示信息用于提示用戶可以開啟監(jiān)測(cè)運(yùn)動(dòng)狀態(tài)的功能。
在上述方案的基礎(chǔ)上,優(yōu)選的,所述運(yùn)動(dòng)狀態(tài)參數(shù)還可以包括:實(shí)時(shí)水平速度、實(shí)時(shí)垂直速度、垂直速度為0時(shí)對(duì)應(yīng)的水平速度、當(dāng)前已跑時(shí)間、當(dāng)前總步數(shù)、當(dāng)前已跑距離以及平均步長(zhǎng)中的任意一種或者其任意組合;
其中,所述當(dāng)前總步數(shù)與單位間隔時(shí)間的總數(shù)量相對(duì)應(yīng),一個(gè)單位時(shí)間間隔記為一步,所述已跑距離是對(duì)所有實(shí)時(shí)步長(zhǎng)求和得出。
本實(shí)施例提供的運(yùn)動(dòng)狀態(tài)監(jiān)測(cè)裝置,與本發(fā)明任意實(shí)施例所提供的運(yùn)動(dòng)狀態(tài)監(jiān)測(cè)方法屬于同一發(fā)明構(gòu)思,可執(zhí)行本發(fā)明任意實(shí)施例所提供的運(yùn)動(dòng)狀態(tài)監(jiān)測(cè)方法,具備執(zhí)行方法相應(yīng)的功能模塊和有益效果。
注意,上述僅為本發(fā)明的較佳實(shí)施例及所運(yùn)用技術(shù)原理。本領(lǐng)域技術(shù)人員會(huì)理解,本發(fā)明不限于這里所述的特定實(shí)施例,對(duì)本領(lǐng)域技術(shù)人員來說能夠進(jìn)行各種明顯的變化、重新調(diào)整和替代而不會(huì)脫離本發(fā)明的保護(hù)范圍。因此,雖然通過以上實(shí)施例對(duì)本發(fā)明進(jìn)行了較為詳細(xì)的說明,但是本發(fā)明不僅僅限于以上實(shí)施例,在不脫離本發(fā)明構(gòu)思的情況下,還可以包括更多其他等效實(shí)施例,而本發(fā)明的范圍由所附的權(quán)利要求范圍決定。