本公開涉及電子產(chǎn)品領(lǐng)域,更具體地涉及用于統(tǒng)計(jì)步數(shù)的方法和設(shè)備。
背景技術(shù):
隨著健康理念的普及,健康越來(lái)越受到人們的重視,而走路和跑步也成為人們喜愛的簡(jiǎn)單卻行之有效的運(yùn)動(dòng)方式。在這種運(yùn)動(dòng)中,人們最重要的需求是方便地讓自己知道走了多少步,從而推算出自己消耗了多少能量。
目前的計(jì)步方法大多涉及對(duì)采集到的加速度數(shù)據(jù)進(jìn)行計(jì)步信息統(tǒng)計(jì)。然而,使用加速度計(jì)數(shù)據(jù)來(lái)進(jìn)行計(jì)步會(huì)導(dǎo)致以下問題:由于加速度計(jì)具有穩(wěn)態(tài)特性,因此當(dāng)人們攜帶加速度計(jì)進(jìn)行勻速運(yùn)動(dòng)時(shí),根據(jù)加速度計(jì)的數(shù)據(jù)可以統(tǒng)計(jì)出步數(shù)信息;然而人們?cè)谶\(yùn)動(dòng)時(shí)不可能始終保持穩(wěn)定的勻速運(yùn)動(dòng),因此在運(yùn)動(dòng)的變速過程中,通過加速度計(jì)統(tǒng)計(jì)出的步數(shù)信息經(jīng)常不太準(zhǔn)確。
此外,還存在采用陀螺儀數(shù)據(jù)來(lái)進(jìn)行計(jì)步的方案。然而基于陀螺儀的方案存在以下問題:由于計(jì)步設(shè)備一般佩戴在手上,利用陀螺儀計(jì)步一般基于人運(yùn)動(dòng)時(shí)手臂周期性擺動(dòng)帶來(lái)的角度變化的特性,但人運(yùn)動(dòng)時(shí)手上的動(dòng)作各不相同,有的人在運(yùn)動(dòng)時(shí)習(xí)慣于將雙手放在口袋里并不擺動(dòng),此時(shí)手臂上的陀螺儀采集到的信號(hào)的周期性程度比較差,因此計(jì)步結(jié)果也不夠準(zhǔn)確。
技術(shù)實(shí)現(xiàn)要素:
為了解決上述問題,提供了根據(jù)本公開的用于統(tǒng)計(jì)步數(shù)的方法和設(shè)備。
根據(jù)本公開的第一方面,提供了一種用于統(tǒng)計(jì)步數(shù)的方法。該方 法包括:(a)基于來(lái)自第一傳感器的數(shù)據(jù)來(lái)計(jì)算第一步數(shù);(b)基于來(lái)自第二傳感器的數(shù)據(jù)來(lái)計(jì)算第二步數(shù);以及(c)根據(jù)所述第一傳感器和所述第二傳感器各自的可信度,基于所述第一步數(shù)和所述第二步數(shù)來(lái)計(jì)算最終步數(shù)。
在一些實(shí)施例中,所述第一傳感器是加速度計(jì),以及所述第二傳感器是陀螺儀。在一些實(shí)施例中,所述可信度是根據(jù)相應(yīng)傳感器的跨步時(shí)耗的標(biāo)準(zhǔn)差來(lái)確定的。在一些實(shí)施例中,跨步時(shí)耗的標(biāo)準(zhǔn)差是根據(jù)以下公式來(lái)確定的:
其中,step_len_std表示相應(yīng)傳感器的跨步時(shí)耗的標(biāo)準(zhǔn)差,step_len(i)表示第i步的跨步時(shí)耗,step_lenavg表示n個(gè)跨步時(shí)耗的平均值,且n為自然數(shù)。在一些實(shí)施例中,所述第一傳感器的可信度和所述第二傳感器的可信度分別根據(jù)以下公式來(lái)計(jì)算:
其中,cred1表示所述第一傳感器的可信度,cred2表示所述第二傳感器的可信度,step_len_std1表示第一傳感器的跨步時(shí)耗的標(biāo)準(zhǔn)差,以及step_len_std2表示第二傳感器的跨步時(shí)耗的標(biāo)準(zhǔn)差。在一些實(shí)施例中,所述最終步數(shù)是基于以下公式來(lái)計(jì)算的:最終步數(shù)=第一步數(shù)×第一傳感器的可信度+第二步數(shù)×第二傳感器的可信度。
此外,根據(jù)本公開的第二方面,提供了一種用于統(tǒng)計(jì)步數(shù)的設(shè)備。該設(shè)備包括:第一步數(shù)計(jì)算單元,用于基于來(lái)自第一傳感器的數(shù)據(jù)來(lái)計(jì)算第一步數(shù);第二步數(shù)計(jì)算單元,用于基于來(lái)自第二傳感器的數(shù)據(jù)來(lái)計(jì)算第二步數(shù);以及最終步數(shù)計(jì)算單元,用于根據(jù)所述第一傳感器和所述第二傳感器各自的可信度,基于所述第一步數(shù)和所述第二步數(shù)來(lái)計(jì)算最終步數(shù)。
在一些實(shí)施例中,所述可信度是根據(jù)相應(yīng)傳感器的跨步時(shí)耗的標(biāo)準(zhǔn)差來(lái)確定的,且跨步時(shí)耗的標(biāo)準(zhǔn)差是根據(jù)以下公式來(lái)確定的:
其中,step_len_std表示相應(yīng)傳感器的跨步時(shí)耗的標(biāo)準(zhǔn)差,step_len(i)表示第i步的跨步時(shí)耗,step_lenavg表示n個(gè)跨步時(shí)耗的平均值,且n為自然數(shù)。在一些實(shí)施例中,所述第一傳感器的可信度和所述第二傳感器的可信度分別根據(jù)以下公式來(lái)計(jì)算:
其中,cred1表示所述第一傳感器的可信度,cred2表示所述第二傳感器的可信度,step_len_std1表示第一傳感器的跨步時(shí)耗的標(biāo)準(zhǔn)差,以及step_len_std2表示第二傳感器的跨步時(shí)耗的標(biāo)準(zhǔn)差。在一些實(shí)施例中,所述最終步數(shù)是基于以下公式來(lái)計(jì)算的:最終步數(shù)=第一步數(shù)×第一傳感器的可信度+第二步數(shù)×第二傳感器的可信度。
通過使用本公開實(shí)施例的用于統(tǒng)計(jì)步數(shù)的方法和設(shè)備,可以通過對(duì)多種計(jì)步數(shù)據(jù)(例如,加速度計(jì)數(shù)據(jù)和陀螺儀數(shù)據(jù))的融合,提高計(jì)步精度,增強(qiáng)計(jì)步算法對(duì)不同人群的適應(yīng)性,擴(kuò)大計(jì)步系統(tǒng)對(duì)不同人群的覆蓋面。
附圖說(shuō)明
通過下面結(jié)合附圖說(shuō)明本公開的優(yōu)選實(shí)施例,將使本公開的上述及其它目的、特征和優(yōu)點(diǎn)更加清楚,其中:
圖1是示出了根據(jù)本公開第一實(shí)施例的計(jì)步設(shè)備的示例硬件配置的框圖。
圖2是示出了根據(jù)本公開第一實(shí)施例的計(jì)步方法的示例流程圖。
圖3~5是示出了圖1所示方法中針對(duì)加速度計(jì)數(shù)據(jù)的部分處理的 示例流程圖。
圖6~8是示出了圖1所示方法中針對(duì)陀螺儀數(shù)據(jù)的部分處理的示例流程圖。
圖9是示出了根據(jù)本公開第二實(shí)施例的用于統(tǒng)計(jì)步數(shù)的通用方法的示例流程圖。
圖10是示出了根據(jù)本公開第二實(shí)施例的用于執(zhí)行圖9所示方法的計(jì)步設(shè)備的各個(gè)示例功能單元的框圖。
具體實(shí)施方式
首先應(yīng)當(dāng)理解:盡管下面提供了本公開的一個(gè)或多個(gè)實(shí)施例的實(shí)現(xiàn),但是實(shí)際上可以使用任何技術(shù)(不管是當(dāng)前已知的還是現(xiàn)有的)來(lái)實(shí)現(xiàn)所公開的設(shè)備和/或方法。本公開不應(yīng)以任何方式受限于以下說(shuō)明的包括本文所示和所述的示例設(shè)計(jì)和實(shí)現(xiàn)在內(nèi)的說(shuō)明性實(shí)現(xiàn)、附圖和技術(shù),而是可以在所附權(quán)利要求及其完全等價(jià)物的范圍內(nèi)修改本公開。
此外,應(yīng)當(dāng)注意:盡管以下描述某些具體實(shí)施例,但不代表這些具體實(shí)施例是實(shí)現(xiàn)本公開的最小/最優(yōu)方案。換言之,可以采用這些實(shí)施例中的部分技術(shù)特征作為一個(gè)完整的技術(shù)方案,也可以采用這些實(shí)施例中未說(shuō)明的其他等價(jià)、替代、備選技術(shù)特征與本公開相結(jié)合的技術(shù)方案作為一個(gè)完整的技術(shù)方案。因此,本公開的保護(hù)范圍不限于這些具體實(shí)施例,而是涵蓋本領(lǐng)域技術(shù)人員根據(jù)本公開的教導(dǎo)所能做出的各種修改、替換、添加、刪除等。
在正式描述本公開的實(shí)施例之前,將首先介紹一下在下文中可能用到的術(shù)語(yǔ)。這些術(shù)語(yǔ)用于幫助本領(lǐng)域技術(shù)人員對(duì)本公開的方案進(jìn)行全面和透徹的理解。因此,除非上下文另行明確規(guī)定,否則術(shù)語(yǔ)應(yīng)當(dāng)以本領(lǐng)域技術(shù)人員所慣常理解的含義相同,而不應(yīng)當(dāng)過分拘泥于其字面意思或被過度解讀。
mems(micro-electromechanicalsystems):mems傳感器是采用微電子和微機(jī)械加工技術(shù)制造出來(lái)的新型傳感器。與傳統(tǒng)傳感器相比,其具有體積小、重量輕、成本低、功耗低、可靠性高、適于批量 化生產(chǎn)、易于集成和實(shí)現(xiàn)智能化的特點(diǎn)。同時(shí),微米量級(jí)的特征尺寸使得它可以完成某些傳統(tǒng)機(jī)械傳感器所不能實(shí)現(xiàn)的功能。
步數(shù)檢測(cè):根據(jù)人體運(yùn)動(dòng)特征,利用軟件算法實(shí)現(xiàn)運(yùn)動(dòng)步數(shù)檢測(cè)的方法。
步態(tài):指人體行走的方式,是一種復(fù)雜的行為特征,經(jīng)研究人體的步態(tài)具有較強(qiáng)的個(gè)體獨(dú)有特性。
跨步耗時(shí)或跨步時(shí)耗:通常是指跨過一步所消耗的時(shí)間。
如上所述,基于加速度計(jì)的步數(shù)統(tǒng)計(jì)方案通常涉及以下操作。首先,需要通過加速度計(jì)傳感器來(lái)采集加速度值。例如,使用者佩戴上具有加速度計(jì)傳感器的計(jì)步器進(jìn)行跑步運(yùn)動(dòng)時(shí),計(jì)步器的三軸加速度傳感器會(huì)輸出三個(gè)相互垂直方向上的加速度,設(shè)其分別為x軸加速度、y軸加速度和z軸加速度。一般情況下,采集相同數(shù)量的x軸、y軸和z軸加速度數(shù)據(jù),設(shè)采集的數(shù)據(jù)數(shù)量均為n1個(gè)。
然后,根據(jù)各個(gè)加速度數(shù)據(jù)來(lái)選擇計(jì)算基準(zhǔn)軸。例如,對(duì)采集的x軸、y軸、z軸上的n1個(gè)加速度數(shù)值分別計(jì)算其加速度的平均值,并選取具有最大平均值的軸作為計(jì)算基準(zhǔn)軸。接下來(lái),對(duì)各個(gè)加速度數(shù)據(jù)進(jìn)行實(shí)時(shí)數(shù)字濾波。具體地,對(duì)于計(jì)算基準(zhǔn)軸輸出的連續(xù)n2個(gè)加速度數(shù)值,將其求平均值后作為濾波后的加速度數(shù)值進(jìn)行輸出。然后,將濾波輸出的有效加速度數(shù)值存儲(chǔ)至n3個(gè)寄存器中。如果n3個(gè)寄存器已滿,則可以例如將最早存儲(chǔ)的加速度數(shù)值刪除,以存儲(chǔ)最新的加速度數(shù)值。然后,查找出n3個(gè)寄存器中所存儲(chǔ)的加速度的最大值max和最小值min,利用公式dyn_threshold=(max+min)/2求出實(shí)時(shí)動(dòng)態(tài)閾值dyn_threshold。
接下來(lái),最新采集的濾波后加速度數(shù)值與上一次采集的加速度數(shù)值做差處理,并判斷差值的絕對(duì)值是否大于預(yù)定義精度precision,其中,precision>0。如果大于預(yù)定義精度,則執(zhí)行下一步驟;如果小于或等于預(yù)定義精度,則表明依據(jù)本次輸出的加速度數(shù)值不足以判斷使用者是否有效邁出了一步,執(zhí)行實(shí)時(shí)濾波。然后,判斷最新采集的濾波后加速度數(shù)值是否大于實(shí)時(shí)動(dòng)態(tài)閾值。如果大于實(shí)時(shí)動(dòng)態(tài)閾值,則判斷最新采集的濾波后加速度數(shù)值大于上一次采集的加速度數(shù)值是否 成立。如果成立,則表明此時(shí)加速度曲線的斜率為正,可以判定使用者有效地邁出了一步。如果不成立,則表明此時(shí)加速度曲線的斜率為負(fù),不可判定使用者有效地邁出了一步。如果最新采集的濾波后加速度數(shù)值小于或等于實(shí)時(shí)動(dòng)態(tài)閾值,則將其舍去。
然而,由于加速度計(jì)具有穩(wěn)態(tài)特性,當(dāng)人們攜帶加速度計(jì)進(jìn)行勻速運(yùn)動(dòng)時(shí),根據(jù)加速度計(jì)的數(shù)據(jù)能比較準(zhǔn)確地統(tǒng)計(jì)出步數(shù)信息。但人們?cè)谶\(yùn)動(dòng)時(shí)不可能始終保持穩(wěn)定的勻速運(yùn)動(dòng),因此在運(yùn)動(dòng)的變速過程中,通過加速度計(jì)統(tǒng)計(jì)出的步數(shù)信息是不太準(zhǔn)確的。
鑒于加速度計(jì)具有很好的穩(wěn)態(tài)特性且測(cè)量值隨時(shí)間變化極小,但極易受外部干擾,且鑒于陀螺儀具有高動(dòng)態(tài)特性,受外部干擾小,但測(cè)量值隨時(shí)間變化大,因此在本公開的實(shí)施例中,可以將加速度計(jì)和陀螺儀的優(yōu)缺點(diǎn)互補(bǔ)。換言之,可以用恰當(dāng)?shù)姆绞綄烧哌M(jìn)行數(shù)據(jù)融合,以有效地提高計(jì)步精度,擴(kuò)大計(jì)步設(shè)備的普適性。更一般地,對(duì)于具有不同特性的多種(例如,2種或2種以上)計(jì)步方式,可以根據(jù)恰當(dāng)?shù)姆绞綄?duì)它們的計(jì)步數(shù)據(jù)進(jìn)行融合,以提高計(jì)步精度。
例如,在運(yùn)動(dòng)(例如,散步/健步/跑步)的變速過程中,根據(jù)陀螺儀的高動(dòng)態(tài)特性,融合了陀螺儀的數(shù)據(jù)能較準(zhǔn)確的統(tǒng)計(jì)步數(shù)信息。而在運(yùn)動(dòng)(例如,散步/健步/跑步)過程中,當(dāng)手臂的擺動(dòng)形態(tài)和腿部的擺動(dòng)形態(tài)不太一致時(shí)(例如有的人在運(yùn)動(dòng)時(shí)習(xí)慣于將雙手放在口袋里并不擺動(dòng)),此時(shí)手臂上的陀螺儀采集到的信號(hào)的周期性程度比較差,然而融合加速度計(jì)的數(shù)據(jù)能較準(zhǔn)確的統(tǒng)計(jì)步數(shù)信息。通過對(duì)加速度計(jì)數(shù)據(jù)和陀螺儀數(shù)據(jù)的融合,提高計(jì)步精度,增強(qiáng)計(jì)步算法對(duì)不同人群的適應(yīng)性,擴(kuò)大計(jì)步系統(tǒng)對(duì)不同人群的覆蓋面。
以下,將結(jié)合圖1~8來(lái)詳細(xì)描述根據(jù)本公開一些實(shí)施例的用于將加速度計(jì)數(shù)據(jù)和陀螺儀數(shù)據(jù)加以融合的復(fù)合計(jì)步方法。
圖1是示出了根據(jù)本公開第一實(shí)施例的計(jì)步設(shè)備100的示例配置的框圖。在圖1所示示例中,計(jì)步設(shè)備100可以包括處理器110、存儲(chǔ)器120、加速度計(jì)傳感器130和陀螺儀傳感器140。如圖1所示,這些組件可以通過總線150彼此通信。然而,本公開不限于此,實(shí)際上部分或全部組件之間可以直接通信,而不經(jīng)過總線150。例如,存儲(chǔ) 器120、加速度計(jì)傳感器130和陀螺儀傳感器140可以與處理器110直接相連(例如,經(jīng)由處理器110提供的相應(yīng)管腳和引線)。然而,為了說(shuō)明的方便和直觀,依然以圖1為例。
更具體地,計(jì)步設(shè)備100可以是移動(dòng)設(shè)備,例如手機(jī)等,也可以是可穿戴設(shè)備,例如智能手環(huán)、智能眼鏡、智能頭帶、智能鞋等。其可以根據(jù)使用者的需要而采用任何特定形式。此外,在一些備選實(shí)施例中,計(jì)步設(shè)備100也可以是不包括加速度計(jì)傳感器130和陀螺儀傳感器140的設(shè)備。例如,其可以是臺(tái)式計(jì)算機(jī)、膝上型計(jì)算機(jī)、平板電腦、基站、機(jī)頂盒等。盡管其本身并不具備檢測(cè)用戶運(yùn)動(dòng)數(shù)據(jù)的傳感器(例如,加速度計(jì)傳感器130和/或陀螺儀傳感器140),其可以通過從用戶隨身攜帶的運(yùn)動(dòng)傳感器接收相應(yīng)數(shù)據(jù),并進(jìn)行根據(jù)本公開實(shí)施例的復(fù)合計(jì)步工作。也就是說(shuō),只要能夠獲得用戶的上述運(yùn)動(dòng)數(shù)據(jù)(包括但不限于:陀螺儀數(shù)據(jù)和/或加速度數(shù)據(jù)等),任何電子設(shè)備均可作為本公開實(shí)施例的計(jì)步設(shè)備100。
計(jì)步設(shè)備100的處理器110可以是通用處理器,例如cpu(中央處理單元)、微處理器、微控制器(mcu)等,其也可以是專用處理器,例如現(xiàn)場(chǎng)可編程門陣列(fpga)、專用集成電路(asic)等。此外,在計(jì)步設(shè)備100的存儲(chǔ)器120中可以存儲(chǔ)用于使得處理器110能夠執(zhí)行根據(jù)本公開實(shí)施例的方法的指令和數(shù)據(jù)。
為了說(shuō)明的簡(jiǎn)便,以下將以計(jì)步設(shè)備為便攜式移動(dòng)設(shè)備或可穿戴設(shè)備(例如,智能電話或智能手環(huán))為例來(lái)詳細(xì)說(shuō)明,其上可具備加速度計(jì)傳感器130和陀螺儀傳感器140。
圖2示出了根據(jù)本公開第一實(shí)施例的計(jì)步方法200的整體流程圖。如圖2所示,方法200可以包括步驟s210~s232。根據(jù)本公開的一些實(shí)施例,方法200的一些步驟可以單獨(dú)執(zhí)行或組合執(zhí)行,以及可以并行執(zhí)行或順序執(zhí)行,并不局限于圖2所示的具體操作順序。例如,盡管步驟s222和s224的序號(hào)在步驟s210~s220之后,但是實(shí)際上它們的步驟可以并行執(zhí)行,或者步驟s222和s224可以部分或全部在步驟s210~s220之前或之后執(zhí)行。在一些實(shí)施例中,方法200可以由圖1所示的計(jì)步設(shè)備100和/或圖10所示的計(jì)步設(shè)備1000來(lái)執(zhí)行。
如圖2所示,方法200可以從步驟s210或s222開始執(zhí)行或從這二者同時(shí)開始執(zhí)行。大致上,步驟s210~s220涉及根據(jù)加速度計(jì)數(shù)據(jù)來(lái)統(tǒng)計(jì)第一步數(shù);步驟s222~s224涉及根據(jù)陀螺儀數(shù)據(jù)來(lái)統(tǒng)計(jì)第二步數(shù);以及步驟s226~s232涉及根據(jù)這兩種統(tǒng)計(jì)數(shù)據(jù)來(lái)得到最終的復(fù)合計(jì)步數(shù)據(jù)。
在步驟s210中,計(jì)步設(shè)備100(更具體地,處理器110)可以從加速度計(jì)傳感器130獲得用戶的加速度計(jì)數(shù)據(jù)。例如,當(dāng)用戶佩戴上計(jì)步設(shè)備100進(jìn)行運(yùn)動(dòng)時(shí),如前所述,三軸加速度傳感器130會(huì)輸出當(dāng)采樣率為fs時(shí)三個(gè)相互垂直方向上(例如,x軸/y軸/z軸)的加速度值。
在步驟s212中,可以對(duì)所得到的三軸加速度值進(jìn)行預(yù)處理,以下結(jié)合圖3來(lái)具體描述該預(yù)處理。圖3示出了在圖2所示方法200中針對(duì)加速度計(jì)數(shù)據(jù)的預(yù)處理的示例方法300。該預(yù)處理300可包含3個(gè)子過程:降采樣310、頻域干擾抑制320、和滑動(dòng)窗口濾波330。在一些實(shí)施例中,降采樣過程310涉及將加速度計(jì)傳感器130的加速度計(jì)數(shù)據(jù)的采樣率降至例如50hz(本公開不限于此)。
此外,在頻域干擾抑制過程320中,通過計(jì)算三軸自相關(guān)函數(shù),可以檢測(cè)干擾頻點(diǎn)范圍,并對(duì)其進(jìn)行陷波。更具體地,圖4中的方法400詳細(xì)示出了頻域干擾抑制過程320的各步驟s410~s430。鑒于附圖中的各步驟的順序、輸入和輸出明確,且各個(gè)步驟本身均為本領(lǐng)域技術(shù)人員所熟知的,因此本公開中省略對(duì)其的詳細(xì)說(shuō)明。
回到圖3,在滑動(dòng)窗口濾波330中,可以將窗長(zhǎng)范圍內(nèi)的數(shù)據(jù)(經(jīng)過例如前述頻域干擾抑制后的數(shù)據(jù))的平均值作為其輸出。經(jīng)過上述預(yù)處理過程,可以有效地抑制傳感器數(shù)據(jù)中的干擾/噪聲,使得后續(xù)檢測(cè)更為精準(zhǔn)、可靠。
回到圖2的步驟s214,在步驟s214中,可以選擇基準(zhǔn)軸。例如,在一些實(shí)施例中,通過計(jì)算傳感器數(shù)據(jù)的峰峰值,可以選取峰峰值最大的軸作為基準(zhǔn)軸數(shù)據(jù)。在備選實(shí)施例中,也可以選取三軸數(shù)據(jù)模作為基準(zhǔn)軸數(shù)據(jù)。
接下來(lái)在步驟s216中,可以執(zhí)行動(dòng)態(tài)精度濾波。具體地,在一 些實(shí)施例中,首先將t-1時(shí)刻值賦給t-2時(shí)刻值。然后,將當(dāng)前時(shí)刻最新采集的濾波后的結(jié)果與t-1時(shí)刻值做差處理,并判斷差值的絕對(duì)值是否大于預(yù)定義精度precision。如果大于,則將當(dāng)前時(shí)刻最新采集的濾波后的結(jié)果賦給t-1時(shí)刻值,否則保持t-1時(shí)刻值不變。最后,可以將t-2時(shí)刻值作為動(dòng)態(tài)精度濾波結(jié)果。
在步驟s218中,可以執(zhí)行動(dòng)態(tài)門限計(jì)算。具體地,可以將濾波后的輸出填充到計(jì)算動(dòng)態(tài)門限的窗口內(nèi)(動(dòng)態(tài)門限的滑動(dòng)窗長(zhǎng)nn_th),并求取窗長(zhǎng)nn_th內(nèi)數(shù)值的最大值max和最小值min。則實(shí)時(shí)動(dòng)態(tài)門限值為(max+min)/2。
在步驟s220中,執(zhí)行計(jì)步信息統(tǒng)計(jì)。具體地,可以結(jié)合圖5來(lái)詳細(xì)描述基于加速度計(jì)數(shù)據(jù)的計(jì)步信息統(tǒng)計(jì)。如圖5所示,計(jì)步信息統(tǒng)計(jì)方法500從步驟s510開始。在步驟s510中,首先判斷動(dòng)態(tài)精度濾波的輸出結(jié)果是否大于動(dòng)態(tài)門限。如果大于門限,則判斷結(jié)果可以賦1;如果小于門限,則判斷結(jié)果可以賦-1。然后,在步驟s512中,計(jì)算當(dāng)前時(shí)刻判斷結(jié)果與前一時(shí)刻判斷結(jié)果的差分值,并在步驟s514中根據(jù)差分值進(jìn)行上升沿判斷。在步驟s516中,可以通過計(jì)算前后上升沿之間的時(shí)間差來(lái)得到來(lái)計(jì)算跨步時(shí)耗。更具體地,用當(dāng)前時(shí)刻上升沿的時(shí)間減去前一時(shí)刻上升沿的時(shí)間就是當(dāng)前跨步時(shí)耗。進(jìn)一步地,在步驟s518中,可以計(jì)算前后跨步時(shí)耗差。最后,在步驟s520中,根據(jù)跨步時(shí)耗的限制和跨步時(shí)耗差的限制來(lái)統(tǒng)計(jì)有效步伐。
至此,已結(jié)合圖2和圖3~5詳細(xì)描述了基于加速度計(jì)數(shù)據(jù)的計(jì)步過程。接下來(lái),將結(jié)合圖2和圖6~8來(lái)詳細(xì)描述基于陀螺儀數(shù)據(jù)的計(jì)步過程。
一般地,當(dāng)用戶佩戴上計(jì)步設(shè)備100進(jìn)行運(yùn)動(dòng)時(shí),其三軸陀螺儀傳感器140會(huì)輸出當(dāng)采樣率為fs時(shí)三個(gè)相互垂直方向上(例如,x軸/y軸/z軸)的角速度。因此,在圖2所示的步驟s222中,可以從陀螺儀傳感器140接收其采集到的用戶的陀螺儀數(shù)據(jù)。然后,在步驟s224中,可以基于陀螺儀數(shù)據(jù)來(lái)統(tǒng)計(jì)步數(shù)信息。
更具體地,可以結(jié)合圖6來(lái)詳細(xì)說(shuō)明圖2所示的步驟s224。圖6示出了根據(jù)本公開實(shí)施例的用于基于陀螺儀數(shù)據(jù)來(lái)統(tǒng)計(jì)步數(shù)信息的方 法600。方法600開始于步驟s610,在步驟s610中,同樣首先對(duì)陀螺儀數(shù)據(jù)進(jìn)行預(yù)處理,例如降采樣和/或去零偏等。然后,在步驟s612中,可以利用互補(bǔ)濾波來(lái)修正陀螺儀誤差。具體地,可以結(jié)合圖7來(lái)詳細(xì)描述該陀螺儀誤差修正過程700。
在圖7的步驟s710中,首先以三軸陀螺儀的數(shù)據(jù)經(jīng)過預(yù)處理之后的結(jié)果為輸入,來(lái)計(jì)算姿態(tài)矩陣。然后在步驟s712中,可以將重力參考向量轉(zhuǎn)換到載體坐標(biāo)系下。在步驟s714中,可以計(jì)算重力測(cè)量值和參考值之間的誤差,并在步驟s716中,根據(jù)該誤差來(lái)進(jìn)行陀螺儀修正。
接下來(lái)回到圖6的步驟s614中,可以執(zhí)行滑動(dòng)窗口濾波。具體地,可以將窗長(zhǎng)范圍內(nèi)數(shù)據(jù)(經(jīng)過誤差修正后的陀螺儀的數(shù)據(jù))的平均值作為其輸出。然后在步驟s616中,可以選擇基準(zhǔn)軸。具體地,可以計(jì)算經(jīng)預(yù)處理和修正的陀螺儀數(shù)據(jù)的峰峰值,并選取峰峰值最大的軸作為基準(zhǔn)軸數(shù)據(jù)。然后在步驟s618中,可以執(zhí)行計(jì)步信息統(tǒng)計(jì)。具體地,可以結(jié)合圖8的方法800來(lái)詳細(xì)描述該計(jì)步信息統(tǒng)計(jì)過程。
在圖8的步驟s810中,首先可以對(duì)基準(zhǔn)軸數(shù)據(jù)進(jìn)行過零檢測(cè),然后在步驟s812中,可以將異常值剔出。接下來(lái)在步驟s814和s816中,可以計(jì)算跨步時(shí)耗以及前后跨步時(shí)耗差。例如,在步驟s814中,可以用當(dāng)前零值點(diǎn)的時(shí)間減去前一個(gè)零值點(diǎn)的時(shí)間來(lái)得到當(dāng)前跨步時(shí)耗。進(jìn)而在步驟s816中,可以據(jù)此計(jì)算前后跨步時(shí)耗之差。最終,在步驟s818中,根據(jù)跨步時(shí)耗及跨步時(shí)耗差的限制來(lái)統(tǒng)計(jì)有效步伐。
至此,已結(jié)合圖2和圖6~8詳細(xì)描述了基于陀螺儀數(shù)據(jù)的計(jì)步過程。
回到圖2的步驟s226和s228,將分別計(jì)算針對(duì)加速度計(jì)和陀螺儀的跨步時(shí)耗標(biāo)準(zhǔn)差。
在步驟s226中,可以計(jì)算窗口范圍內(nèi)加速度計(jì)跨步時(shí)耗標(biāo)準(zhǔn)差。根據(jù)加速度計(jì)的數(shù)據(jù)進(jìn)行計(jì)步信息統(tǒng)計(jì)時(shí)能得到跨步時(shí)耗,在時(shí)間窗口ts范圍內(nèi)得到n個(gè)跨步時(shí)耗step_len_a(1)、step_len_a(2)、…、step_len_a(n),設(shè)n個(gè)跨步時(shí)耗的均值為step_len_aavg,則ts范圍內(nèi)加速度計(jì)跨步時(shí)耗標(biāo)準(zhǔn)差為:
類似地,在步驟s228中,可以計(jì)算窗口范圍內(nèi)陀螺儀跨步時(shí)耗標(biāo)準(zhǔn)差。根據(jù)陀螺儀的數(shù)據(jù)進(jìn)行計(jì)步信息統(tǒng)計(jì)時(shí)能得到跨步時(shí)耗,在時(shí)間窗口ts范圍內(nèi)得到m個(gè)跨步時(shí)耗step_len_g(1)、step_len_g(2)、...、step_len_g(m),設(shè)m個(gè)跨步時(shí)耗的均值為step_len_gavg,則ts范圍內(nèi)陀螺儀跨步時(shí)耗標(biāo)準(zhǔn)差為:
然后,在步驟s230中,可以分別計(jì)算窗口范圍內(nèi)陀螺儀計(jì)步信息的可信度和加速度計(jì)計(jì)步信息的可信度。原則上,在時(shí)間窗口范圍內(nèi)某個(gè)傳感器計(jì)算出的跨步時(shí)耗的標(biāo)準(zhǔn)差越大,則其可信度越低。因此,陀螺儀計(jì)步信息的可信度可以為:
而相應(yīng)地,加速度計(jì)計(jì)步信息的可信度為:
在得到上述傳感器的相應(yīng)可信度之后,可以進(jìn)行步驟s232,其中,對(duì)來(lái)自不同傳感器的計(jì)步信息加以融合。融合之后的計(jì)步信息可以是“根據(jù)陀螺儀得到的計(jì)步信息”乘上“陀螺儀的可信度”加上“根據(jù)加速度計(jì)得到的計(jì)步信息”乘上“加速度計(jì)的可信度”。更直觀地,可以根據(jù)以下公式來(lái)計(jì)算最終的步數(shù):
時(shí)間窗口范圍內(nèi)融合后的步數(shù)=
根據(jù)加速度計(jì)計(jì)算出的步數(shù)*加速度計(jì)的可信度
+根據(jù)陀螺儀計(jì)算出的步數(shù)*陀螺儀的可信度
這樣,通過使用圖2~8所示的步數(shù)統(tǒng)計(jì)方法,可以通過對(duì)多種計(jì)步數(shù)據(jù)(例如,加速度計(jì)數(shù)據(jù)和陀螺儀數(shù)據(jù))的融合,提高計(jì)步精度, 增強(qiáng)計(jì)步算法對(duì)不同人群的適應(yīng)性,擴(kuò)大計(jì)步系統(tǒng)對(duì)不同人群的覆蓋面。
圖9是示出了根據(jù)本公開實(shí)施例的在計(jì)步設(shè)備100和/或計(jì)步設(shè)備1000中執(zhí)行的用于統(tǒng)計(jì)步數(shù)的方法900的流程圖。如圖9所示,方法900可以包括步驟s910、s920和s930。根據(jù)本公開實(shí)施例,方法900的一些步驟可以單獨(dú)執(zhí)行或組合執(zhí)行,以及可以并行執(zhí)行或順序執(zhí)行,并不局限于圖9所示的具體操作順序。在一些實(shí)施例中,方法900可以由圖1所示的計(jì)步設(shè)備100和/或圖10所示的計(jì)步設(shè)備1000來(lái)執(zhí)行。
圖10是示出了根據(jù)本公開實(shí)施例的用于統(tǒng)計(jì)步數(shù)的計(jì)步設(shè)備1000的各示例功能單元。如圖10所示,節(jié)點(diǎn)1000可以包括:第一步數(shù)計(jì)算單元1010、第二步數(shù)計(jì)算單元1020和最終步數(shù)計(jì)算單元1030。
第一步數(shù)計(jì)算單元1010可以用于基于來(lái)自第一傳感器(例如,圖1所示的加速度計(jì)傳感器130或陀螺儀傳感器140)的數(shù)據(jù)來(lái)計(jì)算第一步數(shù)。第一步數(shù)計(jì)算單元1010可以是計(jì)步設(shè)備1000的中央處理單元(cpu)、數(shù)字信號(hào)處理器(dsp)、微處理器、微控制器等等(例如,計(jì)步設(shè)備100的處理器110),其可以從第一傳感器接收傳感器數(shù)據(jù),并以例如上述方式來(lái)計(jì)算與該傳感器數(shù)據(jù)相對(duì)應(yīng)的第一步數(shù)。
第二步數(shù)計(jì)算單元1020可以用于基于來(lái)自第二傳感器(例如,圖1所示的陀螺儀傳感器140或加速度計(jì)傳感器130)的數(shù)據(jù)來(lái)計(jì)算第二步數(shù)。第二步數(shù)計(jì)算單元1020同樣可以是計(jì)步設(shè)備1000的中央處理單元(cpu)、數(shù)字信號(hào)處理器(dsp)、微處理器、微控制器等等(例如,計(jì)步設(shè)備100的處理器110),其可以從第二傳感器接收傳感器數(shù)據(jù),并以例如上述方式來(lái)計(jì)算與該傳感器數(shù)據(jù)相對(duì)應(yīng)的第二步數(shù)。
最終步數(shù)計(jì)算單元1030可以用于根據(jù)第一傳感器和第二傳感器各自的可信度,基于第一步數(shù)和第二步數(shù)來(lái)計(jì)算最終步數(shù)。最終步數(shù)計(jì)算單元1030同樣可以是計(jì)步設(shè)備1000的中央處理單元(cpu)、數(shù)字信號(hào)處理器(dsp)、微處理器、微控制器等等(例如,計(jì)步設(shè)備100的處理器110),其可以首先計(jì)算各個(gè)傳感器數(shù)據(jù)的可信度,并根據(jù)相應(yīng)可信度來(lái)調(diào)整各個(gè)步數(shù)在最終步數(shù)中所占的相應(yīng)權(quán)重比例,并得到最終步數(shù)。
此外,計(jì)步設(shè)備1000中還可以包括附圖中未示出的其他硬件和/或軟件單元。鑒于這些單元是本領(lǐng)域技術(shù)人員所熟知的,因此省略對(duì)其的詳細(xì)描述。
以下將結(jié)合圖9和圖10,對(duì)根據(jù)本發(fā)明實(shí)施例的在計(jì)步設(shè)備100和/或1000上執(zhí)行的用于統(tǒng)計(jì)步數(shù)的方法900進(jìn)行詳細(xì)的描述。
方法900開始于步驟s910,在步驟s910中,可以由計(jì)步設(shè)備1000的第一步數(shù)計(jì)算單元1010基于來(lái)自第一傳感器的數(shù)據(jù)來(lái)計(jì)算第一步數(shù)。
在步驟s920中,可以由計(jì)步設(shè)備1000的第二步數(shù)計(jì)算單元1020基于來(lái)自第二傳感器的數(shù)據(jù)來(lái)計(jì)算第二步數(shù)。
在步驟s930中,可以由計(jì)步設(shè)備1000的最終步數(shù)計(jì)算單元1030根據(jù)第一傳感器和第二傳感器各自的可信度,基于第一步數(shù)和第二步數(shù)來(lái)計(jì)算最終步數(shù)。
在一些實(shí)施例中,第一傳感器可以是加速度計(jì),以及第二傳感器可以是陀螺儀。在一些實(shí)施例中,可信度可以是根據(jù)相應(yīng)傳感器的跨步時(shí)耗的標(biāo)準(zhǔn)差來(lái)確定的。在一些實(shí)施例中,跨步時(shí)耗的標(biāo)準(zhǔn)差是根據(jù)以下公式來(lái)確定的:
其中,step_len_std表示相應(yīng)傳感器的跨步時(shí)耗的標(biāo)準(zhǔn)差,step_len(i)表示第i步的跨步時(shí)耗,step_lenavg表示n個(gè)跨步時(shí)耗的平均值,且n為自然數(shù)。在一些實(shí)施例中,第一傳感器的可信度和第二傳感器的可信度可以分別根據(jù)以下公式來(lái)計(jì)算:
其中,cred1表示第一傳感器的可信度,cred2表示第二傳感器的可信度,step_len_std1表示第一傳感器的跨步時(shí)耗的標(biāo)準(zhǔn)差,以及 step_len_std2表示第二傳感器的跨步時(shí)耗的標(biāo)準(zhǔn)差。在一些實(shí)施例中,最終步數(shù)可以是基于以下公式來(lái)計(jì)算的:最終步數(shù)=第一步數(shù)×第一傳感器的可信度+第二步數(shù)×第二傳感器的可信度。
至此已經(jīng)結(jié)合優(yōu)選實(shí)施例對(duì)本公開進(jìn)行了描述。應(yīng)該理解,本領(lǐng)域技術(shù)人員在不脫離本公開的精神和范圍的情況下,可以進(jìn)行各種其它的改變、替換和添加。因此,本公開的范圍不局限于上述特定實(shí)施例,而應(yīng)由所附權(quán)利要求所限定。