确定滤波器系数的方法及其装置、终端与流程

文档序号:13985242
确定滤波器系数的方法及其装置、终端与流程

本发明实施例涉及数据处理技术领域,尤其涉及确定滤波器系数的方法及其装置、终端。



背景技术:

随着智能医疗技术的发展,耳式温度计、心率耳机等基于音频通道通讯的终端设备得到广泛的研究和应用。基于音频通道的传统通讯方法能够达到的数据传输速率较低,无法满足高速率数据交换的应用场景。

为此,需要考虑基于音频信道的高速率、高可靠性通讯方法。而为了实现高速率、高可靠性通讯,如何保证较高解码成功率尤为重要,而解码成功率的高低与信道噪声和信道非线性因素导致的干扰相关,信道噪声和信道非线性因素导致的干扰被过滤的越彻底,解码成功率越高。尤其对于不同的音频信道,信号的信噪比和信道非线性也会随之变化,比如在手机上利用音频应用程序播放音乐时选择不同音效播放,会导致音频通道发生变化,如果滤波器系数通常固定不变,则难以实现干扰的彻底过滤,从而难以保证较高的解码成功率,进而难以实现高速率及高可靠性的通讯,无法满足高速率数据交换的应用场景。



技术实现要素:

有鉴于此,本发明实施例所解决的技术问题之一在于提供一种确定滤波器系数的方法及其装置、终端,用以克服或者缓解现有技术中的上述缺陷。

本发明实施例提供一种确定滤波器系数的方法,其包括:

根据滤波器当前时刻的输入信号,确定所述滤波器的估计输出;

根据所述滤波器的目标输出以及估计输出,确定所述滤波器的输出误差;

根据所述滤波器的输出误差以及预定的第一阈值,判断是否需要对当前滤波器系数进行修正;

若判定需要对当前滤波器系数进行修正,则对所述当前滤波器系数进行修正以确定下一时刻的滤波器系数;

若判定不需要对当前滤波器系数进行修正,则将当前滤波器系数直接作为下一时刻的滤波器系数。

可选地,在本发明的一实施例中,对所述当前滤波器系数进行修正以确定下一时刻的滤波器系数包括:

确定所述当前滤波器系数的修正量;

根据所述当前滤波器系数的修正量对所述当前滤波器系数进行修正以确定下一时刻的滤波器系数。

可选地,在本发明的一实施例中,根据当前时刻滤波器的输入信号,确定所述滤波器的估计输出之前还包括:在滤波器系数训练阶段根据预定的训练序列以及所述滤波器的输入信号,确定对滤波器当前时刻的输入信号进行滤波处理时使用的当前滤波器系数。

可选地,在本发明的一实施例中,根据预定的训练序列以及所述滤波器的输入信号,确定对滤波器当前时刻的输入信号进行滤波处理时使用的当前滤波器系数包括:

对预定的训练序列进行采样得到在滤波器系数训练阶段所述滤波器的目标输出;

根据在滤波器系数训练阶段所述滤波器的输入信号,确定在滤波器系数训练阶段所述滤波器的估计输出;

根据在滤波器系数训练阶段所述滤波器的目标输出以及滤波器系数训练阶段所述滤波器的估计输出,确定在滤波器系数训练阶段所述滤波器的输出误差;

根据在滤波器系数训练阶段所述滤波器的输出误差以及预定的第二阈值,判断是否需要进行训练,若是,则进行训练得到对滤波器当前时刻的输入信号进行滤波处理时使用的当前滤波器系数。

可选地,在本发明的一实施例中,还包括:若需要进行训练,则判断已训练的累计次数是否超过预定的训练次数门限,若未超过,则跳转到对预定的训练序列进行采样得到在滤波器系数训练阶段所述滤波器的目标输出,以继续进行训练。

可选地,在本发明的一实施例中,若已训练的累计次数超过预定的训练次数门限,则结束训练。

可选地,在本发明的一实施例中,所述训练序列为随机序列或伪随机序列。

可选地,在本发明的一实施例中,所述训练序列选自对所述滤波器在滤波阶段的估计输出进行解码得到的数据流。

