一种数据降采样方法、装置、设备及介质
文献发布时间:2023-06-19 19:28:50
技术领域
本申请涉及数据处理技术领域,特别是涉及一种数据降采样方法、装置、设备及介质。
背景技术
AR智能泳镜中,设置的6轴的惯性传感器(Inertial Measurement Unit,IMU)可以提供加速度和角速度等数据,当IMU的配置帧率较高时,可以获得更多、更加细致的数据;但此时需要对大量数据的进行传输和处理,带来巨大数据处理负担。现有的降采样方法能够降低数据处理负担,该方法通过对数据进行压缩,通过线性插值恢复数据,此时,是以固定采样间隔保存数据并对数据进行压缩;对固定采样间隔中的数据进行线性插值,恢复出数据。此时全部数据均采用固定的降采样因子,不能根据实际数据的波动情况,对数据降采样,获得合适的压缩比和压缩误差。
鉴于上述存在的问题,寻求如何同时考虑压缩误差和压缩比,进而得到对数据进行降采样操作时合适的降采样因子对数据进行降采样是本领域技术人员竭力解决的问题。
发明内容
本申请的目的是提供一种数据降采样方法、装置、设备及介质,用于同时考虑降低压缩误差和降低增大压缩比,进而得到对数据进行降采样操作时合适的降采样因子对数据进行降采样。
为解决上述技术问题,本申请提供一种数据降采样方法,应用于设置有惯性传感器的AR智能泳镜,包括:
采集惯性传感器传输的游泳数据;
窗口划分游泳数据并获取多个窗口数据;
确定各窗口数据对应的降采样因子;
根据降采样因子确定对应的平均绝对值误差;
当平均绝对值误差处于预设平均绝对值误差区间时,对游泳数据进行降采样。优选地,当平均绝对值误差处于预设平均绝对值误差区间时,对游泳数据进行降采样包括:
当平均绝对值误差处于预设平均绝对值误差区间时,提取降采样因子中的最大值;
根据最大值对游泳数据进行降采样。
优选地,在根据降采样因子确定平均绝对值误差之后,还包括:
当平均绝对值误差未处于预设平均绝对值误差区间时,提取降采样因子中的最大值和降采样因子中的最小值;
根据最大值和最小值确定降采样因子中的中间值;
根据中间值对游泳数据进行降采样。
优选地,在窗口划分游泳数据并获取多个窗口数据之前,还包括:
划分游泳数据并获取多段划分数据,其中,划分数据的个数大于窗口数据的个数。
优选地,对窗口划分游泳数据并获取多个窗口数据包括:
基于离散傅里叶变换原理,确定划分数据对应的频谱向量;
获取当前窗口中包含的全部划分数据以及当前窗口中全部划分数据对应的频谱向量;
根据划分数据对应的频谱向量确定当前窗口的频谱向量;
根据当前窗口的频谱向量和下一段划分数据对应的频谱向量对划分数据进行窗口划分,得到多个窗口数据。
优选地,在根据当前窗口的频谱向量和下一段划分数据对应的频谱向量对划分数据进行窗口划分之后,在得到多个窗口数据之前,还包括:
对当前窗口的频谱向量和下一段划分数据对应的频谱向量做差,得到差值;
判断差值是否超出表征频谱向量之间距离的距离阈值;
若是,则确定下一段划分数据对应的频谱向量不属于当前窗口,并更新当前窗口的下一个窗口的频谱向量为下一段划分数据对应的频谱向量;
若否,则确定下一段划分数据对应的频谱向量属于当前窗口,并更新当前窗口的频谱向量,其中,更新后的当前窗口的频谱向量包含下一段划分数据对应的频谱向量。
优选地,在更新当前窗口的下一个窗口的频谱向量为下一段划分数据对应的频谱向量之后,还包括:输出提示信息。为解决上述技术问题,本申请还提供了一种数据降采样装置,应用于设置有惯性传感器的AR智能泳镜,包括:
第一采集模块,用于采集惯性传感器传输的游泳数据;
第一窗口划分模块,用于窗口划分游泳数据并获取多个窗口数据;
第一确定模块,用于确定各窗口数据对应的降采样因子;
第二确定模块,用于根据降采样因子确定对应的平均绝对值误差;
第一降采样模块,用于当平均绝对值误差处于预设平均绝对值误差区间时,对游泳数据进行降采样。
此外,该装置还包括以下模块:
优选地,当平均绝对值误差处于预设平均绝对值误差区间时,对游泳数据进行降采样包括:
第一提取模块,用于当平均绝对值误差处于预设平均绝对值误差区间时,提取降采样因子中的最大值;
第二降采样模块,用于根据最大值对游泳数据进行降采样。
优选地,在根据降采样因子确定平均绝对值误差之后,还包括:
第二提取模块,用于当平均绝对值误差未处于预设平均绝对值误差区间时,提取降采样因子中的最大值和降采样因子中的最小值;
第三确定模块,用于根据最大值和最小值确定降采样因子中的中间值;
第三降采样模块,用于根据中间值对游泳数据进行降采样。
优选地,在窗口划分游泳数据并获取多个窗口数据之前,还包括:
划分模块,用于划分游泳数据并获取多段划分数据,其中,划分数据的个数大于窗口数据的个数。
优选地,窗口划分游泳数据并获取多个窗口数据包括:
第四确定模块,用于基于离散傅里叶变换原理,确定划分数据对应的频谱向量;
获取模块,用于获取当前窗口中包含的全部划分数据以及当前窗口中全部划分数据对应的频谱向量;
第五确定模块,用于根据划分数据对应的频谱向量确定当前窗口的频谱向量;
第二窗口划分模块,用于根据当前窗口的频谱向量和下一段划分数据对应的频谱向量对划分数据进行窗口划分,得到多个窗口数据。
优选地,在根据当前窗口的频谱向量和下一段划分数据对应的频谱向量对划分数据进行窗口划分之后,在得到多个窗口数据之前,还包括:
做差模块,用于对当前窗口的频谱向量和下一段划分数据对应的频谱向量做差,得到差值;
判断模块,用于判断差值是否超出表征频谱向量之间距离的距离阈值;
若是,则触发第六确定模块,用于确定下一段划分数据对应的频谱向量不属于当前窗口,并更新当前窗口的下一个窗口的频谱向量为下一段划分数据对应的频谱向量;
若否,则触发第七确定模块,用于确定下一段划分数据对应的频谱向量属于当前窗口,并更新当前窗口的频谱向量,其中,更新后的当前窗口的频谱向量包含下一段划分数据对应的频谱向量。
优选地,在更新当前窗口的下一个窗口的频谱向量为下一段划分数据对应的频谱向量之后,还包括:输出模块,用于输出提示信息。
为解决上述技术问题,本申请还提供了一种数据降采样设备,包括:
存储器,用于存储计算机程序;
处理器,用于指向计算机程序,实现数据降采样方法的步骤。
为解决上述技术问题,本申请还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时,实现上述全部数据降采样方法的步骤。
本申请所提供的一种数据降采样方法,应用于设置有惯性传感器的AR智能泳镜,包括:采集惯性传感器传输的游泳数据;窗口划分游泳数据并获取多个窗口数据;确定各窗口数据对应的降采样因子;根据降采样因子确定对应的平均绝对值误差;当平均绝对值误差处于预设平均绝对值误差区间时,对游泳数据进行降采样。此时,相比于常规降采样方法,提供了根据每个窗口数据对应的降采样因子确定的平均绝对值误差,确保平均绝对值误差满足条件,同时,当平均绝对值误差处于预设平均绝对值误差区间时,对游泳数据进行降采样,保证了根据不同的平均绝对误差对游泳数据进行降采样,实现了在肢体动作小的时候,某些轴波动小的数据,大间隔保存,保存更少的数据,得到更大的压缩比;某些轴波动大的数据,小间隔保存,得到更小的压缩误差,实现同时考虑压缩误差和压缩比,进而得到对数据进行降采样操作时合适的降采样因子对数据进行降采样。
本申请还提供了一种数据降采样装置、设备及介质,效果同上。
附图说明
为了更清楚地说明本申请实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例所提供的一种数据降采样方法流程图;
图2为本申请实施例所提供的一种数据降采样装置结构图;
图3为本申请实施例所提供的一种数据降采样设备结构图;
图4为本申请实施例所提供的窗口得分示意图;
图5为本申请实施例所提供的窗口数据采样误差示意图;
图6为本申请实施例所提供的窗口数据压缩比示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本申请保护范围。
本申请的核心是提供一种数据降采样方法、装置、设备及介质,其能够同时考虑降低压缩误差和降低增大压缩比,进而得到对数据进行降采样操作时合适的降采样因子对数据进行降采样。
为了使本技术领域的人员更好地理解本申请方案,下面结合附图和具体实施方式对本申请作进一步的详细说明。
AR智能泳镜中,装配的传感器设备有6轴的惯性传感器。为了得到及时准确的运动状态,惯性传感器可配置较高的帧率;例如,IMU最高可配置1000HZ,IMU的6轴数据,在1s内可传输6000个数据。大量数据的传输和处理,对嵌入式设备都是一种负担。为了减轻这种负担,一方面可以配置较低的帧率,但这必然会丢失数据反映出的动作细节;另一方面可以先对数据进行压缩,采用降采样的方法获取其中的部分数据;然后,对数据进行线性插值恢复。降采样恢复后的数据,与原数据差值的平均绝对值,称为压缩误差;降采样保存的数据大小和原数据大小的比值,称为压缩比。压缩误差和压缩比是降采样过程中两项重要指标,两者之间是此消彼长的关系。
图1为本申请实施例所提供的一种数据降采样方法流程图,如图1所示,该数据降采样方法,应用于设置有惯性传感器的AR智能泳镜,包括:
S10:采集惯性传感器传输的游泳数据;
其中游泳数据为6轴的惯性传感器中任意一轴的游泳数据,且将该轴的游泳数据的长度记为N,并设定期望的降采样恢复后的平均绝对值误差,将该平均绝对值误差记为e
其中需要说明的是,对游泳数据以预设长度进行划分;其中将预设长度记为L,则此时会将游泳数据分为w段,具体公式为:
则,此时多段划分后的划分数据可以表示为:N
S11:窗口划分游泳数据并获取多个窗口数据;
其中,窗口数据的个数d不大于划分数据的个数w,即d≤w;此时多个窗口数据可以表示为:M
同时,对划分数据进行窗口划分,得到多个窗口数据包括:
基于离散傅里叶变换原理(DFT),确定划分数据对应的频谱向量;
获取当前窗口中包含的全部划分数据以及当前窗口中全部划分数据对应的频谱向量;
根据划分数据对应的频谱向量确定当前窗口的频谱向量;
根据当前窗口的频谱向量和下一段划分数据对应的频谱向量对划分数据进行窗口划分,得到多个窗口数据。
其中需要说明的是,对全部划分数据对应的频谱向量取平均值,并将平均值设置为当前窗口的频谱向量,且频谱向量一般采用单边频谱向量。同时,上述步骤具体可以理解为:对划分数据N
其中,y
此时将采样频率记为f
其中,w
其中,在根据当前窗口的频谱向量和下一段划分数据对应的频谱向量对划分数据进行窗口划分之后,在得到多个窗口数据之前,还包括:
对当前窗口的频谱向量和下一段划分数据对应的频谱向量做差,得到差值;
判断差值是否超出表征频谱向量之间距离的距离阈值;
若是,则确定下一段划分数据对应的频谱向量不属于当前窗口;同时更新当前窗口的下一个窗口的频谱向量为下一段划分数据对应的频谱向量。
若否,则确定下一段划分数据对应的频谱向量属于当前窗口。同时,更新当前窗口的频谱向量,其中,更新后的当前窗口的频谱向量包含下一段划分数据对应的频谱向量。
假设当前窗口M
n_value=norm(v
此时,将表征频谱向量之间距离的距离阈值记为n
S12:确定各窗口数据对应的降采样因子;
S13:根据降采样因子确定对应的平均绝对值误差;
S14:当平均绝对值误差处于预设平均绝对值误差区间时,对游泳数据进行降采样。
其中,当平均绝对值误差处于预设平均绝对值误差区间时,对游泳数据进行降采样包括:
当平均绝对值误差处于预设平均绝对值误差区间时,提取降采样因子中的最大值;
根据最大值对游泳数据进行降采样。
同时,在根据降采样因子确定平均绝对值误差之后,还包括:
当平均绝对值误差未处于预设平均绝对值误差区间时,提取降采样因子中的最大值和降采样因子中的最小值;
根据最大值和最小值确定降采样因子中的中间值;
根据中间值对游泳数据进行降采样。
窗口数据M
其中,预设平均绝对值误差区间为以大小σ为误差的平均绝对值误差区间,此时平均绝对值误差区间表示为[e
在更新当前窗口的下一个窗口的频谱向量为下一段划分数据对应的频谱向量之后,还包括:输出提示信息。同样的,在更新当前窗口的频谱向量,其中,更新后的当前窗口的频谱向量包含下一段划分数据对应的频谱向量之后,还包括:输出提示信息。其中提示信息可以为数字信号控制蜂鸣器发出固定频率的声音,还可以为数字信号控制LED灯发出固定频率的闪烁的灯光。
本申请所提供的一种数据降采样方法,应用于设置有惯性传感器的AR智能泳镜,包括:采集惯性传感器传输的游泳数据;窗口划分游泳数据并获取多个窗口数据;确定各窗口数据对应的降采样因子;根据降采样因子确定对应的平均绝对值误差;当平均绝对值误差处于预设平均绝对值误差区间时,对游泳数据进行降采样。此时,相比于常规降采样方法,提供了根据每个窗口数据对应的降采样因子确定的平均绝对值误差,确保平均绝对值误差满足条件,同时,当平均绝对值误差处于预设平均绝对值误差区间时,对游泳数据进行降采样,保证了根据不同的平均绝对误差对游泳数据进行降采样,实现了在肢体动作小的时候,某些轴波动小的数据,大间隔保存,保存更少的数据,得到更大的压缩比;某些轴波动大的数据,小间隔保存,得到更小的压缩误差,实现同时考虑压缩误差和压缩比,进而得到对数据进行降采样操作时合适的降采样因子对数据进行降采样。
在上述实施例中,对于数据降采样方法进行了详细描述,本申请还提供数据降采样装置对应的实施例。需要说明的是,本申请从两个角度对装置部分的实施例进行描述,一种是基于功能模块的角度,另一种是基于硬件的角度。
图2为本申请实施例所提供的一种数据降采样装置结构图,如图2所示,本申请还提供了一种数据降采样装置,应用于设置有惯性传感器的AR智能泳镜,包括:
第一采集模块20,用于采集惯性传感器传输的游泳数据;
第一窗口划分模块21,用于窗口划分游泳数据并获取多个窗口数据;
第一确定模块22,用于确定各窗口数据对应的降采样因子;
第二确定模块23,用于根据降采样因子确定对应的平均绝对值误差;
第一降采样模块24,用于当平均绝对值误差处于预设平均绝对值误差区间时,对游泳数据进行降采样。
此外,该装置还包括以下模块:
优选地,当平均绝对值误差处于预设平均绝对值误差区间时,对游泳数据进行降采样包括:
第一提取模块,用于当平均绝对值误差处于预设平均绝对值误差区间时,提取降采样因子中的最大值;
第二降采样模块,用于根据最大值对游泳数据进行降采样。
优选地,在根据降采样因子确定平均绝对值误差之后,还包括:
第二提取模块,用于当平均绝对值误差未处于预设平均绝对值误差区间时,提取降采样因子中的最大值和降采样因子中的最小值;
第三确定模块,用于根据最大值和最小值确定降采样因子中的中间值;
第三降采样模块,用于根据中间值对游泳数据进行降采样。
优选地,在窗口划分游泳数据并获取多个窗口数据之前,还包括:
划分模块,用于划分游泳数据并获取多段划分数据,其中,划分数据的个数大于窗口数据的个数。
优选地,窗口划分游泳数据并获取多个窗口数据包括:
第四确定模块,用于基于离散傅里叶变换原理,确定划分数据对应的频谱向量;
获取模块,用于获取当前窗口中包含的全部划分数据以及当前窗口中全部划分数据对应的频谱向量;
第五确定模块,用于根据划分数据对应的频谱向量确定当前窗口的频谱向量;
第二窗口划分模块,用于根据当前窗口的频谱向量和下一段划分数据对应的频谱向量对划分数据进行窗口划分,得到多个窗口数据。
优选地,在根据当前窗口的频谱向量和下一段划分数据对应的频谱向量对划分数据进行窗口划分之后,在得到多个窗口数据之前,还包括:
做差模块,用于对当前窗口的频谱向量和下一段划分数据对应的频谱向量做差,得到差值;
判断模块,用于判断差值是否超出表征频谱向量之间距离的距离阈值;
若是,则触发第六确定模块,用于确定下一段划分数据对应的频谱向量不属于当前窗口,并更新当前窗口的下一个窗口的频谱向量为下一段划分数据对应的频谱向量;
若否,则触发第七确定模块,用于确定下一段划分数据对应的频谱向量属于当前窗口,并更新当前窗口的频谱向量,其中,更新后的当前窗口的频谱向量包含下一段划分数据对应的频谱向量。
优选地,在更新当前窗口的下一个窗口的频谱向量为下一段划分数据对应的频谱向量之后,还包括:输出模块,用于输出提示信息。
由于装置部分的实施例与方法部分的实施例相互对应,因此装置部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
图3为本申请实施例所提供的一种数据降采样设备结构图,如图3所示,本申请所提供的一种数据降采样设备,设置有惯性传感器的AR智能泳镜,包括:
存储器30,用于存储计算机程序;
处理器31,用于执行计算机程序时实现如上述实施例中所提到的数据降采样方法的步骤。
本实施例提供的数据降采样设备可以包括但不限于智能手机、平板电脑、笔记本电脑或台式电脑等。
其中,处理器31可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器31可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable LogicArray,PLA)中的至少一种硬件形式来实现。处理器31也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称中央处理器(CentralProcessing Unit,CPU);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器31可以集成有图像处理器(Graphics Processing Unit,GPU),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器31还可以包括人工智能(Artificial Intelligence,AI)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器30可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器30还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。本实施例中,存储器30至少用于存储以下计算机程序,其中,该计算机程序被处理器31加载并执行之后,能够实现前述任意一个实施例公开的数据降采样方法的相关步骤。另外,存储器30所存储的资源还可以包括操作系统和数据等,存储方式可以是短暂存储或者永久存储。其中,操作系统可以包括Windows、Unix、Linux等。数据可以包括但不限于数据降采样方法等。
在一些实施例中,数据降采样设备还可包括有显示屏、输入输出接口、通信接口、电源以及通信总线。
本领域技术人员可以理解,图3中示出的结构并不构成对数据降采样设备的限定,可以包括比图示更多或更少的组件。
本申请实施例提供的数据降采样设备,包括存储器30和处理器31,处理器31在执行存储器30存储的程序时,能够实现数据降采样方法。
图4为本申请实施例所提供的窗口得分示意图,图5为本申请实施例所提供的窗口数据采样误差示意图,图6为本申请实施例所提供的窗口数据压缩比示意图,结合图4至图6来看,相比于现有的降采样方法,使用本申请所提的降采样方法后所得到的窗口得分更高,窗口数据采样误差更小(更接近原始数据),同时窗口数据压缩比更小(保存更少的数据)。本申请根据降采样因子确定对应的平均绝对值误差;当平均绝对值误差处于预设平均绝对值误差区间时,对游泳数据进行降采样。此时,相比于常规降采样方法,提供了根据每个窗口数据对应的降采样因子确定的平均绝对值误差,确保平均绝对值误差满足条件,同时,当平均绝对值误差处于预设平均绝对值误差区间时,对游泳数据进行降采样,保证了根据不同的平均绝对误差对游泳数据进行降采样,实现了在肢体动作小的时候,某些轴波动小的数据,大间隔保存,保存更少的数据,得到更大的压缩比;某些轴波动大的数据,小间隔保存,得到更小的压缩误差,实现同时考虑压缩误差和压缩比,进而得到对数据进行降采样操作时合适的降采样因子对数据进行降采样。此时,使得窗口数据失真程度低,且压缩比更小,说明用更少的数据去恢复原来的数据,会减轻数据存储的压力。
最后,本申请还提供一种计算机可读存储介质对应的实施例。计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述方法实施例中记载的步骤。
可以理解的是,如果上述实施例中的方法以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory),ROM、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上对本申请所提供的一种数据降采样方法、装置、设备及介质进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
- 一种采样方法、装置、设备、系统及可读存储介质
- 货源信息的数据降维方法、装置、电子设备、存储介质
- 一种数据处理方法、数据处理装置、计算机设备及可读存储介质
- 一种数据配置方法及装置、一种计算设备及存储介质
- 一种数据存储方法及装置、一种计算设备及存储介质
- 一种数据自适应降采样方法、装置、设备及介质
- 数据降采样方法及装置、电子设备、计算机可读存储介质