一种速度获取方法、装置、电子设备及存储介质与流程

文档序号:31050073发布日期:2022-08-06 06:45阅读:89来源:国知局
一种速度获取方法、装置、电子设备及存储介质与流程

1.本发明涉及骑行设备技术领域,具体涉及一种速度获取方法、装置、电子设备及存储介质。


背景技术:

2.传统的基于轮转系统的速度计,需要手动输入准确的轮径值(轮转-位移增益),基于此解算骑行速度,并对该值有较大的依赖,必须获取准确的车轮轮径信息,如果该信息准确度不高,解算的速度误差会很大;并且,更换车轮后,输入的轮径信息需要重新初始化,这样用户的体验度较差。


技术实现要素:

3.本发明的目的在于克服上述技术不足,提供一种速度获取方法、装置、电子设备及存储介质,解决现有技术中无法有效地进行骑行速度计算的技术问题。
4.为达到上述技术目的,本发明采取了以下技术方案:
5.第一方面,本发明提供了一种速度获取方法,包括如下步骤:
6.获取转轮特征数据以及经纬度位置数据,其中,所述转轮特征数据为三轴加速度或者磁力强度以及其对应的时刻,所述经纬度位置数据为经纬度坐标以及其对应的时刻;
7.分别对所述转轮特征数据和所述经纬度位置数据进行预处理;
8.根据所述预处理后的转轮特征数据判断当前骑行状态是否正常,如果正常,则根据预处理后的所述转轮特征数据计算出转轮角速度数据;
9.根据所述转轮角速度数据和预处理后的所述经纬度位置数据,计算出轮径值,并对所述轮径值进行优化,基于所述优化后的轮径值得到当前的速度值。
10.优选的,所述的速度获取方法中,对所述转轮特征数据进行预处理的方法为:
11.采用如下公式对所述轮转特征数据进行低通滤波处理:
[0012][0013]
其中,data表示输入的三轴加速度序列或者磁力强度序列,y则表示输出的滤波值,a和b表示对应的巴特沃斯滤波器的分母向量和分子向量,低通滤波的阶数为m,n表示序列的长度。
[0014]
优选的,所述的速度获取方法中,对所述经纬度位置数据进行预处理的方法为:
[0015]
采用墨卡托等角投影方法,对所述经纬度位置数据进行处理,得到与所述经纬度坐标对应的投影坐标。
[0016]
优选的,所述的速度获取方法中,所述根据所述预处理后的转轮特征数据判断当前骑行状态是否正常,包括:
[0017]
根据所述预处理后的转轮特征数据提取出与车轮共面的两轴,并分别记为x轴和y轴;
[0018]
获取x轴数据的峰值;
[0019]
计算出所述x轴数据的峰值对应的y轴数据的梯度,当所述梯度为正时,判定当前骑行状态为正常,否则判定当前骑行状态异常。
[0020]
优选的,所述的速度获取方法中,所述根据所述预处理后的转轮特征数据计算出转轮角速度数据,包括:
[0021]
获取所述x轴数据的峰值点对应的时刻;
[0022]
基于所述x轴数据的峰值点对应的时刻,计算出转轮角速度数据。
[0023]
优选的,所述的速度获取方法中,所述根据所述转轮角速度数据和预处理后的所述经纬度位置数据,计算出轮径值,并对所述轮径值进行优化,基于所述优化后的轮径值得到当前的速度值,包括:
[0024]
随机输入或随机生成一初始轮径,根据所述转轮角速度数据和所述初始轮径得到第一速度序列;
[0025]
根据预处理后的所述经纬度位置数据,生成第二速度序列;
[0026]
基于所述第一速度序列和第二速度序列的均方误差,对所述初始轮径进行优化,直至所述均方误差小于预设阈值时,将此时得到的轮径作为优化后的轮径值;
[0027]
基于所述优化后的轮径值得到当前的速度值。
[0028]
优选的,所述的速度获取方法中,采用梯度下降法对所述初始轮径值进行优化。
[0029]
第二方面,本发明还提供一种速度获取装置,包括:
[0030]
数据获取模块,用于获取转轮特征数据以及经纬度位置数据,其中,所述转轮特征数据为三轴加速度或者磁力强度以及其对应的时刻,所述经纬度位置数据为经纬度坐标以及其对应的时刻;
[0031]
预处理模块,用于分别对所述转轮特征数据和所述经纬度位置数据进行预处理;
[0032]
骑行状态判断模块,用于根据所述预处理后的转轮特征数据判断当前骑行状态是否正常,如果正常,则根据预处理后的所述转轮特征数据计算出转轮角速度数据;
[0033]
优化计算模块,用于根据所述转轮角速度数据和预处理后的所述经纬度位置数据,计算出轮径值,并对所述轮径值进行优化,基于所述优化后的轮径值得到当前的速度值。
[0034]
第三方面,本发明还提供一种电子设备,包括处理器和存储器;
[0035]
所述存储器上存储有可被所述处理器执行的计算机可读程序;
[0036]
所述处理器执行所述计算机可读程序时实现如上所述的速度获取方法中的步骤。
[0037]
第四方面,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现如上所述的速度获取方法中的步骤。
[0038]
与现有技术相比,本发明提供的速度获取方法、装置、电子设备及存储介质,首先获取转轮特征数据以及经纬度位置数据,然后对转轮特征数据和所述经纬度位置数据进行预处理后,根据预处理后的转轮特征数据判断当前骑行状态是否正常,如果为正常骑行,则根据预处理后的所述转轮特征数据计算出转轮角速度数据,然后根据转轮角速度数据和预
处理后的所述经纬度位置数据,计算出轮径值,最后对轮径值进行优化处理,根据优化处理后的轮径值得到当前的速度值。因此,本发明可以自动计算出轮径值,无需每次都测量轮径值,对初始化输入的轮径值依赖小,且可以通过轮转、导航芯片解算位置后,计算出速度,不需要其他硬件设备接入,简单方便,可以有效的实现速度的获取。
附图说明
[0039]
图1是本发明提供的速度获取方法的一较佳实施例的流程图;
[0040]
图2是本发明正向骑行时x、y轴加速度或磁力强度的分布图;
[0041]
图3是本发明非正常骑行时x、y轴加速度或磁力强度的分布图;
[0042]
图4是本发明提供的速度获取装置的一实施例的示意图;
[0043]
图5是本发明速度获取程序的一实施例的运行环境示意图。
具体实施方式
[0044]
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0045]
请参阅图1,本发明实施例提供的一种速度获取方法,包括如下步骤:
[0046]
s100、获取转轮特征数据以及经纬度位置数据,其中,所述转轮特征数据为三轴加速度或者磁力强度以及其对应的时刻,所述经纬度位置数据为经纬度坐标以及其对应的时刻;
[0047]
s200、分别对所述转轮特征数据和所述经纬度位置数据进行预处理;
[0048]
s300、根据所述预处理后的转轮特征数据判断当前骑行状态是否正常,如果正常,则根据预处理后的所述转轮特征数据计算出转轮角速度数据;
[0049]
s400、根据所述转轮角速度数据和预处理后的所述经纬度位置数据,计算出轮径值,并对所述轮径值进行优化,基于所述优化后的轮径值得到当前的速度值。
[0050]
本实施例中,首先获取转轮特征数据以及经纬度位置数据,然后对转轮特征数据和所述经纬度位置数据进行预处理后,根据预处理后的转轮特征数据判断当前骑行状态是否正常,如果为正常骑行,则根据预处理后的所述转轮特征数据计算出转轮角速度数据,然后根据转轮角速度数据和预处理后的所述经纬度位置数据,计算出轮径值,最后对轮径值进行优化处理,根据优化处理后的轮径值得到当前的速度值。因此,本发明可以自动计算出轮径值,无需每次都测量轮径值,对初始化输入的轮径值依赖小,且可以通过轮转、导航芯片解算位置后,计算出速度,不需要其他硬件设备接入,简单方便,可以有效的实现速度的获取。
[0051]
在一些实施例中,步骤s100中,从加速度计/磁力计和导航芯片中,可获取到三轴加速度/磁力强度data和经纬度位置信息poi(lon,lat)(其中,lon表示经度,lat表示纬度),将批量加速度/磁力强度数据a和位置信息poi存储到队列中,分别构成加速度/磁力强度序列[data,i=1~n]和经纬度序列[poii,i=1~n],即上述的转轮特征数据以及经纬度位置数据。
[0052]
步骤s200是为了实现对转轮特征数据的低通滤波处理和经纬度位置数据的数据
转换,从而方便后续的分析,提高计算结果的准确度。在一些实施例中,对所述转轮特征数据进行预处理的方法为:
[0053]
采用如下公式对所述轮转特征数据进行低通滤波处理:
[0054][0055]
其中,data表示输入的三轴加速度序列或者磁力强度序列,y则表示输出的滤波值,a和b表示对应的巴特沃斯滤波器的分母向量和分子向量,低通滤波的阶数为m,n表示序列的长度。
[0056]
通过将加速度/磁力强度序列[datai,i=1~n]带入到低通滤波器中,利用上述公式对加速度/磁力强度进行低通滤波处理,完成该部分的操作后,可以得到通过低通滤波处理后的加速度/磁力强度数据。
[0057]
在一些实施例中,对所述经纬度位置数据进行预处理的方法为:
[0058]
采用墨卡托等角投影方法,对所述经纬度位置数据进行处理,得到与所述经纬度坐标对应的投影坐标。
[0059]
本实施例中,将经纬坐标进行平面坐标转换,利用的是墨卡托等角投影,从导航芯片中的到当前的经纬坐标点poi(lon,lat),那么对应的投影坐标为:
[0060][0061]
其中,x表示东方向坐标,y表示北方向坐标,a表示将角度转换成弧度的操作,re为地球半径,本实施例中,取re=6378137m。完成该部分的操作后,会得到东方向和北方向的坐标,记为pos(e,n)。
[0062]
步骤s300是为了进行骑行状态的判断,判断出轮转是否为正常转动(可能会有正道转、空转等情况)。在一些实施例中,步骤s300中,所述根据所述预处理后的转轮特征数据判断当前骑行状态是否正常具体包括:
[0063]
根据所述预处理后的转轮特征数据提取出与车轮共面的两轴,并分别记为x轴和y轴;
[0064]
获取x轴数据的峰值;
[0065]
计算出所述x轴数据的峰值对应的y轴数据的梯度,当所述梯度为正时,判定当前骑行状态为正常,否则判定当前骑行状态异常。
[0066]
本实施例中,骑行状态的检测,主要是识别车轮是否正向转动,正向转动时x轴数据的峰值对应的y轴的梯度为正;反之,y轴数据的梯度为负,如图2和图3所示。通过获取x轴数据的峰值,并计算出y轴的梯度后可以准确的判断出当前骑行状态是否正常。如果正常,则进行后续的判断。
[0067]
在一些实施例中,步骤s300中,所述根据所述预处理后的转轮特征数据计算出转轮角速度数据,包括:
[0068]
获取所述x轴数据的峰值点对应的时刻;
[0069]
基于所述x轴数据的峰值点对应的时刻,计算出转轮角速度数据。
[0070]
本实施例中,当当前骑行状态正常时,则记录当前峰值点对应的时刻t,构成峰之间时间序列[ti,i=1~n],相应的计算出轮转角速度为:
[0071]
ωi=2*π/(t
i+1-ti)。
[0072]
当得到了转轮角速度数据后,即可根据转轮角速度数据和与处理后的经纬度位置数据来进行轮径值的计算。在一些实施例中,步骤s400具体包括:
[0073]
随机输入或随机生成一初始轮径,根据所述转轮角速度数据和所述初始轮径得到第一速度序列;
[0074]
根据预处理后的所述经纬度位置数据,生成第二速度序列;
[0075]
基于所述第一速度序列和第二速度序列的均方误差,对所述初始轮径进行优化,直至所述均方误差小于预设阈值时,将此时得到的轮径作为优化后的轮径值;
[0076]
基于所述优化后的轮径值得到当前的速度值。
[0077]
本实施例中,采用梯度下降法对所述初始轮径值进行优化。
[0078]
具体的,在步骤s300中,得到了角速度序列[i,i=1~n]后,将该序列与输入的轮径d_
input
(或者是随机生成的轮径,也记为d_
input
)相乘,得到速度序列[vi,i=1~n]。由于通过经纬度位置数据可以得到位移序列,又因为位移序列的相邻两个竖直间隔时长已知,便可得到通过导航芯片得到的速度序列[v_gnssi,i=1~n],将两序列的对应位置进行比值处理,得到轮径量测值[d’i
,i=1~n],计算该序列的中误差std(d’),如果std(d’)小于设定的阈值,则进行轮径优化。本实施例中,设置的阈值为0.03m。
[0079]
在进行轮径优化时,在得到角速度序列[i,i=1~n]后,将该序列与输入的轮径d_
input
(或者是随机生成的轮径,也记为d_
input
)相乘,得到速度序列[vi,i=1~n],计算该序列与[v_gnssi,i=1~n]的均方误差,将该值作为误差负反馈的损失值loss。然后将轮径d作为增益系数,则有v=d*的等式关系,又因为步骤一中loss为速度v的损失值,则可通过梯度下降法对轮径d进行优化,如下:
[0080][0081]
其中,lr为学习率,本发明设置为0.01,符号“:=”为循环梯度下降的过程。得到新的轮径更新后,将其重新与角速度序列相乘,对第一速度系列进行更新后,重新计算loss,直到loss小于0.01m,则结束轮径优化。
[0082]
由于自行车速度可以通过转速(rad/s)*轮径(m),因此,在得到了轮径值后,即可通过转速得到自行车速度。
[0083]
本发明依靠自行车轮转计,进行解算速度需要精准的自行车轮径,本发明对初始化输入的轮径值依赖小,且可通过轮转、导航芯片解算位置对速度进行优化计算;另外,通过轮转计和导航芯片的数据联合判断,当前骑行状态是否为稳定状态,如果为稳定状态,对速度进行修正计算,实现了骑行稳定性识别;此外,本发明只需要带有加速度计/磁力计,不需要其他的硬件接入,节省了成本。
[0084]
基于上述速度获取方法,本发明还相应的提供一种速度获取装置600,请参阅图4,该速度获取装置包括数据获取模块610、预处理模块620、骑行状态判断模块630以及优化计算模块640。
[0085]
数据获取模块610用于获取转轮特征数据以及经纬度位置数据,其中,所述转轮特征数据为三轴加速度或者磁力强度以及其对应的时刻,所述经纬度位置数据为经纬度坐标以及其对应的时刻。
[0086]
预处理模块620用于分别对所述转轮特征数据和所述经纬度位置数据进行预处理。
[0087]
骑行状态判断模块630用于根据所述预处理后的转轮特征数据判断当前骑行状态是否正常,如果正常,则根据预处理后的所述转轮特征数据计算出转轮角速度数据。
[0088]
优化计算模块640用于根据所述转轮角速度数据和预处理后的所述经纬度位置数据,计算出轮径值,并对所述轮径值进行优化,基于所述优化后的轮径值得到当前的速度值。
[0089]
本实施例中,首先获取转轮特征数据以及经纬度位置数据,然后对转轮特征数据和所述经纬度位置数据进行预处理后,根据预处理后的转轮特征数据判断当前骑行状态是否正常,如果为正常骑行,则根据预处理后的所述转轮特征数据计算出转轮角速度数据,然后根据转轮角速度数据和预处理后的所述经纬度位置数据,计算出轮径值,最后对轮径值进行优化处理,根据优化处理后的轮径值得到当前的速度值。因此,本发明可以自动计算出轮径值,无需每次都测量轮径值,对初始化输入的轮径值依赖小,且可以通过轮转、导航芯片解算位置后,计算出速度,不需要其他硬件设备接入,简单方便,可以有效的实现速度的获取。
[0090]
由于上文已对速度获取方法进行详细描述,速度获取方法具备的技术效果,速度获取装置同样具备,故在此不再赘述。
[0091]
如图5所示,基于上述速度获取方法,本发明还相应提供了一种电子设备,该电子设备可以是移动终端、桌上型计算机、笔记本、掌上电脑及服务器等计算设备。该电子设备包括处理器10、存储器20及显示器30。图5仅示出了电子设备的部分组件,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
[0092]
存储器20在一些实施例中可以是该电子设备的内部存储单元,例如电子设备的硬盘或内存。存储器20在另一些实施例中也可以是电子设备的外部存储设备,例如电子设备上配备的插接式硬盘,智能存储卡(smart media card,smc),安全数字(secure digital,sd)卡,闪存卡(flash card)等。进一步地,存储器20还可以既包括电子设备的内部存储单元也包括外部存储设备。存储器20用于存储安装于电子设备的应用软件及各类数据,例如安装电子设备的程序代码等。存储器20还可以用于暂时地存储已经输出或者将要输出的数据。在一实施例中,存储器20上存储有速度获取程序40,该速度获取程序40可被处理器10所执行,从而实现本发明各实施例的速度获取方法。
[0093]
处理器10在一些实施例中可以是一中央处理器(central processing unit,cpu),微处理器或其他数据处理芯片,用于运行存储器20中存储的程序代码或处理数据,例如执行速度获取方法等。
[0094]
显示器30在一些实施例中可以是led显示器、液晶显示器、触控式液晶显示器以及
oled(organic light-emitting diode,有机发光二极管)触摸器等。显示器30用于显示在所述电子设备的信息以及用于显示可视化的用户界面。电子设备的部件10-30通过系统总线相互通信。
[0095]
在一些实施例中,当处理器10执行存储器20中速度获取程序40时实现上述各实施例所述的速度获取方法的步骤。
[0096]
综上所述,本发明提供的速度获取方法、装置、电子设备及存储介质,首先获取转轮特征数据以及经纬度位置数据,然后对转轮特征数据和所述经纬度位置数据进行预处理后,根据预处理后的转轮特征数据判断当前骑行状态是否正常,如果为正常骑行,则根据预处理后的所述转轮特征数据计算出转轮角速度数据,然后根据转轮角速度数据和预处理后的所述经纬度位置数据,计算出轮径值,最后对轮径值进行优化处理,根据优化处理后的轮径值得到当前的速度值。因此,本发明可以自动计算出轮径值,无需每次都测量轮径值,对初始化输入的轮径值依赖小,且可以通过轮转、导航芯片解算位置后,计算出速度,不需要其他硬件设备接入,简单方便,可以有效的实现速度的获取。
[0097]
当然,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关硬件(如处理器,控制器等)来完成,所述的程序可存储于一计算机可读取的存储介质中,该程序在执行时可包括如上述各方法实施例的流程。其中所述的存储介质可为存储器、磁碟、光盘等。
[0098]
以上所述本发明的具体实施方式,并不构成对本发明保护范围的限定。任何根据本发明的技术构思所做出的各种其他相应的改变与变形,均应包含在本发明权利要求的保护范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1