可选地,在本发明的一实施例中,通过预定的修正标志位标示是否需要对当前滤波器系数进行修正。

可选地,在本发明的一实施例中,通过预定的训练标志位标示是否需要进行训练得到当前滤波器系数。

本发明实施例提供一种确定滤波器系数的装置,其包括:

滤波器,用于根据滤波器当前时刻的输入信号,确定所述滤波器的估计输出;

输出误差确定模块,用于根据所述滤波器的目标输出以及估计输出,确定所述滤波器的输出误差;

滤波器系数确定模块,用于根据所述滤波器的输出误差以及预定的第一阈值判断是否需要对当前滤波器系数进行修正,若判定需要对当前滤波器系数进行修正,则对所述当前滤波器系数进行修正以确定下一时刻的滤波器系数,若判定不需要对当前滤波器系数进行修正,则将当前滤波器系数直接作为下一时刻的滤波器系数。

可选地,在本发明的一实施例中,滤波器系数确定模块包括:

修订量确定单元,用于确定所述当前滤波器系数的修正量;

修正单元,用于根据所述当前滤波器系数的修正量对所述当前滤波器系数进行修正以确定下一时刻的滤波器系数。

可选地,在本发明的一实施例中,还包括:训练模块,用于在滤波器系数训练阶段根据预定的训练序列以及所述滤波器的输入信号,确定对滤波器当前时刻的输入信号进行滤波处理时使用的当前滤波器系数。

可选地,在本发明的一实施例中,所述训练模块包括:

目标输出确定单元,用于对预定的训练序列进行采样得到在滤波器系数训练阶段所述滤波器的目标输出;

估计输出确定单元,用于根据在滤波器系数训练阶段所述滤波器的输入信号,确定在滤波器系数训练阶段所述滤波器的估计输出;

输出误差确定单元,用于根据在滤波器系数训练阶段所述滤波器的目标输出以及在滤波器系数训练阶段所述滤波器的估计输出,确定在滤波器系数训练阶段所述滤波器的输出误差;

滤波器系数确定单元,用于根据在滤波器系数训练阶段所述滤波器的输出误差以及预定的第二阈值,判断是否需要进行训练,若是,则进行训练得到对滤波器当前时刻的输入信号进行滤波处理时使用的当前滤波器系数。

可选地,在本发明的一实施例中,还包括:训练次数判断模块,用于当需要进行训练时判断已训练的累计次数是否超过预定的训练次数门限,若未超过,则所述目标输出确定单元继续对预定的训练序列进行采样得到在滤波器系数训练阶段所述滤波器的目标输出,以继续进行训练。

本发明实施例提供一种终端,其包括:处理器以及滤波器,其中:

所述滤波器用于根据所述当前时刻的输入信号,确定所述滤波器的估计输出;

所述处理器用于对接收的模拟信号进行采样得到采样信号并将其作为所述滤波器当前时刻的输入信号;

所述处理器还用于根据所述滤波器的目标输出以及估计输出,确定所述滤波器的输出误差,再根据所述滤波器的输出误差以及预定的第一阈值判断是否需要对当前滤波器系数进行修正;

所述处理器还用于当判定需要对当前滤波器系数进行修正时通过对所述当前滤波器系数进行修正以确定下一时刻的滤波器系数;

所述处理器还用于当判定不需要对当前滤波器系数进行修正时将当前滤波器系数直接作为下一时刻的滤波器系数。

可选地,在本发明的一实施例中,所述滤波器进一步用于根据下一时刻的滤波器系数对所述滤波器下一时刻的输入信号进行滤波处理。

可选地,在本发明的一实施例中,所述处理器进一步用于对所述滤波器的估计输出进行同步帧头检测、Manchester解码、循环冗余校验处理。

本发明实施例的技术方案中,由于根据滤波器当前时刻的输入信号,确定所述滤波器的估计输出;根据所述滤波器的目标输出以及估计输出,确定所述滤波器的输出误差;根据所述滤波器的输出误差以及预定的第一阈值,判断是否需要对当前滤波器系数进行修正;若判定需要对当前滤波器系数进行修正,则对所述当前滤波器系数进行修正以确定下一时刻的滤波器系数;若判定不需要对当前滤波器系数进行修正,则将当前滤波器系数直接作为下一时刻的滤波器系数,从而可实现在滤波过程中可以根据数据传输通道的变化,对当前滤波器系数进行自适应修正,以达到彻底滤除干扰或者尽可能地滤除干扰,进而保证较高的解码成功率,最终实现高速率、高可靠性通讯。

附图说明

后文将参照附图以示例性而非限制性的方式详细描述本发明实施例的一些具体实施例。附图中相同的附图标记标示了相同或类似的部件或部分。本领域技术人员应该理解,这些附图未必是按比例绘制的。附图中:

图1为本发明实施例一中通讯系统的结构示意图;

图2为本发明实施例二中下位机对原始信号的处理流程示意图;

图3为本发明实施例三中编码的原理示意图,

图4为本发明实施例四中作为上位机的第二通讯终端的工作流程示意图;

图5为本发明实施例五中滤波流程示意图;

图6为本发明实施例六中滤波的框图;

图7为本发明实施例七中训练处理流程示意图;

图8为本发明实施例八中滤波器系数确定示意图;

图9为本发明实施例九中确定滤波器系数的装置的结构示意图;

图10为本发明实施例十中终端的结构示意图。

具体实施方式

实施本发明实施例的任一技术方案必不一定需要同时达到以上的所有优点。

为了使本领域的人员更好地理解本发明实施例中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明实施例一部分实施例,而不是全部的实施例。基于本发明实施例中的实施例,本领域普通技术人员所获得的所有其他实施例,都应当属于本发明实施例保护的范围。

下面结合本发明实施例附图进一步说明本发明实施例具体实现。

本发明下述实施例的技术方案中,由于根据滤波器当前时刻的输入信号,确定所述滤波器的估计输出;根据所述滤波器的目标输出以及估计输出,确定所述滤波器的输出误差;根据所述滤波器的输出误差以及预定的第一阈值,判断是否需要对当前滤波器系数进行修正;若判定需要对当前滤波器系数进行修正,则对所述当前滤波器系数进行修正以确定下一时刻的滤波器系数;若判定不需要对当前滤波器系数进行修正,则将当前滤波器系数直接作为下一时刻的滤波器系数。比如当音频通道生变化时,信噪比和信道非线性会发生变化,滤波器的估计输出会发生变化,进一步导致滤波器的输出误差会发生变化,进而可以根据所述滤波器的输出误差以及预定的第一阈值判断是否对当前滤波器系数进行修正。具体地,比如当所述滤波器的输出误差的统计值超过第一阈值时,则判定需要对当前滤波器系数进行修正以确定下一时刻的滤波器系数,在滤波阶段根据下一时刻的滤波器系数进行滤波,进而达到彻底滤除干扰或者尽可能地滤除干扰,使得滤波器的目标输出与估计输出尽可能地一致,保证较高的解码成功率,最终实现高速率、高可靠性通讯。

本发明下述实施例中,以心率耳机为第一通讯终端,智能手机为第二通讯终端,原始信号为原始心率信号为例进行说明。第一通讯终端与第二通讯终端通过音频信道进行信号的传输。音频信道具体可包括音频接口和音频线。

在上述包括第一通讯终端和第二通讯终端的通讯系统中,在不同的时间段,当音频信道可能发生改变时,其信道特征也可能随之发生改变,比如信道非线性发生变化。针对此种类似情形,在第一通讯终端和第二通讯终端进行高速数据传输速率通讯的过程中,对滤波器系数进行自适应修正,从而提高解调成功率,并达到需要的滤波要求,实现干扰的彻底过滤。

但是,需要说明的是,在下述实施例的启发下,可以将本发明的技术方案用于任一需要数据处理的场合,比如耳式温度计与智能终端的场合。

为了便于对本发明的方案理解,下述实施例中,首先对应用本发明的滤波系数调整方法的具体通讯系统为例进行简要说明。当在该具体通讯系统中进行应用时,滤波只是其中一部分流程,而在滤波之前经过采样、编码等处理得到模拟信号,在滤波之后,进行解码得到解码比特流以便应用程序进行使用,详细过程请参见下述示例描述。

将本发明的滤波器系数更新方法应用到一具体通讯系统中,该通讯系统包括:第一通讯终端、第二通讯终端、滤波器,如前所述,第一通讯终端101示例性地为心率耳机,在具体应用时,心率耳机作为下位机,第二通讯终端102示例性地为智能终端,心率耳机与智能终端配合以实现心率检测的目的,其中在智能终端处配置有滤波器,参见图1,其为本发明实施例一中通讯系统的结构示意图。

本实施例中,所述第一通讯终端用于获取原始信号、对所述原始信号进行处理得到模拟信号并传输给所述第二通讯终端;如前所述,由于第一通讯终端为心率耳机,因此,本实施例中,原始信号具体为心率原始信号,模拟信号具体为心率模拟信号。

具体地,作为下位机的第一通讯终端(即心率耳机)对所述心率原始信号进行处理得到心率模拟信号,示例性流程如图2所示,为本发明实施例二中下位机对原始信号的处理流程示意图;如图2所示,其具体包括:

S201、对所述原始信号进行组包处理;

本实施例中,所述第一通讯终端对所述原始信号进行组包处理时,每个数据包包括同步帧头、数据字段和循环冗余校验位。

本实施例中,所述同步帧头作为上位机的智能手机检测数据包。当上位机检测到同步帧头时,认为检测到一个新的数据包,才能开始后续的解码过程。所述数据字段在不同的应用环境中会有所不同,其可能包括数据类型、数据长度、包序号和实际数据等。

S202、对组包处理后的所述原始信号进行编码得到数字信号;

本实施例中,所述第一通讯终端对组包处理后的所述原始信号进行编码时采用Manchester编码;具体地,请参见图3,为本发明实施例三中编码的原理示意图,将组包处理后的原始信号“0”映射为“10”,将原始信号“1”映射为“01”。每个原始信号对应比特占用的传输时间为T,那么编码后的每个原始信号对应的比特时间为T/2,进而数据传输速率为1/T bps。

S203、对数字信号进行调制处理得到模拟信号。

本实施例中,对数字信号进行调制时,将比特“0”对应第一模拟电平,比特“1”对应第二模拟电平。在具体应用场景中,比如第一模拟电平为-V,第二模拟电平为+V,V表示电平的高低。

所述第二通讯终端的处理对所述模拟信号进行采样得到采样信号并将采样信号传输给滤波器作为所述滤波器的输入信号;所述滤波器用于根据滤波器的输入信号确定所述滤波器的估计输出;所述第二通讯终端的处理进一步用于根据所述滤波器的目标输出以及估计输出,确定所述滤波器的输出误差,再进一步根据所述滤波器的输出误差以及预定的第一阈值,判断是否需要对当前滤波器系数进行修正;若是,则对所述当前滤波器系数进行修正,以确定下一时刻的滤波器系数;

所述滤波器用于根据下一时刻的滤波器系数对所述滤波器下一时刻的输入信号进行滤波处理。

具体地,本实施例中,参见图4所示,为本发明实施例四中作为上位机的第二通讯终端的工作流程示意图;如图4所示,其包括:

S401、对接收到的模拟信号进行采样得到采样信号;

本实施例中,采样的参数如采样频率和数据位宽因应用场景而不同。

S402、滤波器对所述采样信号进行滤波处理;

本实施例中,滤波器为FIR带通滤波器,在进行滤波时,若需要对当前滤波器进行修正,则上位机对当前滤波系数进行修正得到下一时刻的滤波器系数,滤波器根据下一时刻的滤波系数对滤波器下一时刻的输入信号进行滤波处理,详细的滤波处理流程可参见下述图5所示。

S403、对所述滤波器的估计输出进行同步帧头检测;

S404、判断是否检测到同步帧头,若是,则执行步骤S405,若否,则跳转到步骤S401;

本实施例中,将同步帧头后的一定长度数据传递给步骤S405处理。一定长度应足够覆盖整段数据包,尤其包括数据字段。如果没有检测到同步帧头,则跳转到步骤S401进行下一轮处理。

S405、对同步帧头检测处理后的滤波器的估计输出进行Manchester解码;

参照上述编码的过程,本步骤S405执行与上述编码逆向的处理过程,从而得到解码比特流。

S406、对解码比特流进行循环冗余校验处理。

本实施例中,循环冗余校验处理以对解码比特流进行错误侦测。

S407、将循环冗余校验结果以及解码比特流传输给应用程序。

本实施例中,应用程序可以是指配合耳式温度计、心率耳机使用在电子终端上安装的应用程序。

本实施例中,滤波器的估计输出也即经过滤波处理后滤波器实际输出的信号。

应用程序根据循环冗余校验结果以及解码比特流确定心率值计算等。

具体地,如图5所示,为本发明实施例五中滤波流程示意图;如图6所示,为本发明实施例六中滤波的框图;结合图5和图6所示,下述S501-S504组成滤波器系数的确定方法或称为修正算法,需要说明的是,当前滤波器系数可以根据预定的训练序列和滤波器的输入信号对初始滤波器系数进行不断训练得到,详细可参见后述图7记载。

需要说明的是,在执行滤波的过程中,当前滤波器系数可以是根据预定的训练序列和滤波器的输入信号对初始滤波器系数进行实时训练得到,也可以是使用之前已经过训练过程处理得到已有的当前滤波器系数。比如,在一种场景中,应用程序重启之后的话,音频信道发生了变化,如果要启动滤波处理,则需要对初始滤波器系数进行实时训练得到当前滤波器系数;如果只是应用程序暂停之后,音频信道并没有发生变化,则可以不需要对初始滤波器系数进行实时训练得到当前滤波器,而只是继续使用暂停之前已有的当前滤波器系数。

本实施例中,具体的滤波的过程如下:

S501、根据当前滤波器系数以及滤波器的输入信号,确定所述滤波器的估计输出;

本实施例中,假设n时刻的输入信号x(n)包括滤波器的目标输出d(n)和干扰噪声v(n),如公式(1)所示:

x(n)=d(n)+v(n) (1)

S502、根据所述滤波器的目标输出以及估计输出,确定所述滤波器的输出误差;

本实施例中,若滤波器采用FIR滤波器,Wn表示p阶滤波器的系数,参见公式(2)表示p阶滤波器的滤波系数:

Wn=[ωn(0),ωn(1),…,ωn(p)]T (2)。

滤波阶段滤波器的估计输出由滤波器的输入信号X(n)和滤波器系数Wn卷积生成,如公式(3)所示:

在上述公式(3)中X(n)=[x(n),x(n-1),…,xn(n-p)]T

在n时刻,滤波器的输出误差e(n)是其目标输出与估计输出的差值,即如公式(4):

如公式(4)所示,输出误差e(n)的大小反映了估计输出和目标输出的接近程度,比如在一种具体的应用场景中,若e(n)越小,表明估计输出越接近目标输出。

本实施例中,由于滤波器的输入信号X(n)已知,因此,可以通过对输入信号x(n)进行伪采样从而得到目标输出d(n)。

S503、根据所述滤波器的输出误差以及预定的第一阈值,判断是否需要对当前滤波器系数进行修正;若是,则执行步骤S504;若否,则执行步骤S506:将当前滤波器系数直接作为下一时刻的滤波器系数并判断上位机与下位机之间的通讯是否结束,如未结束,转到步骤S501继续处理下一段输入信号;

本实施例中,在判断是否需要对当前滤波器系数进行修正时,具体根据所述滤波器的输出误差的统计值是否超过预定的第一阈值来确定,若是,则需要对当前滤波器系数进行修正。第一阈值的大小可以根据滤波精度要求进行调整,如果要让估计输出尽可能地与目标输出一致,第一阈值可以较小,否则,第一阈值可以较大。

本实施例中,具体可以根据如下公式(5)定义一个代价函数ξ(n),该代价函数的值作为输出误差的统计值,该统计值越小,表明估计输出越接近目标输出。

上述公式(5)中,其中,λ是加权因子,用于“遗忘”过旧的输出误差,所谓“过旧”可理解为距离当前滤波系数之前越早的输出误差,并实时跟踪最新的输出误差,λ满足0<λ≤1。λ越大,滤波器对新输出误差的响应越缓慢,λ越小,旧输出误差起到的作用越小。

上述公式(5)中,是对输出误差进行平方和进行统计得到输出误差的统计值。在其他实施例中,也可以对输出误差绝对值的和进行统计得到输出误差的统计值。

上述公式(5)中,以最小二乘法为例进行说明,在其他实施例中,也可以采用最小均方算法(least mean square,LMS)、格型算法。

S504、确定所述当前滤波器系数的修正量,根据所述当前滤波器系数的修正量对所述当前滤波器系数进行修正以确定下一时刻的滤波器系数。

本实施例中,所述当前滤波器系数的修正量ΔWn具体可以根据输入信号X(n)和输出误差e(n)计算出,根据输入信号X(n)和输出误差e(n)计算出修正量ΔWn的技术处理已属于现有技术,在此不再赘述。

S505、所述滤波器根据下一时刻的滤波器系数对所述滤波器下一时刻的输入信号进行滤波处理。

本实施例中,具体地,可以根据Wn+1=Wn+ΔWn对当前滤波器系数Wn进行修正得到下一时刻的滤波器系数Wn+1,以在对滤波器下一时刻的输入信号进行滤波时使用。

需要说明的是,本实施例中步骤S501至步骤S504也可理解为对滤波器系数进行自适应修正的流程。

本实施例中,根据上述步骤S503和步骤S504整体上确定出下一时刻的滤波器系数。

对初始滤波器系数进行训练处理得到当前滤波器系数的过程可如图7所示。如图7所示,为本发明实施例七中训练处理流程示意图,其根据预定的训练序列以及训练阶段所述滤波器的输入信号,对初始滤波器系数进行训练得到当前滤波器系数。具体地,其包括如下步骤:

S701、初始化当前滤波器系数得到初始滤波器系数;

本实施例中,比如直接给当前滤波器系数赋予具体的数值以完成初始化,得到初始滤波器系数。

S702、预定训练序列并对预定的训练序列进行采样得到在训练阶段所述滤波器的目标输出;

本实施例中,所述训练序列为随机序列或伪随机序列。所述训练序列选自对所述滤波器在滤波阶段的估计输出进行解码得到的数据流。比如为上一滤波循环处理已完成同步帧头检测和解码得到的解码比特流。

本实施例中,通过对训练序列S(n)的调制信号进行伪采样,得到用于训练流程的目标输出D(n)。本实施例中,为得到训练阶段滤波器的目标输出,所使用的采样频率可以与上位机实际的采样频率相同。

S703、上位机对接收到的模拟信号进行采样得到采样信号并将其作为在训练阶段滤波器的输入信号;

如前所述,本实施例中,上位机的采样频率与上述步骤S702中得到滤波器的目标信号所使用的采样频率相同。

S704、根据所述滤波器的初始滤波器系数以及滤波器系数训练阶段所述滤波器的输入信号,确定在训练阶段所述滤波器的估计输出;

参照下述公式(6)得到所述滤波器的估计输出

公式(6)中X(n)=[x(n),x(n-1),…,xn(n-p)]T

S705、根据在滤波器系数训练阶段所述滤波器的目标输出以及滤波器系数训练阶段所述滤波器的估计输出,确定在滤波器系数训练阶段所述滤波器的输出误差;

参照下述公式(7)得到在训练阶段所述滤波器的输出误差E(n):

S706、根据在滤波器系数训练阶段所述滤波器的输出误差以及预定的第二阈值,判断是否需要对初始滤波器系数进行训练,若是,则执行步骤S707;若否,则执行上述滤波器系数的确定方法并重置训练的累计次数;

本实施例中,在判断是否需要对初始滤波器系数进行训练时,具体根据训练阶段所述滤波器的输出误差的统计值是否超过预定的第二阈值来确定,若是,则需要对初始滤波器系数进行训练。

本实施例中的统计值可以参照上述图5中的统计值说明。

本实施例中,第二阈值的大小可以根据历史经验数据进行确定,或者根据滤波精度的要求,灵活调整。具体地,第二阈值可以与第一阈值相同也可以不同。在一具体应用中,为了得到更准确的当前滤波器系数,第二阈值具体比第一阈值小。

S707、确定在训练阶段初始滤波器系数的修正量;

本实施例中,所述初始滤波器系数的修正量ΔWn′具体可以根据滤波器的输入信号x(n)和输出误差E(n)计算出,比如,对输入信号X(n)和输出误差E(n)应用最小均方算法(least mean square,LMS),或者递推最小二乘法(recursive least square,RLS),从而计算出修正量ΔWn′。

S708、根据所述初始滤波器系数的修正量,对滤波器的初始滤波器系数进行训练得到当前滤波器系数。

本实施例中,具体地,可以根据W′n+1=Wn′+ΔWn′对初始滤波器系数Wn′进行修正得到修正后的滤波器系数W′n+1,即当前滤波器系数,即该修正后的滤波器系数W′n+1做为上述滤波实施例中的当前滤波器系数Wn

需要说明的是,初始滤波器系数Wn′在首次训练处理时,指的是首次初始化时得到的初始化滤波系数,而在经过了至少一次训练处理之后,指的是修正后的初始化滤波系数。

S709、判断已训练的累计次数是否超过预定的训练次数门限,若未超过,则跳转到步骤S702,以继续对初始滤波器系数进行修正;若已训练的累计次数超过预定的训练次数门限,则结束对初始滤波器系数的训练。

上述图7所示的训练过程,在滤波器进行滤波之前,也可以理解为对初始化滤波器系数进行不断修正得到当前滤波器系数的过程。

在图7的基础上,提供了一种结合是否需要进行训练处理的滤波器系数修正方案,如图8所示,为本发明实施例八中滤波器系数确定示意图;

S801、设置训练标志位;

若训练标志位的值设置为1,表示需要执行训练处理过程,若训练标志位的值设置为0,则不需要执行训练处理过程;

比如在应用程序重启时,训练标志位为1,在应用程序暂停时,训练标志位为0。

S802、根据训练标志位判断是否需要执行训练处理,如训练标志位的值为1,在执行上述步骤S701-S709的训练处理过程再执行步骤S803;否则,直接执行步骤S803;

S803、对模拟信号进行采样得到的采样信号并作为滤波器的输入信号;

参照公式(3),滤波处理后的信号即滤波器的估计输出

S804、确定所述滤波器的输出误差并判断所述滤波器的输出误差的统计值是否超过预定的第一阈值;如未超过,则执行步骤S805;若超过,则设置修正标志位flag为1,并执行上述步骤S504,之后,再次转到步骤S805;

S805、判断上位机与下位机之间的通讯是否结束,若是,则结束,否则转到步骤802;

本实施例中,可以具体获取应用程序标志位的值并根据该应用程序标志的值来判断上位机与下位机的通讯是否结束,比如若应用程序标志位为1,则表示结束。

本实施例中,设置一个训练标志位和一个修正标志位,训练标志位在训练过程中用于标示是否需要对初始滤波器系数进行训练,修正标志位用于在滤波过程中标示是否需要对当前滤波器系数进行修正。

需要说明的是,在其他实施例中,训练标志位也可以复用为在滤波过程中对当前滤波器系数是否需要进行修正进行标示,即训练标志位同时复用为修正标志位。

在另外一实施例中,所述第一通讯终端为上位机,所述第二通讯终端为下位机,所述第一通讯终端包括所述滤波器,详细通讯过程类似上述图1所示实施例。

需要说明的是,在上述实施例中,滤波器可以为数字滤波器。

图9为本发明实施例九中确定滤波器系数的装置的结构示意图;如图9所示,所述滤波器的估计输出由滤波器901根据滤波器当前时刻的输入信号确定;确定滤波器系数的装置包括的输出误差确定模块902和滤波器系数确定模块903如下说明:

输出误差确定模块902,用于根据所述滤波器的目标输出以及估计输出,确定所述滤波器的输出误差;

滤波器系数确定模块903,用于根据所述滤波器的输出误差以及预定的第一阈值判断是否需要对当前滤波器系数进行修正,若判定需要对当前滤波器系数进行修正,则对所述当前滤波器系数进行修正以确定下一时刻的滤波器系数,若判定不需要对当前滤波器系数进行修正,则将当前滤波器系数直接作为下一时刻的滤波器系数。

可选地,在任一实施例中,滤波器系数确定模块903包括:

修订量确定单元,用于确定所述当前滤波器系数的修正量;

修正单元,用于根据所述当前滤波器系数的修正量对所述当前滤波器系数进行修正以确定下一时刻的滤波器系数。

可选地,在任一实施例中,还包括:训练模块,用于在滤波器系数训练阶段根据预定的训练序列以及所述滤波器的输入信号,确定对滤波器当前时刻的输入信号进行滤波处理时使用的当前滤波器系数。

可选地,在任一实施例中,所述训练模块包括:

目标输出确定单元,用于对预定的训练序列进行采样得到在滤波器系数训练阶段所述滤波器的目标输出;

估计输出确定单元,用于根据所述滤波器的输入信号,确定在滤波器系数训练阶段所述滤波器的估计输出;

输出误差确定单元,用于根据在滤波器系数训练阶段所述滤波器的目标输出以及滤波器系数训练阶段所述滤波器的估计输出,确定在滤波器系数训练阶段所述滤波器的输出误差;

滤波器系数确定单元,用于根据在滤波器系数训练阶段所述滤波器的输出误差以及预定的第二阈值,判断是否需要进行训练,若是,则进行训练得到对滤波器当前时刻的输入信号进行滤波处理时使用的当前滤波器系数。

需要说明的是,在一具体应用场景中,估计输出确定单元可以复用上述估计输出确定模块,输出误差确定单元可以复用上述输出误差确定模块,滤波器系数确定单元可以复用上述滤波器系数确定单元。

可选地,在任一实施例中,还包括:训练次数判断模块,用于当需要进行训练时判断已训练的累计次数是否超过预定的训练次数门限,若未超过,则跳转到对预定的训练序列进行采样得到在滤波器系数训练阶段所述滤波器的目标输出,以继续进行训练。

图10为本发明实施例十中终端的结构示意图;如图10所示,其包括:滤波器1001以及处理器1002,其中:

所述滤波器1001用于根据所述滤波器当前时刻的输入信号,确定所述滤波器的估计输出;

所述处理器1002用于对接收的模拟信号进行采样得到采样信号并将其作为所述滤波器当前时刻的输入信号;

所述处理器1002还用于根据所述滤波器的目标输出以及估计输出,确定所述滤波器的输出误差,再根据所述滤波器的输出误差以及预定的第一阈值判断是否需要对当前滤波器系数进行修正;

所述处理器1002还用于当判定需要对当前滤波器系数进行修正时通过对所述当前滤波器系数进行修正以确定下一时刻的滤波器系数;

所述处理器1002还用于当判定不需要对当前滤波器系数进行修正时将当前滤波器系数直接作为下一时刻的滤波器系数。

可选地,在任一实施例中,所述滤波器1001进一步用于根据下一时刻的滤波器系数对所述滤波器下一时刻的输入信号进行滤波处理。

可选地,在任一实施例中,所述处理器1002进一步用于对所述滤波器的估计输出进行同步帧头检测、Manchester解码、循环冗余校验处理。

以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,所述计算机可读记录介质包括用于以计算机(例如计算机)可读的形式存储或传送信息的任何机制。例如,机器可读介质包括只读存储器(ROM)、随机存取存储器(RAM)、磁盘存储介质、光存储介质、闪速存储介质、电、光、声或其他形式的传播信号(例如,载波、红外信号、数字信号等)等,该计算机软件产品包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。

最后应说明的是:以上实施例仅用以说明本发明实施例的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

本领域的技术人员应明白,本发明实施例的实施例可提供为方法、装置(设备)、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本发明实施例是参照根据本发明实施例的方法、装置(设备)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

再多了解一些
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1